1*4882a593SmuzhiyunFrom 7a1a07c0028a1c88cd7716a058697c552a563b24 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Felix Janda <felix.janda@posteo.de> 3*4882a593SmuzhiyunDate: Sat, 16 May 2015 14:49:07 +0200 4*4882a593SmuzhiyunSubject: include: Sync with kernel headers 5*4882a593Smuzhiyun 6*4882a593SmuzhiyunSigned-off-by: Felix Janda <felix.janda@posteo.de> 7*4882a593SmuzhiyunSigned-off-by: Pablo Neira Ayuso <pablo@netfilter.org> 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun[Retrieved from: 10*4882a593Smuzhiyunhttps://git.netfilter.org/libnfnetlink/commit/?id=7a1a07c0028a1c88cd7716a058697c552a563b24] 11*4882a593SmuzhiyunSigned-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> 12*4882a593Smuzhiyun--- 13*4882a593Smuzhiyun include/libnfnetlink/linux_nfnetlink.h | 44 ++++----------------------- 14*4882a593Smuzhiyun include/libnfnetlink/linux_nfnetlink_compat.h | 12 ++++---- 15*4882a593Smuzhiyun 2 files changed, 12 insertions(+), 44 deletions(-) 16*4882a593Smuzhiyun 17*4882a593Smuzhiyundiff --git a/include/libnfnetlink/linux_nfnetlink.h b/include/libnfnetlink/linux_nfnetlink.h 18*4882a593Smuzhiyunindex 76a8550..44a38d6 100644 19*4882a593Smuzhiyun--- a/include/libnfnetlink/linux_nfnetlink.h 20*4882a593Smuzhiyun+++ b/include/libnfnetlink/linux_nfnetlink.h 21*4882a593Smuzhiyun@@ -25,9 +25,9 @@ enum nfnetlink_groups { 22*4882a593Smuzhiyun /* General form of address family dependent message. 23*4882a593Smuzhiyun */ 24*4882a593Smuzhiyun struct nfgenmsg { 25*4882a593Smuzhiyun- u_int8_t nfgen_family; /* AF_xxx */ 26*4882a593Smuzhiyun- u_int8_t version; /* nfnetlink version */ 27*4882a593Smuzhiyun- u_int16_t res_id; /* resource id */ 28*4882a593Smuzhiyun+ __u8 nfgen_family; /* AF_xxx */ 29*4882a593Smuzhiyun+ __u8 version; /* nfnetlink version */ 30*4882a593Smuzhiyun+ __be16 res_id; /* resource id */ 31*4882a593Smuzhiyun }; 32*4882a593Smuzhiyun 33*4882a593Smuzhiyun #define NFNETLINK_V0 0 34*4882a593Smuzhiyun@@ -46,40 +46,8 @@ struct nfgenmsg { 35*4882a593Smuzhiyun #define NFNL_SUBSYS_CTNETLINK_EXP 2 36*4882a593Smuzhiyun #define NFNL_SUBSYS_QUEUE 3 37*4882a593Smuzhiyun #define NFNL_SUBSYS_ULOG 4 38*4882a593Smuzhiyun-#define NFNL_SUBSYS_COUNT 5 39*4882a593Smuzhiyun+#define NFNL_SUBSYS_OSF 5 40*4882a593Smuzhiyun+#define NFNL_SUBSYS_IPSET 6 41*4882a593Smuzhiyun+#define NFNL_SUBSYS_COUNT 7 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun-#ifdef __KERNEL__ 44*4882a593Smuzhiyun- 45*4882a593Smuzhiyun-#include <linux/netlink.h> 46*4882a593Smuzhiyun-#include <linux/capability.h> 47*4882a593Smuzhiyun-#include <net/netlink.h> 48*4882a593Smuzhiyun- 49*4882a593Smuzhiyun-struct nfnl_callback 50*4882a593Smuzhiyun-{ 51*4882a593Smuzhiyun- int (*call)(struct sock *nl, struct sk_buff *skb, 52*4882a593Smuzhiyun- struct nlmsghdr *nlh, struct nlattr *cda[]); 53*4882a593Smuzhiyun- const struct nla_policy *policy; /* netlink attribute policy */ 54*4882a593Smuzhiyun- const u_int16_t attr_count; /* number of nlattr's */ 55*4882a593Smuzhiyun-}; 56*4882a593Smuzhiyun- 57*4882a593Smuzhiyun-struct nfnetlink_subsystem 58*4882a593Smuzhiyun-{ 59*4882a593Smuzhiyun- const char *name; 60*4882a593Smuzhiyun- __u8 subsys_id; /* nfnetlink subsystem ID */ 61*4882a593Smuzhiyun- __u8 cb_count; /* number of callbacks */ 62*4882a593Smuzhiyun- const struct nfnl_callback *cb; /* callback for individual types */ 63*4882a593Smuzhiyun-}; 64*4882a593Smuzhiyun- 65*4882a593Smuzhiyun-extern int nfnetlink_subsys_register(const struct nfnetlink_subsystem *n); 66*4882a593Smuzhiyun-extern int nfnetlink_subsys_unregister(const struct nfnetlink_subsystem *n); 67*4882a593Smuzhiyun- 68*4882a593Smuzhiyun-extern int nfnetlink_has_listeners(unsigned int group); 69*4882a593Smuzhiyun-extern int nfnetlink_send(struct sk_buff *skb, u32 pid, unsigned group, 70*4882a593Smuzhiyun- int echo); 71*4882a593Smuzhiyun-extern int nfnetlink_unicast(struct sk_buff *skb, u_int32_t pid, int flags); 72*4882a593Smuzhiyun- 73*4882a593Smuzhiyun-#define MODULE_ALIAS_NFNL_SUBSYS(subsys) \ 74*4882a593Smuzhiyun- MODULE_ALIAS("nfnetlink-subsys-" __stringify(subsys)) 75*4882a593Smuzhiyun- 76*4882a593Smuzhiyun-#endif /* __KERNEL__ */ 77*4882a593Smuzhiyun #endif /* _NFNETLINK_H */ 78*4882a593Smuzhiyundiff --git a/include/libnfnetlink/linux_nfnetlink_compat.h b/include/libnfnetlink/linux_nfnetlink_compat.h 79*4882a593Smuzhiyunindex e145176..74b9e55 100644 80*4882a593Smuzhiyun--- a/include/libnfnetlink/linux_nfnetlink_compat.h 81*4882a593Smuzhiyun+++ b/include/libnfnetlink/linux_nfnetlink_compat.h 82*4882a593Smuzhiyun@@ -1,6 +1,8 @@ 83*4882a593Smuzhiyun #ifndef _NFNETLINK_COMPAT_H 84*4882a593Smuzhiyun #define _NFNETLINK_COMPAT_H 85*4882a593Smuzhiyun-#ifndef __KERNEL__ 86*4882a593Smuzhiyun+ 87*4882a593Smuzhiyun+#include <linux/types.h> 88*4882a593Smuzhiyun+ 89*4882a593Smuzhiyun /* Old nfnetlink macros for userspace */ 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun /* nfnetlink groups: Up to 32 maximum */ 92*4882a593Smuzhiyun@@ -18,10 +20,9 @@ 93*4882a593Smuzhiyun * ! nfnetlink use the same attributes methods. - J. Schulist. 94*4882a593Smuzhiyun */ 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun-struct nfattr 97*4882a593Smuzhiyun-{ 98*4882a593Smuzhiyun- u_int16_t nfa_len; 99*4882a593Smuzhiyun- u_int16_t nfa_type; /* we use 15 bits for the type, and the highest 100*4882a593Smuzhiyun+struct nfattr { 101*4882a593Smuzhiyun+ __u16 nfa_len; 102*4882a593Smuzhiyun+ __u16 nfa_type; /* we use 15 bits for the type, and the highest 103*4882a593Smuzhiyun * bit to indicate whether the payload is nested */ 104*4882a593Smuzhiyun }; 105*4882a593Smuzhiyun 106*4882a593Smuzhiyun@@ -57,5 +58,4 @@ struct nfattr 107*4882a593Smuzhiyun + NLMSG_ALIGN(sizeof(struct nfgenmsg)))) 108*4882a593Smuzhiyun #define NFM_PAYLOAD(n) NLMSG_PAYLOAD(n, sizeof(struct nfgenmsg)) 109*4882a593Smuzhiyun 110*4882a593Smuzhiyun-#endif /* ! __KERNEL__ */ 111*4882a593Smuzhiyun #endif /* _NFNETLINK_COMPAT_H */ 112*4882a593Smuzhiyun-- 113*4882a593Smuzhiyuncgit v1.2.3 114*4882a593Smuzhiyun 115