nl-linux 0.3.0 → 0.4.1
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.
- checksums.yaml +4 -4
- data/.yardopts +5 -0
- data/CHANGELOG.md +6 -0
- data/Rakefile +14 -2
- data/generated/nl/linux/binder.rb +172 -44
- data/generated/nl/linux/conntrack.rb +1293 -370
- data/generated/nl/linux/dev_energymodel.rb +278 -93
- data/generated/nl/linux/devlink.rb +5654 -1954
- data/generated/nl/linux/dpll.rb +1838 -669
- data/generated/nl/linux/drm_ras.rb +234 -72
- data/generated/nl/linux/ethtool.rb +6683 -2885
- data/generated/nl/linux/fou.rb +308 -129
- data/generated/nl/linux/handshake.rb +277 -99
- data/generated/nl/linux/lockd.rb +88 -33
- data/generated/nl/linux/mptcp_pm.rb +639 -186
- data/generated/nl/linux/net_shaper.rb +782 -224
- data/generated/nl/linux/netdev.rb +2105 -631
- data/generated/nl/linux/nfsd.rb +1030 -358
- data/generated/nl/linux/nftables.rb +5041 -1612
- data/generated/nl/linux/nl80211.rb +4531 -871
- data/generated/nl/linux/nlctrl.rb +411 -119
- data/generated/nl/linux/ovpn.rb +1211 -293
- data/generated/nl/linux/ovs_datapath.rb +271 -106
- data/generated/nl/linux/ovs_flow.rb +1819 -354
- data/generated/nl/linux/ovs_packet.rb +257 -82
- data/generated/nl/linux/ovs_vport.rb +334 -132
- data/generated/nl/linux/psp.rb +916 -281
- data/generated/nl/linux/rt_addr.rb +369 -166
- data/generated/nl/linux/rt_link.rb +6708 -1450
- data/generated/nl/linux/rt_neigh.rb +919 -364
- data/generated/nl/linux/rt_route.rb +1034 -448
- data/generated/nl/linux/rt_rule.rb +775 -395
- data/generated/nl/linux/sunrpc_cache.rb +297 -102
- data/generated/nl/linux/tc.rb +9989 -1780
- data/generated/nl/linux/tcp_metrics.rb +327 -105
- data/generated/nl/linux/team.rb +279 -93
- data/generated/nl/linux/wireguard.rb +432 -95
- data/generated/nl/linux.rb +1 -0
- data/lib/nl/linux/nlctrl_resolver.rb +31 -0
- data/lib/nl/linux/version.rb +1 -1
- data/sig/generated/nl/linux/binder.rbs +366 -0
- data/sig/generated/nl/linux/conntrack.rbs +2787 -0
- data/sig/generated/nl/linux/dev_energymodel.rbs +636 -0
- data/sig/generated/nl/linux/devlink.rbs +12496 -0
- data/sig/generated/nl/linux/dpll.rbs +3461 -0
- data/sig/generated/nl/linux/drm_ras.rbs +553 -0
- data/sig/generated/nl/linux/ethtool.rbs +15291 -0
- data/sig/generated/nl/linux/fou.rbs +702 -0
- data/sig/generated/nl/linux/handshake.rbs +622 -0
- data/sig/generated/nl/linux/lockd.rbs +234 -0
- data/sig/generated/nl/linux/mptcp_pm.rbs +1511 -0
- data/sig/generated/nl/linux/net_shaper.rbs +1645 -0
- data/sig/generated/nl/linux/netdev.rbs +4187 -0
- data/sig/generated/nl/linux/nfsd.rbs +2520 -0
- data/sig/generated/nl/linux/nftables.rbs +10304 -0
- data/sig/generated/nl/linux/nl80211.rbs +9786 -0
- data/sig/generated/nl/linux/nlctrl.rbs +944 -0
- data/sig/generated/nl/linux/nlctrl_resolver.rbs +20 -0
- data/sig/generated/nl/linux/ovpn.rbs +2564 -0
- data/sig/generated/nl/linux/ovs_datapath.rbs +640 -0
- data/sig/generated/nl/linux/ovs_flow.rbs +3659 -0
- data/sig/generated/nl/linux/ovs_packet.rbs +540 -0
- data/sig/generated/nl/linux/ovs_vport.rbs +777 -0
- data/sig/generated/nl/linux/psp.rbs +1846 -0
- data/sig/generated/nl/linux/rt_addr.rbs +866 -0
- data/sig/generated/nl/linux/rt_link.rbs +13438 -0
- data/sig/generated/nl/linux/rt_neigh.rbs +2124 -0
- data/sig/generated/nl/linux/rt_route.rbs +2218 -0
- data/sig/generated/nl/linux/rt_rule.rbs +1726 -0
- data/sig/generated/nl/linux/sunrpc_cache.rbs +739 -0
- data/sig/generated/nl/linux/tc.rbs +19931 -0
- data/sig/generated/nl/linux/tcp_metrics.rbs +740 -0
- data/sig/generated/nl/linux/team.rbs +733 -0
- data/sig/generated/nl/linux/version.rbs +7 -0
- data/sig/generated/nl/linux/wireguard.rbs +1006 -0
- data/sig/generated/nl/linux.rbs +6 -0
- data/sig/generated/nl-linux.rbs +2 -0
- metadata +46 -7
|
@@ -0,0 +1,1846 @@
|
|
|
1
|
+
# Generated from generated/nl/linux/psp.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module Nl
|
|
4
|
+
module Linux
|
|
5
|
+
# PSP Security Protocol Generic Netlink family.
|
|
6
|
+
class Psp < ::Nl::Genl::Family
|
|
7
|
+
NAME: ::String
|
|
8
|
+
|
|
9
|
+
VERSION: ::Integer
|
|
10
|
+
|
|
11
|
+
# @rbs (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) -> (::Nl::Family::Session & instance)
|
|
12
|
+
# @rbs | [R] (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) { (instance) -> R } -> R
|
|
13
|
+
# @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY)
|
|
14
|
+
# @param [#call] resolver
|
|
15
|
+
# @param [Symbol, nil] executor
|
|
16
|
+
# @param [Integer, nil] notification_capacity
|
|
17
|
+
# @return [Psp]
|
|
18
|
+
# @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY, &block)
|
|
19
|
+
# @param [#call] resolver
|
|
20
|
+
# @param [Symbol, nil] executor
|
|
21
|
+
# @param [Integer, nil] notification_capacity
|
|
22
|
+
# @yieldparam [Psp] family
|
|
23
|
+
# @return [Object] the result of the block
|
|
24
|
+
def self.open: (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) -> (::Nl::Family::Session & instance)
|
|
25
|
+
|
|
26
|
+
# @private
|
|
27
|
+
MCAST_GROUPS: Hash[::Symbol, ::Nl::McastGroup]
|
|
28
|
+
|
|
29
|
+
module Enums
|
|
30
|
+
module Version
|
|
31
|
+
Hdr0AesGcm128: ::Integer
|
|
32
|
+
|
|
33
|
+
Hdr0AesGcm256: ::Integer
|
|
34
|
+
|
|
35
|
+
Hdr0AesGmac128: ::Integer
|
|
36
|
+
|
|
37
|
+
Hdr0AesGmac256: ::Integer
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
module Flags
|
|
42
|
+
module Version
|
|
43
|
+
Hdr0AesGcm128: ::Integer
|
|
44
|
+
|
|
45
|
+
Hdr0AesGcm256: ::Integer
|
|
46
|
+
|
|
47
|
+
Hdr0AesGmac128: ::Integer
|
|
48
|
+
|
|
49
|
+
Hdr0AesGmac256: ::Integer
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
module Structs
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
module AttributeSets
|
|
57
|
+
class AssocDevInfo < ::Nl::AttributeSet
|
|
58
|
+
# Abstract class
|
|
59
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# ifindex of an associated network device.
|
|
63
|
+
class Ifindex < Attribute
|
|
64
|
+
TYPE: ::Integer
|
|
65
|
+
|
|
66
|
+
NAME: ::Symbol
|
|
67
|
+
|
|
68
|
+
# @private
|
|
69
|
+
ORDER: ::Integer
|
|
70
|
+
|
|
71
|
+
# @private
|
|
72
|
+
DATATYPE: untyped
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Network namespace ID of the associated device.
|
|
76
|
+
class Nsid < Attribute
|
|
77
|
+
TYPE: ::Integer
|
|
78
|
+
|
|
79
|
+
NAME: ::Symbol
|
|
80
|
+
|
|
81
|
+
# @private
|
|
82
|
+
ORDER: ::Integer
|
|
83
|
+
|
|
84
|
+
# @private
|
|
85
|
+
DATATYPE: untyped
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# @private
|
|
89
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
90
|
+
|
|
91
|
+
# @private
|
|
92
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
93
|
+
|
|
94
|
+
# ifindex of an associated network device.
|
|
95
|
+
# @rbs return: ::Integer
|
|
96
|
+
# @return [Integer]
|
|
97
|
+
# @see Ifindex
|
|
98
|
+
def ifindex: () -> ::Integer
|
|
99
|
+
|
|
100
|
+
# Network namespace ID of the associated device.
|
|
101
|
+
# @rbs return: ::Integer
|
|
102
|
+
# @return [Integer]
|
|
103
|
+
# @see Nsid
|
|
104
|
+
def nsid: () -> ::Integer
|
|
105
|
+
|
|
106
|
+
# Looks up Attribute class by name.
|
|
107
|
+
# @rbs name: Symbol
|
|
108
|
+
# @rbs return: Attribute
|
|
109
|
+
# @param [Symbol] name
|
|
110
|
+
# @return [Attribute]
|
|
111
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
112
|
+
|
|
113
|
+
# Looks up Attribute class by type value.
|
|
114
|
+
# @rbs type: Integer
|
|
115
|
+
# @rbs return: Attribute
|
|
116
|
+
# @param [Integer] type
|
|
117
|
+
# @return [Attribute]
|
|
118
|
+
def self.by_type: (Integer type) -> Attribute
|
|
119
|
+
end
|
|
120
|
+
|
|
121
|
+
class Dev < ::Nl::AttributeSet
|
|
122
|
+
# Abstract class
|
|
123
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
# PSP device ID.
|
|
127
|
+
class Id < Attribute
|
|
128
|
+
TYPE: ::Integer
|
|
129
|
+
|
|
130
|
+
NAME: ::Symbol
|
|
131
|
+
|
|
132
|
+
# @private
|
|
133
|
+
ORDER: ::Integer
|
|
134
|
+
|
|
135
|
+
# @private
|
|
136
|
+
DATATYPE: untyped
|
|
137
|
+
end
|
|
138
|
+
|
|
139
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
140
|
+
# or the ifindex to associate with the PSP device.
|
|
141
|
+
class Ifindex < Attribute
|
|
142
|
+
TYPE: ::Integer
|
|
143
|
+
|
|
144
|
+
NAME: ::Symbol
|
|
145
|
+
|
|
146
|
+
# @private
|
|
147
|
+
ORDER: ::Integer
|
|
148
|
+
|
|
149
|
+
# @private
|
|
150
|
+
DATATYPE: untyped
|
|
151
|
+
end
|
|
152
|
+
|
|
153
|
+
# Bitmask of PSP versions supported by the device.
|
|
154
|
+
#
|
|
155
|
+
# Known flags are defined in {Flags::Version}.
|
|
156
|
+
class PspVersionsCap < Attribute
|
|
157
|
+
TYPE: ::Integer
|
|
158
|
+
|
|
159
|
+
NAME: ::Symbol
|
|
160
|
+
|
|
161
|
+
# @private
|
|
162
|
+
ORDER: ::Integer
|
|
163
|
+
|
|
164
|
+
# @private
|
|
165
|
+
DATATYPE: untyped
|
|
166
|
+
end
|
|
167
|
+
|
|
168
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
169
|
+
#
|
|
170
|
+
# Known flags are defined in {Flags::Version}.
|
|
171
|
+
class PspVersionsEna < Attribute
|
|
172
|
+
TYPE: ::Integer
|
|
173
|
+
|
|
174
|
+
NAME: ::Symbol
|
|
175
|
+
|
|
176
|
+
# @private
|
|
177
|
+
ORDER: ::Integer
|
|
178
|
+
|
|
179
|
+
# @private
|
|
180
|
+
DATATYPE: untyped
|
|
181
|
+
end
|
|
182
|
+
|
|
183
|
+
# List of associated virtual devices.
|
|
184
|
+
class AssocList < Attribute
|
|
185
|
+
TYPE: ::Integer
|
|
186
|
+
|
|
187
|
+
NAME: ::Symbol
|
|
188
|
+
|
|
189
|
+
# @private
|
|
190
|
+
MULTI: bool
|
|
191
|
+
|
|
192
|
+
# @private
|
|
193
|
+
ORDER: ::Integer
|
|
194
|
+
end
|
|
195
|
+
|
|
196
|
+
# Network namespace ID for the device to associate/disassociate.
|
|
197
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
198
|
+
# device is looked up in the caller's network namespace.
|
|
199
|
+
class Nsid < Attribute
|
|
200
|
+
TYPE: ::Integer
|
|
201
|
+
|
|
202
|
+
NAME: ::Symbol
|
|
203
|
+
|
|
204
|
+
# @private
|
|
205
|
+
ORDER: ::Integer
|
|
206
|
+
|
|
207
|
+
# @private
|
|
208
|
+
DATATYPE: untyped
|
|
209
|
+
end
|
|
210
|
+
|
|
211
|
+
# Flag indicating the PSP device is an associated device from a
|
|
212
|
+
# different network namespace.
|
|
213
|
+
# Present when in associated namespace, absent when in primary/host
|
|
214
|
+
# namespace.
|
|
215
|
+
class ByAssociation < Attribute
|
|
216
|
+
TYPE: ::Integer
|
|
217
|
+
|
|
218
|
+
NAME: ::Symbol
|
|
219
|
+
|
|
220
|
+
# @private
|
|
221
|
+
ORDER: ::Integer
|
|
222
|
+
|
|
223
|
+
# @private
|
|
224
|
+
DATATYPE: untyped
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
# @private
|
|
228
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
229
|
+
|
|
230
|
+
# @private
|
|
231
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
232
|
+
|
|
233
|
+
# PSP device ID.
|
|
234
|
+
# @rbs return: ::Integer
|
|
235
|
+
# @return [Integer]
|
|
236
|
+
# @see Id
|
|
237
|
+
def id: () -> ::Integer
|
|
238
|
+
|
|
239
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
240
|
+
# or the ifindex to associate with the PSP device.
|
|
241
|
+
# @rbs return: ::Integer
|
|
242
|
+
# @return [Integer]
|
|
243
|
+
# @see Ifindex
|
|
244
|
+
def ifindex: () -> ::Integer
|
|
245
|
+
|
|
246
|
+
# Bitmask of PSP versions supported by the device.
|
|
247
|
+
#
|
|
248
|
+
# Known flags are defined in {Flags::Version}.
|
|
249
|
+
# @rbs return: ::Integer
|
|
250
|
+
# @return [Integer]
|
|
251
|
+
# @see PspVersionsCap
|
|
252
|
+
def psp_versions_cap: () -> ::Integer
|
|
253
|
+
|
|
254
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
255
|
+
#
|
|
256
|
+
# Known flags are defined in {Flags::Version}.
|
|
257
|
+
# @rbs return: ::Integer
|
|
258
|
+
# @return [Integer]
|
|
259
|
+
# @see PspVersionsEna
|
|
260
|
+
def psp_versions_ena: () -> ::Integer
|
|
261
|
+
|
|
262
|
+
# List of associated virtual devices.
|
|
263
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
264
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
265
|
+
# @see AssocList
|
|
266
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
267
|
+
|
|
268
|
+
# Network namespace ID for the device to associate/disassociate.
|
|
269
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
270
|
+
# device is looked up in the caller's network namespace.
|
|
271
|
+
# @rbs return: ::Integer
|
|
272
|
+
# @return [Integer]
|
|
273
|
+
# @see Nsid
|
|
274
|
+
def nsid: () -> ::Integer
|
|
275
|
+
|
|
276
|
+
# Flag indicating the PSP device is an associated device from a
|
|
277
|
+
# different network namespace.
|
|
278
|
+
# Present when in associated namespace, absent when in primary/host
|
|
279
|
+
# namespace.
|
|
280
|
+
# @rbs return: ::Integer
|
|
281
|
+
# @return [Integer]
|
|
282
|
+
# @see ByAssociation
|
|
283
|
+
def by_association: () -> ::Integer
|
|
284
|
+
|
|
285
|
+
# Looks up Attribute class by name.
|
|
286
|
+
# @rbs name: Symbol
|
|
287
|
+
# @rbs return: Attribute
|
|
288
|
+
# @param [Symbol] name
|
|
289
|
+
# @return [Attribute]
|
|
290
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
291
|
+
|
|
292
|
+
# Looks up Attribute class by type value.
|
|
293
|
+
# @rbs type: Integer
|
|
294
|
+
# @rbs return: Attribute
|
|
295
|
+
# @param [Integer] type
|
|
296
|
+
# @return [Attribute]
|
|
297
|
+
def self.by_type: (Integer type) -> Attribute
|
|
298
|
+
end
|
|
299
|
+
|
|
300
|
+
class Assoc < ::Nl::AttributeSet
|
|
301
|
+
# Abstract class
|
|
302
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
# PSP device ID.
|
|
306
|
+
class DevId < Attribute
|
|
307
|
+
TYPE: ::Integer
|
|
308
|
+
|
|
309
|
+
NAME: ::Symbol
|
|
310
|
+
|
|
311
|
+
# @private
|
|
312
|
+
ORDER: ::Integer
|
|
313
|
+
|
|
314
|
+
# @private
|
|
315
|
+
DATATYPE: untyped
|
|
316
|
+
end
|
|
317
|
+
|
|
318
|
+
# PSP versions (AEAD and protocol version) used by this association,
|
|
319
|
+
# dictates the size of the key.
|
|
320
|
+
#
|
|
321
|
+
#
|
|
322
|
+
# Known enum values are defined in {Enums::Version}.
|
|
323
|
+
class Version < Attribute
|
|
324
|
+
TYPE: ::Integer
|
|
325
|
+
|
|
326
|
+
NAME: ::Symbol
|
|
327
|
+
|
|
328
|
+
# @private
|
|
329
|
+
ORDER: ::Integer
|
|
330
|
+
|
|
331
|
+
# @private
|
|
332
|
+
DATATYPE: untyped
|
|
333
|
+
end
|
|
334
|
+
|
|
335
|
+
class RxKey < Attribute
|
|
336
|
+
TYPE: ::Integer
|
|
337
|
+
|
|
338
|
+
NAME: ::Symbol
|
|
339
|
+
|
|
340
|
+
# @private
|
|
341
|
+
ORDER: ::Integer
|
|
342
|
+
end
|
|
343
|
+
|
|
344
|
+
class TxKey < Attribute
|
|
345
|
+
TYPE: ::Integer
|
|
346
|
+
|
|
347
|
+
NAME: ::Symbol
|
|
348
|
+
|
|
349
|
+
# @private
|
|
350
|
+
ORDER: ::Integer
|
|
351
|
+
end
|
|
352
|
+
|
|
353
|
+
# Sockets which should be bound to the association immediately.
|
|
354
|
+
class SockFd < Attribute
|
|
355
|
+
TYPE: ::Integer
|
|
356
|
+
|
|
357
|
+
NAME: ::Symbol
|
|
358
|
+
|
|
359
|
+
# @private
|
|
360
|
+
ORDER: ::Integer
|
|
361
|
+
|
|
362
|
+
# @private
|
|
363
|
+
DATATYPE: untyped
|
|
364
|
+
end
|
|
365
|
+
|
|
366
|
+
# @private
|
|
367
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
368
|
+
|
|
369
|
+
# @private
|
|
370
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
371
|
+
|
|
372
|
+
# PSP device ID.
|
|
373
|
+
# @rbs return: ::Integer
|
|
374
|
+
# @return [Integer]
|
|
375
|
+
# @see DevId
|
|
376
|
+
def dev_id: () -> ::Integer
|
|
377
|
+
|
|
378
|
+
# PSP versions (AEAD and protocol version) used by this association,
|
|
379
|
+
# dictates the size of the key.
|
|
380
|
+
#
|
|
381
|
+
#
|
|
382
|
+
# Known enum values are defined in {Enums::Version}.
|
|
383
|
+
# @rbs return: ::Integer
|
|
384
|
+
# @return [Integer]
|
|
385
|
+
# @see Version
|
|
386
|
+
def version: () -> ::Integer
|
|
387
|
+
|
|
388
|
+
# @rbs return: AttributeSets::Keys
|
|
389
|
+
# @return [AttributeSets::Keys]
|
|
390
|
+
# @see RxKey
|
|
391
|
+
def rx_key: () -> AttributeSets::Keys
|
|
392
|
+
|
|
393
|
+
# @rbs return: AttributeSets::Keys
|
|
394
|
+
# @return [AttributeSets::Keys]
|
|
395
|
+
# @see TxKey
|
|
396
|
+
def tx_key: () -> AttributeSets::Keys
|
|
397
|
+
|
|
398
|
+
# Sockets which should be bound to the association immediately.
|
|
399
|
+
# @rbs return: ::Integer
|
|
400
|
+
# @return [Integer]
|
|
401
|
+
# @see SockFd
|
|
402
|
+
def sock_fd: () -> ::Integer
|
|
403
|
+
|
|
404
|
+
# Looks up Attribute class by name.
|
|
405
|
+
# @rbs name: Symbol
|
|
406
|
+
# @rbs return: Attribute
|
|
407
|
+
# @param [Symbol] name
|
|
408
|
+
# @return [Attribute]
|
|
409
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
410
|
+
|
|
411
|
+
# Looks up Attribute class by type value.
|
|
412
|
+
# @rbs type: Integer
|
|
413
|
+
# @rbs return: Attribute
|
|
414
|
+
# @param [Integer] type
|
|
415
|
+
# @return [Attribute]
|
|
416
|
+
def self.by_type: (Integer type) -> Attribute
|
|
417
|
+
end
|
|
418
|
+
|
|
419
|
+
class Keys < ::Nl::AttributeSet
|
|
420
|
+
# Abstract class
|
|
421
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
422
|
+
end
|
|
423
|
+
|
|
424
|
+
class Key < Attribute
|
|
425
|
+
TYPE: ::Integer
|
|
426
|
+
|
|
427
|
+
NAME: ::Symbol
|
|
428
|
+
|
|
429
|
+
# @private
|
|
430
|
+
ORDER: ::Integer
|
|
431
|
+
|
|
432
|
+
# @private
|
|
433
|
+
DATATYPE: untyped
|
|
434
|
+
end
|
|
435
|
+
|
|
436
|
+
# Security Parameters Index (SPI) of the association.
|
|
437
|
+
class Spi < Attribute
|
|
438
|
+
TYPE: ::Integer
|
|
439
|
+
|
|
440
|
+
NAME: ::Symbol
|
|
441
|
+
|
|
442
|
+
# @private
|
|
443
|
+
ORDER: ::Integer
|
|
444
|
+
|
|
445
|
+
# @private
|
|
446
|
+
DATATYPE: untyped
|
|
447
|
+
end
|
|
448
|
+
|
|
449
|
+
# @private
|
|
450
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
451
|
+
|
|
452
|
+
# @private
|
|
453
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
454
|
+
|
|
455
|
+
# @rbs return: ::String
|
|
456
|
+
# @return [String]
|
|
457
|
+
# @see Key
|
|
458
|
+
def key: () -> ::String
|
|
459
|
+
|
|
460
|
+
# Security Parameters Index (SPI) of the association.
|
|
461
|
+
# @rbs return: ::Integer
|
|
462
|
+
# @return [Integer]
|
|
463
|
+
# @see Spi
|
|
464
|
+
def spi: () -> ::Integer
|
|
465
|
+
|
|
466
|
+
# Looks up Attribute class by name.
|
|
467
|
+
# @rbs name: Symbol
|
|
468
|
+
# @rbs return: Attribute
|
|
469
|
+
# @param [Symbol] name
|
|
470
|
+
# @return [Attribute]
|
|
471
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
472
|
+
|
|
473
|
+
# Looks up Attribute class by type value.
|
|
474
|
+
# @rbs type: Integer
|
|
475
|
+
# @rbs return: Attribute
|
|
476
|
+
# @param [Integer] type
|
|
477
|
+
# @return [Attribute]
|
|
478
|
+
def self.by_type: (Integer type) -> Attribute
|
|
479
|
+
end
|
|
480
|
+
|
|
481
|
+
class Stats < ::Nl::AttributeSet
|
|
482
|
+
# Abstract class
|
|
483
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
484
|
+
end
|
|
485
|
+
|
|
486
|
+
# PSP device ID.
|
|
487
|
+
class DevId < Attribute
|
|
488
|
+
TYPE: ::Integer
|
|
489
|
+
|
|
490
|
+
NAME: ::Symbol
|
|
491
|
+
|
|
492
|
+
# @private
|
|
493
|
+
ORDER: ::Integer
|
|
494
|
+
|
|
495
|
+
# @private
|
|
496
|
+
DATATYPE: untyped
|
|
497
|
+
end
|
|
498
|
+
|
|
499
|
+
# Number of key rotations during the lifetime of the device.
|
|
500
|
+
# Kernel statistic.
|
|
501
|
+
class KeyRotations < Attribute
|
|
502
|
+
TYPE: ::Integer
|
|
503
|
+
|
|
504
|
+
NAME: ::Symbol
|
|
505
|
+
|
|
506
|
+
# @private
|
|
507
|
+
ORDER: ::Integer
|
|
508
|
+
|
|
509
|
+
# @private
|
|
510
|
+
DATATYPE: untyped
|
|
511
|
+
end
|
|
512
|
+
|
|
513
|
+
# Number of times a socket's Rx got shut down due to using
|
|
514
|
+
# a key which went stale (fully rotated out).
|
|
515
|
+
# Kernel statistic.
|
|
516
|
+
class StaleEvents < Attribute
|
|
517
|
+
TYPE: ::Integer
|
|
518
|
+
|
|
519
|
+
NAME: ::Symbol
|
|
520
|
+
|
|
521
|
+
# @private
|
|
522
|
+
ORDER: ::Integer
|
|
523
|
+
|
|
524
|
+
# @private
|
|
525
|
+
DATATYPE: untyped
|
|
526
|
+
end
|
|
527
|
+
|
|
528
|
+
# Number of successfully processed and authenticated PSP packets.
|
|
529
|
+
# Device statistic (from the PSP spec).
|
|
530
|
+
class RxPackets < Attribute
|
|
531
|
+
TYPE: ::Integer
|
|
532
|
+
|
|
533
|
+
NAME: ::Symbol
|
|
534
|
+
|
|
535
|
+
# @private
|
|
536
|
+
ORDER: ::Integer
|
|
537
|
+
|
|
538
|
+
# @private
|
|
539
|
+
DATATYPE: untyped
|
|
540
|
+
end
|
|
541
|
+
|
|
542
|
+
# Number of successfully authenticated PSP bytes received, counting from
|
|
543
|
+
# the first byte after the IV through the last byte of payload.
|
|
544
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
545
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
546
|
+
# Device statistic (from the PSP spec).
|
|
547
|
+
class RxBytes < Attribute
|
|
548
|
+
TYPE: ::Integer
|
|
549
|
+
|
|
550
|
+
NAME: ::Symbol
|
|
551
|
+
|
|
552
|
+
# @private
|
|
553
|
+
ORDER: ::Integer
|
|
554
|
+
|
|
555
|
+
# @private
|
|
556
|
+
DATATYPE: untyped
|
|
557
|
+
end
|
|
558
|
+
|
|
559
|
+
# Number of received PSP packets with unsuccessful authentication.
|
|
560
|
+
# Device statistic (from the PSP spec).
|
|
561
|
+
class RxAuthFail < Attribute
|
|
562
|
+
TYPE: ::Integer
|
|
563
|
+
|
|
564
|
+
NAME: ::Symbol
|
|
565
|
+
|
|
566
|
+
# @private
|
|
567
|
+
ORDER: ::Integer
|
|
568
|
+
|
|
569
|
+
# @private
|
|
570
|
+
DATATYPE: untyped
|
|
571
|
+
end
|
|
572
|
+
|
|
573
|
+
# Number of received PSP packets with length/framing errors.
|
|
574
|
+
# Device statistic (from the PSP spec).
|
|
575
|
+
class RxError < Attribute
|
|
576
|
+
TYPE: ::Integer
|
|
577
|
+
|
|
578
|
+
NAME: ::Symbol
|
|
579
|
+
|
|
580
|
+
# @private
|
|
581
|
+
ORDER: ::Integer
|
|
582
|
+
|
|
583
|
+
# @private
|
|
584
|
+
DATATYPE: untyped
|
|
585
|
+
end
|
|
586
|
+
|
|
587
|
+
# Number of received PSP packets with miscellaneous errors
|
|
588
|
+
# (invalid master key indicated by SPI, unsupported version, etc.)
|
|
589
|
+
# Device statistic (from the PSP spec).
|
|
590
|
+
class RxBad < Attribute
|
|
591
|
+
TYPE: ::Integer
|
|
592
|
+
|
|
593
|
+
NAME: ::Symbol
|
|
594
|
+
|
|
595
|
+
# @private
|
|
596
|
+
ORDER: ::Integer
|
|
597
|
+
|
|
598
|
+
# @private
|
|
599
|
+
DATATYPE: untyped
|
|
600
|
+
end
|
|
601
|
+
|
|
602
|
+
# Number of successfully processed PSP packets for transmission.
|
|
603
|
+
# Device statistic (from the PSP spec).
|
|
604
|
+
class TxPackets < Attribute
|
|
605
|
+
TYPE: ::Integer
|
|
606
|
+
|
|
607
|
+
NAME: ::Symbol
|
|
608
|
+
|
|
609
|
+
# @private
|
|
610
|
+
ORDER: ::Integer
|
|
611
|
+
|
|
612
|
+
# @private
|
|
613
|
+
DATATYPE: untyped
|
|
614
|
+
end
|
|
615
|
+
|
|
616
|
+
# Number of successfully processed PSP bytes for transmit, counting from
|
|
617
|
+
# the first byte after the IV through the last byte of payload.
|
|
618
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
619
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
620
|
+
# Device statistic (from the PSP spec).
|
|
621
|
+
class TxBytes < Attribute
|
|
622
|
+
TYPE: ::Integer
|
|
623
|
+
|
|
624
|
+
NAME: ::Symbol
|
|
625
|
+
|
|
626
|
+
# @private
|
|
627
|
+
ORDER: ::Integer
|
|
628
|
+
|
|
629
|
+
# @private
|
|
630
|
+
DATATYPE: untyped
|
|
631
|
+
end
|
|
632
|
+
|
|
633
|
+
# Number of PSP packets for transmission with errors.
|
|
634
|
+
# Device statistic (from the PSP spec).
|
|
635
|
+
class TxError < Attribute
|
|
636
|
+
TYPE: ::Integer
|
|
637
|
+
|
|
638
|
+
NAME: ::Symbol
|
|
639
|
+
|
|
640
|
+
# @private
|
|
641
|
+
ORDER: ::Integer
|
|
642
|
+
|
|
643
|
+
# @private
|
|
644
|
+
DATATYPE: untyped
|
|
645
|
+
end
|
|
646
|
+
|
|
647
|
+
# @private
|
|
648
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
649
|
+
|
|
650
|
+
# @private
|
|
651
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
652
|
+
|
|
653
|
+
# PSP device ID.
|
|
654
|
+
# @rbs return: ::Integer
|
|
655
|
+
# @return [Integer]
|
|
656
|
+
# @see DevId
|
|
657
|
+
def dev_id: () -> ::Integer
|
|
658
|
+
|
|
659
|
+
# Number of key rotations during the lifetime of the device.
|
|
660
|
+
# Kernel statistic.
|
|
661
|
+
# @rbs return: ::Integer
|
|
662
|
+
# @return [Integer]
|
|
663
|
+
# @see KeyRotations
|
|
664
|
+
def key_rotations: () -> ::Integer
|
|
665
|
+
|
|
666
|
+
# Number of times a socket's Rx got shut down due to using
|
|
667
|
+
# a key which went stale (fully rotated out).
|
|
668
|
+
# Kernel statistic.
|
|
669
|
+
# @rbs return: ::Integer
|
|
670
|
+
# @return [Integer]
|
|
671
|
+
# @see StaleEvents
|
|
672
|
+
def stale_events: () -> ::Integer
|
|
673
|
+
|
|
674
|
+
# Number of successfully processed and authenticated PSP packets.
|
|
675
|
+
# Device statistic (from the PSP spec).
|
|
676
|
+
# @rbs return: ::Integer
|
|
677
|
+
# @return [Integer]
|
|
678
|
+
# @see RxPackets
|
|
679
|
+
def rx_packets: () -> ::Integer
|
|
680
|
+
|
|
681
|
+
# Number of successfully authenticated PSP bytes received, counting from
|
|
682
|
+
# the first byte after the IV through the last byte of payload.
|
|
683
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
684
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
685
|
+
# Device statistic (from the PSP spec).
|
|
686
|
+
# @rbs return: ::Integer
|
|
687
|
+
# @return [Integer]
|
|
688
|
+
# @see RxBytes
|
|
689
|
+
def rx_bytes: () -> ::Integer
|
|
690
|
+
|
|
691
|
+
# Number of received PSP packets with unsuccessful authentication.
|
|
692
|
+
# Device statistic (from the PSP spec).
|
|
693
|
+
# @rbs return: ::Integer
|
|
694
|
+
# @return [Integer]
|
|
695
|
+
# @see RxAuthFail
|
|
696
|
+
def rx_auth_fail: () -> ::Integer
|
|
697
|
+
|
|
698
|
+
# Number of received PSP packets with length/framing errors.
|
|
699
|
+
# Device statistic (from the PSP spec).
|
|
700
|
+
# @rbs return: ::Integer
|
|
701
|
+
# @return [Integer]
|
|
702
|
+
# @see RxError
|
|
703
|
+
def rx_error: () -> ::Integer
|
|
704
|
+
|
|
705
|
+
# Number of received PSP packets with miscellaneous errors
|
|
706
|
+
# (invalid master key indicated by SPI, unsupported version, etc.)
|
|
707
|
+
# Device statistic (from the PSP spec).
|
|
708
|
+
# @rbs return: ::Integer
|
|
709
|
+
# @return [Integer]
|
|
710
|
+
# @see RxBad
|
|
711
|
+
def rx_bad: () -> ::Integer
|
|
712
|
+
|
|
713
|
+
# Number of successfully processed PSP packets for transmission.
|
|
714
|
+
# Device statistic (from the PSP spec).
|
|
715
|
+
# @rbs return: ::Integer
|
|
716
|
+
# @return [Integer]
|
|
717
|
+
# @see TxPackets
|
|
718
|
+
def tx_packets: () -> ::Integer
|
|
719
|
+
|
|
720
|
+
# Number of successfully processed PSP bytes for transmit, counting from
|
|
721
|
+
# the first byte after the IV through the last byte of payload.
|
|
722
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
723
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
724
|
+
# Device statistic (from the PSP spec).
|
|
725
|
+
# @rbs return: ::Integer
|
|
726
|
+
# @return [Integer]
|
|
727
|
+
# @see TxBytes
|
|
728
|
+
def tx_bytes: () -> ::Integer
|
|
729
|
+
|
|
730
|
+
# Number of PSP packets for transmission with errors.
|
|
731
|
+
# Device statistic (from the PSP spec).
|
|
732
|
+
# @rbs return: ::Integer
|
|
733
|
+
# @return [Integer]
|
|
734
|
+
# @see TxError
|
|
735
|
+
def tx_error: () -> ::Integer
|
|
736
|
+
|
|
737
|
+
# Looks up Attribute class by name.
|
|
738
|
+
# @rbs name: Symbol
|
|
739
|
+
# @rbs return: Attribute
|
|
740
|
+
# @param [Symbol] name
|
|
741
|
+
# @return [Attribute]
|
|
742
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
743
|
+
|
|
744
|
+
# Looks up Attribute class by type value.
|
|
745
|
+
# @rbs type: Integer
|
|
746
|
+
# @rbs return: Attribute
|
|
747
|
+
# @param [Integer] type
|
|
748
|
+
# @return [Attribute]
|
|
749
|
+
def self.by_type: (Integer type) -> Attribute
|
|
750
|
+
end
|
|
751
|
+
end
|
|
752
|
+
|
|
753
|
+
module Messages
|
|
754
|
+
# Get / dump information about PSP capable devices on the system.
|
|
755
|
+
class DoDevGetRequest < ::Nl::Genl::Message
|
|
756
|
+
TYPE: ::Integer
|
|
757
|
+
|
|
758
|
+
FIXED_HEADER: untyped
|
|
759
|
+
|
|
760
|
+
ATTRIBUTE_SET: untyped
|
|
761
|
+
|
|
762
|
+
ATTRIBUTES: untyped
|
|
763
|
+
|
|
764
|
+
# PSP device ID.
|
|
765
|
+
# @rbs return: ::Integer
|
|
766
|
+
# @return [Integer]
|
|
767
|
+
# @see AttributeSets::Dev::Id
|
|
768
|
+
def id: () -> ::Integer
|
|
769
|
+
end
|
|
770
|
+
|
|
771
|
+
# Get / dump information about PSP capable devices on the system.
|
|
772
|
+
class DoDevGetReply < ::Nl::Genl::Message
|
|
773
|
+
TYPE: ::Integer
|
|
774
|
+
|
|
775
|
+
FIXED_HEADER: untyped
|
|
776
|
+
|
|
777
|
+
ATTRIBUTE_SET: untyped
|
|
778
|
+
|
|
779
|
+
ATTRIBUTES: untyped
|
|
780
|
+
|
|
781
|
+
# PSP device ID.
|
|
782
|
+
# @rbs return: ::Integer
|
|
783
|
+
# @return [Integer]
|
|
784
|
+
# @see AttributeSets::Dev::Id
|
|
785
|
+
def id: () -> ::Integer
|
|
786
|
+
|
|
787
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
788
|
+
# or the ifindex to associate with the PSP device.
|
|
789
|
+
# @rbs return: ::Integer
|
|
790
|
+
# @return [Integer]
|
|
791
|
+
# @see AttributeSets::Dev::Ifindex
|
|
792
|
+
def ifindex: () -> ::Integer
|
|
793
|
+
|
|
794
|
+
# Bitmask of PSP versions supported by the device.
|
|
795
|
+
#
|
|
796
|
+
# Known flags are defined in {Flags::Version}.
|
|
797
|
+
# @rbs return: ::Integer
|
|
798
|
+
# @return [Integer]
|
|
799
|
+
# @see AttributeSets::Dev::PspVersionsCap
|
|
800
|
+
def psp_versions_cap: () -> ::Integer
|
|
801
|
+
|
|
802
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
803
|
+
#
|
|
804
|
+
# Known flags are defined in {Flags::Version}.
|
|
805
|
+
# @rbs return: ::Integer
|
|
806
|
+
# @return [Integer]
|
|
807
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
808
|
+
def psp_versions_ena: () -> ::Integer
|
|
809
|
+
|
|
810
|
+
# List of associated virtual devices.
|
|
811
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
812
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
813
|
+
# @see AttributeSets::Dev::AssocList
|
|
814
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
815
|
+
|
|
816
|
+
# Flag indicating the PSP device is an associated device from a
|
|
817
|
+
# different network namespace.
|
|
818
|
+
# Present when in associated namespace, absent when in primary/host
|
|
819
|
+
# namespace.
|
|
820
|
+
# @rbs return: ::Integer
|
|
821
|
+
# @return [Integer]
|
|
822
|
+
# @see AttributeSets::Dev::ByAssociation
|
|
823
|
+
def by_association: () -> ::Integer
|
|
824
|
+
end
|
|
825
|
+
|
|
826
|
+
# Get / dump information about PSP capable devices on the system.
|
|
827
|
+
class DumpDevGetRequest < ::Nl::Genl::Message
|
|
828
|
+
TYPE: ::Integer
|
|
829
|
+
|
|
830
|
+
FIXED_HEADER: untyped
|
|
831
|
+
|
|
832
|
+
ATTRIBUTE_SET: untyped
|
|
833
|
+
|
|
834
|
+
ATTRIBUTES: untyped
|
|
835
|
+
end
|
|
836
|
+
|
|
837
|
+
# Get / dump information about PSP capable devices on the system.
|
|
838
|
+
class DumpDevGetReply < ::Nl::Genl::Message
|
|
839
|
+
TYPE: ::Integer
|
|
840
|
+
|
|
841
|
+
FIXED_HEADER: untyped
|
|
842
|
+
|
|
843
|
+
ATTRIBUTE_SET: untyped
|
|
844
|
+
|
|
845
|
+
ATTRIBUTES: untyped
|
|
846
|
+
|
|
847
|
+
# PSP device ID.
|
|
848
|
+
# @rbs return: ::Integer
|
|
849
|
+
# @return [Integer]
|
|
850
|
+
# @see AttributeSets::Dev::Id
|
|
851
|
+
def id: () -> ::Integer
|
|
852
|
+
|
|
853
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
854
|
+
# or the ifindex to associate with the PSP device.
|
|
855
|
+
# @rbs return: ::Integer
|
|
856
|
+
# @return [Integer]
|
|
857
|
+
# @see AttributeSets::Dev::Ifindex
|
|
858
|
+
def ifindex: () -> ::Integer
|
|
859
|
+
|
|
860
|
+
# Bitmask of PSP versions supported by the device.
|
|
861
|
+
#
|
|
862
|
+
# Known flags are defined in {Flags::Version}.
|
|
863
|
+
# @rbs return: ::Integer
|
|
864
|
+
# @return [Integer]
|
|
865
|
+
# @see AttributeSets::Dev::PspVersionsCap
|
|
866
|
+
def psp_versions_cap: () -> ::Integer
|
|
867
|
+
|
|
868
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
869
|
+
#
|
|
870
|
+
# Known flags are defined in {Flags::Version}.
|
|
871
|
+
# @rbs return: ::Integer
|
|
872
|
+
# @return [Integer]
|
|
873
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
874
|
+
def psp_versions_ena: () -> ::Integer
|
|
875
|
+
|
|
876
|
+
# List of associated virtual devices.
|
|
877
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
878
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
879
|
+
# @see AttributeSets::Dev::AssocList
|
|
880
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
881
|
+
|
|
882
|
+
# Flag indicating the PSP device is an associated device from a
|
|
883
|
+
# different network namespace.
|
|
884
|
+
# Present when in associated namespace, absent when in primary/host
|
|
885
|
+
# namespace.
|
|
886
|
+
# @rbs return: ::Integer
|
|
887
|
+
# @return [Integer]
|
|
888
|
+
# @see AttributeSets::Dev::ByAssociation
|
|
889
|
+
def by_association: () -> ::Integer
|
|
890
|
+
end
|
|
891
|
+
|
|
892
|
+
# Set the configuration of a PSP device.
|
|
893
|
+
#
|
|
894
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
895
|
+
class DoDevSetRequest < ::Nl::Genl::Message
|
|
896
|
+
TYPE: ::Integer
|
|
897
|
+
|
|
898
|
+
FIXED_HEADER: untyped
|
|
899
|
+
|
|
900
|
+
ATTRIBUTE_SET: untyped
|
|
901
|
+
|
|
902
|
+
ATTRIBUTES: untyped
|
|
903
|
+
|
|
904
|
+
# PSP device ID.
|
|
905
|
+
# @rbs return: ::Integer
|
|
906
|
+
# @return [Integer]
|
|
907
|
+
# @see AttributeSets::Dev::Id
|
|
908
|
+
def id: () -> ::Integer
|
|
909
|
+
|
|
910
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
911
|
+
#
|
|
912
|
+
# Known flags are defined in {Flags::Version}.
|
|
913
|
+
# @rbs return: ::Integer
|
|
914
|
+
# @return [Integer]
|
|
915
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
916
|
+
def psp_versions_ena: () -> ::Integer
|
|
917
|
+
end
|
|
918
|
+
|
|
919
|
+
# Set the configuration of a PSP device.
|
|
920
|
+
#
|
|
921
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
922
|
+
class DoDevSetReply < ::Nl::Genl::Message
|
|
923
|
+
TYPE: ::Integer
|
|
924
|
+
|
|
925
|
+
FIXED_HEADER: untyped
|
|
926
|
+
|
|
927
|
+
ATTRIBUTE_SET: untyped
|
|
928
|
+
|
|
929
|
+
ATTRIBUTES: untyped
|
|
930
|
+
end
|
|
931
|
+
|
|
932
|
+
# Rotate the device key.
|
|
933
|
+
#
|
|
934
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
935
|
+
class DoKeyRotateRequest < ::Nl::Genl::Message
|
|
936
|
+
TYPE: ::Integer
|
|
937
|
+
|
|
938
|
+
FIXED_HEADER: untyped
|
|
939
|
+
|
|
940
|
+
ATTRIBUTE_SET: untyped
|
|
941
|
+
|
|
942
|
+
ATTRIBUTES: untyped
|
|
943
|
+
|
|
944
|
+
# PSP device ID.
|
|
945
|
+
# @rbs return: ::Integer
|
|
946
|
+
# @return [Integer]
|
|
947
|
+
# @see AttributeSets::Dev::Id
|
|
948
|
+
def id: () -> ::Integer
|
|
949
|
+
end
|
|
950
|
+
|
|
951
|
+
# Rotate the device key.
|
|
952
|
+
#
|
|
953
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
954
|
+
class DoKeyRotateReply < ::Nl::Genl::Message
|
|
955
|
+
TYPE: ::Integer
|
|
956
|
+
|
|
957
|
+
FIXED_HEADER: untyped
|
|
958
|
+
|
|
959
|
+
ATTRIBUTE_SET: untyped
|
|
960
|
+
|
|
961
|
+
ATTRIBUTES: untyped
|
|
962
|
+
|
|
963
|
+
# PSP device ID.
|
|
964
|
+
# @rbs return: ::Integer
|
|
965
|
+
# @return [Integer]
|
|
966
|
+
# @see AttributeSets::Dev::Id
|
|
967
|
+
def id: () -> ::Integer
|
|
968
|
+
end
|
|
969
|
+
|
|
970
|
+
# Allocate a new Rx key + SPI pair, associate it with a socket.
|
|
971
|
+
class DoRxAssocRequest < ::Nl::Genl::Message
|
|
972
|
+
TYPE: ::Integer
|
|
973
|
+
|
|
974
|
+
FIXED_HEADER: untyped
|
|
975
|
+
|
|
976
|
+
ATTRIBUTE_SET: untyped
|
|
977
|
+
|
|
978
|
+
ATTRIBUTES: untyped
|
|
979
|
+
|
|
980
|
+
# PSP device ID.
|
|
981
|
+
# @rbs return: ::Integer
|
|
982
|
+
# @return [Integer]
|
|
983
|
+
# @see AttributeSets::Assoc::DevId
|
|
984
|
+
def dev_id: () -> ::Integer
|
|
985
|
+
|
|
986
|
+
# PSP versions (AEAD and protocol version) used by this association,
|
|
987
|
+
# dictates the size of the key.
|
|
988
|
+
#
|
|
989
|
+
#
|
|
990
|
+
# Known enum values are defined in {Enums::Version}.
|
|
991
|
+
# @rbs return: ::Integer
|
|
992
|
+
# @return [Integer]
|
|
993
|
+
# @see AttributeSets::Assoc::Version
|
|
994
|
+
def version: () -> ::Integer
|
|
995
|
+
|
|
996
|
+
# Sockets which should be bound to the association immediately.
|
|
997
|
+
# @rbs return: ::Integer
|
|
998
|
+
# @return [Integer]
|
|
999
|
+
# @see AttributeSets::Assoc::SockFd
|
|
1000
|
+
def sock_fd: () -> ::Integer
|
|
1001
|
+
end
|
|
1002
|
+
|
|
1003
|
+
# Allocate a new Rx key + SPI pair, associate it with a socket.
|
|
1004
|
+
class DoRxAssocReply < ::Nl::Genl::Message
|
|
1005
|
+
TYPE: ::Integer
|
|
1006
|
+
|
|
1007
|
+
FIXED_HEADER: untyped
|
|
1008
|
+
|
|
1009
|
+
ATTRIBUTE_SET: untyped
|
|
1010
|
+
|
|
1011
|
+
ATTRIBUTES: untyped
|
|
1012
|
+
|
|
1013
|
+
# PSP device ID.
|
|
1014
|
+
# @rbs return: ::Integer
|
|
1015
|
+
# @return [Integer]
|
|
1016
|
+
# @see AttributeSets::Assoc::DevId
|
|
1017
|
+
def dev_id: () -> ::Integer
|
|
1018
|
+
|
|
1019
|
+
# @rbs return: AttributeSets::Keys
|
|
1020
|
+
# @return [AttributeSets::Keys]
|
|
1021
|
+
# @see AttributeSets::Assoc::RxKey
|
|
1022
|
+
def rx_key: () -> AttributeSets::Keys
|
|
1023
|
+
end
|
|
1024
|
+
|
|
1025
|
+
# Add a PSP Tx association.
|
|
1026
|
+
class DoTxAssocRequest < ::Nl::Genl::Message
|
|
1027
|
+
TYPE: ::Integer
|
|
1028
|
+
|
|
1029
|
+
FIXED_HEADER: untyped
|
|
1030
|
+
|
|
1031
|
+
ATTRIBUTE_SET: untyped
|
|
1032
|
+
|
|
1033
|
+
ATTRIBUTES: untyped
|
|
1034
|
+
|
|
1035
|
+
# PSP device ID.
|
|
1036
|
+
# @rbs return: ::Integer
|
|
1037
|
+
# @return [Integer]
|
|
1038
|
+
# @see AttributeSets::Assoc::DevId
|
|
1039
|
+
def dev_id: () -> ::Integer
|
|
1040
|
+
|
|
1041
|
+
# PSP versions (AEAD and protocol version) used by this association,
|
|
1042
|
+
# dictates the size of the key.
|
|
1043
|
+
#
|
|
1044
|
+
#
|
|
1045
|
+
# Known enum values are defined in {Enums::Version}.
|
|
1046
|
+
# @rbs return: ::Integer
|
|
1047
|
+
# @return [Integer]
|
|
1048
|
+
# @see AttributeSets::Assoc::Version
|
|
1049
|
+
def version: () -> ::Integer
|
|
1050
|
+
|
|
1051
|
+
# @rbs return: AttributeSets::Keys
|
|
1052
|
+
# @return [AttributeSets::Keys]
|
|
1053
|
+
# @see AttributeSets::Assoc::TxKey
|
|
1054
|
+
def tx_key: () -> AttributeSets::Keys
|
|
1055
|
+
|
|
1056
|
+
# Sockets which should be bound to the association immediately.
|
|
1057
|
+
# @rbs return: ::Integer
|
|
1058
|
+
# @return [Integer]
|
|
1059
|
+
# @see AttributeSets::Assoc::SockFd
|
|
1060
|
+
def sock_fd: () -> ::Integer
|
|
1061
|
+
end
|
|
1062
|
+
|
|
1063
|
+
# Add a PSP Tx association.
|
|
1064
|
+
class DoTxAssocReply < ::Nl::Genl::Message
|
|
1065
|
+
TYPE: ::Integer
|
|
1066
|
+
|
|
1067
|
+
FIXED_HEADER: untyped
|
|
1068
|
+
|
|
1069
|
+
ATTRIBUTE_SET: untyped
|
|
1070
|
+
|
|
1071
|
+
ATTRIBUTES: untyped
|
|
1072
|
+
end
|
|
1073
|
+
|
|
1074
|
+
# Get device statistics.
|
|
1075
|
+
class DoGetStatsRequest < ::Nl::Genl::Message
|
|
1076
|
+
TYPE: ::Integer
|
|
1077
|
+
|
|
1078
|
+
FIXED_HEADER: untyped
|
|
1079
|
+
|
|
1080
|
+
ATTRIBUTE_SET: untyped
|
|
1081
|
+
|
|
1082
|
+
ATTRIBUTES: untyped
|
|
1083
|
+
|
|
1084
|
+
# PSP device ID.
|
|
1085
|
+
# @rbs return: ::Integer
|
|
1086
|
+
# @return [Integer]
|
|
1087
|
+
# @see AttributeSets::Stats::DevId
|
|
1088
|
+
def dev_id: () -> ::Integer
|
|
1089
|
+
end
|
|
1090
|
+
|
|
1091
|
+
# Get device statistics.
|
|
1092
|
+
class DoGetStatsReply < ::Nl::Genl::Message
|
|
1093
|
+
TYPE: ::Integer
|
|
1094
|
+
|
|
1095
|
+
FIXED_HEADER: untyped
|
|
1096
|
+
|
|
1097
|
+
ATTRIBUTE_SET: untyped
|
|
1098
|
+
|
|
1099
|
+
ATTRIBUTES: untyped
|
|
1100
|
+
|
|
1101
|
+
# PSP device ID.
|
|
1102
|
+
# @rbs return: ::Integer
|
|
1103
|
+
# @return [Integer]
|
|
1104
|
+
# @see AttributeSets::Stats::DevId
|
|
1105
|
+
def dev_id: () -> ::Integer
|
|
1106
|
+
|
|
1107
|
+
# Number of key rotations during the lifetime of the device.
|
|
1108
|
+
# Kernel statistic.
|
|
1109
|
+
# @rbs return: ::Integer
|
|
1110
|
+
# @return [Integer]
|
|
1111
|
+
# @see AttributeSets::Stats::KeyRotations
|
|
1112
|
+
def key_rotations: () -> ::Integer
|
|
1113
|
+
|
|
1114
|
+
# Number of times a socket's Rx got shut down due to using
|
|
1115
|
+
# a key which went stale (fully rotated out).
|
|
1116
|
+
# Kernel statistic.
|
|
1117
|
+
# @rbs return: ::Integer
|
|
1118
|
+
# @return [Integer]
|
|
1119
|
+
# @see AttributeSets::Stats::StaleEvents
|
|
1120
|
+
def stale_events: () -> ::Integer
|
|
1121
|
+
|
|
1122
|
+
# Number of successfully processed and authenticated PSP packets.
|
|
1123
|
+
# Device statistic (from the PSP spec).
|
|
1124
|
+
# @rbs return: ::Integer
|
|
1125
|
+
# @return [Integer]
|
|
1126
|
+
# @see AttributeSets::Stats::RxPackets
|
|
1127
|
+
def rx_packets: () -> ::Integer
|
|
1128
|
+
|
|
1129
|
+
# Number of successfully authenticated PSP bytes received, counting from
|
|
1130
|
+
# the first byte after the IV through the last byte of payload.
|
|
1131
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
1132
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
1133
|
+
# Device statistic (from the PSP spec).
|
|
1134
|
+
# @rbs return: ::Integer
|
|
1135
|
+
# @return [Integer]
|
|
1136
|
+
# @see AttributeSets::Stats::RxBytes
|
|
1137
|
+
def rx_bytes: () -> ::Integer
|
|
1138
|
+
|
|
1139
|
+
# Number of received PSP packets with unsuccessful authentication.
|
|
1140
|
+
# Device statistic (from the PSP spec).
|
|
1141
|
+
# @rbs return: ::Integer
|
|
1142
|
+
# @return [Integer]
|
|
1143
|
+
# @see AttributeSets::Stats::RxAuthFail
|
|
1144
|
+
def rx_auth_fail: () -> ::Integer
|
|
1145
|
+
|
|
1146
|
+
# Number of received PSP packets with length/framing errors.
|
|
1147
|
+
# Device statistic (from the PSP spec).
|
|
1148
|
+
# @rbs return: ::Integer
|
|
1149
|
+
# @return [Integer]
|
|
1150
|
+
# @see AttributeSets::Stats::RxError
|
|
1151
|
+
def rx_error: () -> ::Integer
|
|
1152
|
+
|
|
1153
|
+
# Number of received PSP packets with miscellaneous errors
|
|
1154
|
+
# (invalid master key indicated by SPI, unsupported version, etc.)
|
|
1155
|
+
# Device statistic (from the PSP spec).
|
|
1156
|
+
# @rbs return: ::Integer
|
|
1157
|
+
# @return [Integer]
|
|
1158
|
+
# @see AttributeSets::Stats::RxBad
|
|
1159
|
+
def rx_bad: () -> ::Integer
|
|
1160
|
+
|
|
1161
|
+
# Number of successfully processed PSP packets for transmission.
|
|
1162
|
+
# Device statistic (from the PSP spec).
|
|
1163
|
+
# @rbs return: ::Integer
|
|
1164
|
+
# @return [Integer]
|
|
1165
|
+
# @see AttributeSets::Stats::TxPackets
|
|
1166
|
+
def tx_packets: () -> ::Integer
|
|
1167
|
+
|
|
1168
|
+
# Number of successfully processed PSP bytes for transmit, counting from
|
|
1169
|
+
# the first byte after the IV through the last byte of payload.
|
|
1170
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
1171
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
1172
|
+
# Device statistic (from the PSP spec).
|
|
1173
|
+
# @rbs return: ::Integer
|
|
1174
|
+
# @return [Integer]
|
|
1175
|
+
# @see AttributeSets::Stats::TxBytes
|
|
1176
|
+
def tx_bytes: () -> ::Integer
|
|
1177
|
+
|
|
1178
|
+
# Number of PSP packets for transmission with errors.
|
|
1179
|
+
# Device statistic (from the PSP spec).
|
|
1180
|
+
# @rbs return: ::Integer
|
|
1181
|
+
# @return [Integer]
|
|
1182
|
+
# @see AttributeSets::Stats::TxError
|
|
1183
|
+
def tx_error: () -> ::Integer
|
|
1184
|
+
end
|
|
1185
|
+
|
|
1186
|
+
# Get device statistics.
|
|
1187
|
+
class DumpGetStatsRequest < ::Nl::Genl::Message
|
|
1188
|
+
TYPE: ::Integer
|
|
1189
|
+
|
|
1190
|
+
FIXED_HEADER: untyped
|
|
1191
|
+
|
|
1192
|
+
ATTRIBUTE_SET: untyped
|
|
1193
|
+
|
|
1194
|
+
ATTRIBUTES: untyped
|
|
1195
|
+
end
|
|
1196
|
+
|
|
1197
|
+
# Get device statistics.
|
|
1198
|
+
class DumpGetStatsReply < ::Nl::Genl::Message
|
|
1199
|
+
TYPE: ::Integer
|
|
1200
|
+
|
|
1201
|
+
FIXED_HEADER: untyped
|
|
1202
|
+
|
|
1203
|
+
ATTRIBUTE_SET: untyped
|
|
1204
|
+
|
|
1205
|
+
ATTRIBUTES: untyped
|
|
1206
|
+
|
|
1207
|
+
# PSP device ID.
|
|
1208
|
+
# @rbs return: ::Integer
|
|
1209
|
+
# @return [Integer]
|
|
1210
|
+
# @see AttributeSets::Stats::DevId
|
|
1211
|
+
def dev_id: () -> ::Integer
|
|
1212
|
+
|
|
1213
|
+
# Number of key rotations during the lifetime of the device.
|
|
1214
|
+
# Kernel statistic.
|
|
1215
|
+
# @rbs return: ::Integer
|
|
1216
|
+
# @return [Integer]
|
|
1217
|
+
# @see AttributeSets::Stats::KeyRotations
|
|
1218
|
+
def key_rotations: () -> ::Integer
|
|
1219
|
+
|
|
1220
|
+
# Number of times a socket's Rx got shut down due to using
|
|
1221
|
+
# a key which went stale (fully rotated out).
|
|
1222
|
+
# Kernel statistic.
|
|
1223
|
+
# @rbs return: ::Integer
|
|
1224
|
+
# @return [Integer]
|
|
1225
|
+
# @see AttributeSets::Stats::StaleEvents
|
|
1226
|
+
def stale_events: () -> ::Integer
|
|
1227
|
+
|
|
1228
|
+
# Number of successfully processed and authenticated PSP packets.
|
|
1229
|
+
# Device statistic (from the PSP spec).
|
|
1230
|
+
# @rbs return: ::Integer
|
|
1231
|
+
# @return [Integer]
|
|
1232
|
+
# @see AttributeSets::Stats::RxPackets
|
|
1233
|
+
def rx_packets: () -> ::Integer
|
|
1234
|
+
|
|
1235
|
+
# Number of successfully authenticated PSP bytes received, counting from
|
|
1236
|
+
# the first byte after the IV through the last byte of payload.
|
|
1237
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
1238
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
1239
|
+
# Device statistic (from the PSP spec).
|
|
1240
|
+
# @rbs return: ::Integer
|
|
1241
|
+
# @return [Integer]
|
|
1242
|
+
# @see AttributeSets::Stats::RxBytes
|
|
1243
|
+
def rx_bytes: () -> ::Integer
|
|
1244
|
+
|
|
1245
|
+
# Number of received PSP packets with unsuccessful authentication.
|
|
1246
|
+
# Device statistic (from the PSP spec).
|
|
1247
|
+
# @rbs return: ::Integer
|
|
1248
|
+
# @return [Integer]
|
|
1249
|
+
# @see AttributeSets::Stats::RxAuthFail
|
|
1250
|
+
def rx_auth_fail: () -> ::Integer
|
|
1251
|
+
|
|
1252
|
+
# Number of received PSP packets with length/framing errors.
|
|
1253
|
+
# Device statistic (from the PSP spec).
|
|
1254
|
+
# @rbs return: ::Integer
|
|
1255
|
+
# @return [Integer]
|
|
1256
|
+
# @see AttributeSets::Stats::RxError
|
|
1257
|
+
def rx_error: () -> ::Integer
|
|
1258
|
+
|
|
1259
|
+
# Number of received PSP packets with miscellaneous errors
|
|
1260
|
+
# (invalid master key indicated by SPI, unsupported version, etc.)
|
|
1261
|
+
# Device statistic (from the PSP spec).
|
|
1262
|
+
# @rbs return: ::Integer
|
|
1263
|
+
# @return [Integer]
|
|
1264
|
+
# @see AttributeSets::Stats::RxBad
|
|
1265
|
+
def rx_bad: () -> ::Integer
|
|
1266
|
+
|
|
1267
|
+
# Number of successfully processed PSP packets for transmission.
|
|
1268
|
+
# Device statistic (from the PSP spec).
|
|
1269
|
+
# @rbs return: ::Integer
|
|
1270
|
+
# @return [Integer]
|
|
1271
|
+
# @see AttributeSets::Stats::TxPackets
|
|
1272
|
+
def tx_packets: () -> ::Integer
|
|
1273
|
+
|
|
1274
|
+
# Number of successfully processed PSP bytes for transmit, counting from
|
|
1275
|
+
# the first byte after the IV through the last byte of payload.
|
|
1276
|
+
# The fixed initial portion of the PSP header (16 bytes)
|
|
1277
|
+
# and the PSP trailer/ICV (16 bytes) are not included in this count.
|
|
1278
|
+
# Device statistic (from the PSP spec).
|
|
1279
|
+
# @rbs return: ::Integer
|
|
1280
|
+
# @return [Integer]
|
|
1281
|
+
# @see AttributeSets::Stats::TxBytes
|
|
1282
|
+
def tx_bytes: () -> ::Integer
|
|
1283
|
+
|
|
1284
|
+
# Number of PSP packets for transmission with errors.
|
|
1285
|
+
# Device statistic (from the PSP spec).
|
|
1286
|
+
# @rbs return: ::Integer
|
|
1287
|
+
# @return [Integer]
|
|
1288
|
+
# @see AttributeSets::Stats::TxError
|
|
1289
|
+
def tx_error: () -> ::Integer
|
|
1290
|
+
end
|
|
1291
|
+
|
|
1292
|
+
# Associate a network device with a PSP device.
|
|
1293
|
+
#
|
|
1294
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1295
|
+
class DoDevAssocRequest < ::Nl::Genl::Message
|
|
1296
|
+
TYPE: ::Integer
|
|
1297
|
+
|
|
1298
|
+
FIXED_HEADER: untyped
|
|
1299
|
+
|
|
1300
|
+
ATTRIBUTE_SET: untyped
|
|
1301
|
+
|
|
1302
|
+
ATTRIBUTES: untyped
|
|
1303
|
+
|
|
1304
|
+
# PSP device ID.
|
|
1305
|
+
# @rbs return: ::Integer
|
|
1306
|
+
# @return [Integer]
|
|
1307
|
+
# @see AttributeSets::Dev::Id
|
|
1308
|
+
def id: () -> ::Integer
|
|
1309
|
+
|
|
1310
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
1311
|
+
# or the ifindex to associate with the PSP device.
|
|
1312
|
+
# @rbs return: ::Integer
|
|
1313
|
+
# @return [Integer]
|
|
1314
|
+
# @see AttributeSets::Dev::Ifindex
|
|
1315
|
+
def ifindex: () -> ::Integer
|
|
1316
|
+
|
|
1317
|
+
# Network namespace ID for the device to associate/disassociate.
|
|
1318
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1319
|
+
# device is looked up in the caller's network namespace.
|
|
1320
|
+
# @rbs return: ::Integer
|
|
1321
|
+
# @return [Integer]
|
|
1322
|
+
# @see AttributeSets::Dev::Nsid
|
|
1323
|
+
def nsid: () -> ::Integer
|
|
1324
|
+
end
|
|
1325
|
+
|
|
1326
|
+
# Associate a network device with a PSP device.
|
|
1327
|
+
#
|
|
1328
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1329
|
+
class DoDevAssocReply < ::Nl::Genl::Message
|
|
1330
|
+
TYPE: ::Integer
|
|
1331
|
+
|
|
1332
|
+
FIXED_HEADER: untyped
|
|
1333
|
+
|
|
1334
|
+
ATTRIBUTE_SET: untyped
|
|
1335
|
+
|
|
1336
|
+
ATTRIBUTES: untyped
|
|
1337
|
+
end
|
|
1338
|
+
|
|
1339
|
+
# Disassociate a network device from a PSP device.
|
|
1340
|
+
#
|
|
1341
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1342
|
+
class DoDevDisassocRequest < ::Nl::Genl::Message
|
|
1343
|
+
TYPE: ::Integer
|
|
1344
|
+
|
|
1345
|
+
FIXED_HEADER: untyped
|
|
1346
|
+
|
|
1347
|
+
ATTRIBUTE_SET: untyped
|
|
1348
|
+
|
|
1349
|
+
ATTRIBUTES: untyped
|
|
1350
|
+
|
|
1351
|
+
# PSP device ID.
|
|
1352
|
+
# @rbs return: ::Integer
|
|
1353
|
+
# @return [Integer]
|
|
1354
|
+
# @see AttributeSets::Dev::Id
|
|
1355
|
+
def id: () -> ::Integer
|
|
1356
|
+
|
|
1357
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
1358
|
+
# or the ifindex to associate with the PSP device.
|
|
1359
|
+
# @rbs return: ::Integer
|
|
1360
|
+
# @return [Integer]
|
|
1361
|
+
# @see AttributeSets::Dev::Ifindex
|
|
1362
|
+
def ifindex: () -> ::Integer
|
|
1363
|
+
|
|
1364
|
+
# Network namespace ID for the device to associate/disassociate.
|
|
1365
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1366
|
+
# device is looked up in the caller's network namespace.
|
|
1367
|
+
# @rbs return: ::Integer
|
|
1368
|
+
# @return [Integer]
|
|
1369
|
+
# @see AttributeSets::Dev::Nsid
|
|
1370
|
+
def nsid: () -> ::Integer
|
|
1371
|
+
end
|
|
1372
|
+
|
|
1373
|
+
# Disassociate a network device from a PSP device.
|
|
1374
|
+
#
|
|
1375
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1376
|
+
class DoDevDisassocReply < ::Nl::Genl::Message
|
|
1377
|
+
TYPE: ::Integer
|
|
1378
|
+
|
|
1379
|
+
FIXED_HEADER: untyped
|
|
1380
|
+
|
|
1381
|
+
ATTRIBUTE_SET: untyped
|
|
1382
|
+
|
|
1383
|
+
ATTRIBUTES: untyped
|
|
1384
|
+
end
|
|
1385
|
+
end
|
|
1386
|
+
|
|
1387
|
+
module Notifications
|
|
1388
|
+
# Notification about device appearing.
|
|
1389
|
+
#
|
|
1390
|
+
# Multicast group: `mgmt`.
|
|
1391
|
+
class DevAddNtf < ::Nl::Genl::Message
|
|
1392
|
+
TYPE: ::Integer
|
|
1393
|
+
|
|
1394
|
+
FIXED_HEADER: untyped
|
|
1395
|
+
|
|
1396
|
+
ATTRIBUTE_SET: untyped
|
|
1397
|
+
|
|
1398
|
+
ATTRIBUTES: untyped
|
|
1399
|
+
|
|
1400
|
+
# PSP device ID.
|
|
1401
|
+
# @rbs return: ::Integer
|
|
1402
|
+
# @return [Integer]
|
|
1403
|
+
# @see AttributeSets::Dev::Id
|
|
1404
|
+
def id: () -> ::Integer
|
|
1405
|
+
|
|
1406
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
1407
|
+
# or the ifindex to associate with the PSP device.
|
|
1408
|
+
# @rbs return: ::Integer
|
|
1409
|
+
# @return [Integer]
|
|
1410
|
+
# @see AttributeSets::Dev::Ifindex
|
|
1411
|
+
def ifindex: () -> ::Integer
|
|
1412
|
+
|
|
1413
|
+
# Bitmask of PSP versions supported by the device.
|
|
1414
|
+
#
|
|
1415
|
+
# Known flags are defined in {Flags::Version}.
|
|
1416
|
+
# @rbs return: ::Integer
|
|
1417
|
+
# @return [Integer]
|
|
1418
|
+
# @see AttributeSets::Dev::PspVersionsCap
|
|
1419
|
+
def psp_versions_cap: () -> ::Integer
|
|
1420
|
+
|
|
1421
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
1422
|
+
#
|
|
1423
|
+
# Known flags are defined in {Flags::Version}.
|
|
1424
|
+
# @rbs return: ::Integer
|
|
1425
|
+
# @return [Integer]
|
|
1426
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
1427
|
+
def psp_versions_ena: () -> ::Integer
|
|
1428
|
+
|
|
1429
|
+
# List of associated virtual devices.
|
|
1430
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
1431
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
1432
|
+
# @see AttributeSets::Dev::AssocList
|
|
1433
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
1434
|
+
|
|
1435
|
+
# Flag indicating the PSP device is an associated device from a
|
|
1436
|
+
# different network namespace.
|
|
1437
|
+
# Present when in associated namespace, absent when in primary/host
|
|
1438
|
+
# namespace.
|
|
1439
|
+
# @rbs return: ::Integer
|
|
1440
|
+
# @return [Integer]
|
|
1441
|
+
# @see AttributeSets::Dev::ByAssociation
|
|
1442
|
+
def by_association: () -> ::Integer
|
|
1443
|
+
end
|
|
1444
|
+
|
|
1445
|
+
# Notification about device disappearing.
|
|
1446
|
+
#
|
|
1447
|
+
# Multicast group: `mgmt`.
|
|
1448
|
+
class DevDelNtf < ::Nl::Genl::Message
|
|
1449
|
+
TYPE: ::Integer
|
|
1450
|
+
|
|
1451
|
+
FIXED_HEADER: untyped
|
|
1452
|
+
|
|
1453
|
+
ATTRIBUTE_SET: untyped
|
|
1454
|
+
|
|
1455
|
+
ATTRIBUTES: untyped
|
|
1456
|
+
|
|
1457
|
+
# PSP device ID.
|
|
1458
|
+
# @rbs return: ::Integer
|
|
1459
|
+
# @return [Integer]
|
|
1460
|
+
# @see AttributeSets::Dev::Id
|
|
1461
|
+
def id: () -> ::Integer
|
|
1462
|
+
|
|
1463
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
1464
|
+
# or the ifindex to associate with the PSP device.
|
|
1465
|
+
# @rbs return: ::Integer
|
|
1466
|
+
# @return [Integer]
|
|
1467
|
+
# @see AttributeSets::Dev::Ifindex
|
|
1468
|
+
def ifindex: () -> ::Integer
|
|
1469
|
+
|
|
1470
|
+
# Bitmask of PSP versions supported by the device.
|
|
1471
|
+
#
|
|
1472
|
+
# Known flags are defined in {Flags::Version}.
|
|
1473
|
+
# @rbs return: ::Integer
|
|
1474
|
+
# @return [Integer]
|
|
1475
|
+
# @see AttributeSets::Dev::PspVersionsCap
|
|
1476
|
+
def psp_versions_cap: () -> ::Integer
|
|
1477
|
+
|
|
1478
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
1479
|
+
#
|
|
1480
|
+
# Known flags are defined in {Flags::Version}.
|
|
1481
|
+
# @rbs return: ::Integer
|
|
1482
|
+
# @return [Integer]
|
|
1483
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
1484
|
+
def psp_versions_ena: () -> ::Integer
|
|
1485
|
+
|
|
1486
|
+
# List of associated virtual devices.
|
|
1487
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
1488
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
1489
|
+
# @see AttributeSets::Dev::AssocList
|
|
1490
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
1491
|
+
|
|
1492
|
+
# Flag indicating the PSP device is an associated device from a
|
|
1493
|
+
# different network namespace.
|
|
1494
|
+
# Present when in associated namespace, absent when in primary/host
|
|
1495
|
+
# namespace.
|
|
1496
|
+
# @rbs return: ::Integer
|
|
1497
|
+
# @return [Integer]
|
|
1498
|
+
# @see AttributeSets::Dev::ByAssociation
|
|
1499
|
+
def by_association: () -> ::Integer
|
|
1500
|
+
end
|
|
1501
|
+
|
|
1502
|
+
# Notification about device configuration being changed.
|
|
1503
|
+
#
|
|
1504
|
+
# Multicast group: `mgmt`.
|
|
1505
|
+
class DevChangeNtf < ::Nl::Genl::Message
|
|
1506
|
+
TYPE: ::Integer
|
|
1507
|
+
|
|
1508
|
+
FIXED_HEADER: untyped
|
|
1509
|
+
|
|
1510
|
+
ATTRIBUTE_SET: untyped
|
|
1511
|
+
|
|
1512
|
+
ATTRIBUTES: untyped
|
|
1513
|
+
|
|
1514
|
+
# PSP device ID.
|
|
1515
|
+
# @rbs return: ::Integer
|
|
1516
|
+
# @return [Integer]
|
|
1517
|
+
# @see AttributeSets::Dev::Id
|
|
1518
|
+
def id: () -> ::Integer
|
|
1519
|
+
|
|
1520
|
+
# ifindex of the main netdevice linked to the PSP device,
|
|
1521
|
+
# or the ifindex to associate with the PSP device.
|
|
1522
|
+
# @rbs return: ::Integer
|
|
1523
|
+
# @return [Integer]
|
|
1524
|
+
# @see AttributeSets::Dev::Ifindex
|
|
1525
|
+
def ifindex: () -> ::Integer
|
|
1526
|
+
|
|
1527
|
+
# Bitmask of PSP versions supported by the device.
|
|
1528
|
+
#
|
|
1529
|
+
# Known flags are defined in {Flags::Version}.
|
|
1530
|
+
# @rbs return: ::Integer
|
|
1531
|
+
# @return [Integer]
|
|
1532
|
+
# @see AttributeSets::Dev::PspVersionsCap
|
|
1533
|
+
def psp_versions_cap: () -> ::Integer
|
|
1534
|
+
|
|
1535
|
+
# Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
1536
|
+
#
|
|
1537
|
+
# Known flags are defined in {Flags::Version}.
|
|
1538
|
+
# @rbs return: ::Integer
|
|
1539
|
+
# @return [Integer]
|
|
1540
|
+
# @see AttributeSets::Dev::PspVersionsEna
|
|
1541
|
+
def psp_versions_ena: () -> ::Integer
|
|
1542
|
+
|
|
1543
|
+
# List of associated virtual devices.
|
|
1544
|
+
# @rbs return: ::Array[AttributeSets::AssocDevInfo]
|
|
1545
|
+
# @return [Array<AttributeSets::AssocDevInfo>]
|
|
1546
|
+
# @see AttributeSets::Dev::AssocList
|
|
1547
|
+
def assoc_list: () -> ::Array[AttributeSets::AssocDevInfo]
|
|
1548
|
+
|
|
1549
|
+
# Flag indicating the PSP device is an associated device from a
|
|
1550
|
+
# different network namespace.
|
|
1551
|
+
# Present when in associated namespace, absent when in primary/host
|
|
1552
|
+
# namespace.
|
|
1553
|
+
# @rbs return: ::Integer
|
|
1554
|
+
# @return [Integer]
|
|
1555
|
+
# @see AttributeSets::Dev::ByAssociation
|
|
1556
|
+
def by_association: () -> ::Integer
|
|
1557
|
+
end
|
|
1558
|
+
|
|
1559
|
+
# Notification about device key getting rotated.
|
|
1560
|
+
#
|
|
1561
|
+
# Multicast group: `use`.
|
|
1562
|
+
class KeyRotateNtf < ::Nl::Genl::Message
|
|
1563
|
+
TYPE: ::Integer
|
|
1564
|
+
|
|
1565
|
+
FIXED_HEADER: untyped
|
|
1566
|
+
|
|
1567
|
+
ATTRIBUTE_SET: untyped
|
|
1568
|
+
|
|
1569
|
+
ATTRIBUTES: untyped
|
|
1570
|
+
|
|
1571
|
+
# PSP device ID.
|
|
1572
|
+
# @rbs return: ::Integer
|
|
1573
|
+
# @return [Integer]
|
|
1574
|
+
# @see AttributeSets::Dev::Id
|
|
1575
|
+
def id: () -> ::Integer
|
|
1576
|
+
end
|
|
1577
|
+
end
|
|
1578
|
+
|
|
1579
|
+
# @private
|
|
1580
|
+
NOTIFICATIONS: Hash[::Integer, ::Class]
|
|
1581
|
+
|
|
1582
|
+
# Get / dump information about PSP capable devices on the system.
|
|
1583
|
+
# @rbs (?id: ::Integer) -> Messages::DoDevGetReply
|
|
1584
|
+
# @param [Hash] args
|
|
1585
|
+
# @option args [Integer] id PSP device ID.
|
|
1586
|
+
# @return [Messages::DoDevGetReply]
|
|
1587
|
+
# @see Messages::DoDevGetRequest
|
|
1588
|
+
def do_dev_get: (?id: ::Integer) -> Messages::DoDevGetReply
|
|
1589
|
+
|
|
1590
|
+
# Get / dump information about PSP capable devices on the system.
|
|
1591
|
+
# @rbs () -> Array[Messages::DumpDevGetReply]
|
|
1592
|
+
# | () { (Messages::DumpDevGetReply) -> void } -> void
|
|
1593
|
+
# @overload dump_dev_get(**args)
|
|
1594
|
+
# Returns an array when no block is given.
|
|
1595
|
+
# @param [Hash] args
|
|
1596
|
+
# @return [Array<Messages::DumpDevGetReply>]
|
|
1597
|
+
# @overload dump_dev_get(**args, &block)
|
|
1598
|
+
# Yields each reply when a block is given.
|
|
1599
|
+
# @param [Hash] args
|
|
1600
|
+
# @yieldparam [Messages::DumpDevGetReply] reply
|
|
1601
|
+
# @return [void]
|
|
1602
|
+
# @see Messages::DumpDevGetRequest
|
|
1603
|
+
def dump_dev_get: () -> Array[Messages::DumpDevGetReply]
|
|
1604
|
+
| () { (Messages::DumpDevGetReply) -> void } -> void
|
|
1605
|
+
|
|
1606
|
+
# Set the configuration of a PSP device.
|
|
1607
|
+
#
|
|
1608
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1609
|
+
# @rbs (?id: ::Integer, ?psp_versions_ena: ::Integer) -> Messages::DoDevSetReply
|
|
1610
|
+
# @param [Hash] args
|
|
1611
|
+
# @option args [Integer] id PSP device ID.
|
|
1612
|
+
# @option args [Integer] psp_versions_ena Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
1613
|
+
#
|
|
1614
|
+
# Known flags are defined in {Flags::Version}.
|
|
1615
|
+
# @return [Messages::DoDevSetReply]
|
|
1616
|
+
# @see Messages::DoDevSetRequest
|
|
1617
|
+
def do_dev_set: (?id: ::Integer, ?psp_versions_ena: ::Integer) -> Messages::DoDevSetReply
|
|
1618
|
+
|
|
1619
|
+
# Rotate the device key.
|
|
1620
|
+
#
|
|
1621
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1622
|
+
# @rbs (?id: ::Integer) -> Messages::DoKeyRotateReply
|
|
1623
|
+
# @param [Hash] args
|
|
1624
|
+
# @option args [Integer] id PSP device ID.
|
|
1625
|
+
# @return [Messages::DoKeyRotateReply]
|
|
1626
|
+
# @see Messages::DoKeyRotateRequest
|
|
1627
|
+
def do_key_rotate: (?id: ::Integer) -> Messages::DoKeyRotateReply
|
|
1628
|
+
|
|
1629
|
+
# Allocate a new Rx key + SPI pair, associate it with a socket.
|
|
1630
|
+
# @rbs (?dev_id: ::Integer, ?version: ::Integer, ?sock_fd: ::Integer) -> Messages::DoRxAssocReply
|
|
1631
|
+
# @param [Hash] args
|
|
1632
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1633
|
+
# @option args [Integer] version PSP versions (AEAD and protocol version) used by this association,
|
|
1634
|
+
# dictates the size of the key.
|
|
1635
|
+
#
|
|
1636
|
+
#
|
|
1637
|
+
# Known enum values are defined in {Enums::Version}.
|
|
1638
|
+
# @option args [Integer] sock_fd Sockets which should be bound to the association immediately.
|
|
1639
|
+
# @return [Messages::DoRxAssocReply]
|
|
1640
|
+
# @see Messages::DoRxAssocRequest
|
|
1641
|
+
def do_rx_assoc: (?dev_id: ::Integer, ?version: ::Integer, ?sock_fd: ::Integer) -> Messages::DoRxAssocReply
|
|
1642
|
+
|
|
1643
|
+
# Add a PSP Tx association.
|
|
1644
|
+
# @rbs (?dev_id: ::Integer, ?version: ::Integer, ?tx_key: (AttributeSets::Keys | ::Hash[::Symbol, untyped]), ?sock_fd: ::Integer) -> Messages::DoTxAssocReply
|
|
1645
|
+
# @param [Hash] args
|
|
1646
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1647
|
+
# @option args [Integer] version PSP versions (AEAD and protocol version) used by this association,
|
|
1648
|
+
# dictates the size of the key.
|
|
1649
|
+
#
|
|
1650
|
+
#
|
|
1651
|
+
# Known enum values are defined in {Enums::Version}.
|
|
1652
|
+
# @option args [AttributeSets::Keys, Hash<Symbol, Object>] tx_key
|
|
1653
|
+
# @option args [Integer] sock_fd Sockets which should be bound to the association immediately.
|
|
1654
|
+
# @return [Messages::DoTxAssocReply]
|
|
1655
|
+
# @see Messages::DoTxAssocRequest
|
|
1656
|
+
def do_tx_assoc: (?dev_id: ::Integer, ?version: ::Integer, ?tx_key: AttributeSets::Keys | ::Hash[::Symbol, untyped], ?sock_fd: ::Integer) -> Messages::DoTxAssocReply
|
|
1657
|
+
|
|
1658
|
+
# Get device statistics.
|
|
1659
|
+
# @rbs (?dev_id: ::Integer) -> Messages::DoGetStatsReply
|
|
1660
|
+
# @param [Hash] args
|
|
1661
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1662
|
+
# @return [Messages::DoGetStatsReply]
|
|
1663
|
+
# @see Messages::DoGetStatsRequest
|
|
1664
|
+
def do_get_stats: (?dev_id: ::Integer) -> Messages::DoGetStatsReply
|
|
1665
|
+
|
|
1666
|
+
# Get device statistics.
|
|
1667
|
+
# @rbs () -> Array[Messages::DumpGetStatsReply]
|
|
1668
|
+
# | () { (Messages::DumpGetStatsReply) -> void } -> void
|
|
1669
|
+
# @overload dump_get_stats(**args)
|
|
1670
|
+
# Returns an array when no block is given.
|
|
1671
|
+
# @param [Hash] args
|
|
1672
|
+
# @return [Array<Messages::DumpGetStatsReply>]
|
|
1673
|
+
# @overload dump_get_stats(**args, &block)
|
|
1674
|
+
# Yields each reply when a block is given.
|
|
1675
|
+
# @param [Hash] args
|
|
1676
|
+
# @yieldparam [Messages::DumpGetStatsReply] reply
|
|
1677
|
+
# @return [void]
|
|
1678
|
+
# @see Messages::DumpGetStatsRequest
|
|
1679
|
+
def dump_get_stats: () -> Array[Messages::DumpGetStatsReply]
|
|
1680
|
+
| () { (Messages::DumpGetStatsReply) -> void } -> void
|
|
1681
|
+
|
|
1682
|
+
# Associate a network device with a PSP device.
|
|
1683
|
+
#
|
|
1684
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1685
|
+
# @rbs (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> Messages::DoDevAssocReply
|
|
1686
|
+
# @param [Hash] args
|
|
1687
|
+
# @option args [Integer] id PSP device ID.
|
|
1688
|
+
# @option args [Integer] ifindex ifindex of the main netdevice linked to the PSP device,
|
|
1689
|
+
# or the ifindex to associate with the PSP device.
|
|
1690
|
+
# @option args [Integer] nsid Network namespace ID for the device to associate/disassociate.
|
|
1691
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1692
|
+
# device is looked up in the caller's network namespace.
|
|
1693
|
+
# @return [Messages::DoDevAssocReply]
|
|
1694
|
+
# @see Messages::DoDevAssocRequest
|
|
1695
|
+
def do_dev_assoc: (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> Messages::DoDevAssocReply
|
|
1696
|
+
|
|
1697
|
+
# Disassociate a network device from a PSP device.
|
|
1698
|
+
#
|
|
1699
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1700
|
+
# @rbs (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> Messages::DoDevDisassocReply
|
|
1701
|
+
# @param [Hash] args
|
|
1702
|
+
# @option args [Integer] id PSP device ID.
|
|
1703
|
+
# @option args [Integer] ifindex ifindex of the main netdevice linked to the PSP device,
|
|
1704
|
+
# or the ifindex to associate with the PSP device.
|
|
1705
|
+
# @option args [Integer] nsid Network namespace ID for the device to associate/disassociate.
|
|
1706
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1707
|
+
# device is looked up in the caller's network namespace.
|
|
1708
|
+
# @return [Messages::DoDevDisassocReply]
|
|
1709
|
+
# @see Messages::DoDevDisassocRequest
|
|
1710
|
+
def do_dev_disassoc: (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> Messages::DoDevDisassocReply
|
|
1711
|
+
|
|
1712
|
+
class AsyncOperations
|
|
1713
|
+
# @private
|
|
1714
|
+
def initialize: () ?{ (?) -> untyped } -> untyped
|
|
1715
|
+
|
|
1716
|
+
# Get / dump information about PSP capable devices on the system.
|
|
1717
|
+
# @rbs (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoDevGetReply]
|
|
1718
|
+
# @param [Hash] args
|
|
1719
|
+
# @option args [Integer] id PSP device ID.
|
|
1720
|
+
# @return [Nl::Async::Future<Messages::DoDevGetReply>]
|
|
1721
|
+
# @see Messages::DoDevGetRequest
|
|
1722
|
+
def do_dev_get: (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoDevGetReply]
|
|
1723
|
+
|
|
1724
|
+
# Get / dump information about PSP capable devices on the system.
|
|
1725
|
+
# @rbs () -> ::Nl::Async::Stream[Messages::DumpDevGetReply]
|
|
1726
|
+
# @param [Hash] args
|
|
1727
|
+
# @return [Nl::Async::Stream<Messages::DumpDevGetReply>]
|
|
1728
|
+
# @see Messages::DumpDevGetRequest
|
|
1729
|
+
def dump_dev_get: () -> ::Nl::Async::Stream[Messages::DumpDevGetReply]
|
|
1730
|
+
|
|
1731
|
+
# Set the configuration of a PSP device.
|
|
1732
|
+
#
|
|
1733
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1734
|
+
# @rbs (?id: ::Integer, ?psp_versions_ena: ::Integer) -> ::Nl::Async::Future[Messages::DoDevSetReply]
|
|
1735
|
+
# @param [Hash] args
|
|
1736
|
+
# @option args [Integer] id PSP device ID.
|
|
1737
|
+
# @option args [Integer] psp_versions_ena Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
1738
|
+
#
|
|
1739
|
+
# Known flags are defined in {Flags::Version}.
|
|
1740
|
+
# @return [Nl::Async::Future<Messages::DoDevSetReply>]
|
|
1741
|
+
# @see Messages::DoDevSetRequest
|
|
1742
|
+
def do_dev_set: (?id: ::Integer, ?psp_versions_ena: ::Integer) -> ::Nl::Async::Future[Messages::DoDevSetReply]
|
|
1743
|
+
|
|
1744
|
+
# Rotate the device key.
|
|
1745
|
+
#
|
|
1746
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1747
|
+
# @rbs (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoKeyRotateReply]
|
|
1748
|
+
# @param [Hash] args
|
|
1749
|
+
# @option args [Integer] id PSP device ID.
|
|
1750
|
+
# @return [Nl::Async::Future<Messages::DoKeyRotateReply>]
|
|
1751
|
+
# @see Messages::DoKeyRotateRequest
|
|
1752
|
+
def do_key_rotate: (?id: ::Integer) -> ::Nl::Async::Future[Messages::DoKeyRotateReply]
|
|
1753
|
+
|
|
1754
|
+
# Allocate a new Rx key + SPI pair, associate it with a socket.
|
|
1755
|
+
# @rbs (?dev_id: ::Integer, ?version: ::Integer, ?sock_fd: ::Integer) -> ::Nl::Async::Future[Messages::DoRxAssocReply]
|
|
1756
|
+
# @param [Hash] args
|
|
1757
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1758
|
+
# @option args [Integer] version PSP versions (AEAD and protocol version) used by this association,
|
|
1759
|
+
# dictates the size of the key.
|
|
1760
|
+
#
|
|
1761
|
+
#
|
|
1762
|
+
# Known enum values are defined in {Enums::Version}.
|
|
1763
|
+
# @option args [Integer] sock_fd Sockets which should be bound to the association immediately.
|
|
1764
|
+
# @return [Nl::Async::Future<Messages::DoRxAssocReply>]
|
|
1765
|
+
# @see Messages::DoRxAssocRequest
|
|
1766
|
+
def do_rx_assoc: (?dev_id: ::Integer, ?version: ::Integer, ?sock_fd: ::Integer) -> ::Nl::Async::Future[Messages::DoRxAssocReply]
|
|
1767
|
+
|
|
1768
|
+
# Add a PSP Tx association.
|
|
1769
|
+
# @rbs (?dev_id: ::Integer, ?version: ::Integer, ?tx_key: (AttributeSets::Keys | ::Hash[::Symbol, untyped]), ?sock_fd: ::Integer) -> ::Nl::Async::Future[Messages::DoTxAssocReply]
|
|
1770
|
+
# @param [Hash] args
|
|
1771
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1772
|
+
# @option args [Integer] version PSP versions (AEAD and protocol version) used by this association,
|
|
1773
|
+
# dictates the size of the key.
|
|
1774
|
+
#
|
|
1775
|
+
#
|
|
1776
|
+
# Known enum values are defined in {Enums::Version}.
|
|
1777
|
+
# @option args [AttributeSets::Keys, Hash<Symbol, Object>] tx_key
|
|
1778
|
+
# @option args [Integer] sock_fd Sockets which should be bound to the association immediately.
|
|
1779
|
+
# @return [Nl::Async::Future<Messages::DoTxAssocReply>]
|
|
1780
|
+
# @see Messages::DoTxAssocRequest
|
|
1781
|
+
def do_tx_assoc: (?dev_id: ::Integer, ?version: ::Integer, ?tx_key: AttributeSets::Keys | ::Hash[::Symbol, untyped], ?sock_fd: ::Integer) -> ::Nl::Async::Future[Messages::DoTxAssocReply]
|
|
1782
|
+
|
|
1783
|
+
# Get device statistics.
|
|
1784
|
+
# @rbs (?dev_id: ::Integer) -> ::Nl::Async::Future[Messages::DoGetStatsReply]
|
|
1785
|
+
# @param [Hash] args
|
|
1786
|
+
# @option args [Integer] dev_id PSP device ID.
|
|
1787
|
+
# @return [Nl::Async::Future<Messages::DoGetStatsReply>]
|
|
1788
|
+
# @see Messages::DoGetStatsRequest
|
|
1789
|
+
def do_get_stats: (?dev_id: ::Integer) -> ::Nl::Async::Future[Messages::DoGetStatsReply]
|
|
1790
|
+
|
|
1791
|
+
# Get device statistics.
|
|
1792
|
+
# @rbs () -> ::Nl::Async::Stream[Messages::DumpGetStatsReply]
|
|
1793
|
+
# @param [Hash] args
|
|
1794
|
+
# @return [Nl::Async::Stream<Messages::DumpGetStatsReply>]
|
|
1795
|
+
# @see Messages::DumpGetStatsRequest
|
|
1796
|
+
def dump_get_stats: () -> ::Nl::Async::Stream[Messages::DumpGetStatsReply]
|
|
1797
|
+
|
|
1798
|
+
# Associate a network device with a PSP device.
|
|
1799
|
+
#
|
|
1800
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1801
|
+
# @rbs (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> ::Nl::Async::Future[Messages::DoDevAssocReply]
|
|
1802
|
+
# @param [Hash] args
|
|
1803
|
+
# @option args [Integer] id PSP device ID.
|
|
1804
|
+
# @option args [Integer] ifindex ifindex of the main netdevice linked to the PSP device,
|
|
1805
|
+
# or the ifindex to associate with the PSP device.
|
|
1806
|
+
# @option args [Integer] nsid Network namespace ID for the device to associate/disassociate.
|
|
1807
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1808
|
+
# device is looked up in the caller's network namespace.
|
|
1809
|
+
# @return [Nl::Async::Future<Messages::DoDevAssocReply>]
|
|
1810
|
+
# @see Messages::DoDevAssocRequest
|
|
1811
|
+
def do_dev_assoc: (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> ::Nl::Async::Future[Messages::DoDevAssocReply]
|
|
1812
|
+
|
|
1813
|
+
# Disassociate a network device from a PSP device.
|
|
1814
|
+
#
|
|
1815
|
+
# Requires CAP_NET_ADMIN in the initial user namespace.
|
|
1816
|
+
# @rbs (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> ::Nl::Async::Future[Messages::DoDevDisassocReply]
|
|
1817
|
+
# @param [Hash] args
|
|
1818
|
+
# @option args [Integer] id PSP device ID.
|
|
1819
|
+
# @option args [Integer] ifindex ifindex of the main netdevice linked to the PSP device,
|
|
1820
|
+
# or the ifindex to associate with the PSP device.
|
|
1821
|
+
# @option args [Integer] nsid Network namespace ID for the device to associate/disassociate.
|
|
1822
|
+
# Optional for dev-assoc and dev-disassoc; if not present, the
|
|
1823
|
+
# device is looked up in the caller's network namespace.
|
|
1824
|
+
# @return [Nl::Async::Future<Messages::DoDevDisassocReply>]
|
|
1825
|
+
# @see Messages::DoDevDisassocRequest
|
|
1826
|
+
def do_dev_disassoc: (?id: ::Integer, ?ifindex: ::Integer, ?nsid: ::Integer) -> ::Nl::Async::Future[Messages::DoDevDisassocReply]
|
|
1827
|
+
end
|
|
1828
|
+
|
|
1829
|
+
# Returns the asynchronous operation facade for this family.
|
|
1830
|
+
# @rbs (?stream_capacity: ::Integer?) -> AsyncOperations
|
|
1831
|
+
# @param [::Integer, nil] stream_capacity
|
|
1832
|
+
# @return [AsyncOperations]
|
|
1833
|
+
def async: (?stream_capacity: ::Integer?) -> AsyncOperations
|
|
1834
|
+
|
|
1835
|
+
# @rbs (*(:mgmt | :use) groups) -> self
|
|
1836
|
+
# @param [Array<:mgmt, :use>] groups
|
|
1837
|
+
# @return [self]
|
|
1838
|
+
def subscribe: (*:mgmt | :use groups) -> self
|
|
1839
|
+
|
|
1840
|
+
# @rbs (*(:mgmt | :use) groups) -> self
|
|
1841
|
+
# @param [Array<:mgmt, :use>] groups
|
|
1842
|
+
# @return [self]
|
|
1843
|
+
def unsubscribe: (*:mgmt | :use groups) -> self
|
|
1844
|
+
end
|
|
1845
|
+
end
|
|
1846
|
+
end
|