2006-08-04 03:48:37 +04:00
/*
* NetLabel NETLINK Interface
*
* This file defines the NETLINK interface for the NetLabel system . The
* NetLabel system manages static and dynamic label mappings for network
* protocols such as CIPSO and RIPSO .
*
* Author : Paul Moore < paul . moore @ hp . com >
*
*/
/*
* ( c ) Copyright Hewlett - Packard Development Company , L . P . , 2006
*
* This program is free software ; you can redistribute it and / or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation ; either version 2 of the License , or
* ( at your option ) any later version .
*
* This program is distributed in the hope that it will be useful ,
* but WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See
* the GNU General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , write to the Free Software
* Foundation , Inc . , 59 Temple Place , Suite 330 , Boston , MA 02111 - 1307 USA
*
*/
# ifndef _NETLABEL_USER_H
# define _NETLABEL_USER_H
2006-08-30 04:56:04 +04:00
# include <linux/types.h>
2006-08-04 03:48:37 +04:00
# include <linux/skbuff.h>
# include <linux/capability.h>
2006-09-29 01:51:47 +04:00
# include <linux/audit.h>
2006-08-30 04:56:04 +04:00
# include <net/netlink.h>
2006-08-04 03:48:37 +04:00
# include <net/genetlink.h>
2006-08-30 04:56:04 +04:00
# include <net/netlabel.h>
2006-08-04 03:48:37 +04:00
/* NetLabel NETLINK helper functions */
2006-09-30 04:05:05 +04:00
/**
* netlbl_netlink_auditinfo - Fetch the audit information from a NETLINK msg
* @ skb : the packet
* @ audit_info : NetLabel audit information
*/
static inline void netlbl_netlink_auditinfo ( struct sk_buff * skb ,
struct netlbl_audit * audit_info )
{
audit_info - > secid = NETLINK_CB ( skb ) . sid ;
audit_info - > loginuid = NETLINK_CB ( skb ) . loginuid ;
}
2006-08-04 03:48:37 +04:00
/* NetLabel NETLINK I/O functions */
int netlbl_netlink_init ( void ) ;
2006-09-29 01:51:47 +04:00
/* NetLabel Audit Functions */
2006-09-30 04:05:05 +04:00
struct audit_buffer * netlbl_audit_start_common ( int type ,
struct netlbl_audit * audit_info ) ;
2006-09-29 01:51:47 +04:00
2006-08-04 03:48:37 +04:00
# endif