nl-linux 0.2.4 → 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/.rspec +3 -0
- data/.yardopts +5 -0
- data/CHANGELOG.md +8 -0
- data/Rakefile +27 -5
- data/generated/nl/linux/binder.rb +227 -19
- data/generated/nl/linux/conntrack.rb +1325 -365
- data/generated/nl/linux/dev_energymodel.rb +357 -66
- data/generated/nl/linux/devlink.rb +6310 -1859
- data/generated/nl/linux/dpll.rb +2202 -376
- data/generated/nl/linux/drm_ras.rb +312 -63
- data/generated/nl/linux/ethtool.rb +7555 -2447
- data/generated/nl/linux/fou.rb +381 -133
- data/generated/nl/linux/handshake.rb +340 -70
- data/generated/nl/linux/lockd.rb +132 -27
- data/generated/nl/linux/mptcp_pm.rb +773 -161
- data/generated/nl/linux/net_shaper.rb +892 -211
- data/generated/nl/linux/netdev.rb +2366 -518
- data/generated/nl/linux/nfsd.rb +1299 -317
- data/generated/nl/linux/nftables.rb +5351 -1533
- data/generated/nl/linux/nl80211.rb +4601 -882
- data/generated/nl/linux/nlctrl.rb +460 -117
- data/generated/nl/linux/ovpn.rb +1360 -262
- data/generated/nl/linux/ovs_datapath.rb +312 -98
- data/generated/nl/linux/ovs_flow.rb +1866 -358
- data/generated/nl/linux/ovs_packet.rb +331 -45
- data/generated/nl/linux/ovs_vport.rb +374 -123
- data/generated/nl/linux/psp.rb +1093 -201
- data/generated/nl/linux/rt_addr.rb +423 -165
- data/generated/nl/linux/rt_link.rb +6928 -1336
- data/generated/nl/linux/rt_neigh.rb +1063 -297
- data/generated/nl/linux/rt_route.rb +1112 -483
- data/generated/nl/linux/rt_rule.rb +931 -262
- data/generated/nl/linux/sunrpc_cache.rb +407 -82
- data/generated/nl/linux/tc.rb +10081 -1763
- data/generated/nl/linux/tcp_metrics.rb +388 -109
- data/generated/nl/linux/team.rb +350 -84
- data/generated/nl/linux/wireguard.rb +525 -96
- 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 +51 -10
|
@@ -0,0 +1,540 @@
|
|
|
1
|
+
# Generated from generated/nl/linux/ovs_packet.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module Nl
|
|
4
|
+
module Linux
|
|
5
|
+
# OVS packet execution over generic netlink.
|
|
6
|
+
#
|
|
7
|
+
# Only OVS_PACKET_CMD_EXECUTE is exposed as a genl operation.
|
|
8
|
+
# OVS_PACKET_CMD_MISS and OVS_PACKET_CMD_ACTION are kernel-to-userspace
|
|
9
|
+
# upcalls sent via genlmsg_unicast() to the vport's upcall_pid and have
|
|
10
|
+
# no associated genl_ops or multicast group.
|
|
11
|
+
#
|
|
12
|
+
# Several attributes in the attribute set (userdata, egress-tun-key, len)
|
|
13
|
+
# exist for the upcall path and are not used by the EXECUTE operation.
|
|
14
|
+
# For EXECUTE, packet, key, and actions are mandatory (kernel returns
|
|
15
|
+
# -EINVAL without them).
|
|
16
|
+
class OvsPacket < ::Nl::Genl::Family
|
|
17
|
+
NAME: ::String
|
|
18
|
+
|
|
19
|
+
VERSION: ::Integer
|
|
20
|
+
|
|
21
|
+
# @rbs (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) -> (::Nl::Family::Session & instance)
|
|
22
|
+
# @rbs | [R] (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) { (instance) -> R } -> R
|
|
23
|
+
# @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY)
|
|
24
|
+
# @param [#call] resolver
|
|
25
|
+
# @param [Symbol, nil] executor
|
|
26
|
+
# @param [Integer, nil] notification_capacity
|
|
27
|
+
# @return [OvsPacket]
|
|
28
|
+
# @overload open(resolver: ::Nl::Linux::DEFAULT_RESOLVER, executor: nil, notification_capacity: DEFAULT_NOTIFICATION_CAPACITY, &block)
|
|
29
|
+
# @param [#call] resolver
|
|
30
|
+
# @param [Symbol, nil] executor
|
|
31
|
+
# @param [Integer, nil] notification_capacity
|
|
32
|
+
# @yieldparam [OvsPacket] family
|
|
33
|
+
# @return [Object] the result of the block
|
|
34
|
+
def self.open: (?resolver: ^(::Nl::Genl::Client, ::String) -> ::Nl::Genl::FamilyInfo, ?executor: executor?, ?notification_capacity: ::Integer?) -> (::Nl::Family::Session & instance)
|
|
35
|
+
|
|
36
|
+
# @private
|
|
37
|
+
MCAST_GROUPS: Hash[::Symbol, ::Nl::McastGroup]
|
|
38
|
+
|
|
39
|
+
module Structs
|
|
40
|
+
class OvsHeader < Struct[::Integer]
|
|
41
|
+
attr_accessor dp_ifindex(): ::Integer
|
|
42
|
+
|
|
43
|
+
def self.new: (?::Integer dp_ifindex) -> instance
|
|
44
|
+
| (?dp_ifindex: ::Integer) -> instance
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
class OvsHeader
|
|
48
|
+
# @!attribute [rw] dp_ifindex
|
|
49
|
+
# @return [Integer]
|
|
50
|
+
# @private
|
|
51
|
+
MEMBERS: Hash[::Symbol, ::Nl::_DataType]
|
|
52
|
+
|
|
53
|
+
# Decodes the struct.
|
|
54
|
+
# @rbs decoder: ::Nl::Decoder
|
|
55
|
+
# @rbs return: instance
|
|
56
|
+
# @param [Nl::Decoder] decoder
|
|
57
|
+
# @return [self]
|
|
58
|
+
def self.decode: (::Nl::Decoder decoder) -> instance
|
|
59
|
+
|
|
60
|
+
# Encodes the struct.
|
|
61
|
+
# @rbs encoder: ::Nl::Encoder
|
|
62
|
+
# @rbs return: void
|
|
63
|
+
# @param [Nl::Encoder] encoder
|
|
64
|
+
# @return [void]
|
|
65
|
+
def encode: (::Nl::Encoder encoder) -> void
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
|
|
69
|
+
module AttributeSets
|
|
70
|
+
class Packet < ::Nl::AttributeSet
|
|
71
|
+
# Abstract class
|
|
72
|
+
class Attribute < ::Nl::AttributeSet::Attribute
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
# Packet data, from the start of the Ethernet header.
|
|
76
|
+
class Packet < Attribute
|
|
77
|
+
TYPE: ::Integer
|
|
78
|
+
|
|
79
|
+
NAME: ::Symbol
|
|
80
|
+
|
|
81
|
+
# @private
|
|
82
|
+
ORDER: ::Integer
|
|
83
|
+
|
|
84
|
+
# @private
|
|
85
|
+
DATATYPE: untyped
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
89
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
90
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
91
|
+
class Key < Attribute
|
|
92
|
+
TYPE: ::Integer
|
|
93
|
+
|
|
94
|
+
NAME: ::Symbol
|
|
95
|
+
|
|
96
|
+
# @private
|
|
97
|
+
ORDER: ::Integer
|
|
98
|
+
|
|
99
|
+
# @private
|
|
100
|
+
DATATYPE: untyped
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
# Nested OVS_ACTION_ATTR_* attributes.
|
|
104
|
+
# Defined as binary for the same reason as key.
|
|
105
|
+
class Actions < Attribute
|
|
106
|
+
TYPE: ::Integer
|
|
107
|
+
|
|
108
|
+
NAME: ::Symbol
|
|
109
|
+
|
|
110
|
+
# @private
|
|
111
|
+
ORDER: ::Integer
|
|
112
|
+
|
|
113
|
+
# @private
|
|
114
|
+
DATATYPE: untyped
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
# Opaque userspace cookie from OVS_USERSPACE_ATTR_USERDATA.
|
|
118
|
+
class Userdata < Attribute
|
|
119
|
+
TYPE: ::Integer
|
|
120
|
+
|
|
121
|
+
NAME: ::Symbol
|
|
122
|
+
|
|
123
|
+
# @private
|
|
124
|
+
ORDER: ::Integer
|
|
125
|
+
|
|
126
|
+
# @private
|
|
127
|
+
DATATYPE: untyped
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
# Nested OVS_TUNNEL_KEY_ATTR_* for output tunnel metadata.
|
|
131
|
+
class EgressTunKey < Attribute
|
|
132
|
+
TYPE: ::Integer
|
|
133
|
+
|
|
134
|
+
NAME: ::Symbol
|
|
135
|
+
|
|
136
|
+
# @private
|
|
137
|
+
ORDER: ::Integer
|
|
138
|
+
|
|
139
|
+
# @private
|
|
140
|
+
DATATYPE: untyped
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
# Packet operation is a feature probe, error logging suppressed.
|
|
144
|
+
class Probe < Attribute
|
|
145
|
+
TYPE: ::Integer
|
|
146
|
+
|
|
147
|
+
NAME: ::Symbol
|
|
148
|
+
|
|
149
|
+
# @private
|
|
150
|
+
ORDER: ::Integer
|
|
151
|
+
|
|
152
|
+
# @private
|
|
153
|
+
DATATYPE: untyped
|
|
154
|
+
end
|
|
155
|
+
|
|
156
|
+
# Maximum received IP fragment size.
|
|
157
|
+
class Mru < Attribute
|
|
158
|
+
TYPE: ::Integer
|
|
159
|
+
|
|
160
|
+
NAME: ::Symbol
|
|
161
|
+
|
|
162
|
+
# @private
|
|
163
|
+
ORDER: ::Integer
|
|
164
|
+
|
|
165
|
+
# @private
|
|
166
|
+
DATATYPE: untyped
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Packet size before truncation.
|
|
170
|
+
class Len < Attribute
|
|
171
|
+
TYPE: ::Integer
|
|
172
|
+
|
|
173
|
+
NAME: ::Symbol
|
|
174
|
+
|
|
175
|
+
# @private
|
|
176
|
+
ORDER: ::Integer
|
|
177
|
+
|
|
178
|
+
# @private
|
|
179
|
+
DATATYPE: untyped
|
|
180
|
+
end
|
|
181
|
+
|
|
182
|
+
# Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
183
|
+
class Hash < Attribute
|
|
184
|
+
TYPE: ::Integer
|
|
185
|
+
|
|
186
|
+
NAME: ::Symbol
|
|
187
|
+
|
|
188
|
+
# @private
|
|
189
|
+
ORDER: ::Integer
|
|
190
|
+
|
|
191
|
+
# @private
|
|
192
|
+
DATATYPE: untyped
|
|
193
|
+
end
|
|
194
|
+
|
|
195
|
+
# Netlink PID to use for upcalls during EXECUTE processing.
|
|
196
|
+
class UpcallPid < Attribute
|
|
197
|
+
TYPE: ::Integer
|
|
198
|
+
|
|
199
|
+
NAME: ::Symbol
|
|
200
|
+
|
|
201
|
+
# @private
|
|
202
|
+
ORDER: ::Integer
|
|
203
|
+
|
|
204
|
+
# @private
|
|
205
|
+
DATATYPE: untyped
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
# @private
|
|
209
|
+
BY_NAME: Hash[::Symbol, Attribute]
|
|
210
|
+
|
|
211
|
+
# @private
|
|
212
|
+
BY_TYPE: Hash[::Integer, Attribute]
|
|
213
|
+
|
|
214
|
+
# Packet data, from the start of the Ethernet header.
|
|
215
|
+
# @rbs return: ::String
|
|
216
|
+
# @return [String]
|
|
217
|
+
# @see Packet
|
|
218
|
+
def packet: () -> ::String
|
|
219
|
+
|
|
220
|
+
# Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
221
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
222
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
223
|
+
# @rbs return: ::String
|
|
224
|
+
# @return [String]
|
|
225
|
+
# @see Key
|
|
226
|
+
def key: () -> ::String
|
|
227
|
+
|
|
228
|
+
# Nested OVS_ACTION_ATTR_* attributes.
|
|
229
|
+
# Defined as binary for the same reason as key.
|
|
230
|
+
# @rbs return: ::String
|
|
231
|
+
# @return [String]
|
|
232
|
+
# @see Actions
|
|
233
|
+
def actions: () -> ::String
|
|
234
|
+
|
|
235
|
+
# Opaque userspace cookie from OVS_USERSPACE_ATTR_USERDATA.
|
|
236
|
+
# @rbs return: ::String
|
|
237
|
+
# @return [String]
|
|
238
|
+
# @see Userdata
|
|
239
|
+
def userdata: () -> ::String
|
|
240
|
+
|
|
241
|
+
# Nested OVS_TUNNEL_KEY_ATTR_* for output tunnel metadata.
|
|
242
|
+
# @rbs return: ::String
|
|
243
|
+
# @return [String]
|
|
244
|
+
# @see EgressTunKey
|
|
245
|
+
def egress_tun_key: () -> ::String
|
|
246
|
+
|
|
247
|
+
# Packet operation is a feature probe, error logging suppressed.
|
|
248
|
+
# @rbs return: ::Integer
|
|
249
|
+
# @return [Integer]
|
|
250
|
+
# @see Probe
|
|
251
|
+
def probe: () -> ::Integer
|
|
252
|
+
|
|
253
|
+
# Maximum received IP fragment size.
|
|
254
|
+
# @rbs return: ::Integer
|
|
255
|
+
# @return [Integer]
|
|
256
|
+
# @see Mru
|
|
257
|
+
def mru: () -> ::Integer
|
|
258
|
+
|
|
259
|
+
# Packet size before truncation.
|
|
260
|
+
# @rbs return: ::Integer
|
|
261
|
+
# @return [Integer]
|
|
262
|
+
# @see Len
|
|
263
|
+
def len: () -> ::Integer
|
|
264
|
+
|
|
265
|
+
# Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
266
|
+
# @rbs return: ::Integer
|
|
267
|
+
# @return [Integer]
|
|
268
|
+
# @see Hash
|
|
269
|
+
def hash: () -> ::Integer
|
|
270
|
+
|
|
271
|
+
# Netlink PID to use for upcalls during EXECUTE processing.
|
|
272
|
+
# @rbs return: ::Integer
|
|
273
|
+
# @return [Integer]
|
|
274
|
+
# @see UpcallPid
|
|
275
|
+
def upcall_pid: () -> ::Integer
|
|
276
|
+
|
|
277
|
+
# Looks up Attribute class by name.
|
|
278
|
+
# @rbs name: Symbol
|
|
279
|
+
# @rbs return: Attribute
|
|
280
|
+
# @param [Symbol] name
|
|
281
|
+
# @return [Attribute]
|
|
282
|
+
def self.by_name: (Symbol name) -> Attribute
|
|
283
|
+
|
|
284
|
+
# Looks up Attribute class by type value.
|
|
285
|
+
# @rbs type: Integer
|
|
286
|
+
# @rbs return: Attribute
|
|
287
|
+
# @param [Integer] type
|
|
288
|
+
# @return [Attribute]
|
|
289
|
+
def self.by_type: (Integer type) -> Attribute
|
|
290
|
+
end
|
|
291
|
+
end
|
|
292
|
+
|
|
293
|
+
module Messages
|
|
294
|
+
# Apply actions to a packet.
|
|
295
|
+
class DoExecuteRequest < ::Nl::Genl::Message
|
|
296
|
+
TYPE: ::Integer
|
|
297
|
+
|
|
298
|
+
FIXED_HEADER: untyped
|
|
299
|
+
|
|
300
|
+
ATTRIBUTE_SET: untyped
|
|
301
|
+
|
|
302
|
+
ATTRIBUTES: untyped
|
|
303
|
+
|
|
304
|
+
# @rbs return: ::Integer
|
|
305
|
+
# @return [Integer]
|
|
306
|
+
def dp_ifindex: () -> ::Integer
|
|
307
|
+
|
|
308
|
+
# Packet data, from the start of the Ethernet header.
|
|
309
|
+
# @rbs return: ::String
|
|
310
|
+
# @return [String]
|
|
311
|
+
# @see AttributeSets::Packet::Packet
|
|
312
|
+
def packet: () -> ::String
|
|
313
|
+
|
|
314
|
+
# Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
315
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
316
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
317
|
+
# @rbs return: ::String
|
|
318
|
+
# @return [String]
|
|
319
|
+
# @see AttributeSets::Packet::Key
|
|
320
|
+
def key: () -> ::String
|
|
321
|
+
|
|
322
|
+
# Nested OVS_ACTION_ATTR_* attributes.
|
|
323
|
+
# Defined as binary for the same reason as key.
|
|
324
|
+
# @rbs return: ::String
|
|
325
|
+
# @return [String]
|
|
326
|
+
# @see AttributeSets::Packet::Actions
|
|
327
|
+
def actions: () -> ::String
|
|
328
|
+
|
|
329
|
+
# Packet operation is a feature probe, error logging suppressed.
|
|
330
|
+
# @rbs return: ::Integer
|
|
331
|
+
# @return [Integer]
|
|
332
|
+
# @see AttributeSets::Packet::Probe
|
|
333
|
+
def probe: () -> ::Integer
|
|
334
|
+
|
|
335
|
+
# Maximum received IP fragment size.
|
|
336
|
+
# @rbs return: ::Integer
|
|
337
|
+
# @return [Integer]
|
|
338
|
+
# @see AttributeSets::Packet::Mru
|
|
339
|
+
def mru: () -> ::Integer
|
|
340
|
+
|
|
341
|
+
# Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
342
|
+
# @rbs return: ::Integer
|
|
343
|
+
# @return [Integer]
|
|
344
|
+
# @see AttributeSets::Packet::Hash
|
|
345
|
+
def hash: () -> ::Integer
|
|
346
|
+
|
|
347
|
+
# Netlink PID to use for upcalls during EXECUTE processing.
|
|
348
|
+
# @rbs return: ::Integer
|
|
349
|
+
# @return [Integer]
|
|
350
|
+
# @see AttributeSets::Packet::UpcallPid
|
|
351
|
+
def upcall_pid: () -> ::Integer
|
|
352
|
+
end
|
|
353
|
+
end
|
|
354
|
+
|
|
355
|
+
module Notifications
|
|
356
|
+
# Notify userspace of a flow table miss for a received packet.
|
|
357
|
+
class Miss < ::Nl::Genl::Message
|
|
358
|
+
TYPE: ::Integer
|
|
359
|
+
|
|
360
|
+
FIXED_HEADER: untyped
|
|
361
|
+
|
|
362
|
+
ATTRIBUTE_SET: untyped
|
|
363
|
+
|
|
364
|
+
ATTRIBUTES: untyped
|
|
365
|
+
|
|
366
|
+
# @rbs return: ::Integer
|
|
367
|
+
# @return [Integer]
|
|
368
|
+
def dp_ifindex: () -> ::Integer
|
|
369
|
+
|
|
370
|
+
# Packet data, from the start of the Ethernet header.
|
|
371
|
+
# @rbs return: ::String
|
|
372
|
+
# @return [String]
|
|
373
|
+
# @see AttributeSets::Packet::Packet
|
|
374
|
+
def packet: () -> ::String
|
|
375
|
+
|
|
376
|
+
# Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
377
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
378
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
379
|
+
# @rbs return: ::String
|
|
380
|
+
# @return [String]
|
|
381
|
+
# @see AttributeSets::Packet::Key
|
|
382
|
+
def key: () -> ::String
|
|
383
|
+
|
|
384
|
+
# Nested OVS_ACTION_ATTR_* attributes.
|
|
385
|
+
# Defined as binary for the same reason as key.
|
|
386
|
+
# @rbs return: ::String
|
|
387
|
+
# @return [String]
|
|
388
|
+
# @see AttributeSets::Packet::Actions
|
|
389
|
+
def actions: () -> ::String
|
|
390
|
+
|
|
391
|
+
# Opaque userspace cookie from OVS_USERSPACE_ATTR_USERDATA.
|
|
392
|
+
# @rbs return: ::String
|
|
393
|
+
# @return [String]
|
|
394
|
+
# @see AttributeSets::Packet::Userdata
|
|
395
|
+
def userdata: () -> ::String
|
|
396
|
+
|
|
397
|
+
# Nested OVS_TUNNEL_KEY_ATTR_* for output tunnel metadata.
|
|
398
|
+
# @rbs return: ::String
|
|
399
|
+
# @return [String]
|
|
400
|
+
# @see AttributeSets::Packet::EgressTunKey
|
|
401
|
+
def egress_tun_key: () -> ::String
|
|
402
|
+
|
|
403
|
+
# Maximum received IP fragment size.
|
|
404
|
+
# @rbs return: ::Integer
|
|
405
|
+
# @return [Integer]
|
|
406
|
+
# @see AttributeSets::Packet::Mru
|
|
407
|
+
def mru: () -> ::Integer
|
|
408
|
+
|
|
409
|
+
# Packet size before truncation.
|
|
410
|
+
# @rbs return: ::Integer
|
|
411
|
+
# @return [Integer]
|
|
412
|
+
# @see AttributeSets::Packet::Len
|
|
413
|
+
def len: () -> ::Integer
|
|
414
|
+
|
|
415
|
+
# Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
416
|
+
# @rbs return: ::Integer
|
|
417
|
+
# @return [Integer]
|
|
418
|
+
# @see AttributeSets::Packet::Hash
|
|
419
|
+
def hash: () -> ::Integer
|
|
420
|
+
end
|
|
421
|
+
|
|
422
|
+
# Notify userspace as requested by an OVS_ACTION_ATTR_USERSPACE action.
|
|
423
|
+
class Action < ::Nl::Genl::Message
|
|
424
|
+
TYPE: ::Integer
|
|
425
|
+
|
|
426
|
+
FIXED_HEADER: untyped
|
|
427
|
+
|
|
428
|
+
ATTRIBUTE_SET: untyped
|
|
429
|
+
|
|
430
|
+
ATTRIBUTES: untyped
|
|
431
|
+
|
|
432
|
+
# @rbs return: ::Integer
|
|
433
|
+
# @return [Integer]
|
|
434
|
+
def dp_ifindex: () -> ::Integer
|
|
435
|
+
|
|
436
|
+
# Packet data, from the start of the Ethernet header.
|
|
437
|
+
# @rbs return: ::String
|
|
438
|
+
# @return [String]
|
|
439
|
+
# @see AttributeSets::Packet::Packet
|
|
440
|
+
def packet: () -> ::String
|
|
441
|
+
|
|
442
|
+
# Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
443
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
444
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
445
|
+
# @rbs return: ::String
|
|
446
|
+
# @return [String]
|
|
447
|
+
# @see AttributeSets::Packet::Key
|
|
448
|
+
def key: () -> ::String
|
|
449
|
+
|
|
450
|
+
# Nested OVS_ACTION_ATTR_* attributes.
|
|
451
|
+
# Defined as binary for the same reason as key.
|
|
452
|
+
# @rbs return: ::String
|
|
453
|
+
# @return [String]
|
|
454
|
+
# @see AttributeSets::Packet::Actions
|
|
455
|
+
def actions: () -> ::String
|
|
456
|
+
|
|
457
|
+
# Opaque userspace cookie from OVS_USERSPACE_ATTR_USERDATA.
|
|
458
|
+
# @rbs return: ::String
|
|
459
|
+
# @return [String]
|
|
460
|
+
# @see AttributeSets::Packet::Userdata
|
|
461
|
+
def userdata: () -> ::String
|
|
462
|
+
|
|
463
|
+
# Nested OVS_TUNNEL_KEY_ATTR_* for output tunnel metadata.
|
|
464
|
+
# @rbs return: ::String
|
|
465
|
+
# @return [String]
|
|
466
|
+
# @see AttributeSets::Packet::EgressTunKey
|
|
467
|
+
def egress_tun_key: () -> ::String
|
|
468
|
+
|
|
469
|
+
# Maximum received IP fragment size.
|
|
470
|
+
# @rbs return: ::Integer
|
|
471
|
+
# @return [Integer]
|
|
472
|
+
# @see AttributeSets::Packet::Mru
|
|
473
|
+
def mru: () -> ::Integer
|
|
474
|
+
|
|
475
|
+
# Packet size before truncation.
|
|
476
|
+
# @rbs return: ::Integer
|
|
477
|
+
# @return [Integer]
|
|
478
|
+
# @see AttributeSets::Packet::Len
|
|
479
|
+
def len: () -> ::Integer
|
|
480
|
+
|
|
481
|
+
# Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
482
|
+
# @rbs return: ::Integer
|
|
483
|
+
# @return [Integer]
|
|
484
|
+
# @see AttributeSets::Packet::Hash
|
|
485
|
+
def hash: () -> ::Integer
|
|
486
|
+
end
|
|
487
|
+
end
|
|
488
|
+
|
|
489
|
+
# @private
|
|
490
|
+
NOTIFICATIONS: Hash[::Integer, ::Class]
|
|
491
|
+
|
|
492
|
+
# Apply actions to a packet.
|
|
493
|
+
# @rbs (?dp_ifindex: ::Integer, ?packet: ::String, ?key: ::String, ?actions: ::String, ?probe: ::Integer, ?mru: ::Integer, ?hash: ::Integer, ?upcall_pid: ::Integer) -> void
|
|
494
|
+
# @param [Hash] args
|
|
495
|
+
# @option args [Integer] dp_ifindex
|
|
496
|
+
# @option args [String] packet Packet data, from the start of the Ethernet header.
|
|
497
|
+
# @option args [String] key Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
498
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
499
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
500
|
+
# @option args [String] actions Nested OVS_ACTION_ATTR_* attributes.
|
|
501
|
+
# Defined as binary for the same reason as key.
|
|
502
|
+
# @option args [Integer] probe Packet operation is a feature probe, error logging suppressed.
|
|
503
|
+
# @option args [Integer] mru Maximum received IP fragment size.
|
|
504
|
+
# @option args [Integer] hash Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
505
|
+
# @option args [Integer] upcall_pid Netlink PID to use for upcalls during EXECUTE processing.
|
|
506
|
+
# @return [void]
|
|
507
|
+
# @see Messages::DoExecuteRequest
|
|
508
|
+
def do_execute: (?dp_ifindex: ::Integer, ?packet: ::String, ?key: ::String, ?actions: ::String, ?probe: ::Integer, ?mru: ::Integer, ?hash: ::Integer, ?upcall_pid: ::Integer) -> void
|
|
509
|
+
|
|
510
|
+
class AsyncOperations
|
|
511
|
+
# @private
|
|
512
|
+
def initialize: () ?{ (?) -> untyped } -> untyped
|
|
513
|
+
|
|
514
|
+
# Apply actions to a packet.
|
|
515
|
+
# @rbs (?dp_ifindex: ::Integer, ?packet: ::String, ?key: ::String, ?actions: ::String, ?probe: ::Integer, ?mru: ::Integer, ?hash: ::Integer, ?upcall_pid: ::Integer) -> ::Nl::Async::Future[void]
|
|
516
|
+
# @param [Hash] args
|
|
517
|
+
# @option args [Integer] dp_ifindex
|
|
518
|
+
# @option args [String] packet Packet data, from the start of the Ethernet header.
|
|
519
|
+
# @option args [String] key Nested OVS_KEY_ATTR_* attributes, extracted flow key.
|
|
520
|
+
# Defined as binary because the key attribute-set belongs to the
|
|
521
|
+
# ovs_flow family spec; cross-spec references are not supported.
|
|
522
|
+
# @option args [String] actions Nested OVS_ACTION_ATTR_* attributes.
|
|
523
|
+
# Defined as binary for the same reason as key.
|
|
524
|
+
# @option args [Integer] probe Packet operation is a feature probe, error logging suppressed.
|
|
525
|
+
# @option args [Integer] mru Maximum received IP fragment size.
|
|
526
|
+
# @option args [Integer] hash Packet hash, low 32 bits are skb hash, upper bits are flags.
|
|
527
|
+
# @option args [Integer] upcall_pid Netlink PID to use for upcalls during EXECUTE processing.
|
|
528
|
+
# @return [Nl::Async::Future<void>]
|
|
529
|
+
# @see Messages::DoExecuteRequest
|
|
530
|
+
def do_execute: (?dp_ifindex: ::Integer, ?packet: ::String, ?key: ::String, ?actions: ::String, ?probe: ::Integer, ?mru: ::Integer, ?hash: ::Integer, ?upcall_pid: ::Integer) -> ::Nl::Async::Future[void]
|
|
531
|
+
end
|
|
532
|
+
|
|
533
|
+
# Returns the asynchronous operation facade for this family.
|
|
534
|
+
# @rbs (?stream_capacity: ::Integer?) -> AsyncOperations
|
|
535
|
+
# @param [::Integer, nil] stream_capacity
|
|
536
|
+
# @return [AsyncOperations]
|
|
537
|
+
def async: (?stream_capacity: ::Integer?) -> AsyncOperations
|
|
538
|
+
end
|
|
539
|
+
end
|
|
540
|
+
end
|