1*c9945492SAndroid Build Coastguard Worker #ifndef _NETPACKET_PACKET_H 2*c9945492SAndroid Build Coastguard Worker #define _NETPACKET_PACKET_H 3*c9945492SAndroid Build Coastguard Worker 4*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus 5*c9945492SAndroid Build Coastguard Worker extern "C" { 6*c9945492SAndroid Build Coastguard Worker #endif 7*c9945492SAndroid Build Coastguard Worker 8*c9945492SAndroid Build Coastguard Worker struct sockaddr_ll { 9*c9945492SAndroid Build Coastguard Worker unsigned short sll_family, sll_protocol; 10*c9945492SAndroid Build Coastguard Worker int sll_ifindex; 11*c9945492SAndroid Build Coastguard Worker unsigned short sll_hatype; 12*c9945492SAndroid Build Coastguard Worker unsigned char sll_pkttype, sll_halen; 13*c9945492SAndroid Build Coastguard Worker unsigned char sll_addr[8]; 14*c9945492SAndroid Build Coastguard Worker }; 15*c9945492SAndroid Build Coastguard Worker 16*c9945492SAndroid Build Coastguard Worker struct packet_mreq { 17*c9945492SAndroid Build Coastguard Worker int mr_ifindex; 18*c9945492SAndroid Build Coastguard Worker unsigned short int mr_type, mr_alen; 19*c9945492SAndroid Build Coastguard Worker unsigned char mr_address[8]; 20*c9945492SAndroid Build Coastguard Worker }; 21*c9945492SAndroid Build Coastguard Worker 22*c9945492SAndroid Build Coastguard Worker #define PACKET_HOST 0 23*c9945492SAndroid Build Coastguard Worker #define PACKET_BROADCAST 1 24*c9945492SAndroid Build Coastguard Worker #define PACKET_MULTICAST 2 25*c9945492SAndroid Build Coastguard Worker #define PACKET_OTHERHOST 3 26*c9945492SAndroid Build Coastguard Worker #define PACKET_OUTGOING 4 27*c9945492SAndroid Build Coastguard Worker #define PACKET_LOOPBACK 5 28*c9945492SAndroid Build Coastguard Worker #define PACKET_FASTROUTE 6 29*c9945492SAndroid Build Coastguard Worker 30*c9945492SAndroid Build Coastguard Worker #define PACKET_ADD_MEMBERSHIP 1 31*c9945492SAndroid Build Coastguard Worker #define PACKET_DROP_MEMBERSHIP 2 32*c9945492SAndroid Build Coastguard Worker #define PACKET_RECV_OUTPUT 3 33*c9945492SAndroid Build Coastguard Worker #define PACKET_RX_RING 5 34*c9945492SAndroid Build Coastguard Worker #define PACKET_STATISTICS 6 35*c9945492SAndroid Build Coastguard Worker #define PACKET_COPY_THRESH 7 36*c9945492SAndroid Build Coastguard Worker #define PACKET_AUXDATA 8 37*c9945492SAndroid Build Coastguard Worker #define PACKET_ORIGDEV 9 38*c9945492SAndroid Build Coastguard Worker #define PACKET_VERSION 10 39*c9945492SAndroid Build Coastguard Worker #define PACKET_HDRLEN 11 40*c9945492SAndroid Build Coastguard Worker #define PACKET_RESERVE 12 41*c9945492SAndroid Build Coastguard Worker #define PACKET_TX_RING 13 42*c9945492SAndroid Build Coastguard Worker #define PACKET_LOSS 14 43*c9945492SAndroid Build Coastguard Worker #define PACKET_VNET_HDR 15 44*c9945492SAndroid Build Coastguard Worker #define PACKET_TX_TIMESTAMP 16 45*c9945492SAndroid Build Coastguard Worker #define PACKET_TIMESTAMP 17 46*c9945492SAndroid Build Coastguard Worker #define PACKET_FANOUT 18 47*c9945492SAndroid Build Coastguard Worker #define PACKET_TX_HAS_OFF 19 48*c9945492SAndroid Build Coastguard Worker #define PACKET_QDISC_BYPASS 20 49*c9945492SAndroid Build Coastguard Worker #define PACKET_ROLLOVER_STATS 21 50*c9945492SAndroid Build Coastguard Worker #define PACKET_FANOUT_DATA 22 51*c9945492SAndroid Build Coastguard Worker #define PACKET_IGNORE_OUTGOING 23 52*c9945492SAndroid Build Coastguard Worker 53*c9945492SAndroid Build Coastguard Worker #define PACKET_MR_MULTICAST 0 54*c9945492SAndroid Build Coastguard Worker #define PACKET_MR_PROMISC 1 55*c9945492SAndroid Build Coastguard Worker #define PACKET_MR_ALLMULTI 2 56*c9945492SAndroid Build Coastguard Worker #define PACKET_MR_UNICAST 3 57*c9945492SAndroid Build Coastguard Worker 58*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus 59*c9945492SAndroid Build Coastguard Worker } 60*c9945492SAndroid Build Coastguard Worker #endif 61*c9945492SAndroid Build Coastguard Worker 62*c9945492SAndroid Build Coastguard Worker #endif 63