xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/fib_rules.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
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 __LINUX_FIB_RULES_H
8*8d67ca89SAndroid Build Coastguard Worker #define __LINUX_FIB_RULES_H
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #include <linux/rtnetlink.h>
11*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_PERMANENT 0x00000001
12*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_INVERT 0x00000002
13*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_UNRESOLVED 0x00000004
14*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_IIF_DETACHED 0x00000008
15*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_DEV_DETACHED FIB_RULE_IIF_DETACHED
16*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_OIF_DETACHED 0x00000010
17*8d67ca89SAndroid Build Coastguard Worker #define FIB_RULE_FIND_SADDR 0x00010000
18*8d67ca89SAndroid Build Coastguard Worker struct fib_rule_hdr {
19*8d67ca89SAndroid Build Coastguard Worker   __u8 family;
20*8d67ca89SAndroid Build Coastguard Worker   __u8 dst_len;
21*8d67ca89SAndroid Build Coastguard Worker   __u8 src_len;
22*8d67ca89SAndroid Build Coastguard Worker   __u8 tos;
23*8d67ca89SAndroid Build Coastguard Worker   __u8 table;
24*8d67ca89SAndroid Build Coastguard Worker   __u8 res1;
25*8d67ca89SAndroid Build Coastguard Worker   __u8 res2;
26*8d67ca89SAndroid Build Coastguard Worker   __u8 action;
27*8d67ca89SAndroid Build Coastguard Worker   __u32 flags;
28*8d67ca89SAndroid Build Coastguard Worker };
29*8d67ca89SAndroid Build Coastguard Worker struct fib_rule_uid_range {
30*8d67ca89SAndroid Build Coastguard Worker   __u32 start;
31*8d67ca89SAndroid Build Coastguard Worker   __u32 end;
32*8d67ca89SAndroid Build Coastguard Worker };
33*8d67ca89SAndroid Build Coastguard Worker struct fib_rule_port_range {
34*8d67ca89SAndroid Build Coastguard Worker   __u16 start;
35*8d67ca89SAndroid Build Coastguard Worker   __u16 end;
36*8d67ca89SAndroid Build Coastguard Worker };
37*8d67ca89SAndroid Build Coastguard Worker enum {
38*8d67ca89SAndroid Build Coastguard Worker   FRA_UNSPEC,
39*8d67ca89SAndroid Build Coastguard Worker   FRA_DST,
40*8d67ca89SAndroid Build Coastguard Worker   FRA_SRC,
41*8d67ca89SAndroid Build Coastguard Worker   FRA_IIFNAME,
42*8d67ca89SAndroid Build Coastguard Worker #define FRA_IFNAME FRA_IIFNAME
43*8d67ca89SAndroid Build Coastguard Worker   FRA_GOTO,
44*8d67ca89SAndroid Build Coastguard Worker   FRA_UNUSED2,
45*8d67ca89SAndroid Build Coastguard Worker   FRA_PRIORITY,
46*8d67ca89SAndroid Build Coastguard Worker   FRA_UNUSED3,
47*8d67ca89SAndroid Build Coastguard Worker   FRA_UNUSED4,
48*8d67ca89SAndroid Build Coastguard Worker   FRA_UNUSED5,
49*8d67ca89SAndroid Build Coastguard Worker   FRA_FWMARK,
50*8d67ca89SAndroid Build Coastguard Worker   FRA_FLOW,
51*8d67ca89SAndroid Build Coastguard Worker   FRA_TUN_ID,
52*8d67ca89SAndroid Build Coastguard Worker   FRA_SUPPRESS_IFGROUP,
53*8d67ca89SAndroid Build Coastguard Worker   FRA_SUPPRESS_PREFIXLEN,
54*8d67ca89SAndroid Build Coastguard Worker   FRA_TABLE,
55*8d67ca89SAndroid Build Coastguard Worker   FRA_FWMASK,
56*8d67ca89SAndroid Build Coastguard Worker   FRA_OIFNAME,
57*8d67ca89SAndroid Build Coastguard Worker   FRA_PAD,
58*8d67ca89SAndroid Build Coastguard Worker   FRA_L3MDEV,
59*8d67ca89SAndroid Build Coastguard Worker   FRA_UID_RANGE,
60*8d67ca89SAndroid Build Coastguard Worker   FRA_PROTOCOL,
61*8d67ca89SAndroid Build Coastguard Worker   FRA_IP_PROTO,
62*8d67ca89SAndroid Build Coastguard Worker   FRA_SPORT_RANGE,
63*8d67ca89SAndroid Build Coastguard Worker   FRA_DPORT_RANGE,
64*8d67ca89SAndroid Build Coastguard Worker   __FRA_MAX
65*8d67ca89SAndroid Build Coastguard Worker };
66*8d67ca89SAndroid Build Coastguard Worker #define FRA_MAX (__FRA_MAX - 1)
67*8d67ca89SAndroid Build Coastguard Worker enum {
68*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_UNSPEC,
69*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_TO_TBL,
70*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_GOTO,
71*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_NOP,
72*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_RES3,
73*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_RES4,
74*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_BLACKHOLE,
75*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_UNREACHABLE,
76*8d67ca89SAndroid Build Coastguard Worker   FR_ACT_PROHIBIT,
77*8d67ca89SAndroid Build Coastguard Worker   __FR_ACT_MAX,
78*8d67ca89SAndroid Build Coastguard Worker };
79*8d67ca89SAndroid Build Coastguard Worker #define FR_ACT_MAX (__FR_ACT_MAX - 1)
80*8d67ca89SAndroid Build Coastguard Worker #endif
81