#ifndef __LINUX_NETLINK_WRAPPER_H #define __LINUX_NETLINK_WRAPPER_H 1 #include #include_next #ifndef NLA_TYPE_MASK #define NLA_F_NESTED (1 << 15) #define NLA_F_NET_BYTEORDER (1 << 14) #define NLA_TYPE_MASK ~(NLA_F_NESTED | NLA_F_NET_BYTEORDER) #endif #include #include #ifndef NLMSG_DEFAULT_SIZE #define NLMSG_DEFAULT_SIZE (NLMSG_GOODSIZE - NLMSG_HDRLEN) #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,19) #define nlmsg_new(s, f) nlmsg_new_proper((s), (f)) static inline struct sk_buff *nlmsg_new_proper(int size, gfp_t flags) { return alloc_skb(size, flags); } #endif /* linux kernel < 2.6.19 */ #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) static inline struct nlmsghdr *nlmsg_hdr(const struct sk_buff *skb) { return (struct nlmsghdr *)skb->data; } #endif #endif