1 #ifndef __NETLINK_KERNEL_H_
2 #define __NETLINK_KERNEL_H_
19 sa_family_t nl_family;
22 unsigned short nl_pad;
67 #define NLM_F_REQUEST 1
95 #define NLM_F_ROOT 0x100
100 #define NLM_F_MATCH 0x200
107 #define NLM_F_ATOMIC 0x400
112 #define NLM_F_DUMP (NLM_F_ROOT|NLM_F_MATCH)
124 #define NLM_F_REPLACE 0x100
129 #define NLM_F_EXCL 0x200
134 #define NLM_F_CREATE 0x400
139 #define NLM_F_APPEND 0x800
151 #define NLMSG_NOOP 0x1
158 #define NLMSG_ERROR 0x2
163 #define NLMSG_DONE 0x3
168 #define NLMSG_OVERRUN 0x4
173 #define NLMSG_MIN_TYPE 0x10
199 #define NLMSG_ALIGNTO 4
206 #define NLMSG_ALIGN(len) ( ((len)+NLMSG_ALIGNTO-1) & ~(NLMSG_ALIGNTO-1) )
213 #define NLMSG_HDRLEN ((int) NLMSG_ALIGN(sizeof(struct nlmsghdr)))
268 #define NLA_F_NESTED (1 << 15)
269 #define NLA_F_NET_BYTEORDER (1 << 14)
270 #define NLA_TYPE_MASK ~(NLA_F_NESTED | NLA_F_NET_BYTEORDER)
274 #define NLA_ALIGNTO 4
281 #define NLA_ALIGN(len) (((len) + NLA_ALIGNTO - 1) & ~(NLA_ALIGNTO - 1))
288 #define NLA_HDRLEN ((int) NLA_ALIGN(sizeof(struct nlattr)))