| # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) | |
| --- | |
| name: rt-rule | |
| protocol: netlink-raw | |
| uapi-header: linux/fib_rules.h | |
| protonum: 0 | |
| doc: >- | |
| FIB rule management over rtnetlink. | |
| definitions: | |
| - | |
| name: rtgenmsg | |
| type: struct | |
| members: | |
| - | |
| name: family | |
| type: u8 | |
| - | |
| name: pad | |
| type: pad | |
| len: 3 | |
| - | |
| name: fib-rule-hdr | |
| type: struct | |
| members: | |
| - | |
| name: family | |
| type: u8 | |
| - | |
| name: dst-len | |
| type: u8 | |
| - | |
| name: src-len | |
| type: u8 | |
| - | |
| name: tos | |
| type: u8 | |
| - | |
| name: table | |
| type: u8 | |
| - | |
| name: res1 | |
| type: pad | |
| len: 1 | |
| - | |
| name: res2 | |
| type: pad | |
| len: 1 | |
| - | |
| name: action | |
| type: u8 | |
| enum: fr-act | |
| - | |
| name: flags | |
| type: u32 | |
| - | |
| name: fr-act | |
| type: enum | |
| enum-name: | |
| entries: | |
| - unspec | |
| - to-tbl | |
| - goto | |
| - nop | |
| - res3 | |
| - res4 | |
| - blackhole | |
| - unreachable | |
| - prohibit | |
| - | |
| name: fib-rule-port-range | |
| type: struct | |
| members: | |
| - | |
| name: start | |
| type: u16 | |
| - | |
| name: end | |
| type: u16 | |
| - | |
| name: fib-rule-uid-range | |
| type: struct | |
| members: | |
| - | |
| name: start | |
| type: u32 | |
| - | |
| name: end | |
| type: u32 | |
| attribute-sets: | |
| - | |
| name: fib-rule-attrs | |
| name-prefix: fra- | |
| attributes: | |
| - | |
| name: dst | |
| type: binary | |
| display-hint: ipv4-or-v6 | |
| - | |
| name: src | |
| type: binary | |
| display-hint: ipv4-or-v6 | |
| - | |
| name: iifname | |
| type: string | |
| - | |
| name: goto | |
| type: u32 | |
| - | |
| name: unused2 | |
| type: pad | |
| - | |
| name: priority | |
| type: u32 | |
| - | |
| name: unused3 | |
| type: pad | |
| - | |
| name: unused4 | |
| type: pad | |
| - | |
| name: unused5 | |
| type: pad | |
| - | |
| name: fwmark | |
| type: u32 | |
| display-hint: hex | |
| - | |
| name: flow | |
| type: u32 | |
| - | |
| name: tun-id | |
| type: u64 | |
| - | |
| name: suppress-ifgroup | |
| type: u32 | |
| - | |
| name: suppress-prefixlen | |
| type: u32 | |
| display-hint: hex | |
| - | |
| name: table | |
| type: u32 | |
| - | |
| name: fwmask | |
| type: u32 | |
| display-hint: hex | |
| - | |
| name: oifname | |
| type: string | |
| - | |
| name: pad | |
| type: pad | |
| - | |
| name: l3mdev | |
| type: u8 | |
| - | |
| name: uid-range | |
| type: binary | |
| struct: fib-rule-uid-range | |
| - | |
| name: protocol | |
| type: u8 | |
| - | |
| name: ip-proto | |
| type: u8 | |
| - | |
| name: sport-range | |
| type: binary | |
| struct: fib-rule-port-range | |
| - | |
| name: dport-range | |
| type: binary | |
| struct: fib-rule-port-range | |
| - | |
| name: dscp | |
| type: u8 | |
| - | |
| name: flowlabel | |
| type: u32 | |
| byte-order: big-endian | |
| display-hint: hex | |
| - | |
| name: flowlabel-mask | |
| type: u32 | |
| byte-order: big-endian | |
| display-hint: hex | |
| - | |
| name: sport-mask | |
| type: u16 | |
| display-hint: hex | |
| - | |
| name: dport-mask | |
| type: u16 | |
| display-hint: hex | |
| - | |
| name: dscp-mask | |
| type: u8 | |
| display-hint: hex | |
| operations: | |
| enum-model: directional | |
| fixed-header: fib-rule-hdr | |
| name-prefix: rtm- | |
| list: | |
| - | |
| name: newrule | |
| doc: Add new FIB rule | |
| attribute-set: fib-rule-attrs | |
| do: | |
| request: | |
| value: 32 | |
| attributes: &fib-rule-all | |
| - iifname | |
| - oifname | |
| - priority | |
| - fwmark | |
| - flow | |
| - tun-id | |
| - fwmask | |
| - table | |
| - suppress-prefixlen | |
| - suppress-ifgroup | |
| - goto | |
| - l3mdev | |
| - uid-range | |
| - protocol | |
| - ip-proto | |
| - sport-range | |
| - dport-range | |
| - dscp | |
| - flowlabel | |
| - flowlabel-mask | |
| - sport-mask | |
| - dport-mask | |
| - dscp-mask | |
| - | |
| name: newrule-ntf | |
| doc: Notify a rule creation | |
| value: 32 | |
| notify: getrule | |
| - | |
| name: delrule | |
| doc: Remove an existing FIB rule | |
| attribute-set: fib-rule-attrs | |
| do: | |
| request: | |
| value: 33 | |
| attributes: *fib-rule-all | |
| - | |
| name: delrule-ntf | |
| doc: Notify a rule deletion | |
| value: 33 | |
| notify: getrule | |
| - | |
| name: getrule | |
| doc: Dump all FIB rules | |
| attribute-set: fib-rule-attrs | |
| dump: | |
| request: | |
| value: 34 | |
| reply: | |
| value: 32 | |
| attributes: *fib-rule-all | |
| mcast-groups: | |
| list: | |
| - | |
| name: rtnlgrp-ipv4-rule | |
| value: 8 | |
| - | |
| name: rtnlgrp-ipv6-rule | |
| value: 19 |