nl-linux 0.2.0 → 0.2.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.
@@ -0,0 +1,446 @@
1
+ # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
+ #--
3
+ # frozen_string_literal: true
4
+ # rbs_inline: enabled
5
+ # This code is generated by Ynl::Generator. DO NOT EDIT.
6
+ require 'nl'
7
+ # Address configuration over rtnetlink.
8
+ class Nl::Linux::RtAddr < ::Nl::Family
9
+ NAME = "rt-addr"
10
+ PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Raw.new("rt-addr", 0))
11
+ module Structs
12
+ Ifaddrmsg = Struct.new(
13
+ :"ifa_family", #: ::Integer
14
+ :"ifa_prefixlen", #: ::Integer
15
+ :"ifa_flags", #: ::Integer
16
+ :"ifa_scope", #: ::Integer
17
+ :"ifa_index", #: ::Integer
18
+ )
19
+ class Ifaddrmsg
20
+ # :nodoc:
21
+ MEMBERS = Ractor.make_shareable({ifa_family: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ifa_prefixlen: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ifa_flags: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ifa_scope: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ifa_index: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
22
+ # Decodes the struct.
23
+ #--
24
+ # @rbs decoder: ::Nl::Decoder
25
+ # @rbs return: instance
26
+ def self.decode(decoder)
27
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
28
+ end
29
+ # Encodes the struct.
30
+ #--
31
+ # @rbs encoder: ::Nl::Encoder
32
+ # @rbs return: void
33
+ def encode(encoder)
34
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
35
+ end
36
+ end
37
+ IfaCacheinfo = Struct.new(
38
+ :"ifa_prefered", #: ::Integer
39
+ :"ifa_valid", #: ::Integer
40
+ :"cstamp", #: ::Integer
41
+ :"tstamp", #: ::Integer
42
+ )
43
+ class IfaCacheinfo
44
+ # :nodoc:
45
+ MEMBERS = Ractor.make_shareable({ifa_prefered: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), ifa_valid: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), cstamp: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), tstamp: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
46
+ # Decodes the struct.
47
+ #--
48
+ # @rbs decoder: ::Nl::Decoder
49
+ # @rbs return: instance
50
+ def self.decode(decoder)
51
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
52
+ end
53
+ # Encodes the struct.
54
+ #--
55
+ # @rbs encoder: ::Nl::Encoder
56
+ # @rbs return: void
57
+ def encode(encoder)
58
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
59
+ end
60
+ end
61
+ end
62
+ module AttributeSets
63
+ class AddrAttrs < ::Nl::Protocols::Raw::AttributeSet
64
+ # Abstract class
65
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
66
+ end
67
+ class Address < Attribute
68
+ TYPE = 1
69
+ NAME = :"address"
70
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
71
+ end
72
+ class Local < Attribute
73
+ TYPE = 2
74
+ NAME = :"local"
75
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
76
+ end
77
+ class Label < Attribute
78
+ TYPE = 3
79
+ NAME = :"label"
80
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
81
+ end
82
+ class Broadcast < Attribute
83
+ TYPE = 4
84
+ NAME = :"broadcast"
85
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
86
+ end
87
+ class Anycast < Attribute
88
+ TYPE = 5
89
+ NAME = :"anycast"
90
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
91
+ end
92
+ class Cacheinfo < Attribute
93
+ TYPE = 6
94
+ NAME = :"cacheinfo"
95
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
96
+ end
97
+ class Multicast < Attribute
98
+ TYPE = 7
99
+ NAME = :"multicast"
100
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
101
+ end
102
+ class Flags < Attribute
103
+ TYPE = 8
104
+ NAME = :"flags"
105
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
106
+ end
107
+ class RtPriority < Attribute
108
+ TYPE = 9
109
+ NAME = :"rt_priority"
110
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
111
+ end
112
+ class TargetNetnsid < Attribute
113
+ TYPE = 10
114
+ NAME = :"target_netnsid"
115
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
116
+ end
117
+ class Proto < Attribute
118
+ TYPE = 11
119
+ NAME = :"proto"
120
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
121
+ end
122
+ # :nodoc:
123
+ BY_NAME = Ractor.make_shareable({:"address" => Address, :"local" => Local, :"label" => Label, :"broadcast" => Broadcast, :"anycast" => Anycast, :"cacheinfo" => Cacheinfo, :"multicast" => Multicast, :"flags" => Flags, :"rt_priority" => RtPriority, :"target_netnsid" => TargetNetnsid, :"proto" => Proto}) #: Hash[::Symbol, Attribute]
124
+ # :nodoc:
125
+ BY_TYPE = Ractor.make_shareable({1 => Address, 2 => Local, 3 => Label, 4 => Broadcast, 5 => Anycast, 6 => Cacheinfo, 7 => Multicast, 8 => Flags, 9 => RtPriority, 10 => TargetNetnsid, 11 => Proto}) #: Hash[::Integer, Attribute]
126
+ class << self
127
+ # Looks up Attribute class by name.
128
+ #--
129
+ # @rbs name: Symbol
130
+ # @rbs return: Attribute
131
+ def by_name(name); BY_NAME.fetch(name); end
132
+ # Looks up Attribute class by type value.
133
+ #--
134
+ # @rbs type: Integer
135
+ # @rbs return: Attribute
136
+ def by_type(type); BY_TYPE.fetch(type); end
137
+ end
138
+ end
139
+ end
140
+ module Messages
141
+ # Add new address
142
+ class DoNewaddrRequest < ::Nl::Protocols::Raw::Message
143
+ TYPE = 20
144
+ FIXED_HEADER = Structs::Ifaddrmsg
145
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
146
+ ATTRIBUTES = Ractor.make_shareable(%i[address local label cacheinfo])
147
+ # Gets the value of `ifa-family` field in the message's fixed header.
148
+ #--
149
+ # @rbs return: ::Integer
150
+ def ifa_family; fixed_header.ifa_family; end
151
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
152
+ #--
153
+ # @rbs return: ::Integer
154
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
155
+ # Gets the value of `ifa-flags` field in the message's fixed header.
156
+ #--
157
+ # @rbs return: ::Integer
158
+ def ifa_flags; fixed_header.ifa_flags; end
159
+ # Gets the value of `ifa-scope` field in the message's fixed header.
160
+ #--
161
+ # @rbs return: ::Integer
162
+ def ifa_scope; fixed_header.ifa_scope; end
163
+ # Gets the value of `ifa-index` field in the message's fixed header.
164
+ #--
165
+ # @rbs return: ::Integer
166
+ def ifa_index; fixed_header.ifa_index; end
167
+ # Gets the value of `address` attribute in the message.
168
+ #--
169
+ # @rbs return: untyped
170
+ def address; attributes[:"address"]&.value; end
171
+ # Gets the value of `local` attribute in the message.
172
+ #--
173
+ # @rbs return: untyped
174
+ def local; attributes[:"local"]&.value; end
175
+ # Gets the value of `label` attribute in the message.
176
+ #--
177
+ # @rbs return: ::String
178
+ def label; attributes[:"label"]&.value; end
179
+ # Gets the value of `cacheinfo` attribute in the message.
180
+ #--
181
+ # @rbs return: untyped
182
+ def cacheinfo; attributes[:"cacheinfo"]&.value; end
183
+ end
184
+ # Remove address
185
+ class DoDeladdrRequest < ::Nl::Protocols::Raw::Message
186
+ TYPE = 21
187
+ FIXED_HEADER = Structs::Ifaddrmsg
188
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
189
+ ATTRIBUTES = Ractor.make_shareable(%i[address local])
190
+ # Gets the value of `ifa-family` field in the message's fixed header.
191
+ #--
192
+ # @rbs return: ::Integer
193
+ def ifa_family; fixed_header.ifa_family; end
194
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
195
+ #--
196
+ # @rbs return: ::Integer
197
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
198
+ # Gets the value of `ifa-flags` field in the message's fixed header.
199
+ #--
200
+ # @rbs return: ::Integer
201
+ def ifa_flags; fixed_header.ifa_flags; end
202
+ # Gets the value of `ifa-scope` field in the message's fixed header.
203
+ #--
204
+ # @rbs return: ::Integer
205
+ def ifa_scope; fixed_header.ifa_scope; end
206
+ # Gets the value of `ifa-index` field in the message's fixed header.
207
+ #--
208
+ # @rbs return: ::Integer
209
+ def ifa_index; fixed_header.ifa_index; end
210
+ # Gets the value of `address` attribute in the message.
211
+ #--
212
+ # @rbs return: untyped
213
+ def address; attributes[:"address"]&.value; end
214
+ # Gets the value of `local` attribute in the message.
215
+ #--
216
+ # @rbs return: untyped
217
+ def local; attributes[:"local"]&.value; end
218
+ end
219
+ # Dump address information.
220
+ class DumpGetaddrRequest < ::Nl::Protocols::Raw::Message
221
+ TYPE = 22
222
+ FIXED_HEADER = Structs::Ifaddrmsg
223
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
224
+ ATTRIBUTES = Ractor.make_shareable(%i[])
225
+ # Gets the value of `ifa-family` field in the message's fixed header.
226
+ #--
227
+ # @rbs return: ::Integer
228
+ def ifa_family; fixed_header.ifa_family; end
229
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
230
+ #--
231
+ # @rbs return: ::Integer
232
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
233
+ # Gets the value of `ifa-flags` field in the message's fixed header.
234
+ #--
235
+ # @rbs return: ::Integer
236
+ def ifa_flags; fixed_header.ifa_flags; end
237
+ # Gets the value of `ifa-scope` field in the message's fixed header.
238
+ #--
239
+ # @rbs return: ::Integer
240
+ def ifa_scope; fixed_header.ifa_scope; end
241
+ # Gets the value of `ifa-index` field in the message's fixed header.
242
+ #--
243
+ # @rbs return: ::Integer
244
+ def ifa_index; fixed_header.ifa_index; end
245
+ end
246
+ # Dump address information.
247
+ class DumpGetaddrReply < ::Nl::Protocols::Raw::Message
248
+ TYPE = 20
249
+ FIXED_HEADER = Structs::Ifaddrmsg
250
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
251
+ ATTRIBUTES = Ractor.make_shareable(%i[address local label cacheinfo])
252
+ # Gets the value of `ifa-family` field in the message's fixed header.
253
+ #--
254
+ # @rbs return: ::Integer
255
+ def ifa_family; fixed_header.ifa_family; end
256
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
257
+ #--
258
+ # @rbs return: ::Integer
259
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
260
+ # Gets the value of `ifa-flags` field in the message's fixed header.
261
+ #--
262
+ # @rbs return: ::Integer
263
+ def ifa_flags; fixed_header.ifa_flags; end
264
+ # Gets the value of `ifa-scope` field in the message's fixed header.
265
+ #--
266
+ # @rbs return: ::Integer
267
+ def ifa_scope; fixed_header.ifa_scope; end
268
+ # Gets the value of `ifa-index` field in the message's fixed header.
269
+ #--
270
+ # @rbs return: ::Integer
271
+ def ifa_index; fixed_header.ifa_index; end
272
+ # Gets the value of `address` attribute in the message.
273
+ #--
274
+ # @rbs return: untyped
275
+ def address; attributes[:"address"]&.value; end
276
+ # Gets the value of `local` attribute in the message.
277
+ #--
278
+ # @rbs return: untyped
279
+ def local; attributes[:"local"]&.value; end
280
+ # Gets the value of `label` attribute in the message.
281
+ #--
282
+ # @rbs return: ::String
283
+ def label; attributes[:"label"]&.value; end
284
+ # Gets the value of `cacheinfo` attribute in the message.
285
+ #--
286
+ # @rbs return: untyped
287
+ def cacheinfo; attributes[:"cacheinfo"]&.value; end
288
+ end
289
+ # Get / dump IPv4/IPv6 multicast addresses.
290
+ class DoGetmulticastRequest < ::Nl::Protocols::Raw::Message
291
+ TYPE = 58
292
+ FIXED_HEADER = Structs::Ifaddrmsg
293
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
294
+ ATTRIBUTES = Ractor.make_shareable(%i[])
295
+ # Gets the value of `ifa-family` field in the message's fixed header.
296
+ #--
297
+ # @rbs return: ::Integer
298
+ def ifa_family; fixed_header.ifa_family; end
299
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
300
+ #--
301
+ # @rbs return: ::Integer
302
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
303
+ # Gets the value of `ifa-flags` field in the message's fixed header.
304
+ #--
305
+ # @rbs return: ::Integer
306
+ def ifa_flags; fixed_header.ifa_flags; end
307
+ # Gets the value of `ifa-scope` field in the message's fixed header.
308
+ #--
309
+ # @rbs return: ::Integer
310
+ def ifa_scope; fixed_header.ifa_scope; end
311
+ # Gets the value of `ifa-index` field in the message's fixed header.
312
+ #--
313
+ # @rbs return: ::Integer
314
+ def ifa_index; fixed_header.ifa_index; end
315
+ end
316
+ # Get / dump IPv4/IPv6 multicast addresses.
317
+ class DoGetmulticastReply < ::Nl::Protocols::Raw::Message
318
+ TYPE = 58
319
+ FIXED_HEADER = Structs::Ifaddrmsg
320
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
321
+ ATTRIBUTES = Ractor.make_shareable(%i[cacheinfo multicast])
322
+ # Gets the value of `ifa-family` field in the message's fixed header.
323
+ #--
324
+ # @rbs return: ::Integer
325
+ def ifa_family; fixed_header.ifa_family; end
326
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
327
+ #--
328
+ # @rbs return: ::Integer
329
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
330
+ # Gets the value of `ifa-flags` field in the message's fixed header.
331
+ #--
332
+ # @rbs return: ::Integer
333
+ def ifa_flags; fixed_header.ifa_flags; end
334
+ # Gets the value of `ifa-scope` field in the message's fixed header.
335
+ #--
336
+ # @rbs return: ::Integer
337
+ def ifa_scope; fixed_header.ifa_scope; end
338
+ # Gets the value of `ifa-index` field in the message's fixed header.
339
+ #--
340
+ # @rbs return: ::Integer
341
+ def ifa_index; fixed_header.ifa_index; end
342
+ # Gets the value of `cacheinfo` attribute in the message.
343
+ #--
344
+ # @rbs return: untyped
345
+ def cacheinfo; attributes[:"cacheinfo"]&.value; end
346
+ # Gets the value of `multicast` attribute in the message.
347
+ #--
348
+ # @rbs return: untyped
349
+ def multicast; attributes[:"multicast"]&.value; end
350
+ end
351
+ # Get / dump IPv4/IPv6 multicast addresses.
352
+ class DumpGetmulticastRequest < ::Nl::Protocols::Raw::Message
353
+ TYPE = 58
354
+ FIXED_HEADER = Structs::Ifaddrmsg
355
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
356
+ ATTRIBUTES = Ractor.make_shareable(%i[])
357
+ # Gets the value of `ifa-family` field in the message's fixed header.
358
+ #--
359
+ # @rbs return: ::Integer
360
+ def ifa_family; fixed_header.ifa_family; end
361
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
362
+ #--
363
+ # @rbs return: ::Integer
364
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
365
+ # Gets the value of `ifa-flags` field in the message's fixed header.
366
+ #--
367
+ # @rbs return: ::Integer
368
+ def ifa_flags; fixed_header.ifa_flags; end
369
+ # Gets the value of `ifa-scope` field in the message's fixed header.
370
+ #--
371
+ # @rbs return: ::Integer
372
+ def ifa_scope; fixed_header.ifa_scope; end
373
+ # Gets the value of `ifa-index` field in the message's fixed header.
374
+ #--
375
+ # @rbs return: ::Integer
376
+ def ifa_index; fixed_header.ifa_index; end
377
+ end
378
+ # Get / dump IPv4/IPv6 multicast addresses.
379
+ class DumpGetmulticastReply < ::Nl::Protocols::Raw::Message
380
+ TYPE = 58
381
+ FIXED_HEADER = Structs::Ifaddrmsg
382
+ ATTRIBUTE_SET = AttributeSets::AddrAttrs
383
+ ATTRIBUTES = Ractor.make_shareable(%i[cacheinfo multicast])
384
+ # Gets the value of `ifa-family` field in the message's fixed header.
385
+ #--
386
+ # @rbs return: ::Integer
387
+ def ifa_family; fixed_header.ifa_family; end
388
+ # Gets the value of `ifa-prefixlen` field in the message's fixed header.
389
+ #--
390
+ # @rbs return: ::Integer
391
+ def ifa_prefixlen; fixed_header.ifa_prefixlen; end
392
+ # Gets the value of `ifa-flags` field in the message's fixed header.
393
+ #--
394
+ # @rbs return: ::Integer
395
+ def ifa_flags; fixed_header.ifa_flags; end
396
+ # Gets the value of `ifa-scope` field in the message's fixed header.
397
+ #--
398
+ # @rbs return: ::Integer
399
+ def ifa_scope; fixed_header.ifa_scope; end
400
+ # Gets the value of `ifa-index` field in the message's fixed header.
401
+ #--
402
+ # @rbs return: ::Integer
403
+ def ifa_index; fixed_header.ifa_index; end
404
+ # Gets the value of `cacheinfo` attribute in the message.
405
+ #--
406
+ # @rbs return: untyped
407
+ def cacheinfo; attributes[:"cacheinfo"]&.value; end
408
+ # Gets the value of `multicast` attribute in the message.
409
+ #--
410
+ # @rbs return: untyped
411
+ def multicast; attributes[:"multicast"]&.value; end
412
+ end
413
+ end
414
+ # Add new address
415
+ #--
416
+ # @rbs (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer, ?address: untyped, ?local: untyped, ?label: ::String, ?cacheinfo: untyped) -> void
417
+ def do_newaddr(**args)
418
+ exchange_message(:"do", Messages::DoNewaddrRequest, nil, args)
419
+ end
420
+ # Remove address
421
+ #--
422
+ # @rbs (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer, ?address: untyped, ?local: untyped) -> void
423
+ def do_deladdr(**args)
424
+ exchange_message(:"do", Messages::DoDeladdrRequest, nil, args)
425
+ end
426
+ # Dump address information.
427
+ #--
428
+ # @rbs (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer) -> Enumerable[Messages::DumpGetaddrReply]
429
+ # | (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer) { (Messages::DumpGetaddrReply) -> void } -> void
430
+ def dump_getaddr(**args, &block)
431
+ exchange_message(:"dump", Messages::DumpGetaddrRequest, Messages::DumpGetaddrReply, args, &block)
432
+ end
433
+ # Get / dump IPv4/IPv6 multicast addresses.
434
+ #--
435
+ # @rbs (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer) -> Messages::DoGetmulticastReply
436
+ def do_getmulticast(**args)
437
+ exchange_message(:"do", Messages::DoGetmulticastRequest, Messages::DoGetmulticastReply, args)
438
+ end
439
+ # Get / dump IPv4/IPv6 multicast addresses.
440
+ #--
441
+ # @rbs (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer) -> Enumerable[Messages::DumpGetmulticastReply]
442
+ # | (?ifa_family: ::Integer, ?ifa_prefixlen: ::Integer, ?ifa_flags: ::Integer, ?ifa_scope: ::Integer, ?ifa_index: ::Integer) { (Messages::DumpGetmulticastReply) -> void } -> void
443
+ def dump_getmulticast(**args, &block)
444
+ exchange_message(:"dump", Messages::DumpGetmulticastRequest, Messages::DumpGetmulticastReply, args, &block)
445
+ end
446
+ end