14d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/**************************************************************************** 24d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin **************************************************************************** 34d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** 44d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** This header was automatically generated from a Linux kernel header 54d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** of the same name, to make information necessary for userspace to 64d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** call into the kernel available to libc. It contains only constants, 74d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** structures, and macros generated from the original header, and thus, 84d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** contains no copyrightable information. 94d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** 104d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** To edit the content of this header, modify the corresponding 114d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** source file (e.g. under external/kernel-headers/original/) then 124d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** run bionic/libc/kernel/tools/update_all.py 134d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** 144d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** Any manual change here will be lost the next time this script will 154d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** be run. You've been warned! 164d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin *** 174d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin **************************************************************************** 184d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin ****************************************************************************/ 194d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#ifndef _UAPI__LINUX_NETLINK_H 204d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define _UAPI__LINUX_NETLINK_H 214d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#include <linux/socket.h> 224d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#include <linux/types.h> 234d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 244d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_ROUTE 0 254d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_UNUSED 1 264d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_USERSOCK 2 274d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_FIREWALL 3 284d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 294d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_SOCK_DIAG 4 304d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_NFLOG 5 314d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_XFRM 6 324d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_SELINUX 7 334d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 344d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_ISCSI 8 354d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_AUDIT 9 364d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_FIB_LOOKUP 10 374d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_CONNECTOR 11 384d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 394d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_NETFILTER 12 404d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_IP6_FW 13 414d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_DNRTMSG 14 424d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_KOBJECT_UEVENT 15 434d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 444d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_GENERIC 16 454d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_SCSITRANSPORT 18 464d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_ECRYPTFS 19 474d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_RDMA 20 484d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 494d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_CRYPTO 21 504d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_SOCKEV 22 514d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_INET_DIAG NETLINK_SOCK_DIAG 524d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define MAX_LINKS 32 534d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 544d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct sockaddr_nl { 554d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __kernel_sa_family_t nl_family; 564d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned short nl_pad; 574d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nl_pid; 584d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 594d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nl_groups; 604d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 614d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nlmsghdr { 624d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nlmsg_len; 634d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 644d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u16 nlmsg_type; 654d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u16 nlmsg_flags; 664d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nlmsg_seq; 674d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nlmsg_pid; 684d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 694d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 704d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_REQUEST 1 714d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_MULTI 2 724d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_ACK 4 734d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 744d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_ECHO 8 754d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_DUMP_INTR 16 764d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_ROOT 0x100 774d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_MATCH 0x200 784d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 794d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_ATOMIC 0x400 804d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_DUMP (NLM_F_ROOT|NLM_F_MATCH) 814d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_REPLACE 0x100 824d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_EXCL 0x200 834d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 844d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_CREATE 0x400 854d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLM_F_APPEND 0x800 864d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_ALIGNTO 4U 874d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_ALIGN(len) ( ((len)+NLMSG_ALIGNTO-1) & ~(NLMSG_ALIGNTO-1) ) 884d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 894d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_HDRLEN ((int) NLMSG_ALIGN(sizeof(struct nlmsghdr))) 904d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_LENGTH(len) ((len) + NLMSG_HDRLEN) 914d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_SPACE(len) NLMSG_ALIGN(NLMSG_LENGTH(len)) 924d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_DATA(nlh) ((void*)(((char*)nlh) + NLMSG_LENGTH(0))) 934d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 944d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_NEXT(nlh,len) ((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), (struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len))) 954d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_OK(nlh,len) ((len) >= (int)sizeof(struct nlmsghdr) && (nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && (nlh)->nlmsg_len <= (len)) 964d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_PAYLOAD(nlh,len) ((nlh)->nlmsg_len - NLMSG_SPACE((len))) 974d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_NOOP 0x1 984d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 994d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_ERROR 0x2 1004d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_DONE 0x3 1014d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_OVERRUN 0x4 1024d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLMSG_MIN_TYPE 0x10 1034d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1044d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nlmsgerr { 1054d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin int error; 1064d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin struct nlmsghdr msg; 1074d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1084d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1094d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_ADD_MEMBERSHIP 1 1104d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_DROP_MEMBERSHIP 2 1114d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_PKTINFO 3 1124d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_BROADCAST_ERROR 4 1134d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1144d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_NO_ENOBUFS 5 1154d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_RX_RING 6 1164d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NETLINK_TX_RING 7 1174d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nl_pktinfo { 1184d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1194d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 group; 1204d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1214d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nl_mmap_req { 1224d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_block_size; 1234d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1244d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_block_nr; 1254d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_frame_size; 1264d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_frame_nr; 1274d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1284d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1294d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nl_mmap_hdr { 1304d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_status; 1314d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin unsigned int nm_len; 1324d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nm_group; 1334d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1344d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nm_pid; 1354d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nm_uid; 1364d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u32 nm_gid; 1374d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1384d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1394d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinenum nl_mmap_status { 1404d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NL_MMAP_STATUS_UNUSED, 1414d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NL_MMAP_STATUS_RESERVED, 1424d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NL_MMAP_STATUS_VALID, 1434d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1444d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NL_MMAP_STATUS_COPY, 1454d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NL_MMAP_STATUS_SKIP, 1464d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1474d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NL_MMAP_MSG_ALIGNMENT NLMSG_ALIGNTO 1484d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1494d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NL_MMAP_MSG_ALIGN(sz) __ALIGN_KERNEL(sz, NL_MMAP_MSG_ALIGNMENT) 1504d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NL_MMAP_HDRLEN NL_MMAP_MSG_ALIGN(sizeof(struct nl_mmap_hdr)) 1514d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NET_MAJOR 36 1524d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinenum { 1534d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1544d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NETLINK_UNCONNECTED = 0, 1554d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin NETLINK_CONNECTED, 1564d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1574d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjinstruct nlattr { 1584d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1594d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u16 nla_len; 1604d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin __u16 nla_type; 1614d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin}; 1624d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_F_NESTED (1 << 15) 1634d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1644d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_F_NET_BYTEORDER (1 << 14) 1654d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_TYPE_MASK ~(NLA_F_NESTED | NLA_F_NET_BYTEORDER) 1664d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_ALIGNTO 4 1674d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_ALIGN(len) (((len) + NLA_ALIGNTO - 1) & ~(NLA_ALIGNTO - 1)) 1684d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 1694d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#define NLA_HDRLEN ((int) NLA_ALIGN(sizeof(struct nlattr))) 1704d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin#endif 1714d667bae0175a66dffc4d241a449e706bdee0a85Patrick Tjin 172