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.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +3 -0
  3. data/.yardopts +5 -0
  4. data/CHANGELOG.md +8 -0
  5. data/Rakefile +27 -5
  6. data/generated/nl/linux/binder.rb +227 -19
  7. data/generated/nl/linux/conntrack.rb +1325 -365
  8. data/generated/nl/linux/dev_energymodel.rb +357 -66
  9. data/generated/nl/linux/devlink.rb +6310 -1859
  10. data/generated/nl/linux/dpll.rb +2202 -376
  11. data/generated/nl/linux/drm_ras.rb +312 -63
  12. data/generated/nl/linux/ethtool.rb +7555 -2447
  13. data/generated/nl/linux/fou.rb +381 -133
  14. data/generated/nl/linux/handshake.rb +340 -70
  15. data/generated/nl/linux/lockd.rb +132 -27
  16. data/generated/nl/linux/mptcp_pm.rb +773 -161
  17. data/generated/nl/linux/net_shaper.rb +892 -211
  18. data/generated/nl/linux/netdev.rb +2366 -518
  19. data/generated/nl/linux/nfsd.rb +1299 -317
  20. data/generated/nl/linux/nftables.rb +5351 -1533
  21. data/generated/nl/linux/nl80211.rb +4601 -882
  22. data/generated/nl/linux/nlctrl.rb +460 -117
  23. data/generated/nl/linux/ovpn.rb +1360 -262
  24. data/generated/nl/linux/ovs_datapath.rb +312 -98
  25. data/generated/nl/linux/ovs_flow.rb +1866 -358
  26. data/generated/nl/linux/ovs_packet.rb +331 -45
  27. data/generated/nl/linux/ovs_vport.rb +374 -123
  28. data/generated/nl/linux/psp.rb +1093 -201
  29. data/generated/nl/linux/rt_addr.rb +423 -165
  30. data/generated/nl/linux/rt_link.rb +6928 -1336
  31. data/generated/nl/linux/rt_neigh.rb +1063 -297
  32. data/generated/nl/linux/rt_route.rb +1112 -483
  33. data/generated/nl/linux/rt_rule.rb +931 -262
  34. data/generated/nl/linux/sunrpc_cache.rb +407 -82
  35. data/generated/nl/linux/tc.rb +10081 -1763
  36. data/generated/nl/linux/tcp_metrics.rb +388 -109
  37. data/generated/nl/linux/team.rb +350 -84
  38. data/generated/nl/linux/wireguard.rb +525 -96
  39. data/generated/nl/linux.rb +1 -0
  40. data/lib/nl/linux/nlctrl_resolver.rb +31 -0
  41. data/lib/nl/linux/version.rb +1 -1
  42. data/sig/generated/nl/linux/binder.rbs +366 -0
  43. data/sig/generated/nl/linux/conntrack.rbs +2787 -0
  44. data/sig/generated/nl/linux/dev_energymodel.rbs +636 -0
  45. data/sig/generated/nl/linux/devlink.rbs +12496 -0
  46. data/sig/generated/nl/linux/dpll.rbs +3461 -0
  47. data/sig/generated/nl/linux/drm_ras.rbs +553 -0
  48. data/sig/generated/nl/linux/ethtool.rbs +15291 -0
  49. data/sig/generated/nl/linux/fou.rbs +702 -0
  50. data/sig/generated/nl/linux/handshake.rbs +622 -0
  51. data/sig/generated/nl/linux/lockd.rbs +234 -0
  52. data/sig/generated/nl/linux/mptcp_pm.rbs +1511 -0
  53. data/sig/generated/nl/linux/net_shaper.rbs +1645 -0
  54. data/sig/generated/nl/linux/netdev.rbs +4187 -0
  55. data/sig/generated/nl/linux/nfsd.rbs +2520 -0
  56. data/sig/generated/nl/linux/nftables.rbs +10304 -0
  57. data/sig/generated/nl/linux/nl80211.rbs +9786 -0
  58. data/sig/generated/nl/linux/nlctrl.rbs +944 -0
  59. data/sig/generated/nl/linux/nlctrl_resolver.rbs +20 -0
  60. data/sig/generated/nl/linux/ovpn.rbs +2564 -0
  61. data/sig/generated/nl/linux/ovs_datapath.rbs +640 -0
  62. data/sig/generated/nl/linux/ovs_flow.rbs +3659 -0
  63. data/sig/generated/nl/linux/ovs_packet.rbs +540 -0
  64. data/sig/generated/nl/linux/ovs_vport.rbs +777 -0
  65. data/sig/generated/nl/linux/psp.rbs +1846 -0
  66. data/sig/generated/nl/linux/rt_addr.rbs +866 -0
  67. data/sig/generated/nl/linux/rt_link.rbs +13438 -0
  68. data/sig/generated/nl/linux/rt_neigh.rbs +2124 -0
  69. data/sig/generated/nl/linux/rt_route.rbs +2218 -0
  70. data/sig/generated/nl/linux/rt_rule.rbs +1726 -0
  71. data/sig/generated/nl/linux/sunrpc_cache.rbs +739 -0
  72. data/sig/generated/nl/linux/tc.rbs +19931 -0
  73. data/sig/generated/nl/linux/tcp_metrics.rbs +740 -0
  74. data/sig/generated/nl/linux/team.rbs +733 -0
  75. data/sig/generated/nl/linux/version.rbs +7 -0
  76. data/sig/generated/nl/linux/wireguard.rbs +1006 -0
  77. data/sig/generated/nl/linux.rbs +6 -0
  78. data/sig/generated/nl-linux.rbs +2 -0
  79. 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