linux/net/netlabel/netlabel_user.h
<<
>>
Prefs
   1/*
   2 * NetLabel NETLINK Interface
   3 *
   4 * This file defines the NETLINK interface for the NetLabel system.  The
   5 * NetLabel system manages static and dynamic label mappings for network
   6 * protocols such as CIPSO and RIPSO.
   7 *
   8 * Author: Paul Moore <paul@paul-moore.com>
   9 *
  10 */
  11
  12/*
  13 * (c) Copyright Hewlett-Packard Development Company, L.P., 2006
  14 *
  15 * This program is free software;  you can redistribute it and/or modify
  16 * it under the terms of the GNU General Public License as published by
  17 * the Free Software Foundation; either version 2 of the License, or
  18 * (at your option) any later version.
  19 *
  20 * This program is distributed in the hope that it will be useful,
  21 * but WITHOUT ANY WARRANTY;  without even the implied warranty of
  22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
  23 * the GNU General Public License for more details.
  24 *
  25 * You should have received a copy of the GNU General Public License
  26 * along with this program;  if not, write to the Free Software
  27 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
  28 *
  29 */
  30
  31#ifndef _NETLABEL_USER_H
  32#define _NETLABEL_USER_H
  33
  34#include <linux/types.h>
  35#include <linux/skbuff.h>
  36#include <linux/capability.h>
  37#include <linux/audit.h>
  38#include <net/netlink.h>
  39#include <net/genetlink.h>
  40#include <net/netlabel.h>
  41
  42/* NetLabel NETLINK helper functions */
  43
  44/**
  45 * netlbl_netlink_auditinfo - Fetch the audit information from a NETLINK msg
  46 * @skb: the packet
  47 * @audit_info: NetLabel audit information
  48 */
  49static inline void netlbl_netlink_auditinfo(struct sk_buff *skb,
  50                                            struct netlbl_audit *audit_info)
  51{
  52        security_task_getsecid(current, &audit_info->secid);
  53        audit_info->loginuid = audit_get_loginuid(current);
  54        audit_info->sessionid = audit_get_sessionid(current);
  55}
  56
  57/* NetLabel NETLINK I/O functions */
  58
  59int netlbl_netlink_init(void);
  60
  61/* NetLabel Audit Functions */
  62
  63struct audit_buffer *netlbl_audit_start_common(int type,
  64                                              struct netlbl_audit *audit_info);
  65
  66#endif
  67