1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/**************************************************************************** 2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** This header was automatically generated from a Linux kernel header 5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** of the same name, to make information necessary for userspace to 6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** call into the kernel available to libc. It contains only constants, 7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** structures, and macros generated from the original header, and thus, 8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** contains no copyrightable information. 9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** To edit the content of this header, modify the corresponding 11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** source file (e.g. under external/kernel-headers/original/) then 12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** run bionic/libc/kernel/tools/update_all.py 13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** Any manual change here will be lost the next time this script will 15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** be run. You've been warned! 16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/ 19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef _UAPI__LINUX_GENERIC_NETLINK_H 20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define _UAPI__LINUX_GENERIC_NETLINK_H 21655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/types.h> 22655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/netlink.h> 23655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_NAMSIZ 16 24655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_MIN_ID NLMSG_MIN_TYPE 25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_MAX_ID 1023 26655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct genlmsghdr { 27d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u8 cmd; 28d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u8 version; 29d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u16 reserved; 30655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 31655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_HDRLEN NLMSG_ALIGN(sizeof(struct genlmsghdr)) 32655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_ADMIN_PERM 0x01 33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_CMD_CAP_DO 0x02 34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_CMD_CAP_DUMP 0x04 35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_CMD_CAP_HASPOL 0x08 36106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define GENL_UNS_ADMIN_PERM 0x10 37655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define GENL_ID_CTRL NLMSG_MIN_TYPE 38106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris#define GENL_ID_VFS_DQUOT (NLMSG_MIN_TYPE + 1) 3938062f954c637861348dd8078cefb73554e6f12cChristopher Ferris#define GENL_ID_PMCRAID (NLMSG_MIN_TYPE + 2) 4048af7cb2e205dcc2f09a1a1b8a1a37c93e1943f0Christopher Ferris#define GENL_START_ALLOC (NLMSG_MIN_TYPE + 3) 4138062f954c637861348dd8078cefb73554e6f12cChristopher Ferrisenum { 42d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_UNSPEC, 43106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_CMD_NEWFAMILY, 44d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_DELFAMILY, 45d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_GETFAMILY, 46d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_NEWOPS, 47106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_CMD_DELOPS, 48d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_GETOPS, 49d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_NEWMCAST_GRP, 50d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_CMD_DELMCAST_GRP, 51106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_CMD_GETMCAST_GRP, 52d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __CTRL_CMD_MAX, 53655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 54655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define CTRL_CMD_MAX (__CTRL_CMD_MAX - 1) 55106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum { 56d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_UNSPEC, 57d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_FAMILY_ID, 58d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_FAMILY_NAME, 59106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_ATTR_VERSION, 60d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_HDRSIZE, 61d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_MAXATTR, 62d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_OPS, 63106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_ATTR_MCAST_GROUPS, 64d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __CTRL_ATTR_MAX, 65655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 66655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define CTRL_ATTR_MAX (__CTRL_ATTR_MAX - 1) 67106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferrisenum { 68d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_OP_UNSPEC, 69d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_OP_ID, 70d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_OP_FLAGS, 71106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris __CTRL_ATTR_OP_MAX, 72655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 73655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define CTRL_ATTR_OP_MAX (__CTRL_ATTR_OP_MAX - 1) 74655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum { 75106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris CTRL_ATTR_MCAST_GRP_UNSPEC, 76d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_MCAST_GRP_NAME, 77d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao CTRL_ATTR_MCAST_GRP_ID, 78d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __CTRL_ATTR_MCAST_GRP_MAX, 79106b3a8a7dc03c19a45e322de425ac56aafac358Christopher Ferris}; 80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define CTRL_ATTR_MCAST_GRP_MAX (__CTRL_ATTR_MCAST_GRP_MAX - 1) 81655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif 82