mpls.h revision 525ce914edf136d2bd02ac8c404d56c52e737f4d
1/****************************************************************************
2 ****************************************************************************
3 ***
4 ***   This header was automatically generated from a Linux kernel header
5 ***   of the same name, to make information necessary for userspace to
6 ***   call into the kernel available to libc.  It contains only constants,
7 ***   structures, and macros generated from the original header, and thus,
8 ***   contains no copyrightable information.
9 ***
10 ***   To edit the content of this header, modify the corresponding
11 ***   source file (e.g. under external/kernel-headers/original/) then
12 ***   run bionic/libc/kernel/tools/update_all.py
13 ***
14 ***   Any manual change here will be lost the next time this script will
15 ***   be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef _UAPI_MPLS_H
20#define _UAPI_MPLS_H
21#include <linux/types.h>
22#include <asm/byteorder.h>
23struct mpls_label {
24  __be32 entry;
25};
26#define MPLS_LS_LABEL_MASK 0xFFFFF000
27#define MPLS_LS_LABEL_SHIFT 12
28#define MPLS_LS_TC_MASK 0x00000E00
29#define MPLS_LS_TC_SHIFT 9
30#define MPLS_LS_S_MASK 0x00000100
31#define MPLS_LS_S_SHIFT 8
32#define MPLS_LS_TTL_MASK 0x000000FF
33#define MPLS_LS_TTL_SHIFT 0
34#define MPLS_LABEL_IPV4NULL 0
35#define MPLS_LABEL_RTALERT 1
36#define MPLS_LABEL_IPV6NULL 2
37#define MPLS_LABEL_IMPLNULL 3
38#define MPLS_LABEL_ENTROPY 7
39#define MPLS_LABEL_GAL 13
40#define MPLS_LABEL_OAMALERT 14
41#define MPLS_LABEL_EXTENSION 15
42#define MPLS_LABEL_FIRST_UNRESERVED 16
43enum {
44  MPLS_STATS_UNSPEC,
45  MPLS_STATS_LINK,
46  __MPLS_STATS_MAX,
47};
48#define MPLS_STATS_MAX (__MPLS_STATS_MAX - 1)
49struct mpls_link_stats {
50  __u64 rx_packets;
51  __u64 tx_packets;
52  __u64 rx_bytes;
53  __u64 tx_bytes;
54  __u64 rx_errors;
55  __u64 tx_errors;
56  __u64 rx_dropped;
57  __u64 tx_dropped;
58  __u64 rx_noroute;
59};
60#endif
61