nl-linux 0.2.0 → 0.2.2

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 (38) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Rakefile +31 -5
  4. data/generated/nl/linux/binder.rb +96 -0
  5. data/generated/nl/linux/conntrack.rb +1227 -0
  6. data/generated/nl/linux/dev_energymodel.rb +235 -0
  7. data/generated/nl/linux/devlink.rb +5177 -0
  8. data/generated/nl/linux/dpll.rb +944 -0
  9. data/generated/nl/linux/ethtool.rb +7121 -0
  10. data/generated/nl/linux/fou.rb +332 -0
  11. data/generated/nl/linux/handshake.rb +238 -0
  12. data/generated/nl/linux/lockd.rb +99 -0
  13. data/generated/nl/linux/mptcp_pm.rb +607 -0
  14. data/generated/nl/linux/net_shaper.rb +731 -0
  15. data/generated/nl/linux/netdev.rb +1450 -0
  16. data/generated/nl/linux/nfsd.rb +500 -0
  17. data/generated/nl/linux/nftables.rb +2924 -0
  18. data/generated/nl/linux/nl80211.rb +3393 -0
  19. data/generated/nl/linux/nlctrl.rb +397 -0
  20. data/generated/nl/linux/ovpn.rb +964 -0
  21. data/generated/nl/linux/ovs_datapath.rb +321 -0
  22. data/generated/nl/linux/ovs_flow.rb +1447 -0
  23. data/generated/nl/linux/ovs_vport.rb +391 -0
  24. data/generated/nl/linux/psp.rb +463 -0
  25. data/generated/nl/linux/rt_addr.rb +448 -0
  26. data/generated/nl/linux/rt_link.rb +4613 -0
  27. data/generated/nl/linux/rt_neigh.rb +897 -0
  28. data/generated/nl/linux/rt_route.rb +1126 -0
  29. data/generated/nl/linux/rt_rule.rb +708 -0
  30. data/generated/nl/linux/tc.rb +7066 -0
  31. data/generated/nl/linux/tcp_metrics.rb +317 -0
  32. data/generated/nl/linux/team.rb +339 -0
  33. data/generated/nl/linux/wireguard.rb +430 -0
  34. data/generated/nl/linux.rb +35 -0
  35. data/lib/nl/linux/version.rb +1 -1
  36. data/lib/nl-linux.rb +1 -1
  37. metadata +37 -7
  38. data/lib/nl/linux.rb +0 -3
@@ -0,0 +1,897 @@
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
+ module Nl; module Linux
8
+ # IP neighbour management over rtnetlink.
9
+ class RtNeigh < ::Nl::Family
10
+ NAME = "rt-neigh"
11
+ PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Raw.new("rt-neigh", 0))
12
+ module Structs
13
+ Ndmsg = Struct.new(
14
+ :"ndm_family", #: ::Integer
15
+ :"ndm_pad", #: nil
16
+ :"ndm_ifindex", #: ::Integer
17
+ :"ndm_state", #: ::Integer
18
+ :"ndm_flags", #: ::Integer
19
+ :"ndm_type", #: ::Integer
20
+ )
21
+ class Ndmsg
22
+ # :nodoc:
23
+ MEMBERS = Ractor.make_shareable({ndm_family: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ndm_pad: ::Nl::Protocols::Raw::DataTypes::Pad.new(3), ndm_ifindex: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil), ndm_state: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil), ndm_flags: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), ndm_type: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
24
+ # Decodes the struct.
25
+ #--
26
+ # @rbs decoder: ::Nl::Decoder
27
+ # @rbs return: instance
28
+ def self.decode(decoder)
29
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
30
+ end
31
+ # Encodes the struct.
32
+ #--
33
+ # @rbs encoder: ::Nl::Encoder
34
+ # @rbs return: void
35
+ def encode(encoder)
36
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
37
+ end
38
+ end
39
+ Ndtmsg = Struct.new(
40
+ :"family", #: ::Integer
41
+ :"pad", #: nil
42
+ )
43
+ class Ndtmsg
44
+ # :nodoc:
45
+ MEMBERS = Ractor.make_shareable({family: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), pad: ::Nl::Protocols::Raw::DataTypes::Pad.new(3)}) #: 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
+ NdaCacheinfo = Struct.new(
62
+ :"confirmed", #: ::Integer
63
+ :"used", #: ::Integer
64
+ :"updated", #: ::Integer
65
+ :"refcnt", #: ::Integer
66
+ )
67
+ class NdaCacheinfo
68
+ # :nodoc:
69
+ MEMBERS = Ractor.make_shareable({confirmed: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), used: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), updated: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), refcnt: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
70
+ # Decodes the struct.
71
+ #--
72
+ # @rbs decoder: ::Nl::Decoder
73
+ # @rbs return: instance
74
+ def self.decode(decoder)
75
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
76
+ end
77
+ # Encodes the struct.
78
+ #--
79
+ # @rbs encoder: ::Nl::Encoder
80
+ # @rbs return: void
81
+ def encode(encoder)
82
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
83
+ end
84
+ end
85
+ NdtConfig = Struct.new(
86
+ :"key_len", #: ::Integer
87
+ :"entry_size", #: ::Integer
88
+ :"entries", #: ::Integer
89
+ :"last_flush", #: ::Integer
90
+ :"last_rand", #: ::Integer
91
+ :"hash_rnd", #: ::Integer
92
+ :"hash_mask", #: ::Integer
93
+ :"hash_chain_gc", #: ::Integer
94
+ :"proxy_qlen", #: ::Integer
95
+ )
96
+ class NdtConfig
97
+ # :nodoc:
98
+ MEMBERS = Ractor.make_shareable({key_len: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil), entry_size: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil), entries: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), last_flush: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), last_rand: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), hash_rnd: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), hash_mask: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), hash_chain_gc: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), proxy_qlen: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
99
+ # Decodes the struct.
100
+ #--
101
+ # @rbs decoder: ::Nl::Decoder
102
+ # @rbs return: instance
103
+ def self.decode(decoder)
104
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
105
+ end
106
+ # Encodes the struct.
107
+ #--
108
+ # @rbs encoder: ::Nl::Encoder
109
+ # @rbs return: void
110
+ def encode(encoder)
111
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
112
+ end
113
+ end
114
+ NdtStats = Struct.new(
115
+ :"allocs", #: ::Integer
116
+ :"destroys", #: ::Integer
117
+ :"hash_grows", #: ::Integer
118
+ :"res_failed", #: ::Integer
119
+ :"lookups", #: ::Integer
120
+ :"hits", #: ::Integer
121
+ :"rcv_probes_mcast", #: ::Integer
122
+ :"rcv_probes_ucast", #: ::Integer
123
+ :"periodic_gc_runs", #: ::Integer
124
+ :"forced_gc_runs", #: ::Integer
125
+ :"table_fulls", #: ::Integer
126
+ )
127
+ class NdtStats
128
+ # :nodoc:
129
+ MEMBERS = Ractor.make_shareable({allocs: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), destroys: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), hash_grows: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), res_failed: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), lookups: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), hits: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), rcv_probes_mcast: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), rcv_probes_ucast: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), periodic_gc_runs: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), forced_gc_runs: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil), table_fulls: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
130
+ # Decodes the struct.
131
+ #--
132
+ # @rbs decoder: ::Nl::Decoder
133
+ # @rbs return: instance
134
+ def self.decode(decoder)
135
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
136
+ end
137
+ # Encodes the struct.
138
+ #--
139
+ # @rbs encoder: ::Nl::Encoder
140
+ # @rbs return: void
141
+ def encode(encoder)
142
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
143
+ end
144
+ end
145
+ end
146
+ module AttributeSets
147
+ class NeighbourAttrs < ::Nl::Protocols::Raw::AttributeSet
148
+ # Abstract class
149
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
150
+ end
151
+ class Unspec < Attribute
152
+ TYPE = 0
153
+ NAME = :"unspec"
154
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
155
+ end
156
+ class Dst < Attribute
157
+ TYPE = 1
158
+ NAME = :"dst"
159
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
160
+ end
161
+ class Lladdr < Attribute
162
+ TYPE = 2
163
+ NAME = :"lladdr"
164
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
165
+ end
166
+ class Cacheinfo < Attribute
167
+ TYPE = 3
168
+ NAME = :"cacheinfo"
169
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
170
+ end
171
+ class Probes < Attribute
172
+ TYPE = 4
173
+ NAME = :"probes"
174
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
175
+ end
176
+ class Vlan < Attribute
177
+ TYPE = 5
178
+ NAME = :"vlan"
179
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
180
+ end
181
+ class Port < Attribute
182
+ TYPE = 6
183
+ NAME = :"port"
184
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
185
+ end
186
+ class Vni < Attribute
187
+ TYPE = 7
188
+ NAME = :"vni"
189
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
190
+ end
191
+ class Ifindex < Attribute
192
+ TYPE = 8
193
+ NAME = :"ifindex"
194
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
195
+ end
196
+ class Master < Attribute
197
+ TYPE = 9
198
+ NAME = :"master"
199
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
200
+ end
201
+ class LinkNetnsid < Attribute
202
+ TYPE = 10
203
+ NAME = :"link_netnsid"
204
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
205
+ end
206
+ class SrcVni < Attribute
207
+ TYPE = 11
208
+ NAME = :"src_vni"
209
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
210
+ end
211
+ class Protocol < Attribute
212
+ TYPE = 12
213
+ NAME = :"protocol"
214
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
215
+ end
216
+ class NhId < Attribute
217
+ TYPE = 13
218
+ NAME = :"nh_id"
219
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
220
+ end
221
+ class FdbExtAttrs < Attribute
222
+ TYPE = 14
223
+ NAME = :"fdb_ext_attrs"
224
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
225
+ end
226
+ class FlagsExt < Attribute
227
+ TYPE = 15
228
+ NAME = :"flags_ext"
229
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
230
+ end
231
+ class NdmStateMask < Attribute
232
+ TYPE = 16
233
+ NAME = :"ndm_state_mask"
234
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
235
+ end
236
+ class NdmFlagsMask < Attribute
237
+ TYPE = 17
238
+ NAME = :"ndm_flags_mask"
239
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
240
+ end
241
+ # :nodoc:
242
+ BY_NAME = Ractor.make_shareable({:"unspec" => Unspec, :"dst" => Dst, :"lladdr" => Lladdr, :"cacheinfo" => Cacheinfo, :"probes" => Probes, :"vlan" => Vlan, :"port" => Port, :"vni" => Vni, :"ifindex" => Ifindex, :"master" => Master, :"link_netnsid" => LinkNetnsid, :"src_vni" => SrcVni, :"protocol" => Protocol, :"nh_id" => NhId, :"fdb_ext_attrs" => FdbExtAttrs, :"flags_ext" => FlagsExt, :"ndm_state_mask" => NdmStateMask, :"ndm_flags_mask" => NdmFlagsMask}) #: Hash[::Symbol, Attribute]
243
+ # :nodoc:
244
+ BY_TYPE = Ractor.make_shareable({0 => Unspec, 1 => Dst, 2 => Lladdr, 3 => Cacheinfo, 4 => Probes, 5 => Vlan, 6 => Port, 7 => Vni, 8 => Ifindex, 9 => Master, 10 => LinkNetnsid, 11 => SrcVni, 12 => Protocol, 13 => NhId, 14 => FdbExtAttrs, 15 => FlagsExt, 16 => NdmStateMask, 17 => NdmFlagsMask}) #: Hash[::Integer, Attribute]
245
+ class << self
246
+ # Looks up Attribute class by name.
247
+ #--
248
+ # @rbs name: Symbol
249
+ # @rbs return: Attribute
250
+ def by_name(name); BY_NAME.fetch(name); end
251
+ # Looks up Attribute class by type value.
252
+ #--
253
+ # @rbs type: Integer
254
+ # @rbs return: Attribute
255
+ def by_type(type); BY_TYPE.fetch(type); end
256
+ end
257
+ end
258
+ class NdtAttrs < ::Nl::Protocols::Raw::AttributeSet
259
+ # Abstract class
260
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
261
+ end
262
+ class Name < Attribute
263
+ TYPE = 1
264
+ NAME = :"name"
265
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
266
+ end
267
+ class Thresh1 < Attribute
268
+ TYPE = 2
269
+ NAME = :"thresh1"
270
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
271
+ end
272
+ class Thresh2 < Attribute
273
+ TYPE = 3
274
+ NAME = :"thresh2"
275
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
276
+ end
277
+ class Thresh3 < Attribute
278
+ TYPE = 4
279
+ NAME = :"thresh3"
280
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
281
+ end
282
+ class Config < Attribute
283
+ TYPE = 5
284
+ NAME = :"config"
285
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
286
+ end
287
+ class Parms < Attribute
288
+ TYPE = 6
289
+ NAME = :"parms"
290
+ end
291
+ class Stats < Attribute
292
+ TYPE = 7
293
+ NAME = :"stats"
294
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
295
+ end
296
+ class GcInterval < Attribute
297
+ TYPE = 8
298
+ NAME = :"gc_interval"
299
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
300
+ end
301
+ class Pad < Attribute
302
+ TYPE = 9
303
+ NAME = :"pad"
304
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Pad.new()
305
+ end
306
+ # :nodoc:
307
+ BY_NAME = Ractor.make_shareable({:"name" => Name, :"thresh1" => Thresh1, :"thresh2" => Thresh2, :"thresh3" => Thresh3, :"config" => Config, :"parms" => Parms, :"stats" => Stats, :"gc_interval" => GcInterval, :"pad" => Pad}) #: Hash[::Symbol, Attribute]
308
+ # :nodoc:
309
+ BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Thresh1, 3 => Thresh2, 4 => Thresh3, 5 => Config, 6 => Parms, 7 => Stats, 8 => GcInterval, 9 => Pad}) #: Hash[::Integer, Attribute]
310
+ class << self
311
+ # Looks up Attribute class by name.
312
+ #--
313
+ # @rbs name: Symbol
314
+ # @rbs return: Attribute
315
+ def by_name(name); BY_NAME.fetch(name); end
316
+ # Looks up Attribute class by type value.
317
+ #--
318
+ # @rbs type: Integer
319
+ # @rbs return: Attribute
320
+ def by_type(type); BY_TYPE.fetch(type); end
321
+ end
322
+ end
323
+ class NdtpaAttrs < ::Nl::Protocols::Raw::AttributeSet
324
+ # Abstract class
325
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
326
+ end
327
+ class Ifindex < Attribute
328
+ TYPE = 1
329
+ NAME = :"ifindex"
330
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
331
+ end
332
+ class Refcnt < Attribute
333
+ TYPE = 2
334
+ NAME = :"refcnt"
335
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
336
+ end
337
+ class ReachableTime < Attribute
338
+ TYPE = 3
339
+ NAME = :"reachable_time"
340
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
341
+ end
342
+ class BaseReachableTime < Attribute
343
+ TYPE = 4
344
+ NAME = :"base_reachable_time"
345
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
346
+ end
347
+ class RetransTime < Attribute
348
+ TYPE = 5
349
+ NAME = :"retrans_time"
350
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
351
+ end
352
+ class GcStaletime < Attribute
353
+ TYPE = 6
354
+ NAME = :"gc_staletime"
355
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
356
+ end
357
+ class DelayProbeTime < Attribute
358
+ TYPE = 7
359
+ NAME = :"delay_probe_time"
360
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
361
+ end
362
+ class QueueLen < Attribute
363
+ TYPE = 8
364
+ NAME = :"queue_len"
365
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
366
+ end
367
+ class AppProbes < Attribute
368
+ TYPE = 9
369
+ NAME = :"app_probes"
370
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
371
+ end
372
+ class UcastProbes < Attribute
373
+ TYPE = 10
374
+ NAME = :"ucast_probes"
375
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
376
+ end
377
+ class McastProbes < Attribute
378
+ TYPE = 11
379
+ NAME = :"mcast_probes"
380
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
381
+ end
382
+ class AnycastDelay < Attribute
383
+ TYPE = 12
384
+ NAME = :"anycast_delay"
385
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
386
+ end
387
+ class ProxyDelay < Attribute
388
+ TYPE = 13
389
+ NAME = :"proxy_delay"
390
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
391
+ end
392
+ class ProxyQlen < Attribute
393
+ TYPE = 14
394
+ NAME = :"proxy_qlen"
395
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
396
+ end
397
+ class Locktime < Attribute
398
+ TYPE = 15
399
+ NAME = :"locktime"
400
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
401
+ end
402
+ class QueueLenbytes < Attribute
403
+ TYPE = 16
404
+ NAME = :"queue_lenbytes"
405
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
406
+ end
407
+ class McastReprobes < Attribute
408
+ TYPE = 17
409
+ NAME = :"mcast_reprobes"
410
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
411
+ end
412
+ class Pad < Attribute
413
+ TYPE = 18
414
+ NAME = :"pad"
415
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Pad.new()
416
+ end
417
+ class IntervalProbeTimeMs < Attribute
418
+ TYPE = 19
419
+ NAME = :"interval_probe_time_ms"
420
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
421
+ end
422
+ # :nodoc:
423
+ BY_NAME = Ractor.make_shareable({:"ifindex" => Ifindex, :"refcnt" => Refcnt, :"reachable_time" => ReachableTime, :"base_reachable_time" => BaseReachableTime, :"retrans_time" => RetransTime, :"gc_staletime" => GcStaletime, :"delay_probe_time" => DelayProbeTime, :"queue_len" => QueueLen, :"app_probes" => AppProbes, :"ucast_probes" => UcastProbes, :"mcast_probes" => McastProbes, :"anycast_delay" => AnycastDelay, :"proxy_delay" => ProxyDelay, :"proxy_qlen" => ProxyQlen, :"locktime" => Locktime, :"queue_lenbytes" => QueueLenbytes, :"mcast_reprobes" => McastReprobes, :"pad" => Pad, :"interval_probe_time_ms" => IntervalProbeTimeMs}) #: Hash[::Symbol, Attribute]
424
+ # :nodoc:
425
+ BY_TYPE = Ractor.make_shareable({1 => Ifindex, 2 => Refcnt, 3 => ReachableTime, 4 => BaseReachableTime, 5 => RetransTime, 6 => GcStaletime, 7 => DelayProbeTime, 8 => QueueLen, 9 => AppProbes, 10 => UcastProbes, 11 => McastProbes, 12 => AnycastDelay, 13 => ProxyDelay, 14 => ProxyQlen, 15 => Locktime, 16 => QueueLenbytes, 17 => McastReprobes, 18 => Pad, 19 => IntervalProbeTimeMs}) #: Hash[::Integer, Attribute]
426
+ class << self
427
+ # Looks up Attribute class by name.
428
+ #--
429
+ # @rbs name: Symbol
430
+ # @rbs return: Attribute
431
+ def by_name(name); BY_NAME.fetch(name); end
432
+ # Looks up Attribute class by type value.
433
+ #--
434
+ # @rbs type: Integer
435
+ # @rbs return: Attribute
436
+ def by_type(type); BY_TYPE.fetch(type); end
437
+ end
438
+ end
439
+ NdtAttrs::Parms::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NdtpaAttrs)
440
+ end
441
+ module Messages
442
+ # Add new neighbour entry
443
+ class DoNewneighRequest < ::Nl::Protocols::Raw::Message
444
+ TYPE = 28
445
+ FIXED_HEADER = Structs::Ndmsg
446
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
447
+ ATTRIBUTES = Ractor.make_shareable(%i[dst lladdr probes vlan port vni ifindex master protocol nh_id fdb_ext_attrs flags_ext])
448
+ # Gets the value of `ndm-family` field in the message's fixed header.
449
+ #--
450
+ # @rbs return: ::Integer
451
+ def ndm_family; fixed_header.ndm_family; end
452
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
453
+ #--
454
+ # @rbs return: ::Integer
455
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
456
+ # Gets the value of `ndm-state` field in the message's fixed header.
457
+ #--
458
+ # @rbs return: ::Integer
459
+ def ndm_state; fixed_header.ndm_state; end
460
+ # Gets the value of `ndm-flags` field in the message's fixed header.
461
+ #--
462
+ # @rbs return: ::Integer
463
+ def ndm_flags; fixed_header.ndm_flags; end
464
+ # Gets the value of `ndm-type` field in the message's fixed header.
465
+ #--
466
+ # @rbs return: ::Integer
467
+ def ndm_type; fixed_header.ndm_type; end
468
+ # Gets the value of `dst` attribute in the message.
469
+ #--
470
+ # @rbs return: untyped
471
+ def dst; attributes[:"dst"]&.value; end
472
+ # Gets the value of `lladdr` attribute in the message.
473
+ #--
474
+ # @rbs return: untyped
475
+ def lladdr; attributes[:"lladdr"]&.value; end
476
+ # Gets the value of `probes` attribute in the message.
477
+ #--
478
+ # @rbs return: ::Integer
479
+ def probes; attributes[:"probes"]&.value; end
480
+ # Gets the value of `vlan` attribute in the message.
481
+ #--
482
+ # @rbs return: ::Integer
483
+ def vlan; attributes[:"vlan"]&.value; end
484
+ # Gets the value of `port` attribute in the message.
485
+ #--
486
+ # @rbs return: ::Integer
487
+ def port; attributes[:"port"]&.value; end
488
+ # Gets the value of `vni` attribute in the message.
489
+ #--
490
+ # @rbs return: ::Integer
491
+ def vni; attributes[:"vni"]&.value; end
492
+ # Gets the value of `ifindex` attribute in the message.
493
+ #--
494
+ # @rbs return: ::Integer
495
+ def ifindex; attributes[:"ifindex"]&.value; end
496
+ # Gets the value of `master` attribute in the message.
497
+ #--
498
+ # @rbs return: ::Integer
499
+ def master; attributes[:"master"]&.value; end
500
+ # Gets the value of `protocol` attribute in the message.
501
+ #--
502
+ # @rbs return: ::Integer
503
+ def protocol; attributes[:"protocol"]&.value; end
504
+ # Gets the value of `nh-id` attribute in the message.
505
+ #--
506
+ # @rbs return: ::Integer
507
+ def nh_id; attributes[:"nh_id"]&.value; end
508
+ # Gets the value of `fdb-ext-attrs` attribute in the message.
509
+ #--
510
+ # @rbs return: untyped
511
+ def fdb_ext_attrs; attributes[:"fdb_ext_attrs"]&.value; end
512
+ # Gets the value of `flags-ext` attribute in the message.
513
+ #--
514
+ # @rbs return: ::Integer
515
+ def flags_ext; attributes[:"flags_ext"]&.value; end
516
+ end
517
+ # Remove an existing neighbour entry
518
+ class DoDelneighRequest < ::Nl::Protocols::Raw::Message
519
+ TYPE = 29
520
+ FIXED_HEADER = Structs::Ndmsg
521
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
522
+ ATTRIBUTES = Ractor.make_shareable(%i[dst ifindex])
523
+ # Gets the value of `ndm-family` field in the message's fixed header.
524
+ #--
525
+ # @rbs return: ::Integer
526
+ def ndm_family; fixed_header.ndm_family; end
527
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
528
+ #--
529
+ # @rbs return: ::Integer
530
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
531
+ # Gets the value of `ndm-state` field in the message's fixed header.
532
+ #--
533
+ # @rbs return: ::Integer
534
+ def ndm_state; fixed_header.ndm_state; end
535
+ # Gets the value of `ndm-flags` field in the message's fixed header.
536
+ #--
537
+ # @rbs return: ::Integer
538
+ def ndm_flags; fixed_header.ndm_flags; end
539
+ # Gets the value of `ndm-type` field in the message's fixed header.
540
+ #--
541
+ # @rbs return: ::Integer
542
+ def ndm_type; fixed_header.ndm_type; end
543
+ # Gets the value of `dst` attribute in the message.
544
+ #--
545
+ # @rbs return: untyped
546
+ def dst; attributes[:"dst"]&.value; end
547
+ # Gets the value of `ifindex` attribute in the message.
548
+ #--
549
+ # @rbs return: ::Integer
550
+ def ifindex; attributes[:"ifindex"]&.value; end
551
+ end
552
+ # Get or dump neighbour entries
553
+ class DoGetneighRequest < ::Nl::Protocols::Raw::Message
554
+ TYPE = 30
555
+ FIXED_HEADER = Structs::Ndmsg
556
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
557
+ ATTRIBUTES = Ractor.make_shareable(%i[dst])
558
+ # Gets the value of `ndm-family` field in the message's fixed header.
559
+ #--
560
+ # @rbs return: ::Integer
561
+ def ndm_family; fixed_header.ndm_family; end
562
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
563
+ #--
564
+ # @rbs return: ::Integer
565
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
566
+ # Gets the value of `ndm-state` field in the message's fixed header.
567
+ #--
568
+ # @rbs return: ::Integer
569
+ def ndm_state; fixed_header.ndm_state; end
570
+ # Gets the value of `ndm-flags` field in the message's fixed header.
571
+ #--
572
+ # @rbs return: ::Integer
573
+ def ndm_flags; fixed_header.ndm_flags; end
574
+ # Gets the value of `ndm-type` field in the message's fixed header.
575
+ #--
576
+ # @rbs return: ::Integer
577
+ def ndm_type; fixed_header.ndm_type; end
578
+ # Gets the value of `dst` attribute in the message.
579
+ #--
580
+ # @rbs return: untyped
581
+ def dst; attributes[:"dst"]&.value; end
582
+ end
583
+ # Get or dump neighbour entries
584
+ class DoGetneighReply < ::Nl::Protocols::Raw::Message
585
+ TYPE = 28
586
+ FIXED_HEADER = Structs::Ndmsg
587
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
588
+ ATTRIBUTES = Ractor.make_shareable(%i[dst lladdr probes vlan port vni ifindex master protocol nh_id fdb_ext_attrs flags_ext])
589
+ # Gets the value of `ndm-family` field in the message's fixed header.
590
+ #--
591
+ # @rbs return: ::Integer
592
+ def ndm_family; fixed_header.ndm_family; end
593
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
594
+ #--
595
+ # @rbs return: ::Integer
596
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
597
+ # Gets the value of `ndm-state` field in the message's fixed header.
598
+ #--
599
+ # @rbs return: ::Integer
600
+ def ndm_state; fixed_header.ndm_state; end
601
+ # Gets the value of `ndm-flags` field in the message's fixed header.
602
+ #--
603
+ # @rbs return: ::Integer
604
+ def ndm_flags; fixed_header.ndm_flags; end
605
+ # Gets the value of `ndm-type` field in the message's fixed header.
606
+ #--
607
+ # @rbs return: ::Integer
608
+ def ndm_type; fixed_header.ndm_type; end
609
+ # Gets the value of `dst` attribute in the message.
610
+ #--
611
+ # @rbs return: untyped
612
+ def dst; attributes[:"dst"]&.value; end
613
+ # Gets the value of `lladdr` attribute in the message.
614
+ #--
615
+ # @rbs return: untyped
616
+ def lladdr; attributes[:"lladdr"]&.value; end
617
+ # Gets the value of `probes` attribute in the message.
618
+ #--
619
+ # @rbs return: ::Integer
620
+ def probes; attributes[:"probes"]&.value; end
621
+ # Gets the value of `vlan` attribute in the message.
622
+ #--
623
+ # @rbs return: ::Integer
624
+ def vlan; attributes[:"vlan"]&.value; end
625
+ # Gets the value of `port` attribute in the message.
626
+ #--
627
+ # @rbs return: ::Integer
628
+ def port; attributes[:"port"]&.value; end
629
+ # Gets the value of `vni` attribute in the message.
630
+ #--
631
+ # @rbs return: ::Integer
632
+ def vni; attributes[:"vni"]&.value; end
633
+ # Gets the value of `ifindex` attribute in the message.
634
+ #--
635
+ # @rbs return: ::Integer
636
+ def ifindex; attributes[:"ifindex"]&.value; end
637
+ # Gets the value of `master` attribute in the message.
638
+ #--
639
+ # @rbs return: ::Integer
640
+ def master; attributes[:"master"]&.value; end
641
+ # Gets the value of `protocol` attribute in the message.
642
+ #--
643
+ # @rbs return: ::Integer
644
+ def protocol; attributes[:"protocol"]&.value; end
645
+ # Gets the value of `nh-id` attribute in the message.
646
+ #--
647
+ # @rbs return: ::Integer
648
+ def nh_id; attributes[:"nh_id"]&.value; end
649
+ # Gets the value of `fdb-ext-attrs` attribute in the message.
650
+ #--
651
+ # @rbs return: untyped
652
+ def fdb_ext_attrs; attributes[:"fdb_ext_attrs"]&.value; end
653
+ # Gets the value of `flags-ext` attribute in the message.
654
+ #--
655
+ # @rbs return: ::Integer
656
+ def flags_ext; attributes[:"flags_ext"]&.value; end
657
+ end
658
+ # Get or dump neighbour entries
659
+ class DumpGetneighRequest < ::Nl::Protocols::Raw::Message
660
+ TYPE = 30
661
+ FIXED_HEADER = Structs::Ndmsg
662
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
663
+ ATTRIBUTES = Ractor.make_shareable(%i[ifindex master])
664
+ # Gets the value of `ndm-family` field in the message's fixed header.
665
+ #--
666
+ # @rbs return: ::Integer
667
+ def ndm_family; fixed_header.ndm_family; end
668
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
669
+ #--
670
+ # @rbs return: ::Integer
671
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
672
+ # Gets the value of `ndm-state` field in the message's fixed header.
673
+ #--
674
+ # @rbs return: ::Integer
675
+ def ndm_state; fixed_header.ndm_state; end
676
+ # Gets the value of `ndm-flags` field in the message's fixed header.
677
+ #--
678
+ # @rbs return: ::Integer
679
+ def ndm_flags; fixed_header.ndm_flags; end
680
+ # Gets the value of `ndm-type` field in the message's fixed header.
681
+ #--
682
+ # @rbs return: ::Integer
683
+ def ndm_type; fixed_header.ndm_type; end
684
+ # Gets the value of `ifindex` attribute in the message.
685
+ #--
686
+ # @rbs return: ::Integer
687
+ def ifindex; attributes[:"ifindex"]&.value; end
688
+ # Gets the value of `master` attribute in the message.
689
+ #--
690
+ # @rbs return: ::Integer
691
+ def master; attributes[:"master"]&.value; end
692
+ end
693
+ # Get or dump neighbour entries
694
+ class DumpGetneighReply < ::Nl::Protocols::Raw::Message
695
+ TYPE = 28
696
+ FIXED_HEADER = Structs::Ndmsg
697
+ ATTRIBUTE_SET = AttributeSets::NeighbourAttrs
698
+ ATTRIBUTES = Ractor.make_shareable(%i[dst lladdr probes vlan port vni ifindex master protocol nh_id fdb_ext_attrs flags_ext])
699
+ # Gets the value of `ndm-family` field in the message's fixed header.
700
+ #--
701
+ # @rbs return: ::Integer
702
+ def ndm_family; fixed_header.ndm_family; end
703
+ # Gets the value of `ndm-ifindex` field in the message's fixed header.
704
+ #--
705
+ # @rbs return: ::Integer
706
+ def ndm_ifindex; fixed_header.ndm_ifindex; end
707
+ # Gets the value of `ndm-state` field in the message's fixed header.
708
+ #--
709
+ # @rbs return: ::Integer
710
+ def ndm_state; fixed_header.ndm_state; end
711
+ # Gets the value of `ndm-flags` field in the message's fixed header.
712
+ #--
713
+ # @rbs return: ::Integer
714
+ def ndm_flags; fixed_header.ndm_flags; end
715
+ # Gets the value of `ndm-type` field in the message's fixed header.
716
+ #--
717
+ # @rbs return: ::Integer
718
+ def ndm_type; fixed_header.ndm_type; end
719
+ # Gets the value of `dst` attribute in the message.
720
+ #--
721
+ # @rbs return: untyped
722
+ def dst; attributes[:"dst"]&.value; end
723
+ # Gets the value of `lladdr` attribute in the message.
724
+ #--
725
+ # @rbs return: untyped
726
+ def lladdr; attributes[:"lladdr"]&.value; end
727
+ # Gets the value of `probes` attribute in the message.
728
+ #--
729
+ # @rbs return: ::Integer
730
+ def probes; attributes[:"probes"]&.value; end
731
+ # Gets the value of `vlan` attribute in the message.
732
+ #--
733
+ # @rbs return: ::Integer
734
+ def vlan; attributes[:"vlan"]&.value; end
735
+ # Gets the value of `port` attribute in the message.
736
+ #--
737
+ # @rbs return: ::Integer
738
+ def port; attributes[:"port"]&.value; end
739
+ # Gets the value of `vni` attribute in the message.
740
+ #--
741
+ # @rbs return: ::Integer
742
+ def vni; attributes[:"vni"]&.value; end
743
+ # Gets the value of `ifindex` attribute in the message.
744
+ #--
745
+ # @rbs return: ::Integer
746
+ def ifindex; attributes[:"ifindex"]&.value; end
747
+ # Gets the value of `master` attribute in the message.
748
+ #--
749
+ # @rbs return: ::Integer
750
+ def master; attributes[:"master"]&.value; end
751
+ # Gets the value of `protocol` attribute in the message.
752
+ #--
753
+ # @rbs return: ::Integer
754
+ def protocol; attributes[:"protocol"]&.value; end
755
+ # Gets the value of `nh-id` attribute in the message.
756
+ #--
757
+ # @rbs return: ::Integer
758
+ def nh_id; attributes[:"nh_id"]&.value; end
759
+ # Gets the value of `fdb-ext-attrs` attribute in the message.
760
+ #--
761
+ # @rbs return: untyped
762
+ def fdb_ext_attrs; attributes[:"fdb_ext_attrs"]&.value; end
763
+ # Gets the value of `flags-ext` attribute in the message.
764
+ #--
765
+ # @rbs return: ::Integer
766
+ def flags_ext; attributes[:"flags_ext"]&.value; end
767
+ end
768
+ # Get or dump neighbour tables
769
+ class DumpGetneightblRequest < ::Nl::Protocols::Raw::Message
770
+ TYPE = 66
771
+ FIXED_HEADER = Structs::Ndtmsg
772
+ ATTRIBUTE_SET = AttributeSets::NdtAttrs
773
+ ATTRIBUTES = Ractor.make_shareable(%i[])
774
+ # Gets the value of `family` field in the message's fixed header.
775
+ #--
776
+ # @rbs return: ::Integer
777
+ def family; fixed_header.family; end
778
+ end
779
+ # Get or dump neighbour tables
780
+ class DumpGetneightblReply < ::Nl::Protocols::Raw::Message
781
+ TYPE = 64
782
+ FIXED_HEADER = Structs::Ndtmsg
783
+ ATTRIBUTE_SET = AttributeSets::NdtAttrs
784
+ ATTRIBUTES = Ractor.make_shareable(%i[name thresh1 thresh2 thresh3 config parms stats gc_interval])
785
+ # Gets the value of `family` field in the message's fixed header.
786
+ #--
787
+ # @rbs return: ::Integer
788
+ def family; fixed_header.family; end
789
+ # Gets the value of `name` attribute in the message.
790
+ #--
791
+ # @rbs return: ::String
792
+ def name; attributes[:"name"]&.value; end
793
+ # Gets the value of `thresh1` attribute in the message.
794
+ #--
795
+ # @rbs return: ::Integer
796
+ def thresh1; attributes[:"thresh1"]&.value; end
797
+ # Gets the value of `thresh2` attribute in the message.
798
+ #--
799
+ # @rbs return: ::Integer
800
+ def thresh2; attributes[:"thresh2"]&.value; end
801
+ # Gets the value of `thresh3` attribute in the message.
802
+ #--
803
+ # @rbs return: ::Integer
804
+ def thresh3; attributes[:"thresh3"]&.value; end
805
+ # Gets the value of `config` attribute in the message.
806
+ #--
807
+ # @rbs return: untyped
808
+ def config; attributes[:"config"]&.value; end
809
+ # Gets the value of `parms` attribute in the message.
810
+ #--
811
+ # @rbs return: AttributeSets::NdtpaAttrs
812
+ def parms; attributes[:"parms"]&.value; end
813
+ # Gets the value of `stats` attribute in the message.
814
+ #--
815
+ # @rbs return: untyped
816
+ def stats; attributes[:"stats"]&.value; end
817
+ # Gets the value of `gc-interval` attribute in the message.
818
+ #--
819
+ # @rbs return: ::Integer
820
+ def gc_interval; attributes[:"gc_interval"]&.value; end
821
+ end
822
+ # Set neighbour tables
823
+ class DoSetneightblRequest < ::Nl::Protocols::Raw::Message
824
+ TYPE = 67
825
+ FIXED_HEADER = Structs::Ndtmsg
826
+ ATTRIBUTE_SET = AttributeSets::NdtAttrs
827
+ ATTRIBUTES = Ractor.make_shareable(%i[name thresh1 thresh2 thresh3 parms gc_interval])
828
+ # Gets the value of `family` field in the message's fixed header.
829
+ #--
830
+ # @rbs return: ::Integer
831
+ def family; fixed_header.family; end
832
+ # Gets the value of `name` attribute in the message.
833
+ #--
834
+ # @rbs return: ::String
835
+ def name; attributes[:"name"]&.value; end
836
+ # Gets the value of `thresh1` attribute in the message.
837
+ #--
838
+ # @rbs return: ::Integer
839
+ def thresh1; attributes[:"thresh1"]&.value; end
840
+ # Gets the value of `thresh2` attribute in the message.
841
+ #--
842
+ # @rbs return: ::Integer
843
+ def thresh2; attributes[:"thresh2"]&.value; end
844
+ # Gets the value of `thresh3` attribute in the message.
845
+ #--
846
+ # @rbs return: ::Integer
847
+ def thresh3; attributes[:"thresh3"]&.value; end
848
+ # Gets the value of `parms` attribute in the message.
849
+ #--
850
+ # @rbs return: AttributeSets::NdtpaAttrs
851
+ def parms; attributes[:"parms"]&.value; end
852
+ # Gets the value of `gc-interval` attribute in the message.
853
+ #--
854
+ # @rbs return: ::Integer
855
+ def gc_interval; attributes[:"gc_interval"]&.value; end
856
+ end
857
+ end
858
+ # Add new neighbour entry
859
+ #--
860
+ # @rbs (?ndm_family: ::Integer, ?ndm_ifindex: ::Integer, ?ndm_state: ::Integer, ?ndm_flags: ::Integer, ?ndm_type: ::Integer, ?dst: untyped, ?lladdr: untyped, ?probes: ::Integer, ?vlan: ::Integer, ?port: ::Integer, ?vni: ::Integer, ?ifindex: ::Integer, ?master: ::Integer, ?protocol: ::Integer, ?nh_id: ::Integer, ?fdb_ext_attrs: untyped, ?flags_ext: ::Integer) -> void
861
+ def do_newneigh(**args)
862
+ exchange_message(:"do", Messages::DoNewneighRequest, nil, args)
863
+ end
864
+ # Remove an existing neighbour entry
865
+ #--
866
+ # @rbs (?ndm_family: ::Integer, ?ndm_ifindex: ::Integer, ?ndm_state: ::Integer, ?ndm_flags: ::Integer, ?ndm_type: ::Integer, ?dst: untyped, ?ifindex: ::Integer) -> void
867
+ def do_delneigh(**args)
868
+ exchange_message(:"do", Messages::DoDelneighRequest, nil, args)
869
+ end
870
+ # Get or dump neighbour entries
871
+ #--
872
+ # @rbs (?ndm_family: ::Integer, ?ndm_ifindex: ::Integer, ?ndm_state: ::Integer, ?ndm_flags: ::Integer, ?ndm_type: ::Integer, ?dst: untyped) -> Messages::DoGetneighReply
873
+ def do_getneigh(**args)
874
+ exchange_message(:"do", Messages::DoGetneighRequest, Messages::DoGetneighReply, args)
875
+ end
876
+ # Get or dump neighbour entries
877
+ #--
878
+ # @rbs (?ndm_family: ::Integer, ?ndm_ifindex: ::Integer, ?ndm_state: ::Integer, ?ndm_flags: ::Integer, ?ndm_type: ::Integer, ?ifindex: ::Integer, ?master: ::Integer) -> Enumerable[Messages::DumpGetneighReply]
879
+ # | (?ndm_family: ::Integer, ?ndm_ifindex: ::Integer, ?ndm_state: ::Integer, ?ndm_flags: ::Integer, ?ndm_type: ::Integer, ?ifindex: ::Integer, ?master: ::Integer) { (Messages::DumpGetneighReply) -> void } -> void
880
+ def dump_getneigh(**args, &block)
881
+ exchange_message(:"dump", Messages::DumpGetneighRequest, Messages::DumpGetneighReply, args, &block)
882
+ end
883
+ # Get or dump neighbour tables
884
+ #--
885
+ # @rbs (?family: ::Integer) -> Enumerable[Messages::DumpGetneightblReply]
886
+ # | (?family: ::Integer) { (Messages::DumpGetneightblReply) -> void } -> void
887
+ def dump_getneightbl(**args, &block)
888
+ exchange_message(:"dump", Messages::DumpGetneightblRequest, Messages::DumpGetneightblReply, args, &block)
889
+ end
890
+ # Set neighbour tables
891
+ #--
892
+ # @rbs (?family: ::Integer, ?name: ::String, ?thresh1: ::Integer, ?thresh2: ::Integer, ?thresh3: ::Integer, ?parms: AttributeSets::NdtpaAttrs, ?gc_interval: ::Integer) -> void
893
+ def do_setneightbl(**args)
894
+ exchange_message(:"do", Messages::DoSetneightblRequest, nil, args)
895
+ end
896
+ end
897
+ end; end