nl-linux 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,324 @@
1
+ # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
+ ---
3
+ name: rt-route
4
+ protocol: netlink-raw
5
+ uapi-header: linux/rtnetlink.h
6
+ protonum: 0
7
+
8
+ doc: >-
9
+ Route configuration over rtnetlink.
10
+
11
+ definitions:
12
+ -
13
+ name: rtm-type
14
+ name-prefix: rtn-
15
+ enum-name:
16
+ type: enum
17
+ entries:
18
+ - unspec
19
+ - unicast
20
+ - local
21
+ - broadcast
22
+ - anycast
23
+ - multicast
24
+ - blackhole
25
+ - unreachable
26
+ - prohibit
27
+ - throw
28
+ - nat
29
+ - xresolve
30
+ -
31
+ name: rtmsg
32
+ type: struct
33
+ members:
34
+ -
35
+ name: rtm-family
36
+ type: u8
37
+ -
38
+ name: rtm-dst-len
39
+ type: u8
40
+ -
41
+ name: rtm-src-len
42
+ type: u8
43
+ -
44
+ name: rtm-tos
45
+ type: u8
46
+ -
47
+ name: rtm-table
48
+ type: u8
49
+ -
50
+ name: rtm-protocol
51
+ type: u8
52
+ -
53
+ name: rtm-scope
54
+ type: u8
55
+ -
56
+ name: rtm-type
57
+ type: u8
58
+ enum: rtm-type
59
+ -
60
+ name: rtm-flags
61
+ type: u32
62
+ -
63
+ name: rta-cacheinfo
64
+ type: struct
65
+ members:
66
+ -
67
+ name: rta-clntref
68
+ type: u32
69
+ -
70
+ name: rta-lastuse
71
+ type: u32
72
+ -
73
+ name: rta-expires
74
+ type: u32
75
+ -
76
+ name: rta-error
77
+ type: u32
78
+ -
79
+ name: rta-used
80
+ type: u32
81
+
82
+ attribute-sets:
83
+ -
84
+ name: route-attrs
85
+ name-prefix: rta-
86
+ attributes:
87
+ -
88
+ name: dst
89
+ type: binary
90
+ display-hint: ipv4-or-v6
91
+ -
92
+ name: src
93
+ type: binary
94
+ display-hint: ipv4-or-v6
95
+ -
96
+ name: iif
97
+ type: u32
98
+ -
99
+ name: oif
100
+ type: u32
101
+ -
102
+ name: gateway
103
+ type: binary
104
+ display-hint: ipv4-or-v6
105
+ -
106
+ name: priority
107
+ type: u32
108
+ -
109
+ name: prefsrc
110
+ type: binary
111
+ display-hint: ipv4-or-v6
112
+ -
113
+ name: metrics
114
+ type: nest
115
+ nested-attributes: metrics
116
+ -
117
+ name: multipath
118
+ type: binary
119
+ -
120
+ name: protoinfo # not used
121
+ type: binary
122
+ -
123
+ name: flow
124
+ type: u32
125
+ -
126
+ name: cacheinfo
127
+ type: binary
128
+ struct: rta-cacheinfo
129
+ -
130
+ name: session # not used
131
+ type: binary
132
+ -
133
+ name: mp-algo # not used
134
+ type: binary
135
+ -
136
+ name: table
137
+ type: u32
138
+ -
139
+ name: mark
140
+ type: u32
141
+ -
142
+ name: mfc-stats
143
+ type: binary
144
+ -
145
+ name: via
146
+ type: binary
147
+ -
148
+ name: newdst
149
+ type: binary
150
+ -
151
+ name: pref
152
+ type: u8
153
+ -
154
+ name: encap-type
155
+ type: u16
156
+ -
157
+ name: encap
158
+ type: binary # tunnel specific nest
159
+ -
160
+ name: expires
161
+ type: u32
162
+ -
163
+ name: pad
164
+ type: binary
165
+ -
166
+ name: uid
167
+ type: u32
168
+ -
169
+ name: ttl-propagate
170
+ type: u8
171
+ -
172
+ name: ip-proto
173
+ type: u8
174
+ -
175
+ name: sport
176
+ type: u16
177
+ -
178
+ name: dport
179
+ type: u16
180
+ -
181
+ name: nh-id
182
+ type: u32
183
+ -
184
+ name: flowlabel
185
+ type: u32
186
+ byte-order: big-endian
187
+ display-hint: hex
188
+ -
189
+ name: metrics
190
+ name-prefix: rtax-
191
+ attributes:
192
+ -
193
+ name: unspec
194
+ type: unused
195
+ value: 0
196
+ -
197
+ name: lock
198
+ type: u32
199
+ -
200
+ name: mtu
201
+ type: u32
202
+ -
203
+ name: window
204
+ type: u32
205
+ -
206
+ name: rtt
207
+ type: u32
208
+ -
209
+ name: rttvar
210
+ type: u32
211
+ -
212
+ name: ssthresh
213
+ type: u32
214
+ -
215
+ name: cwnd
216
+ type: u32
217
+ -
218
+ name: advmss
219
+ type: u32
220
+ -
221
+ name: reordering
222
+ type: u32
223
+ -
224
+ name: hoplimit
225
+ type: u32
226
+ -
227
+ name: initcwnd
228
+ type: u32
229
+ -
230
+ name: features
231
+ type: u32
232
+ -
233
+ name: rto-min
234
+ type: u32
235
+ -
236
+ name: initrwnd
237
+ type: u32
238
+ -
239
+ name: quickack
240
+ type: u32
241
+ -
242
+ name: cc-algo
243
+ type: string
244
+ -
245
+ name: fastopen-no-cookie
246
+ type: u32
247
+
248
+ operations:
249
+ enum-model: directional
250
+ fixed-header: rtmsg
251
+ name-prefix: rtm-
252
+ list:
253
+ -
254
+ name: getroute
255
+ doc: Dump route information.
256
+ attribute-set: route-attrs
257
+ do:
258
+ request:
259
+ value: 26
260
+ attributes:
261
+ - src
262
+ - dst
263
+ - iif
264
+ - oif
265
+ - ip-proto
266
+ - sport
267
+ - dport
268
+ - mark
269
+ - uid
270
+ - flowlabel
271
+ reply:
272
+ value: 24
273
+ attributes: &all-route-attrs
274
+ - dst
275
+ - src
276
+ - iif
277
+ - oif
278
+ - gateway
279
+ - priority
280
+ - prefsrc
281
+ - metrics
282
+ - multipath
283
+ - flow
284
+ - cacheinfo
285
+ - table
286
+ - mark
287
+ - mfc-stats
288
+ - via
289
+ - newdst
290
+ - pref
291
+ - encap-type
292
+ - encap
293
+ - expires
294
+ - pad
295
+ - uid
296
+ - ttl-propagate
297
+ - ip-proto
298
+ - sport
299
+ - dport
300
+ - nh-id
301
+ - flowlabel
302
+ dump:
303
+ request:
304
+ value: 26
305
+ attributes: []
306
+ reply:
307
+ value: 24
308
+ attributes: *all-route-attrs
309
+ -
310
+ name: newroute
311
+ doc: Create a new route
312
+ attribute-set: route-attrs
313
+ do:
314
+ request:
315
+ value: 24
316
+ attributes: *all-route-attrs
317
+ -
318
+ name: delroute
319
+ doc: Delete an existing route
320
+ attribute-set: route-attrs
321
+ do:
322
+ request:
323
+ value: 25
324
+ attributes: *all-route-attrs
@@ -0,0 +1,275 @@
1
+ # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
+ ---
3
+ name: rt-rule
4
+ protocol: netlink-raw
5
+ uapi-header: linux/fib_rules.h
6
+ protonum: 0
7
+
8
+ doc: >-
9
+ FIB rule management over rtnetlink.
10
+
11
+ definitions:
12
+ -
13
+ name: rtgenmsg
14
+ type: struct
15
+ members:
16
+ -
17
+ name: family
18
+ type: u8
19
+ -
20
+ name: pad
21
+ type: pad
22
+ len: 3
23
+ -
24
+ name: fib-rule-hdr
25
+ type: struct
26
+ members:
27
+ -
28
+ name: family
29
+ type: u8
30
+ -
31
+ name: dst-len
32
+ type: u8
33
+ -
34
+ name: src-len
35
+ type: u8
36
+ -
37
+ name: tos
38
+ type: u8
39
+ -
40
+ name: table
41
+ type: u8
42
+ -
43
+ name: res1
44
+ type: pad
45
+ len: 1
46
+ -
47
+ name: res2
48
+ type: pad
49
+ len: 1
50
+ -
51
+ name: action
52
+ type: u8
53
+ enum: fr-act
54
+ -
55
+ name: flags
56
+ type: u32
57
+ -
58
+ name: fr-act
59
+ type: enum
60
+ enum-name:
61
+ entries:
62
+ - unspec
63
+ - to-tbl
64
+ - goto
65
+ - nop
66
+ - res3
67
+ - res4
68
+ - blackhole
69
+ - unreachable
70
+ - prohibit
71
+ -
72
+ name: fib-rule-port-range
73
+ type: struct
74
+ members:
75
+ -
76
+ name: start
77
+ type: u16
78
+ -
79
+ name: end
80
+ type: u16
81
+ -
82
+ name: fib-rule-uid-range
83
+ type: struct
84
+ members:
85
+ -
86
+ name: start
87
+ type: u32
88
+ -
89
+ name: end
90
+ type: u32
91
+
92
+ attribute-sets:
93
+ -
94
+ name: fib-rule-attrs
95
+ name-prefix: fra-
96
+ attributes:
97
+ -
98
+ name: dst
99
+ type: binary
100
+ display-hint: ipv4-or-v6
101
+ -
102
+ name: src
103
+ type: binary
104
+ display-hint: ipv4-or-v6
105
+ -
106
+ name: iifname
107
+ type: string
108
+ -
109
+ name: goto
110
+ type: u32
111
+ -
112
+ name: unused2
113
+ type: pad
114
+ -
115
+ name: priority
116
+ type: u32
117
+ -
118
+ name: unused3
119
+ type: pad
120
+ -
121
+ name: unused4
122
+ type: pad
123
+ -
124
+ name: unused5
125
+ type: pad
126
+ -
127
+ name: fwmark
128
+ type: u32
129
+ display-hint: hex
130
+ -
131
+ name: flow
132
+ type: u32
133
+ -
134
+ name: tun-id
135
+ type: u64
136
+ -
137
+ name: suppress-ifgroup
138
+ type: u32
139
+ -
140
+ name: suppress-prefixlen
141
+ type: u32
142
+ display-hint: hex
143
+ -
144
+ name: table
145
+ type: u32
146
+ -
147
+ name: fwmask
148
+ type: u32
149
+ display-hint: hex
150
+ -
151
+ name: oifname
152
+ type: string
153
+ -
154
+ name: pad
155
+ type: pad
156
+ -
157
+ name: l3mdev
158
+ type: u8
159
+ -
160
+ name: uid-range
161
+ type: binary
162
+ struct: fib-rule-uid-range
163
+ -
164
+ name: protocol
165
+ type: u8
166
+ -
167
+ name: ip-proto
168
+ type: u8
169
+ -
170
+ name: sport-range
171
+ type: binary
172
+ struct: fib-rule-port-range
173
+ -
174
+ name: dport-range
175
+ type: binary
176
+ struct: fib-rule-port-range
177
+ -
178
+ name: dscp
179
+ type: u8
180
+ -
181
+ name: flowlabel
182
+ type: u32
183
+ byte-order: big-endian
184
+ display-hint: hex
185
+ -
186
+ name: flowlabel-mask
187
+ type: u32
188
+ byte-order: big-endian
189
+ display-hint: hex
190
+ -
191
+ name: sport-mask
192
+ type: u16
193
+ display-hint: hex
194
+ -
195
+ name: dport-mask
196
+ type: u16
197
+ display-hint: hex
198
+ -
199
+ name: dscp-mask
200
+ type: u8
201
+ display-hint: hex
202
+
203
+ operations:
204
+ enum-model: directional
205
+ fixed-header: fib-rule-hdr
206
+ name-prefix: rtm-
207
+ list:
208
+ -
209
+ name: newrule
210
+ doc: Add new FIB rule
211
+ attribute-set: fib-rule-attrs
212
+ do:
213
+ request:
214
+ value: 32
215
+ attributes: &fib-rule-all
216
+ - iifname
217
+ - oifname
218
+ - priority
219
+ - fwmark
220
+ - flow
221
+ - tun-id
222
+ - fwmask
223
+ - table
224
+ - suppress-prefixlen
225
+ - suppress-ifgroup
226
+ - goto
227
+ - l3mdev
228
+ - uid-range
229
+ - protocol
230
+ - ip-proto
231
+ - sport-range
232
+ - dport-range
233
+ - dscp
234
+ - flowlabel
235
+ - flowlabel-mask
236
+ - sport-mask
237
+ - dport-mask
238
+ - dscp-mask
239
+ -
240
+ name: newrule-ntf
241
+ doc: Notify a rule creation
242
+ value: 32
243
+ notify: getrule
244
+ -
245
+ name: delrule
246
+ doc: Remove an existing FIB rule
247
+ attribute-set: fib-rule-attrs
248
+ do:
249
+ request:
250
+ value: 33
251
+ attributes: *fib-rule-all
252
+ -
253
+ name: delrule-ntf
254
+ doc: Notify a rule deletion
255
+ value: 33
256
+ notify: getrule
257
+ -
258
+ name: getrule
259
+ doc: Dump all FIB rules
260
+ attribute-set: fib-rule-attrs
261
+ dump:
262
+ request:
263
+ value: 34
264
+ reply:
265
+ value: 32
266
+ attributes: *fib-rule-all
267
+
268
+ mcast-groups:
269
+ list:
270
+ -
271
+ name: rtnlgrp-ipv4-rule
272
+ value: 8
273
+ -
274
+ name: rtnlgrp-ipv6-rule
275
+ value: 19