1*cda5da8dSAndroid Build Coastguard Worker /* 2*cda5da8dSAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*cda5da8dSAndroid Build Coastguard Worker * 4*cda5da8dSAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*cda5da8dSAndroid Build Coastguard Worker * for more information. 6*cda5da8dSAndroid Build Coastguard Worker */ 7*cda5da8dSAndroid Build Coastguard Worker #ifndef _UAPI_LINUX_L2TP_H_ 8*cda5da8dSAndroid Build Coastguard Worker #define _UAPI_LINUX_L2TP_H_ 9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h> 10*cda5da8dSAndroid Build Coastguard Worker #include <linux/socket.h> 11*cda5da8dSAndroid Build Coastguard Worker #include <linux/in.h> 12*cda5da8dSAndroid Build Coastguard Worker #include <linux/in6.h> 13*cda5da8dSAndroid Build Coastguard Worker #define __SOCK_SIZE__ 16 14*cda5da8dSAndroid Build Coastguard Worker struct sockaddr_l2tpip { 15*cda5da8dSAndroid Build Coastguard Worker __kernel_sa_family_t l2tp_family; 16*cda5da8dSAndroid Build Coastguard Worker __be16 l2tp_unused; 17*cda5da8dSAndroid Build Coastguard Worker struct in_addr l2tp_addr; 18*cda5da8dSAndroid Build Coastguard Worker __u32 l2tp_conn_id; 19*cda5da8dSAndroid Build Coastguard Worker unsigned char __pad[__SOCK_SIZE__ - sizeof(__kernel_sa_family_t) - sizeof(__be16) - sizeof(struct in_addr) - sizeof(__u32)]; 20*cda5da8dSAndroid Build Coastguard Worker }; 21*cda5da8dSAndroid Build Coastguard Worker struct sockaddr_l2tpip6 { 22*cda5da8dSAndroid Build Coastguard Worker __kernel_sa_family_t l2tp_family; 23*cda5da8dSAndroid Build Coastguard Worker __be16 l2tp_unused; 24*cda5da8dSAndroid Build Coastguard Worker __be32 l2tp_flowinfo; 25*cda5da8dSAndroid Build Coastguard Worker struct in6_addr l2tp_addr; 26*cda5da8dSAndroid Build Coastguard Worker __u32 l2tp_scope_id; 27*cda5da8dSAndroid Build Coastguard Worker __u32 l2tp_conn_id; 28*cda5da8dSAndroid Build Coastguard Worker }; 29*cda5da8dSAndroid Build Coastguard Worker enum { 30*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_NOOP, 31*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_TUNNEL_CREATE, 32*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_TUNNEL_DELETE, 33*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_TUNNEL_MODIFY, 34*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_TUNNEL_GET, 35*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_SESSION_CREATE, 36*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_SESSION_DELETE, 37*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_SESSION_MODIFY, 38*cda5da8dSAndroid Build Coastguard Worker L2TP_CMD_SESSION_GET, 39*cda5da8dSAndroid Build Coastguard Worker __L2TP_CMD_MAX, 40*cda5da8dSAndroid Build Coastguard Worker }; 41*cda5da8dSAndroid Build Coastguard Worker #define L2TP_CMD_MAX (__L2TP_CMD_MAX - 1) 42*cda5da8dSAndroid Build Coastguard Worker enum { 43*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_NONE, 44*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PW_TYPE, 45*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_ENCAP_TYPE, 46*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_OFFSET, 47*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_DATA_SEQ, 48*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_L2SPEC_TYPE, 49*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_L2SPEC_LEN, 50*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PROTO_VERSION, 51*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_IFNAME, 52*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_CONN_ID, 53*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PEER_CONN_ID, 54*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_SESSION_ID, 55*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PEER_SESSION_ID, 56*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_UDP_CSUM, 57*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_VLAN_ID, 58*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_COOKIE, 59*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PEER_COOKIE, 60*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_DEBUG, 61*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RECV_SEQ, 62*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_SEND_SEQ, 63*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_LNS_MODE, 64*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_USING_IPSEC, 65*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RECV_TIMEOUT, 66*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_FD, 67*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_IP_SADDR, 68*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_IP_DADDR, 69*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_UDP_SPORT, 70*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_UDP_DPORT, 71*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_MTU, 72*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_MRU, 73*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_STATS, 74*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_IP6_SADDR, 75*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_IP6_DADDR, 76*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_UDP_ZERO_CSUM6_TX, 77*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_UDP_ZERO_CSUM6_RX, 78*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_PAD, 79*cda5da8dSAndroid Build Coastguard Worker __L2TP_ATTR_MAX, 80*cda5da8dSAndroid Build Coastguard Worker }; 81*cda5da8dSAndroid Build Coastguard Worker #define L2TP_ATTR_MAX (__L2TP_ATTR_MAX - 1) 82*cda5da8dSAndroid Build Coastguard Worker enum { 83*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_STATS_NONE, 84*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_TX_PACKETS, 85*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_TX_BYTES, 86*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_TX_ERRORS, 87*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_PACKETS, 88*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_BYTES, 89*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_SEQ_DISCARDS, 90*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_OOS_PACKETS, 91*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_ERRORS, 92*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_STATS_PAD, 93*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_COOKIE_DISCARDS, 94*cda5da8dSAndroid Build Coastguard Worker L2TP_ATTR_RX_INVALID, 95*cda5da8dSAndroid Build Coastguard Worker __L2TP_ATTR_STATS_MAX, 96*cda5da8dSAndroid Build Coastguard Worker }; 97*cda5da8dSAndroid Build Coastguard Worker #define L2TP_ATTR_STATS_MAX (__L2TP_ATTR_STATS_MAX - 1) 98*cda5da8dSAndroid Build Coastguard Worker enum l2tp_pwtype { 99*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_NONE = 0x0000, 100*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_ETH_VLAN = 0x0004, 101*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_ETH = 0x0005, 102*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_PPP = 0x0007, 103*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_PPP_AC = 0x0008, 104*cda5da8dSAndroid Build Coastguard Worker L2TP_PWTYPE_IP = 0x000b, 105*cda5da8dSAndroid Build Coastguard Worker __L2TP_PWTYPE_MAX 106*cda5da8dSAndroid Build Coastguard Worker }; 107*cda5da8dSAndroid Build Coastguard Worker enum l2tp_l2spec_type { 108*cda5da8dSAndroid Build Coastguard Worker L2TP_L2SPECTYPE_NONE, 109*cda5da8dSAndroid Build Coastguard Worker L2TP_L2SPECTYPE_DEFAULT, 110*cda5da8dSAndroid Build Coastguard Worker }; 111*cda5da8dSAndroid Build Coastguard Worker enum l2tp_encap_type { 112*cda5da8dSAndroid Build Coastguard Worker L2TP_ENCAPTYPE_UDP, 113*cda5da8dSAndroid Build Coastguard Worker L2TP_ENCAPTYPE_IP, 114*cda5da8dSAndroid Build Coastguard Worker }; 115*cda5da8dSAndroid Build Coastguard Worker enum l2tp_seqmode { 116*cda5da8dSAndroid Build Coastguard Worker L2TP_SEQ_NONE = 0, 117*cda5da8dSAndroid Build Coastguard Worker L2TP_SEQ_IP = 1, 118*cda5da8dSAndroid Build Coastguard Worker L2TP_SEQ_ALL = 2, 119*cda5da8dSAndroid Build Coastguard Worker }; 120*cda5da8dSAndroid Build Coastguard Worker enum l2tp_debug_flags { 121*cda5da8dSAndroid Build Coastguard Worker L2TP_MSG_DEBUG = (1 << 0), 122*cda5da8dSAndroid Build Coastguard Worker L2TP_MSG_CONTROL = (1 << 1), 123*cda5da8dSAndroid Build Coastguard Worker L2TP_MSG_SEQ = (1 << 2), 124*cda5da8dSAndroid Build Coastguard Worker L2TP_MSG_DATA = (1 << 3), 125*cda5da8dSAndroid Build Coastguard Worker }; 126*cda5da8dSAndroid Build Coastguard Worker #define L2TP_GENL_NAME "l2tp" 127*cda5da8dSAndroid Build Coastguard Worker #define L2TP_GENL_VERSION 0x1 128*cda5da8dSAndroid Build Coastguard Worker #define L2TP_GENL_MCGROUP "l2tp" 129*cda5da8dSAndroid Build Coastguard Worker #endif 130