1*8d67ca89SAndroid Build Coastguard Worker /* 2*8d67ca89SAndroid Build Coastguard Worker * This file is auto-generated. Modifications will be lost. 3*8d67ca89SAndroid Build Coastguard Worker * 4*8d67ca89SAndroid Build Coastguard Worker * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/ 5*8d67ca89SAndroid Build Coastguard Worker * for more information. 6*8d67ca89SAndroid Build Coastguard Worker */ 7*8d67ca89SAndroid Build Coastguard Worker #ifndef _UAPI_MPLS_H 8*8d67ca89SAndroid Build Coastguard Worker #define _UAPI_MPLS_H 9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h> 10*8d67ca89SAndroid Build Coastguard Worker #include <asm/byteorder.h> 11*8d67ca89SAndroid Build Coastguard Worker struct mpls_label { 12*8d67ca89SAndroid Build Coastguard Worker __be32 entry; 13*8d67ca89SAndroid Build Coastguard Worker }; 14*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_LABEL_MASK 0xFFFFF000 15*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_LABEL_SHIFT 12 16*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_TC_MASK 0x00000E00 17*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_TC_SHIFT 9 18*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_S_MASK 0x00000100 19*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_S_SHIFT 8 20*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_TTL_MASK 0x000000FF 21*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LS_TTL_SHIFT 0 22*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_IPV4NULL 0 23*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_RTALERT 1 24*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_IPV6NULL 2 25*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_IMPLNULL 3 26*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_ENTROPY 7 27*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_GAL 13 28*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_OAMALERT 14 29*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_EXTENSION 15 30*8d67ca89SAndroid Build Coastguard Worker #define MPLS_LABEL_FIRST_UNRESERVED 16 31*8d67ca89SAndroid Build Coastguard Worker enum { 32*8d67ca89SAndroid Build Coastguard Worker MPLS_STATS_UNSPEC, 33*8d67ca89SAndroid Build Coastguard Worker MPLS_STATS_LINK, 34*8d67ca89SAndroid Build Coastguard Worker __MPLS_STATS_MAX, 35*8d67ca89SAndroid Build Coastguard Worker }; 36*8d67ca89SAndroid Build Coastguard Worker #define MPLS_STATS_MAX (__MPLS_STATS_MAX - 1) 37*8d67ca89SAndroid Build Coastguard Worker struct mpls_link_stats { 38*8d67ca89SAndroid Build Coastguard Worker __u64 rx_packets; 39*8d67ca89SAndroid Build Coastguard Worker __u64 tx_packets; 40*8d67ca89SAndroid Build Coastguard Worker __u64 rx_bytes; 41*8d67ca89SAndroid Build Coastguard Worker __u64 tx_bytes; 42*8d67ca89SAndroid Build Coastguard Worker __u64 rx_errors; 43*8d67ca89SAndroid Build Coastguard Worker __u64 tx_errors; 44*8d67ca89SAndroid Build Coastguard Worker __u64 rx_dropped; 45*8d67ca89SAndroid Build Coastguard Worker __u64 tx_dropped; 46*8d67ca89SAndroid Build Coastguard Worker __u64 rx_noroute; 47*8d67ca89SAndroid Build Coastguard Worker }; 48*8d67ca89SAndroid Build Coastguard Worker #endif 49