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,3393 @@
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
+ # Netlink API for 802.11 wireless devices
9
+ class Nl80211 < ::Nl::Family
10
+ NAME = "nl80211"
11
+ PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Genl.new("nl80211"))
12
+ module Structs
13
+ StaFlagUpdate = Struct.new(
14
+ :"mask", #: ::Integer
15
+ :"set", #: ::Integer
16
+ )
17
+ class StaFlagUpdate
18
+ # :nodoc:
19
+ MEMBERS = Ractor.make_shareable({mask: ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil), set: ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
20
+ # Decodes the struct.
21
+ #--
22
+ # @rbs decoder: ::Nl::Decoder
23
+ # @rbs return: instance
24
+ def self.decode(decoder)
25
+ self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
26
+ end
27
+ # Encodes the struct.
28
+ #--
29
+ # @rbs encoder: ::Nl::Encoder
30
+ # @rbs return: void
31
+ def encode(encoder)
32
+ MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
33
+ end
34
+ end
35
+ end
36
+ module AttributeSets
37
+ class Nl80211Attrs < ::Nl::Protocols::Genl::AttributeSet
38
+ # Abstract class
39
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
40
+ end
41
+ class Wiphy < Attribute
42
+ TYPE = 1
43
+ NAME = :"wiphy"
44
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
45
+ end
46
+ class WiphyName < Attribute
47
+ TYPE = 2
48
+ NAME = :"wiphy_name"
49
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
50
+ end
51
+ class Ifindex < Attribute
52
+ TYPE = 3
53
+ NAME = :"ifindex"
54
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
55
+ end
56
+ class Ifname < Attribute
57
+ TYPE = 4
58
+ NAME = :"ifname"
59
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::String.new(check: nil)
60
+ end
61
+ class Iftype < Attribute
62
+ TYPE = 5
63
+ NAME = :"iftype"
64
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
65
+ end
66
+ class Mac < Attribute
67
+ TYPE = 6
68
+ NAME = :"mac"
69
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
70
+ end
71
+ class KeyData < Attribute
72
+ TYPE = 7
73
+ NAME = :"key_data"
74
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
75
+ end
76
+ class KeyIdx < Attribute
77
+ TYPE = 8
78
+ NAME = :"key_idx"
79
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
80
+ end
81
+ class KeyCipher < Attribute
82
+ TYPE = 9
83
+ NAME = :"key_cipher"
84
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
85
+ end
86
+ class KeySeq < Attribute
87
+ TYPE = 10
88
+ NAME = :"key_seq"
89
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
90
+ end
91
+ class KeyDefault < Attribute
92
+ TYPE = 11
93
+ NAME = :"key_default"
94
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
95
+ end
96
+ class BeaconInterval < Attribute
97
+ TYPE = 12
98
+ NAME = :"beacon_interval"
99
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
100
+ end
101
+ class DtimPeriod < Attribute
102
+ TYPE = 13
103
+ NAME = :"dtim_period"
104
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
105
+ end
106
+ class BeaconHead < Attribute
107
+ TYPE = 14
108
+ NAME = :"beacon_head"
109
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
110
+ end
111
+ class BeaconTail < Attribute
112
+ TYPE = 15
113
+ NAME = :"beacon_tail"
114
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
115
+ end
116
+ class StaAid < Attribute
117
+ TYPE = 16
118
+ NAME = :"sta_aid"
119
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
120
+ end
121
+ class StaFlags < Attribute
122
+ TYPE = 17
123
+ NAME = :"sta_flags"
124
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
125
+ end
126
+ class StaListenInterval < Attribute
127
+ TYPE = 18
128
+ NAME = :"sta_listen_interval"
129
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
130
+ end
131
+ class StaSupportedRates < Attribute
132
+ TYPE = 19
133
+ NAME = :"sta_supported_rates"
134
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
135
+ end
136
+ class StaVlan < Attribute
137
+ TYPE = 20
138
+ NAME = :"sta_vlan"
139
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
140
+ end
141
+ class StaInfo < Attribute
142
+ TYPE = 21
143
+ NAME = :"sta_info"
144
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
145
+ end
146
+ class WiphyBands < Attribute
147
+ TYPE = 22
148
+ NAME = :"wiphy_bands"
149
+ end
150
+ class MntrFlags < Attribute
151
+ TYPE = 23
152
+ NAME = :"mntr_flags"
153
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
154
+ end
155
+ class MeshId < Attribute
156
+ TYPE = 24
157
+ NAME = :"mesh_id"
158
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
159
+ end
160
+ class StaPlinkAction < Attribute
161
+ TYPE = 25
162
+ NAME = :"sta_plink_action"
163
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
164
+ end
165
+ class MpathNextHop < Attribute
166
+ TYPE = 26
167
+ NAME = :"mpath_next_hop"
168
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
169
+ end
170
+ class MpathInfo < Attribute
171
+ TYPE = 27
172
+ NAME = :"mpath_info"
173
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
174
+ end
175
+ class BssCtsProt < Attribute
176
+ TYPE = 28
177
+ NAME = :"bss_cts_prot"
178
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
179
+ end
180
+ class BssShortPreamble < Attribute
181
+ TYPE = 29
182
+ NAME = :"bss_short_preamble"
183
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
184
+ end
185
+ class BssShortSlotTime < Attribute
186
+ TYPE = 30
187
+ NAME = :"bss_short_slot_time"
188
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
189
+ end
190
+ class HtCapability < Attribute
191
+ TYPE = 31
192
+ NAME = :"ht_capability"
193
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
194
+ end
195
+ class SupportedIftypes < Attribute
196
+ TYPE = 32
197
+ NAME = :"supported_iftypes"
198
+ end
199
+ class RegAlpha2 < Attribute
200
+ TYPE = 33
201
+ NAME = :"reg_alpha2"
202
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
203
+ end
204
+ class RegRules < Attribute
205
+ TYPE = 34
206
+ NAME = :"reg_rules"
207
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
208
+ end
209
+ class MeshConfig < Attribute
210
+ TYPE = 35
211
+ NAME = :"mesh_config"
212
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
213
+ end
214
+ class BssBasicRates < Attribute
215
+ TYPE = 36
216
+ NAME = :"bss_basic_rates"
217
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
218
+ end
219
+ class WiphyTxqParams < Attribute
220
+ TYPE = 37
221
+ NAME = :"wiphy_txq_params"
222
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
223
+ end
224
+ class WiphyFreq < Attribute
225
+ TYPE = 38
226
+ NAME = :"wiphy_freq"
227
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
228
+ end
229
+ class WiphyChannelType < Attribute
230
+ TYPE = 39
231
+ NAME = :"wiphy_channel_type"
232
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
233
+ end
234
+ class KeyDefaultMgmt < Attribute
235
+ TYPE = 40
236
+ NAME = :"key_default_mgmt"
237
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
238
+ end
239
+ class MgmtSubtype < Attribute
240
+ TYPE = 41
241
+ NAME = :"mgmt_subtype"
242
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
243
+ end
244
+ class Ie < Attribute
245
+ TYPE = 42
246
+ NAME = :"ie"
247
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
248
+ end
249
+ class MaxNumScanSsids < Attribute
250
+ TYPE = 43
251
+ NAME = :"max_num_scan_ssids"
252
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
253
+ end
254
+ class ScanFrequencies < Attribute
255
+ TYPE = 44
256
+ NAME = :"scan_frequencies"
257
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
258
+ end
259
+ class ScanSsids < Attribute
260
+ TYPE = 45
261
+ NAME = :"scan_ssids"
262
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
263
+ end
264
+ class Generation < Attribute
265
+ TYPE = 46
266
+ NAME = :"generation"
267
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
268
+ end
269
+ class Bss < Attribute
270
+ TYPE = 47
271
+ NAME = :"bss"
272
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
273
+ end
274
+ class RegInitiator < Attribute
275
+ TYPE = 48
276
+ NAME = :"reg_initiator"
277
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
278
+ end
279
+ class RegType < Attribute
280
+ TYPE = 49
281
+ NAME = :"reg_type"
282
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
283
+ end
284
+ class SupportedCommands < Attribute
285
+ TYPE = 50
286
+ NAME = :"supported_commands"
287
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil))
288
+ end
289
+ class Frame < Attribute
290
+ TYPE = 51
291
+ NAME = :"frame"
292
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
293
+ end
294
+ class Ssid < Attribute
295
+ TYPE = 52
296
+ NAME = :"ssid"
297
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
298
+ end
299
+ class AuthType < Attribute
300
+ TYPE = 53
301
+ NAME = :"auth_type"
302
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
303
+ end
304
+ class ReasonCode < Attribute
305
+ TYPE = 54
306
+ NAME = :"reason_code"
307
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
308
+ end
309
+ class KeyType < Attribute
310
+ TYPE = 55
311
+ NAME = :"key_type"
312
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
313
+ end
314
+ class MaxScanIeLen < Attribute
315
+ TYPE = 56
316
+ NAME = :"max_scan_ie_len"
317
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
318
+ end
319
+ class CipherSuites < Attribute
320
+ TYPE = 57
321
+ NAME = :"cipher_suites"
322
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
323
+ end
324
+ class FreqBefore < Attribute
325
+ TYPE = 58
326
+ NAME = :"freq_before"
327
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
328
+ end
329
+ class FreqAfter < Attribute
330
+ TYPE = 59
331
+ NAME = :"freq_after"
332
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
333
+ end
334
+ class FreqFixed < Attribute
335
+ TYPE = 60
336
+ NAME = :"freq_fixed"
337
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
338
+ end
339
+ class WiphyRetryShort < Attribute
340
+ TYPE = 61
341
+ NAME = :"wiphy_retry_short"
342
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
343
+ end
344
+ class WiphyRetryLong < Attribute
345
+ TYPE = 62
346
+ NAME = :"wiphy_retry_long"
347
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
348
+ end
349
+ class WiphyFragThreshold < Attribute
350
+ TYPE = 63
351
+ NAME = :"wiphy_frag_threshold"
352
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
353
+ end
354
+ class WiphyRtsThreshold < Attribute
355
+ TYPE = 64
356
+ NAME = :"wiphy_rts_threshold"
357
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
358
+ end
359
+ class TimedOut < Attribute
360
+ TYPE = 65
361
+ NAME = :"timed_out"
362
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
363
+ end
364
+ class UseMfp < Attribute
365
+ TYPE = 66
366
+ NAME = :"use_mfp"
367
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
368
+ end
369
+ class StaFlags2 < Attribute
370
+ TYPE = 67
371
+ NAME = :"sta_flags2"
372
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
373
+ end
374
+ class ControlPort < Attribute
375
+ TYPE = 68
376
+ NAME = :"control_port"
377
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
378
+ end
379
+ class Testdata < Attribute
380
+ TYPE = 69
381
+ NAME = :"testdata"
382
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
383
+ end
384
+ class Privacy < Attribute
385
+ TYPE = 70
386
+ NAME = :"privacy"
387
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
388
+ end
389
+ class DisconnectedByAp < Attribute
390
+ TYPE = 71
391
+ NAME = :"disconnected_by_ap"
392
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
393
+ end
394
+ class StatusCode < Attribute
395
+ TYPE = 72
396
+ NAME = :"status_code"
397
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
398
+ end
399
+ class CipherSuitesPairwise < Attribute
400
+ TYPE = 73
401
+ NAME = :"cipher_suites_pairwise"
402
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
403
+ end
404
+ class CipherSuiteGroup < Attribute
405
+ TYPE = 74
406
+ NAME = :"cipher_suite_group"
407
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
408
+ end
409
+ class WpaVersions < Attribute
410
+ TYPE = 75
411
+ NAME = :"wpa_versions"
412
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
413
+ end
414
+ class AkmSuites < Attribute
415
+ TYPE = 76
416
+ NAME = :"akm_suites"
417
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
418
+ end
419
+ class ReqIe < Attribute
420
+ TYPE = 77
421
+ NAME = :"req_ie"
422
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
423
+ end
424
+ class RespIe < Attribute
425
+ TYPE = 78
426
+ NAME = :"resp_ie"
427
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
428
+ end
429
+ class PrevBssid < Attribute
430
+ TYPE = 79
431
+ NAME = :"prev_bssid"
432
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
433
+ end
434
+ class Key < Attribute
435
+ TYPE = 80
436
+ NAME = :"key"
437
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
438
+ end
439
+ class Keys < Attribute
440
+ TYPE = 81
441
+ NAME = :"keys"
442
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
443
+ end
444
+ class Pid < Attribute
445
+ TYPE = 82
446
+ NAME = :"pid"
447
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
448
+ end
449
+ class X4addr < Attribute
450
+ TYPE = 83
451
+ NAME = :"x_4addr"
452
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
453
+ end
454
+ class SurveyInfo < Attribute
455
+ TYPE = 84
456
+ NAME = :"survey_info"
457
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
458
+ end
459
+ class Pmkid < Attribute
460
+ TYPE = 85
461
+ NAME = :"pmkid"
462
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
463
+ end
464
+ class MaxNumPmkids < Attribute
465
+ TYPE = 86
466
+ NAME = :"max_num_pmkids"
467
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
468
+ end
469
+ class Duration < Attribute
470
+ TYPE = 87
471
+ NAME = :"duration"
472
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
473
+ end
474
+ class Cookie < Attribute
475
+ TYPE = 88
476
+ NAME = :"cookie"
477
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
478
+ end
479
+ class WiphyCoverageClass < Attribute
480
+ TYPE = 89
481
+ NAME = :"wiphy_coverage_class"
482
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
483
+ end
484
+ class TxRates < Attribute
485
+ TYPE = 90
486
+ NAME = :"tx_rates"
487
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
488
+ end
489
+ class FrameMatch < Attribute
490
+ TYPE = 91
491
+ NAME = :"frame_match"
492
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
493
+ end
494
+ class Ack < Attribute
495
+ TYPE = 92
496
+ NAME = :"ack"
497
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
498
+ end
499
+ class PsState < Attribute
500
+ TYPE = 93
501
+ NAME = :"ps_state"
502
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
503
+ end
504
+ class Cqm < Attribute
505
+ TYPE = 94
506
+ NAME = :"cqm"
507
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
508
+ end
509
+ class LocalStateChange < Attribute
510
+ TYPE = 95
511
+ NAME = :"local_state_change"
512
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
513
+ end
514
+ class ApIsolate < Attribute
515
+ TYPE = 96
516
+ NAME = :"ap_isolate"
517
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
518
+ end
519
+ class WiphyTxPowerSetting < Attribute
520
+ TYPE = 97
521
+ NAME = :"wiphy_tx_power_setting"
522
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
523
+ end
524
+ class WiphyTxPowerLevel < Attribute
525
+ TYPE = 98
526
+ NAME = :"wiphy_tx_power_level"
527
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
528
+ end
529
+ class TxFrameTypes < Attribute
530
+ TYPE = 99
531
+ NAME = :"tx_frame_types"
532
+ end
533
+ class RxFrameTypes < Attribute
534
+ TYPE = 100
535
+ NAME = :"rx_frame_types"
536
+ end
537
+ class FrameType < Attribute
538
+ TYPE = 101
539
+ NAME = :"frame_type"
540
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
541
+ end
542
+ class ControlPortEthertype < Attribute
543
+ TYPE = 102
544
+ NAME = :"control_port_ethertype"
545
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
546
+ end
547
+ class ControlPortNoEncrypt < Attribute
548
+ TYPE = 103
549
+ NAME = :"control_port_no_encrypt"
550
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
551
+ end
552
+ class SupportIbssRsn < Attribute
553
+ TYPE = 104
554
+ NAME = :"support_ibss_rsn"
555
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
556
+ end
557
+ class WiphyAntennaTx < Attribute
558
+ TYPE = 105
559
+ NAME = :"wiphy_antenna_tx"
560
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
561
+ end
562
+ class WiphyAntennaRx < Attribute
563
+ TYPE = 106
564
+ NAME = :"wiphy_antenna_rx"
565
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
566
+ end
567
+ class McastRate < Attribute
568
+ TYPE = 107
569
+ NAME = :"mcast_rate"
570
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
571
+ end
572
+ class OffchannelTxOk < Attribute
573
+ TYPE = 108
574
+ NAME = :"offchannel_tx_ok"
575
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
576
+ end
577
+ class BssHtOpmode < Attribute
578
+ TYPE = 109
579
+ NAME = :"bss_ht_opmode"
580
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
581
+ end
582
+ class KeyDefaultTypes < Attribute
583
+ TYPE = 110
584
+ NAME = :"key_default_types"
585
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
586
+ end
587
+ class MaxRemainOnChannelDuration < Attribute
588
+ TYPE = 111
589
+ NAME = :"max_remain_on_channel_duration"
590
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
591
+ end
592
+ class MeshSetup < Attribute
593
+ TYPE = 112
594
+ NAME = :"mesh_setup"
595
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
596
+ end
597
+ class WiphyAntennaAvailTx < Attribute
598
+ TYPE = 113
599
+ NAME = :"wiphy_antenna_avail_tx"
600
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
601
+ end
602
+ class WiphyAntennaAvailRx < Attribute
603
+ TYPE = 114
604
+ NAME = :"wiphy_antenna_avail_rx"
605
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
606
+ end
607
+ class SupportMeshAuth < Attribute
608
+ TYPE = 115
609
+ NAME = :"support_mesh_auth"
610
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
611
+ end
612
+ class StaPlinkState < Attribute
613
+ TYPE = 116
614
+ NAME = :"sta_plink_state"
615
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
616
+ end
617
+ class WowlanTriggers < Attribute
618
+ TYPE = 117
619
+ NAME = :"wowlan_triggers"
620
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
621
+ end
622
+ class WowlanTriggersSupported < Attribute
623
+ TYPE = 118
624
+ NAME = :"wowlan_triggers_supported"
625
+ end
626
+ class SchedScanInterval < Attribute
627
+ TYPE = 119
628
+ NAME = :"sched_scan_interval"
629
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
630
+ end
631
+ class InterfaceCombinations < Attribute
632
+ TYPE = 120
633
+ NAME = :"interface_combinations"
634
+ end
635
+ class SoftwareIftypes < Attribute
636
+ TYPE = 121
637
+ NAME = :"software_iftypes"
638
+ end
639
+ class RekeyData < Attribute
640
+ TYPE = 122
641
+ NAME = :"rekey_data"
642
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
643
+ end
644
+ class MaxNumSchedScanSsids < Attribute
645
+ TYPE = 123
646
+ NAME = :"max_num_sched_scan_ssids"
647
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
648
+ end
649
+ class MaxSchedScanIeLen < Attribute
650
+ TYPE = 124
651
+ NAME = :"max_sched_scan_ie_len"
652
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
653
+ end
654
+ class ScanSuppRates < Attribute
655
+ TYPE = 125
656
+ NAME = :"scan_supp_rates"
657
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
658
+ end
659
+ class HiddenSsid < Attribute
660
+ TYPE = 126
661
+ NAME = :"hidden_ssid"
662
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
663
+ end
664
+ class IeProbeResp < Attribute
665
+ TYPE = 127
666
+ NAME = :"ie_probe_resp"
667
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
668
+ end
669
+ class IeAssocResp < Attribute
670
+ TYPE = 128
671
+ NAME = :"ie_assoc_resp"
672
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
673
+ end
674
+ class StaWme < Attribute
675
+ TYPE = 129
676
+ NAME = :"sta_wme"
677
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
678
+ end
679
+ class SupportApUapsd < Attribute
680
+ TYPE = 130
681
+ NAME = :"support_ap_uapsd"
682
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
683
+ end
684
+ class RoamSupport < Attribute
685
+ TYPE = 131
686
+ NAME = :"roam_support"
687
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
688
+ end
689
+ class SchedScanMatch < Attribute
690
+ TYPE = 132
691
+ NAME = :"sched_scan_match"
692
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
693
+ end
694
+ class MaxMatchSets < Attribute
695
+ TYPE = 133
696
+ NAME = :"max_match_sets"
697
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
698
+ end
699
+ class PmksaCandidate < Attribute
700
+ TYPE = 134
701
+ NAME = :"pmksa_candidate"
702
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
703
+ end
704
+ class TxNoCckRate < Attribute
705
+ TYPE = 135
706
+ NAME = :"tx_no_cck_rate"
707
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
708
+ end
709
+ class TdlsAction < Attribute
710
+ TYPE = 136
711
+ NAME = :"tdls_action"
712
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
713
+ end
714
+ class TdlsDialogToken < Attribute
715
+ TYPE = 137
716
+ NAME = :"tdls_dialog_token"
717
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
718
+ end
719
+ class TdlsOperation < Attribute
720
+ TYPE = 138
721
+ NAME = :"tdls_operation"
722
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
723
+ end
724
+ class TdlsSupport < Attribute
725
+ TYPE = 139
726
+ NAME = :"tdls_support"
727
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
728
+ end
729
+ class TdlsExternalSetup < Attribute
730
+ TYPE = 140
731
+ NAME = :"tdls_external_setup"
732
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
733
+ end
734
+ class DeviceApSme < Attribute
735
+ TYPE = 141
736
+ NAME = :"device_ap_sme"
737
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
738
+ end
739
+ class DontWaitForAck < Attribute
740
+ TYPE = 142
741
+ NAME = :"dont_wait_for_ack"
742
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
743
+ end
744
+ class FeatureFlags < Attribute
745
+ TYPE = 143
746
+ NAME = :"feature_flags"
747
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
748
+ end
749
+ class ProbeRespOffload < Attribute
750
+ TYPE = 144
751
+ NAME = :"probe_resp_offload"
752
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
753
+ end
754
+ class ProbeResp < Attribute
755
+ TYPE = 145
756
+ NAME = :"probe_resp"
757
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
758
+ end
759
+ class DfsRegion < Attribute
760
+ TYPE = 146
761
+ NAME = :"dfs_region"
762
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
763
+ end
764
+ class DisableHt < Attribute
765
+ TYPE = 147
766
+ NAME = :"disable_ht"
767
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
768
+ end
769
+ class HtCapabilityMask < Attribute
770
+ TYPE = 148
771
+ NAME = :"ht_capability_mask"
772
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
773
+ end
774
+ class NoackMap < Attribute
775
+ TYPE = 149
776
+ NAME = :"noack_map"
777
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
778
+ end
779
+ class InactivityTimeout < Attribute
780
+ TYPE = 150
781
+ NAME = :"inactivity_timeout"
782
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
783
+ end
784
+ class RxSignalDbm < Attribute
785
+ TYPE = 151
786
+ NAME = :"rx_signal_dbm"
787
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
788
+ end
789
+ class BgScanPeriod < Attribute
790
+ TYPE = 152
791
+ NAME = :"bg_scan_period"
792
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
793
+ end
794
+ class Wdev < Attribute
795
+ TYPE = 153
796
+ NAME = :"wdev"
797
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
798
+ end
799
+ class UserRegHintType < Attribute
800
+ TYPE = 154
801
+ NAME = :"user_reg_hint_type"
802
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
803
+ end
804
+ class ConnFailedReason < Attribute
805
+ TYPE = 155
806
+ NAME = :"conn_failed_reason"
807
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
808
+ end
809
+ class AuthData < Attribute
810
+ TYPE = 156
811
+ NAME = :"auth_data"
812
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
813
+ end
814
+ class VhtCapability < Attribute
815
+ TYPE = 157
816
+ NAME = :"vht_capability"
817
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
818
+ end
819
+ class ScanFlags < Attribute
820
+ TYPE = 158
821
+ NAME = :"scan_flags"
822
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
823
+ end
824
+ class ChannelWidth < Attribute
825
+ TYPE = 159
826
+ NAME = :"channel_width"
827
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
828
+ end
829
+ class CenterFreq1 < Attribute
830
+ TYPE = 160
831
+ NAME = :"center_freq1"
832
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
833
+ end
834
+ class CenterFreq2 < Attribute
835
+ TYPE = 161
836
+ NAME = :"center_freq2"
837
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
838
+ end
839
+ class P2pCtwindow < Attribute
840
+ TYPE = 162
841
+ NAME = :"p2p_ctwindow"
842
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
843
+ end
844
+ class P2pOppps < Attribute
845
+ TYPE = 163
846
+ NAME = :"p2p_oppps"
847
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
848
+ end
849
+ class LocalMeshPowerMode < Attribute
850
+ TYPE = 164
851
+ NAME = :"local_mesh_power_mode"
852
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
853
+ end
854
+ class AclPolicy < Attribute
855
+ TYPE = 165
856
+ NAME = :"acl_policy"
857
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
858
+ end
859
+ class MacAddrs < Attribute
860
+ TYPE = 166
861
+ NAME = :"mac_addrs"
862
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
863
+ end
864
+ class MacAclMax < Attribute
865
+ TYPE = 167
866
+ NAME = :"mac_acl_max"
867
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
868
+ end
869
+ class RadarEvent < Attribute
870
+ TYPE = 168
871
+ NAME = :"radar_event"
872
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
873
+ end
874
+ class ExtCapa < Attribute
875
+ TYPE = 169
876
+ NAME = :"ext_capa"
877
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
878
+ end
879
+ class ExtCapaMask < Attribute
880
+ TYPE = 170
881
+ NAME = :"ext_capa_mask"
882
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
883
+ end
884
+ class StaCapability < Attribute
885
+ TYPE = 171
886
+ NAME = :"sta_capability"
887
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
888
+ end
889
+ class StaExtCapability < Attribute
890
+ TYPE = 172
891
+ NAME = :"sta_ext_capability"
892
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
893
+ end
894
+ class ProtocolFeatures < Attribute
895
+ TYPE = 173
896
+ NAME = :"protocol_features"
897
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
898
+ end
899
+ class SplitWiphyDump < Attribute
900
+ TYPE = 174
901
+ NAME = :"split_wiphy_dump"
902
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
903
+ end
904
+ class DisableVht < Attribute
905
+ TYPE = 175
906
+ NAME = :"disable_vht"
907
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
908
+ end
909
+ class VhtCapabilityMask < Attribute
910
+ TYPE = 176
911
+ NAME = :"vht_capability_mask"
912
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
913
+ end
914
+ class Mdid < Attribute
915
+ TYPE = 177
916
+ NAME = :"mdid"
917
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
918
+ end
919
+ class IeRic < Attribute
920
+ TYPE = 178
921
+ NAME = :"ie_ric"
922
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
923
+ end
924
+ class CritProtId < Attribute
925
+ TYPE = 179
926
+ NAME = :"crit_prot_id"
927
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
928
+ end
929
+ class MaxCritProtDuration < Attribute
930
+ TYPE = 180
931
+ NAME = :"max_crit_prot_duration"
932
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
933
+ end
934
+ class PeerAid < Attribute
935
+ TYPE = 181
936
+ NAME = :"peer_aid"
937
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
938
+ end
939
+ class CoalesceRule < Attribute
940
+ TYPE = 182
941
+ NAME = :"coalesce_rule"
942
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
943
+ end
944
+ class ChSwitchCount < Attribute
945
+ TYPE = 183
946
+ NAME = :"ch_switch_count"
947
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
948
+ end
949
+ class ChSwitchBlockTx < Attribute
950
+ TYPE = 184
951
+ NAME = :"ch_switch_block_tx"
952
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
953
+ end
954
+ class CsaIes < Attribute
955
+ TYPE = 185
956
+ NAME = :"csa_ies"
957
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
958
+ end
959
+ class CntdwnOffsBeacon < Attribute
960
+ TYPE = 186
961
+ NAME = :"cntdwn_offs_beacon"
962
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
963
+ end
964
+ class CntdwnOffsPresp < Attribute
965
+ TYPE = 187
966
+ NAME = :"cntdwn_offs_presp"
967
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
968
+ end
969
+ class RxmgmtFlags < Attribute
970
+ TYPE = 188
971
+ NAME = :"rxmgmt_flags"
972
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
973
+ end
974
+ class StaSupportedChannels < Attribute
975
+ TYPE = 189
976
+ NAME = :"sta_supported_channels"
977
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
978
+ end
979
+ class StaSupportedOperClasses < Attribute
980
+ TYPE = 190
981
+ NAME = :"sta_supported_oper_classes"
982
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
983
+ end
984
+ class HandleDfs < Attribute
985
+ TYPE = 191
986
+ NAME = :"handle_dfs"
987
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
988
+ end
989
+ class Support5Mhz < Attribute
990
+ TYPE = 192
991
+ NAME = :"support_5_mhz"
992
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
993
+ end
994
+ class Support10Mhz < Attribute
995
+ TYPE = 193
996
+ NAME = :"support_10_mhz"
997
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
998
+ end
999
+ class OpmodeNotif < Attribute
1000
+ TYPE = 194
1001
+ NAME = :"opmode_notif"
1002
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1003
+ end
1004
+ class VendorId < Attribute
1005
+ TYPE = 195
1006
+ NAME = :"vendor_id"
1007
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1008
+ end
1009
+ class VendorSubcmd < Attribute
1010
+ TYPE = 196
1011
+ NAME = :"vendor_subcmd"
1012
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1013
+ end
1014
+ class VendorData < Attribute
1015
+ TYPE = 197
1016
+ NAME = :"vendor_data"
1017
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1018
+ end
1019
+ class VendorEvents < Attribute
1020
+ TYPE = 198
1021
+ NAME = :"vendor_events"
1022
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1023
+ end
1024
+ class QosMap < Attribute
1025
+ TYPE = 199
1026
+ NAME = :"qos_map"
1027
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1028
+ end
1029
+ class MacHint < Attribute
1030
+ TYPE = 200
1031
+ NAME = :"mac_hint"
1032
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1033
+ end
1034
+ class WiphyFreqHint < Attribute
1035
+ TYPE = 201
1036
+ NAME = :"wiphy_freq_hint"
1037
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1038
+ end
1039
+ class MaxApAssocSta < Attribute
1040
+ TYPE = 202
1041
+ NAME = :"max_ap_assoc_sta"
1042
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1043
+ end
1044
+ class TdlsPeerCapability < Attribute
1045
+ TYPE = 203
1046
+ NAME = :"tdls_peer_capability"
1047
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1048
+ end
1049
+ class SocketOwner < Attribute
1050
+ TYPE = 204
1051
+ NAME = :"socket_owner"
1052
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1053
+ end
1054
+ class CsaCOffsetsTx < Attribute
1055
+ TYPE = 205
1056
+ NAME = :"csa_c_offsets_tx"
1057
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1058
+ end
1059
+ class MaxCsaCounters < Attribute
1060
+ TYPE = 206
1061
+ NAME = :"max_csa_counters"
1062
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1063
+ end
1064
+ class TdlsInitiator < Attribute
1065
+ TYPE = 207
1066
+ NAME = :"tdls_initiator"
1067
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1068
+ end
1069
+ class UseRrm < Attribute
1070
+ TYPE = 208
1071
+ NAME = :"use_rrm"
1072
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1073
+ end
1074
+ class WiphyDynAck < Attribute
1075
+ TYPE = 209
1076
+ NAME = :"wiphy_dyn_ack"
1077
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1078
+ end
1079
+ class Tsid < Attribute
1080
+ TYPE = 210
1081
+ NAME = :"tsid"
1082
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1083
+ end
1084
+ class UserPrio < Attribute
1085
+ TYPE = 211
1086
+ NAME = :"user_prio"
1087
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1088
+ end
1089
+ class AdmittedTime < Attribute
1090
+ TYPE = 212
1091
+ NAME = :"admitted_time"
1092
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1093
+ end
1094
+ class SmpsMode < Attribute
1095
+ TYPE = 213
1096
+ NAME = :"smps_mode"
1097
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1098
+ end
1099
+ class OperClass < Attribute
1100
+ TYPE = 214
1101
+ NAME = :"oper_class"
1102
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1103
+ end
1104
+ class MacMask < Attribute
1105
+ TYPE = 215
1106
+ NAME = :"mac_mask"
1107
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1108
+ end
1109
+ class WiphySelfManagedReg < Attribute
1110
+ TYPE = 216
1111
+ NAME = :"wiphy_self_managed_reg"
1112
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1113
+ end
1114
+ class ExtFeatures < Attribute
1115
+ TYPE = 217
1116
+ NAME = :"ext_features"
1117
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1118
+ end
1119
+ class SurveyRadioStats < Attribute
1120
+ TYPE = 218
1121
+ NAME = :"survey_radio_stats"
1122
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1123
+ end
1124
+ class NetnsFd < Attribute
1125
+ TYPE = 219
1126
+ NAME = :"netns_fd"
1127
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1128
+ end
1129
+ class SchedScanDelay < Attribute
1130
+ TYPE = 220
1131
+ NAME = :"sched_scan_delay"
1132
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1133
+ end
1134
+ class RegIndoor < Attribute
1135
+ TYPE = 221
1136
+ NAME = :"reg_indoor"
1137
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1138
+ end
1139
+ class MaxNumSchedScanPlans < Attribute
1140
+ TYPE = 222
1141
+ NAME = :"max_num_sched_scan_plans"
1142
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1143
+ end
1144
+ class MaxScanPlanInterval < Attribute
1145
+ TYPE = 223
1146
+ NAME = :"max_scan_plan_interval"
1147
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1148
+ end
1149
+ class MaxScanPlanIterations < Attribute
1150
+ TYPE = 224
1151
+ NAME = :"max_scan_plan_iterations"
1152
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1153
+ end
1154
+ class SchedScanPlans < Attribute
1155
+ TYPE = 225
1156
+ NAME = :"sched_scan_plans"
1157
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1158
+ end
1159
+ class Pbss < Attribute
1160
+ TYPE = 226
1161
+ NAME = :"pbss"
1162
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1163
+ end
1164
+ class BssSelect < Attribute
1165
+ TYPE = 227
1166
+ NAME = :"bss_select"
1167
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1168
+ end
1169
+ class StaSupportP2pPs < Attribute
1170
+ TYPE = 228
1171
+ NAME = :"sta_support_p2p_ps"
1172
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1173
+ end
1174
+ class Pad < Attribute
1175
+ TYPE = 229
1176
+ NAME = :"pad"
1177
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1178
+ end
1179
+ class IftypeExtCapa < Attribute
1180
+ TYPE = 230
1181
+ NAME = :"iftype_ext_capa"
1182
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1183
+ end
1184
+ class MuMimoGroupData < Attribute
1185
+ TYPE = 231
1186
+ NAME = :"mu_mimo_group_data"
1187
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1188
+ end
1189
+ class MuMimoFollowMacAddr < Attribute
1190
+ TYPE = 232
1191
+ NAME = :"mu_mimo_follow_mac_addr"
1192
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1193
+ end
1194
+ class ScanStartTimeTsf < Attribute
1195
+ TYPE = 233
1196
+ NAME = :"scan_start_time_tsf"
1197
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1198
+ end
1199
+ class ScanStartTimeTsfBssid < Attribute
1200
+ TYPE = 234
1201
+ NAME = :"scan_start_time_tsf_bssid"
1202
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1203
+ end
1204
+ class MeasurementDuration < Attribute
1205
+ TYPE = 235
1206
+ NAME = :"measurement_duration"
1207
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1208
+ end
1209
+ class MeasurementDurationMandatory < Attribute
1210
+ TYPE = 236
1211
+ NAME = :"measurement_duration_mandatory"
1212
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1213
+ end
1214
+ class MeshPeerAid < Attribute
1215
+ TYPE = 237
1216
+ NAME = :"mesh_peer_aid"
1217
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1218
+ end
1219
+ class NanMasterPref < Attribute
1220
+ TYPE = 238
1221
+ NAME = :"nan_master_pref"
1222
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1223
+ end
1224
+ class Bands < Attribute
1225
+ TYPE = 239
1226
+ NAME = :"bands"
1227
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1228
+ end
1229
+ class NanFunc < Attribute
1230
+ TYPE = 240
1231
+ NAME = :"nan_func"
1232
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1233
+ end
1234
+ class NanMatch < Attribute
1235
+ TYPE = 241
1236
+ NAME = :"nan_match"
1237
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1238
+ end
1239
+ class FilsKek < Attribute
1240
+ TYPE = 242
1241
+ NAME = :"fils_kek"
1242
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1243
+ end
1244
+ class FilsNonces < Attribute
1245
+ TYPE = 243
1246
+ NAME = :"fils_nonces"
1247
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1248
+ end
1249
+ class MulticastToUnicastEnabled < Attribute
1250
+ TYPE = 244
1251
+ NAME = :"multicast_to_unicast_enabled"
1252
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1253
+ end
1254
+ class Bssid < Attribute
1255
+ TYPE = 245
1256
+ NAME = :"bssid"
1257
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1258
+ end
1259
+ class SchedScanRelativeRssi < Attribute
1260
+ TYPE = 246
1261
+ NAME = :"sched_scan_relative_rssi"
1262
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S8, check: nil)
1263
+ end
1264
+ class SchedScanRssiAdjust < Attribute
1265
+ TYPE = 247
1266
+ NAME = :"sched_scan_rssi_adjust"
1267
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1268
+ end
1269
+ class TimeoutReason < Attribute
1270
+ TYPE = 248
1271
+ NAME = :"timeout_reason"
1272
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1273
+ end
1274
+ class FilsErpUsername < Attribute
1275
+ TYPE = 249
1276
+ NAME = :"fils_erp_username"
1277
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1278
+ end
1279
+ class FilsErpRealm < Attribute
1280
+ TYPE = 250
1281
+ NAME = :"fils_erp_realm"
1282
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1283
+ end
1284
+ class FilsErpNextSeqNum < Attribute
1285
+ TYPE = 251
1286
+ NAME = :"fils_erp_next_seq_num"
1287
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1288
+ end
1289
+ class FilsErpRrk < Attribute
1290
+ TYPE = 252
1291
+ NAME = :"fils_erp_rrk"
1292
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1293
+ end
1294
+ class FilsCacheId < Attribute
1295
+ TYPE = 253
1296
+ NAME = :"fils_cache_id"
1297
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1298
+ end
1299
+ class Pmk < Attribute
1300
+ TYPE = 254
1301
+ NAME = :"pmk"
1302
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1303
+ end
1304
+ class SchedScanMulti < Attribute
1305
+ TYPE = 255
1306
+ NAME = :"sched_scan_multi"
1307
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1308
+ end
1309
+ class SchedScanMaxReqs < Attribute
1310
+ TYPE = 256
1311
+ NAME = :"sched_scan_max_reqs"
1312
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1313
+ end
1314
+ class Want1x4wayHs < Attribute
1315
+ TYPE = 257
1316
+ NAME = :"want_1x_4way_hs"
1317
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1318
+ end
1319
+ class Pmkr0Name < Attribute
1320
+ TYPE = 258
1321
+ NAME = :"pmkr0_name"
1322
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1323
+ end
1324
+ class PortAuthorized < Attribute
1325
+ TYPE = 259
1326
+ NAME = :"port_authorized"
1327
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1328
+ end
1329
+ class ExternalAuthAction < Attribute
1330
+ TYPE = 260
1331
+ NAME = :"external_auth_action"
1332
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1333
+ end
1334
+ class ExternalAuthSupport < Attribute
1335
+ TYPE = 261
1336
+ NAME = :"external_auth_support"
1337
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1338
+ end
1339
+ class Nss < Attribute
1340
+ TYPE = 262
1341
+ NAME = :"nss"
1342
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1343
+ end
1344
+ class AckSignal < Attribute
1345
+ TYPE = 263
1346
+ NAME = :"ack_signal"
1347
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
1348
+ end
1349
+ class ControlPortOverNl80211 < Attribute
1350
+ TYPE = 264
1351
+ NAME = :"control_port_over_nl80211"
1352
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1353
+ end
1354
+ class TxqStats < Attribute
1355
+ TYPE = 265
1356
+ NAME = :"txq_stats"
1357
+ end
1358
+ class TxqLimit < Attribute
1359
+ TYPE = 266
1360
+ NAME = :"txq_limit"
1361
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1362
+ end
1363
+ class TxqMemoryLimit < Attribute
1364
+ TYPE = 267
1365
+ NAME = :"txq_memory_limit"
1366
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1367
+ end
1368
+ class TxqQuantum < Attribute
1369
+ TYPE = 268
1370
+ NAME = :"txq_quantum"
1371
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1372
+ end
1373
+ class HeCapability < Attribute
1374
+ TYPE = 269
1375
+ NAME = :"he_capability"
1376
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1377
+ end
1378
+ class FtmResponder < Attribute
1379
+ TYPE = 270
1380
+ NAME = :"ftm_responder"
1381
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1382
+ end
1383
+ class FtmResponderStats < Attribute
1384
+ TYPE = 271
1385
+ NAME = :"ftm_responder_stats"
1386
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1387
+ end
1388
+ class Timeout < Attribute
1389
+ TYPE = 272
1390
+ NAME = :"timeout"
1391
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1392
+ end
1393
+ class PeerMeasurements < Attribute
1394
+ TYPE = 273
1395
+ NAME = :"peer_measurements"
1396
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1397
+ end
1398
+ class AirtimeWeight < Attribute
1399
+ TYPE = 274
1400
+ NAME = :"airtime_weight"
1401
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1402
+ end
1403
+ class StaTxPowerSetting < Attribute
1404
+ TYPE = 275
1405
+ NAME = :"sta_tx_power_setting"
1406
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1407
+ end
1408
+ class StaTxPower < Attribute
1409
+ TYPE = 276
1410
+ NAME = :"sta_tx_power"
1411
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S16, check: nil)
1412
+ end
1413
+ class SaePassword < Attribute
1414
+ TYPE = 277
1415
+ NAME = :"sae_password"
1416
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1417
+ end
1418
+ class TwtResponder < Attribute
1419
+ TYPE = 278
1420
+ NAME = :"twt_responder"
1421
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1422
+ end
1423
+ class HeObssPd < Attribute
1424
+ TYPE = 279
1425
+ NAME = :"he_obss_pd"
1426
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1427
+ end
1428
+ class WiphyEdmgChannels < Attribute
1429
+ TYPE = 280
1430
+ NAME = :"wiphy_edmg_channels"
1431
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1432
+ end
1433
+ class WiphyEdmgBwConfig < Attribute
1434
+ TYPE = 281
1435
+ NAME = :"wiphy_edmg_bw_config"
1436
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1437
+ end
1438
+ class VlanId < Attribute
1439
+ TYPE = 282
1440
+ NAME = :"vlan_id"
1441
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1442
+ end
1443
+ class HeBssColor < Attribute
1444
+ TYPE = 283
1445
+ NAME = :"he_bss_color"
1446
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1447
+ end
1448
+ class IftypeAkmSuites < Attribute
1449
+ TYPE = 284
1450
+ NAME = :"iftype_akm_suites"
1451
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1452
+ end
1453
+ class TidConfig < Attribute
1454
+ TYPE = 285
1455
+ NAME = :"tid_config"
1456
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1457
+ end
1458
+ class ControlPortNoPreauth < Attribute
1459
+ TYPE = 286
1460
+ NAME = :"control_port_no_preauth"
1461
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1462
+ end
1463
+ class PmkLifetime < Attribute
1464
+ TYPE = 287
1465
+ NAME = :"pmk_lifetime"
1466
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1467
+ end
1468
+ class PmkReauthThreshold < Attribute
1469
+ TYPE = 288
1470
+ NAME = :"pmk_reauth_threshold"
1471
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1472
+ end
1473
+ class ReceiveMulticast < Attribute
1474
+ TYPE = 289
1475
+ NAME = :"receive_multicast"
1476
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1477
+ end
1478
+ class WiphyFreqOffset < Attribute
1479
+ TYPE = 290
1480
+ NAME = :"wiphy_freq_offset"
1481
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1482
+ end
1483
+ class CenterFreq1Offset < Attribute
1484
+ TYPE = 291
1485
+ NAME = :"center_freq1_offset"
1486
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1487
+ end
1488
+ class ScanFreqKhz < Attribute
1489
+ TYPE = 292
1490
+ NAME = :"scan_freq_khz"
1491
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1492
+ end
1493
+ class He6ghzCapability < Attribute
1494
+ TYPE = 293
1495
+ NAME = :"he_6ghz_capability"
1496
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1497
+ end
1498
+ class FilsDiscovery < Attribute
1499
+ TYPE = 294
1500
+ NAME = :"fils_discovery"
1501
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1502
+ end
1503
+ class UnsolBcastProbeResp < Attribute
1504
+ TYPE = 295
1505
+ NAME = :"unsol_bcast_probe_resp"
1506
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1507
+ end
1508
+ class S1gCapability < Attribute
1509
+ TYPE = 296
1510
+ NAME = :"s1g_capability"
1511
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1512
+ end
1513
+ class S1gCapabilityMask < Attribute
1514
+ TYPE = 297
1515
+ NAME = :"s1g_capability_mask"
1516
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1517
+ end
1518
+ class SaePwe < Attribute
1519
+ TYPE = 298
1520
+ NAME = :"sae_pwe"
1521
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1522
+ end
1523
+ class ReconnectRequested < Attribute
1524
+ TYPE = 299
1525
+ NAME = :"reconnect_requested"
1526
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1527
+ end
1528
+ class SarSpec < Attribute
1529
+ TYPE = 300
1530
+ NAME = :"sar_spec"
1531
+ end
1532
+ class DisableHe < Attribute
1533
+ TYPE = 301
1534
+ NAME = :"disable_he"
1535
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1536
+ end
1537
+ class ObssColorBitmap < Attribute
1538
+ TYPE = 302
1539
+ NAME = :"obss_color_bitmap"
1540
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1541
+ end
1542
+ class ColorChangeCount < Attribute
1543
+ TYPE = 303
1544
+ NAME = :"color_change_count"
1545
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1546
+ end
1547
+ class ColorChangeColor < Attribute
1548
+ TYPE = 304
1549
+ NAME = :"color_change_color"
1550
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1551
+ end
1552
+ class ColorChangeElems < Attribute
1553
+ TYPE = 305
1554
+ NAME = :"color_change_elems"
1555
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1556
+ end
1557
+ class MbssidConfig < Attribute
1558
+ TYPE = 306
1559
+ NAME = :"mbssid_config"
1560
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1561
+ end
1562
+ class MbssidElems < Attribute
1563
+ TYPE = 307
1564
+ NAME = :"mbssid_elems"
1565
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1566
+ end
1567
+ class RadarBackground < Attribute
1568
+ TYPE = 308
1569
+ NAME = :"radar_background"
1570
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1571
+ end
1572
+ class ApSettingsFlags < Attribute
1573
+ TYPE = 309
1574
+ NAME = :"ap_settings_flags"
1575
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1576
+ end
1577
+ class EhtCapability < Attribute
1578
+ TYPE = 310
1579
+ NAME = :"eht_capability"
1580
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1581
+ end
1582
+ class DisableEht < Attribute
1583
+ TYPE = 311
1584
+ NAME = :"disable_eht"
1585
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1586
+ end
1587
+ class MloLinks < Attribute
1588
+ TYPE = 312
1589
+ NAME = :"mlo_links"
1590
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1591
+ end
1592
+ class MloLinkId < Attribute
1593
+ TYPE = 313
1594
+ NAME = :"mlo_link_id"
1595
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1596
+ end
1597
+ class MldAddr < Attribute
1598
+ TYPE = 314
1599
+ NAME = :"mld_addr"
1600
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1601
+ end
1602
+ class MloSupport < Attribute
1603
+ TYPE = 315
1604
+ NAME = :"mlo_support"
1605
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1606
+ end
1607
+ class MaxNumAkmSuites < Attribute
1608
+ TYPE = 316
1609
+ NAME = :"max_num_akm_suites"
1610
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1611
+ end
1612
+ class EmlCapability < Attribute
1613
+ TYPE = 317
1614
+ NAME = :"eml_capability"
1615
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1616
+ end
1617
+ class MldCapaAndOps < Attribute
1618
+ TYPE = 318
1619
+ NAME = :"mld_capa_and_ops"
1620
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1621
+ end
1622
+ class TxHwTimestamp < Attribute
1623
+ TYPE = 319
1624
+ NAME = :"tx_hw_timestamp"
1625
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1626
+ end
1627
+ class RxHwTimestamp < Attribute
1628
+ TYPE = 320
1629
+ NAME = :"rx_hw_timestamp"
1630
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1631
+ end
1632
+ class TdBitmap < Attribute
1633
+ TYPE = 321
1634
+ NAME = :"td_bitmap"
1635
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1636
+ end
1637
+ class PunctBitmap < Attribute
1638
+ TYPE = 322
1639
+ NAME = :"punct_bitmap"
1640
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1641
+ end
1642
+ class MaxHwTimestampPeers < Attribute
1643
+ TYPE = 323
1644
+ NAME = :"max_hw_timestamp_peers"
1645
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1646
+ end
1647
+ class HwTimestampEnabled < Attribute
1648
+ TYPE = 324
1649
+ NAME = :"hw_timestamp_enabled"
1650
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1651
+ end
1652
+ class EmaRnrElems < Attribute
1653
+ TYPE = 325
1654
+ NAME = :"ema_rnr_elems"
1655
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1656
+ end
1657
+ class MloLinkDisabled < Attribute
1658
+ TYPE = 326
1659
+ NAME = :"mlo_link_disabled"
1660
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1661
+ end
1662
+ class BssDumpIncludeUseData < Attribute
1663
+ TYPE = 327
1664
+ NAME = :"bss_dump_include_use_data"
1665
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1666
+ end
1667
+ class MloTtlmDlink < Attribute
1668
+ TYPE = 328
1669
+ NAME = :"mlo_ttlm_dlink"
1670
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1671
+ end
1672
+ class MloTtlmUlink < Attribute
1673
+ TYPE = 329
1674
+ NAME = :"mlo_ttlm_ulink"
1675
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1676
+ end
1677
+ class AssocSppAmsdu < Attribute
1678
+ TYPE = 330
1679
+ NAME = :"assoc_spp_amsdu"
1680
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1681
+ end
1682
+ class WiphyRadios < Attribute
1683
+ TYPE = 331
1684
+ NAME = :"wiphy_radios"
1685
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1686
+ end
1687
+ class WiphyInterfaceCombinations < Attribute
1688
+ TYPE = 332
1689
+ NAME = :"wiphy_interface_combinations"
1690
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1691
+ end
1692
+ class VifRadioMask < Attribute
1693
+ TYPE = 333
1694
+ NAME = :"vif_radio_mask"
1695
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1696
+ end
1697
+ # :nodoc:
1698
+ BY_NAME = Ractor.make_shareable({:"wiphy" => Wiphy, :"wiphy_name" => WiphyName, :"ifindex" => Ifindex, :"ifname" => Ifname, :"iftype" => Iftype, :"mac" => Mac, :"key_data" => KeyData, :"key_idx" => KeyIdx, :"key_cipher" => KeyCipher, :"key_seq" => KeySeq, :"key_default" => KeyDefault, :"beacon_interval" => BeaconInterval, :"dtim_period" => DtimPeriod, :"beacon_head" => BeaconHead, :"beacon_tail" => BeaconTail, :"sta_aid" => StaAid, :"sta_flags" => StaFlags, :"sta_listen_interval" => StaListenInterval, :"sta_supported_rates" => StaSupportedRates, :"sta_vlan" => StaVlan, :"sta_info" => StaInfo, :"wiphy_bands" => WiphyBands, :"mntr_flags" => MntrFlags, :"mesh_id" => MeshId, :"sta_plink_action" => StaPlinkAction, :"mpath_next_hop" => MpathNextHop, :"mpath_info" => MpathInfo, :"bss_cts_prot" => BssCtsProt, :"bss_short_preamble" => BssShortPreamble, :"bss_short_slot_time" => BssShortSlotTime, :"ht_capability" => HtCapability, :"supported_iftypes" => SupportedIftypes, :"reg_alpha2" => RegAlpha2, :"reg_rules" => RegRules, :"mesh_config" => MeshConfig, :"bss_basic_rates" => BssBasicRates, :"wiphy_txq_params" => WiphyTxqParams, :"wiphy_freq" => WiphyFreq, :"wiphy_channel_type" => WiphyChannelType, :"key_default_mgmt" => KeyDefaultMgmt, :"mgmt_subtype" => MgmtSubtype, :"ie" => Ie, :"max_num_scan_ssids" => MaxNumScanSsids, :"scan_frequencies" => ScanFrequencies, :"scan_ssids" => ScanSsids, :"generation" => Generation, :"bss" => Bss, :"reg_initiator" => RegInitiator, :"reg_type" => RegType, :"supported_commands" => SupportedCommands, :"frame" => Frame, :"ssid" => Ssid, :"auth_type" => AuthType, :"reason_code" => ReasonCode, :"key_type" => KeyType, :"max_scan_ie_len" => MaxScanIeLen, :"cipher_suites" => CipherSuites, :"freq_before" => FreqBefore, :"freq_after" => FreqAfter, :"freq_fixed" => FreqFixed, :"wiphy_retry_short" => WiphyRetryShort, :"wiphy_retry_long" => WiphyRetryLong, :"wiphy_frag_threshold" => WiphyFragThreshold, :"wiphy_rts_threshold" => WiphyRtsThreshold, :"timed_out" => TimedOut, :"use_mfp" => UseMfp, :"sta_flags2" => StaFlags2, :"control_port" => ControlPort, :"testdata" => Testdata, :"privacy" => Privacy, :"disconnected_by_ap" => DisconnectedByAp, :"status_code" => StatusCode, :"cipher_suites_pairwise" => CipherSuitesPairwise, :"cipher_suite_group" => CipherSuiteGroup, :"wpa_versions" => WpaVersions, :"akm_suites" => AkmSuites, :"req_ie" => ReqIe, :"resp_ie" => RespIe, :"prev_bssid" => PrevBssid, :"key" => Key, :"keys" => Keys, :"pid" => Pid, :"x_4addr" => X4addr, :"survey_info" => SurveyInfo, :"pmkid" => Pmkid, :"max_num_pmkids" => MaxNumPmkids, :"duration" => Duration, :"cookie" => Cookie, :"wiphy_coverage_class" => WiphyCoverageClass, :"tx_rates" => TxRates, :"frame_match" => FrameMatch, :"ack" => Ack, :"ps_state" => PsState, :"cqm" => Cqm, :"local_state_change" => LocalStateChange, :"ap_isolate" => ApIsolate, :"wiphy_tx_power_setting" => WiphyTxPowerSetting, :"wiphy_tx_power_level" => WiphyTxPowerLevel, :"tx_frame_types" => TxFrameTypes, :"rx_frame_types" => RxFrameTypes, :"frame_type" => FrameType, :"control_port_ethertype" => ControlPortEthertype, :"control_port_no_encrypt" => ControlPortNoEncrypt, :"support_ibss_rsn" => SupportIbssRsn, :"wiphy_antenna_tx" => WiphyAntennaTx, :"wiphy_antenna_rx" => WiphyAntennaRx, :"mcast_rate" => McastRate, :"offchannel_tx_ok" => OffchannelTxOk, :"bss_ht_opmode" => BssHtOpmode, :"key_default_types" => KeyDefaultTypes, :"max_remain_on_channel_duration" => MaxRemainOnChannelDuration, :"mesh_setup" => MeshSetup, :"wiphy_antenna_avail_tx" => WiphyAntennaAvailTx, :"wiphy_antenna_avail_rx" => WiphyAntennaAvailRx, :"support_mesh_auth" => SupportMeshAuth, :"sta_plink_state" => StaPlinkState, :"wowlan_triggers" => WowlanTriggers, :"wowlan_triggers_supported" => WowlanTriggersSupported, :"sched_scan_interval" => SchedScanInterval, :"interface_combinations" => InterfaceCombinations, :"software_iftypes" => SoftwareIftypes, :"rekey_data" => RekeyData, :"max_num_sched_scan_ssids" => MaxNumSchedScanSsids, :"max_sched_scan_ie_len" => MaxSchedScanIeLen, :"scan_supp_rates" => ScanSuppRates, :"hidden_ssid" => HiddenSsid, :"ie_probe_resp" => IeProbeResp, :"ie_assoc_resp" => IeAssocResp, :"sta_wme" => StaWme, :"support_ap_uapsd" => SupportApUapsd, :"roam_support" => RoamSupport, :"sched_scan_match" => SchedScanMatch, :"max_match_sets" => MaxMatchSets, :"pmksa_candidate" => PmksaCandidate, :"tx_no_cck_rate" => TxNoCckRate, :"tdls_action" => TdlsAction, :"tdls_dialog_token" => TdlsDialogToken, :"tdls_operation" => TdlsOperation, :"tdls_support" => TdlsSupport, :"tdls_external_setup" => TdlsExternalSetup, :"device_ap_sme" => DeviceApSme, :"dont_wait_for_ack" => DontWaitForAck, :"feature_flags" => FeatureFlags, :"probe_resp_offload" => ProbeRespOffload, :"probe_resp" => ProbeResp, :"dfs_region" => DfsRegion, :"disable_ht" => DisableHt, :"ht_capability_mask" => HtCapabilityMask, :"noack_map" => NoackMap, :"inactivity_timeout" => InactivityTimeout, :"rx_signal_dbm" => RxSignalDbm, :"bg_scan_period" => BgScanPeriod, :"wdev" => Wdev, :"user_reg_hint_type" => UserRegHintType, :"conn_failed_reason" => ConnFailedReason, :"auth_data" => AuthData, :"vht_capability" => VhtCapability, :"scan_flags" => ScanFlags, :"channel_width" => ChannelWidth, :"center_freq1" => CenterFreq1, :"center_freq2" => CenterFreq2, :"p2p_ctwindow" => P2pCtwindow, :"p2p_oppps" => P2pOppps, :"local_mesh_power_mode" => LocalMeshPowerMode, :"acl_policy" => AclPolicy, :"mac_addrs" => MacAddrs, :"mac_acl_max" => MacAclMax, :"radar_event" => RadarEvent, :"ext_capa" => ExtCapa, :"ext_capa_mask" => ExtCapaMask, :"sta_capability" => StaCapability, :"sta_ext_capability" => StaExtCapability, :"protocol_features" => ProtocolFeatures, :"split_wiphy_dump" => SplitWiphyDump, :"disable_vht" => DisableVht, :"vht_capability_mask" => VhtCapabilityMask, :"mdid" => Mdid, :"ie_ric" => IeRic, :"crit_prot_id" => CritProtId, :"max_crit_prot_duration" => MaxCritProtDuration, :"peer_aid" => PeerAid, :"coalesce_rule" => CoalesceRule, :"ch_switch_count" => ChSwitchCount, :"ch_switch_block_tx" => ChSwitchBlockTx, :"csa_ies" => CsaIes, :"cntdwn_offs_beacon" => CntdwnOffsBeacon, :"cntdwn_offs_presp" => CntdwnOffsPresp, :"rxmgmt_flags" => RxmgmtFlags, :"sta_supported_channels" => StaSupportedChannels, :"sta_supported_oper_classes" => StaSupportedOperClasses, :"handle_dfs" => HandleDfs, :"support_5_mhz" => Support5Mhz, :"support_10_mhz" => Support10Mhz, :"opmode_notif" => OpmodeNotif, :"vendor_id" => VendorId, :"vendor_subcmd" => VendorSubcmd, :"vendor_data" => VendorData, :"vendor_events" => VendorEvents, :"qos_map" => QosMap, :"mac_hint" => MacHint, :"wiphy_freq_hint" => WiphyFreqHint, :"max_ap_assoc_sta" => MaxApAssocSta, :"tdls_peer_capability" => TdlsPeerCapability, :"socket_owner" => SocketOwner, :"csa_c_offsets_tx" => CsaCOffsetsTx, :"max_csa_counters" => MaxCsaCounters, :"tdls_initiator" => TdlsInitiator, :"use_rrm" => UseRrm, :"wiphy_dyn_ack" => WiphyDynAck, :"tsid" => Tsid, :"user_prio" => UserPrio, :"admitted_time" => AdmittedTime, :"smps_mode" => SmpsMode, :"oper_class" => OperClass, :"mac_mask" => MacMask, :"wiphy_self_managed_reg" => WiphySelfManagedReg, :"ext_features" => ExtFeatures, :"survey_radio_stats" => SurveyRadioStats, :"netns_fd" => NetnsFd, :"sched_scan_delay" => SchedScanDelay, :"reg_indoor" => RegIndoor, :"max_num_sched_scan_plans" => MaxNumSchedScanPlans, :"max_scan_plan_interval" => MaxScanPlanInterval, :"max_scan_plan_iterations" => MaxScanPlanIterations, :"sched_scan_plans" => SchedScanPlans, :"pbss" => Pbss, :"bss_select" => BssSelect, :"sta_support_p2p_ps" => StaSupportP2pPs, :"pad" => Pad, :"iftype_ext_capa" => IftypeExtCapa, :"mu_mimo_group_data" => MuMimoGroupData, :"mu_mimo_follow_mac_addr" => MuMimoFollowMacAddr, :"scan_start_time_tsf" => ScanStartTimeTsf, :"scan_start_time_tsf_bssid" => ScanStartTimeTsfBssid, :"measurement_duration" => MeasurementDuration, :"measurement_duration_mandatory" => MeasurementDurationMandatory, :"mesh_peer_aid" => MeshPeerAid, :"nan_master_pref" => NanMasterPref, :"bands" => Bands, :"nan_func" => NanFunc, :"nan_match" => NanMatch, :"fils_kek" => FilsKek, :"fils_nonces" => FilsNonces, :"multicast_to_unicast_enabled" => MulticastToUnicastEnabled, :"bssid" => Bssid, :"sched_scan_relative_rssi" => SchedScanRelativeRssi, :"sched_scan_rssi_adjust" => SchedScanRssiAdjust, :"timeout_reason" => TimeoutReason, :"fils_erp_username" => FilsErpUsername, :"fils_erp_realm" => FilsErpRealm, :"fils_erp_next_seq_num" => FilsErpNextSeqNum, :"fils_erp_rrk" => FilsErpRrk, :"fils_cache_id" => FilsCacheId, :"pmk" => Pmk, :"sched_scan_multi" => SchedScanMulti, :"sched_scan_max_reqs" => SchedScanMaxReqs, :"want_1x_4way_hs" => Want1x4wayHs, :"pmkr0_name" => Pmkr0Name, :"port_authorized" => PortAuthorized, :"external_auth_action" => ExternalAuthAction, :"external_auth_support" => ExternalAuthSupport, :"nss" => Nss, :"ack_signal" => AckSignal, :"control_port_over_nl80211" => ControlPortOverNl80211, :"txq_stats" => TxqStats, :"txq_limit" => TxqLimit, :"txq_memory_limit" => TxqMemoryLimit, :"txq_quantum" => TxqQuantum, :"he_capability" => HeCapability, :"ftm_responder" => FtmResponder, :"ftm_responder_stats" => FtmResponderStats, :"timeout" => Timeout, :"peer_measurements" => PeerMeasurements, :"airtime_weight" => AirtimeWeight, :"sta_tx_power_setting" => StaTxPowerSetting, :"sta_tx_power" => StaTxPower, :"sae_password" => SaePassword, :"twt_responder" => TwtResponder, :"he_obss_pd" => HeObssPd, :"wiphy_edmg_channels" => WiphyEdmgChannels, :"wiphy_edmg_bw_config" => WiphyEdmgBwConfig, :"vlan_id" => VlanId, :"he_bss_color" => HeBssColor, :"iftype_akm_suites" => IftypeAkmSuites, :"tid_config" => TidConfig, :"control_port_no_preauth" => ControlPortNoPreauth, :"pmk_lifetime" => PmkLifetime, :"pmk_reauth_threshold" => PmkReauthThreshold, :"receive_multicast" => ReceiveMulticast, :"wiphy_freq_offset" => WiphyFreqOffset, :"center_freq1_offset" => CenterFreq1Offset, :"scan_freq_khz" => ScanFreqKhz, :"he_6ghz_capability" => He6ghzCapability, :"fils_discovery" => FilsDiscovery, :"unsol_bcast_probe_resp" => UnsolBcastProbeResp, :"s1g_capability" => S1gCapability, :"s1g_capability_mask" => S1gCapabilityMask, :"sae_pwe" => SaePwe, :"reconnect_requested" => ReconnectRequested, :"sar_spec" => SarSpec, :"disable_he" => DisableHe, :"obss_color_bitmap" => ObssColorBitmap, :"color_change_count" => ColorChangeCount, :"color_change_color" => ColorChangeColor, :"color_change_elems" => ColorChangeElems, :"mbssid_config" => MbssidConfig, :"mbssid_elems" => MbssidElems, :"radar_background" => RadarBackground, :"ap_settings_flags" => ApSettingsFlags, :"eht_capability" => EhtCapability, :"disable_eht" => DisableEht, :"mlo_links" => MloLinks, :"mlo_link_id" => MloLinkId, :"mld_addr" => MldAddr, :"mlo_support" => MloSupport, :"max_num_akm_suites" => MaxNumAkmSuites, :"eml_capability" => EmlCapability, :"mld_capa_and_ops" => MldCapaAndOps, :"tx_hw_timestamp" => TxHwTimestamp, :"rx_hw_timestamp" => RxHwTimestamp, :"td_bitmap" => TdBitmap, :"punct_bitmap" => PunctBitmap, :"max_hw_timestamp_peers" => MaxHwTimestampPeers, :"hw_timestamp_enabled" => HwTimestampEnabled, :"ema_rnr_elems" => EmaRnrElems, :"mlo_link_disabled" => MloLinkDisabled, :"bss_dump_include_use_data" => BssDumpIncludeUseData, :"mlo_ttlm_dlink" => MloTtlmDlink, :"mlo_ttlm_ulink" => MloTtlmUlink, :"assoc_spp_amsdu" => AssocSppAmsdu, :"wiphy_radios" => WiphyRadios, :"wiphy_interface_combinations" => WiphyInterfaceCombinations, :"vif_radio_mask" => VifRadioMask}) #: Hash[::Symbol, Attribute]
1699
+ # :nodoc:
1700
+ BY_TYPE = Ractor.make_shareable({1 => Wiphy, 2 => WiphyName, 3 => Ifindex, 4 => Ifname, 5 => Iftype, 6 => Mac, 7 => KeyData, 8 => KeyIdx, 9 => KeyCipher, 10 => KeySeq, 11 => KeyDefault, 12 => BeaconInterval, 13 => DtimPeriod, 14 => BeaconHead, 15 => BeaconTail, 16 => StaAid, 17 => StaFlags, 18 => StaListenInterval, 19 => StaSupportedRates, 20 => StaVlan, 21 => StaInfo, 22 => WiphyBands, 23 => MntrFlags, 24 => MeshId, 25 => StaPlinkAction, 26 => MpathNextHop, 27 => MpathInfo, 28 => BssCtsProt, 29 => BssShortPreamble, 30 => BssShortSlotTime, 31 => HtCapability, 32 => SupportedIftypes, 33 => RegAlpha2, 34 => RegRules, 35 => MeshConfig, 36 => BssBasicRates, 37 => WiphyTxqParams, 38 => WiphyFreq, 39 => WiphyChannelType, 40 => KeyDefaultMgmt, 41 => MgmtSubtype, 42 => Ie, 43 => MaxNumScanSsids, 44 => ScanFrequencies, 45 => ScanSsids, 46 => Generation, 47 => Bss, 48 => RegInitiator, 49 => RegType, 50 => SupportedCommands, 51 => Frame, 52 => Ssid, 53 => AuthType, 54 => ReasonCode, 55 => KeyType, 56 => MaxScanIeLen, 57 => CipherSuites, 58 => FreqBefore, 59 => FreqAfter, 60 => FreqFixed, 61 => WiphyRetryShort, 62 => WiphyRetryLong, 63 => WiphyFragThreshold, 64 => WiphyRtsThreshold, 65 => TimedOut, 66 => UseMfp, 67 => StaFlags2, 68 => ControlPort, 69 => Testdata, 70 => Privacy, 71 => DisconnectedByAp, 72 => StatusCode, 73 => CipherSuitesPairwise, 74 => CipherSuiteGroup, 75 => WpaVersions, 76 => AkmSuites, 77 => ReqIe, 78 => RespIe, 79 => PrevBssid, 80 => Key, 81 => Keys, 82 => Pid, 83 => X4addr, 84 => SurveyInfo, 85 => Pmkid, 86 => MaxNumPmkids, 87 => Duration, 88 => Cookie, 89 => WiphyCoverageClass, 90 => TxRates, 91 => FrameMatch, 92 => Ack, 93 => PsState, 94 => Cqm, 95 => LocalStateChange, 96 => ApIsolate, 97 => WiphyTxPowerSetting, 98 => WiphyTxPowerLevel, 99 => TxFrameTypes, 100 => RxFrameTypes, 101 => FrameType, 102 => ControlPortEthertype, 103 => ControlPortNoEncrypt, 104 => SupportIbssRsn, 105 => WiphyAntennaTx, 106 => WiphyAntennaRx, 107 => McastRate, 108 => OffchannelTxOk, 109 => BssHtOpmode, 110 => KeyDefaultTypes, 111 => MaxRemainOnChannelDuration, 112 => MeshSetup, 113 => WiphyAntennaAvailTx, 114 => WiphyAntennaAvailRx, 115 => SupportMeshAuth, 116 => StaPlinkState, 117 => WowlanTriggers, 118 => WowlanTriggersSupported, 119 => SchedScanInterval, 120 => InterfaceCombinations, 121 => SoftwareIftypes, 122 => RekeyData, 123 => MaxNumSchedScanSsids, 124 => MaxSchedScanIeLen, 125 => ScanSuppRates, 126 => HiddenSsid, 127 => IeProbeResp, 128 => IeAssocResp, 129 => StaWme, 130 => SupportApUapsd, 131 => RoamSupport, 132 => SchedScanMatch, 133 => MaxMatchSets, 134 => PmksaCandidate, 135 => TxNoCckRate, 136 => TdlsAction, 137 => TdlsDialogToken, 138 => TdlsOperation, 139 => TdlsSupport, 140 => TdlsExternalSetup, 141 => DeviceApSme, 142 => DontWaitForAck, 143 => FeatureFlags, 144 => ProbeRespOffload, 145 => ProbeResp, 146 => DfsRegion, 147 => DisableHt, 148 => HtCapabilityMask, 149 => NoackMap, 150 => InactivityTimeout, 151 => RxSignalDbm, 152 => BgScanPeriod, 153 => Wdev, 154 => UserRegHintType, 155 => ConnFailedReason, 156 => AuthData, 157 => VhtCapability, 158 => ScanFlags, 159 => ChannelWidth, 160 => CenterFreq1, 161 => CenterFreq2, 162 => P2pCtwindow, 163 => P2pOppps, 164 => LocalMeshPowerMode, 165 => AclPolicy, 166 => MacAddrs, 167 => MacAclMax, 168 => RadarEvent, 169 => ExtCapa, 170 => ExtCapaMask, 171 => StaCapability, 172 => StaExtCapability, 173 => ProtocolFeatures, 174 => SplitWiphyDump, 175 => DisableVht, 176 => VhtCapabilityMask, 177 => Mdid, 178 => IeRic, 179 => CritProtId, 180 => MaxCritProtDuration, 181 => PeerAid, 182 => CoalesceRule, 183 => ChSwitchCount, 184 => ChSwitchBlockTx, 185 => CsaIes, 186 => CntdwnOffsBeacon, 187 => CntdwnOffsPresp, 188 => RxmgmtFlags, 189 => StaSupportedChannels, 190 => StaSupportedOperClasses, 191 => HandleDfs, 192 => Support5Mhz, 193 => Support10Mhz, 194 => OpmodeNotif, 195 => VendorId, 196 => VendorSubcmd, 197 => VendorData, 198 => VendorEvents, 199 => QosMap, 200 => MacHint, 201 => WiphyFreqHint, 202 => MaxApAssocSta, 203 => TdlsPeerCapability, 204 => SocketOwner, 205 => CsaCOffsetsTx, 206 => MaxCsaCounters, 207 => TdlsInitiator, 208 => UseRrm, 209 => WiphyDynAck, 210 => Tsid, 211 => UserPrio, 212 => AdmittedTime, 213 => SmpsMode, 214 => OperClass, 215 => MacMask, 216 => WiphySelfManagedReg, 217 => ExtFeatures, 218 => SurveyRadioStats, 219 => NetnsFd, 220 => SchedScanDelay, 221 => RegIndoor, 222 => MaxNumSchedScanPlans, 223 => MaxScanPlanInterval, 224 => MaxScanPlanIterations, 225 => SchedScanPlans, 226 => Pbss, 227 => BssSelect, 228 => StaSupportP2pPs, 229 => Pad, 230 => IftypeExtCapa, 231 => MuMimoGroupData, 232 => MuMimoFollowMacAddr, 233 => ScanStartTimeTsf, 234 => ScanStartTimeTsfBssid, 235 => MeasurementDuration, 236 => MeasurementDurationMandatory, 237 => MeshPeerAid, 238 => NanMasterPref, 239 => Bands, 240 => NanFunc, 241 => NanMatch, 242 => FilsKek, 243 => FilsNonces, 244 => MulticastToUnicastEnabled, 245 => Bssid, 246 => SchedScanRelativeRssi, 247 => SchedScanRssiAdjust, 248 => TimeoutReason, 249 => FilsErpUsername, 250 => FilsErpRealm, 251 => FilsErpNextSeqNum, 252 => FilsErpRrk, 253 => FilsCacheId, 254 => Pmk, 255 => SchedScanMulti, 256 => SchedScanMaxReqs, 257 => Want1x4wayHs, 258 => Pmkr0Name, 259 => PortAuthorized, 260 => ExternalAuthAction, 261 => ExternalAuthSupport, 262 => Nss, 263 => AckSignal, 264 => ControlPortOverNl80211, 265 => TxqStats, 266 => TxqLimit, 267 => TxqMemoryLimit, 268 => TxqQuantum, 269 => HeCapability, 270 => FtmResponder, 271 => FtmResponderStats, 272 => Timeout, 273 => PeerMeasurements, 274 => AirtimeWeight, 275 => StaTxPowerSetting, 276 => StaTxPower, 277 => SaePassword, 278 => TwtResponder, 279 => HeObssPd, 280 => WiphyEdmgChannels, 281 => WiphyEdmgBwConfig, 282 => VlanId, 283 => HeBssColor, 284 => IftypeAkmSuites, 285 => TidConfig, 286 => ControlPortNoPreauth, 287 => PmkLifetime, 288 => PmkReauthThreshold, 289 => ReceiveMulticast, 290 => WiphyFreqOffset, 291 => CenterFreq1Offset, 292 => ScanFreqKhz, 293 => He6ghzCapability, 294 => FilsDiscovery, 295 => UnsolBcastProbeResp, 296 => S1gCapability, 297 => S1gCapabilityMask, 298 => SaePwe, 299 => ReconnectRequested, 300 => SarSpec, 301 => DisableHe, 302 => ObssColorBitmap, 303 => ColorChangeCount, 304 => ColorChangeColor, 305 => ColorChangeElems, 306 => MbssidConfig, 307 => MbssidElems, 308 => RadarBackground, 309 => ApSettingsFlags, 310 => EhtCapability, 311 => DisableEht, 312 => MloLinks, 313 => MloLinkId, 314 => MldAddr, 315 => MloSupport, 316 => MaxNumAkmSuites, 317 => EmlCapability, 318 => MldCapaAndOps, 319 => TxHwTimestamp, 320 => RxHwTimestamp, 321 => TdBitmap, 322 => PunctBitmap, 323 => MaxHwTimestampPeers, 324 => HwTimestampEnabled, 325 => EmaRnrElems, 326 => MloLinkDisabled, 327 => BssDumpIncludeUseData, 328 => MloTtlmDlink, 329 => MloTtlmUlink, 330 => AssocSppAmsdu, 331 => WiphyRadios, 332 => WiphyInterfaceCombinations, 333 => VifRadioMask}) #: Hash[::Integer, Attribute]
1701
+ class << self
1702
+ # Looks up Attribute class by name.
1703
+ #--
1704
+ # @rbs name: Symbol
1705
+ # @rbs return: Attribute
1706
+ def by_name(name); BY_NAME.fetch(name); end
1707
+ # Looks up Attribute class by type value.
1708
+ #--
1709
+ # @rbs type: Integer
1710
+ # @rbs return: Attribute
1711
+ def by_type(type); BY_TYPE.fetch(type); end
1712
+ end
1713
+ end
1714
+ class FrameTypeAttrs < ::Nl::Protocols::Genl::AttributeSet
1715
+ # Abstract class
1716
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1717
+ end
1718
+ class FrameType < Attribute
1719
+ TYPE = 101
1720
+ NAME = :"frame_type"
1721
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1722
+ end
1723
+ # :nodoc:
1724
+ BY_NAME = Ractor.make_shareable({:"frame_type" => FrameType}) #: Hash[::Symbol, Attribute]
1725
+ # :nodoc:
1726
+ BY_TYPE = Ractor.make_shareable({101 => FrameType}) #: Hash[::Integer, Attribute]
1727
+ class << self
1728
+ # Looks up Attribute class by name.
1729
+ #--
1730
+ # @rbs name: Symbol
1731
+ # @rbs return: Attribute
1732
+ def by_name(name); BY_NAME.fetch(name); end
1733
+ # Looks up Attribute class by type value.
1734
+ #--
1735
+ # @rbs type: Integer
1736
+ # @rbs return: Attribute
1737
+ def by_type(type); BY_TYPE.fetch(type); end
1738
+ end
1739
+ end
1740
+ class WiphyBands < ::Nl::Protocols::Genl::AttributeSet
1741
+ # Abstract class
1742
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1743
+ end
1744
+ class X2ghz < Attribute
1745
+ TYPE = 0
1746
+ NAME = :"x_2ghz"
1747
+ end
1748
+ class X5ghz < Attribute
1749
+ TYPE = 1
1750
+ NAME = :"x_5ghz"
1751
+ end
1752
+ class X60ghz < Attribute
1753
+ TYPE = 2
1754
+ NAME = :"x_60ghz"
1755
+ end
1756
+ class X6ghz < Attribute
1757
+ TYPE = 3
1758
+ NAME = :"x_6ghz"
1759
+ end
1760
+ class S1ghz < Attribute
1761
+ TYPE = 4
1762
+ NAME = :"s1ghz"
1763
+ end
1764
+ class Lc < Attribute
1765
+ TYPE = 5
1766
+ NAME = :"lc"
1767
+ end
1768
+ # :nodoc:
1769
+ BY_NAME = Ractor.make_shareable({:"x_2ghz" => X2ghz, :"x_5ghz" => X5ghz, :"x_60ghz" => X60ghz, :"x_6ghz" => X6ghz, :"s1ghz" => S1ghz, :"lc" => Lc}) #: Hash[::Symbol, Attribute]
1770
+ # :nodoc:
1771
+ BY_TYPE = Ractor.make_shareable({0 => X2ghz, 1 => X5ghz, 2 => X60ghz, 3 => X6ghz, 4 => S1ghz, 5 => Lc}) #: Hash[::Integer, Attribute]
1772
+ class << self
1773
+ # Looks up Attribute class by name.
1774
+ #--
1775
+ # @rbs name: Symbol
1776
+ # @rbs return: Attribute
1777
+ def by_name(name); BY_NAME.fetch(name); end
1778
+ # Looks up Attribute class by type value.
1779
+ #--
1780
+ # @rbs type: Integer
1781
+ # @rbs return: Attribute
1782
+ def by_type(type); BY_TYPE.fetch(type); end
1783
+ end
1784
+ end
1785
+ class BandAttrs < ::Nl::Protocols::Genl::AttributeSet
1786
+ # Abstract class
1787
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1788
+ end
1789
+ class Freqs < Attribute
1790
+ TYPE = 1
1791
+ NAME = :"freqs"
1792
+ end
1793
+ class Rates < Attribute
1794
+ TYPE = 2
1795
+ NAME = :"rates"
1796
+ end
1797
+ class HtMcsSet < Attribute
1798
+ TYPE = 3
1799
+ NAME = :"ht_mcs_set"
1800
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1801
+ end
1802
+ class HtCapa < Attribute
1803
+ TYPE = 4
1804
+ NAME = :"ht_capa"
1805
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
1806
+ end
1807
+ class HtAmpduFactor < Attribute
1808
+ TYPE = 5
1809
+ NAME = :"ht_ampdu_factor"
1810
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1811
+ end
1812
+ class HtAmpduDensity < Attribute
1813
+ TYPE = 6
1814
+ NAME = :"ht_ampdu_density"
1815
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
1816
+ end
1817
+ class VhtMcsSet < Attribute
1818
+ TYPE = 7
1819
+ NAME = :"vht_mcs_set"
1820
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1821
+ end
1822
+ class VhtCapa < Attribute
1823
+ TYPE = 8
1824
+ NAME = :"vht_capa"
1825
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1826
+ end
1827
+ class IftypeData < Attribute
1828
+ TYPE = 9
1829
+ NAME = :"iftype_data"
1830
+ end
1831
+ class EdmgChannels < Attribute
1832
+ TYPE = 10
1833
+ NAME = :"edmg_channels"
1834
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1835
+ end
1836
+ class EdmgBwConfig < Attribute
1837
+ TYPE = 11
1838
+ NAME = :"edmg_bw_config"
1839
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1840
+ end
1841
+ class S1gMcsNssSet < Attribute
1842
+ TYPE = 12
1843
+ NAME = :"s1g_mcs_nss_set"
1844
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1845
+ end
1846
+ class S1gCapa < Attribute
1847
+ TYPE = 13
1848
+ NAME = :"s1g_capa"
1849
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1850
+ end
1851
+ # :nodoc:
1852
+ BY_NAME = Ractor.make_shareable({:"freqs" => Freqs, :"rates" => Rates, :"ht_mcs_set" => HtMcsSet, :"ht_capa" => HtCapa, :"ht_ampdu_factor" => HtAmpduFactor, :"ht_ampdu_density" => HtAmpduDensity, :"vht_mcs_set" => VhtMcsSet, :"vht_capa" => VhtCapa, :"iftype_data" => IftypeData, :"edmg_channels" => EdmgChannels, :"edmg_bw_config" => EdmgBwConfig, :"s1g_mcs_nss_set" => S1gMcsNssSet, :"s1g_capa" => S1gCapa}) #: Hash[::Symbol, Attribute]
1853
+ # :nodoc:
1854
+ BY_TYPE = Ractor.make_shareable({1 => Freqs, 2 => Rates, 3 => HtMcsSet, 4 => HtCapa, 5 => HtAmpduFactor, 6 => HtAmpduDensity, 7 => VhtMcsSet, 8 => VhtCapa, 9 => IftypeData, 10 => EdmgChannels, 11 => EdmgBwConfig, 12 => S1gMcsNssSet, 13 => S1gCapa}) #: Hash[::Integer, Attribute]
1855
+ class << self
1856
+ # Looks up Attribute class by name.
1857
+ #--
1858
+ # @rbs name: Symbol
1859
+ # @rbs return: Attribute
1860
+ def by_name(name); BY_NAME.fetch(name); end
1861
+ # Looks up Attribute class by type value.
1862
+ #--
1863
+ # @rbs type: Integer
1864
+ # @rbs return: Attribute
1865
+ def by_type(type); BY_TYPE.fetch(type); end
1866
+ end
1867
+ end
1868
+ class BitrateAttrs < ::Nl::Protocols::Genl::AttributeSet
1869
+ # Abstract class
1870
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1871
+ end
1872
+ class Rate < Attribute
1873
+ TYPE = 1
1874
+ NAME = :"rate"
1875
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1876
+ end
1877
+ class X2ghzShortpreamble < Attribute
1878
+ TYPE = 2
1879
+ NAME = :"x_2ghz_shortpreamble"
1880
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1881
+ end
1882
+ # :nodoc:
1883
+ BY_NAME = Ractor.make_shareable({:"rate" => Rate, :"x_2ghz_shortpreamble" => X2ghzShortpreamble}) #: Hash[::Symbol, Attribute]
1884
+ # :nodoc:
1885
+ BY_TYPE = Ractor.make_shareable({1 => Rate, 2 => X2ghzShortpreamble}) #: Hash[::Integer, Attribute]
1886
+ class << self
1887
+ # Looks up Attribute class by name.
1888
+ #--
1889
+ # @rbs name: Symbol
1890
+ # @rbs return: Attribute
1891
+ def by_name(name); BY_NAME.fetch(name); end
1892
+ # Looks up Attribute class by type value.
1893
+ #--
1894
+ # @rbs type: Integer
1895
+ # @rbs return: Attribute
1896
+ def by_type(type); BY_TYPE.fetch(type); end
1897
+ end
1898
+ end
1899
+ class FrequencyAttrs < ::Nl::Protocols::Genl::AttributeSet
1900
+ # Abstract class
1901
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
1902
+ end
1903
+ class Freq < Attribute
1904
+ TYPE = 1
1905
+ NAME = :"freq"
1906
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1907
+ end
1908
+ class Disabled < Attribute
1909
+ TYPE = 2
1910
+ NAME = :"disabled"
1911
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1912
+ end
1913
+ class NoIr < Attribute
1914
+ TYPE = 3
1915
+ NAME = :"no_ir"
1916
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1917
+ end
1918
+ class NoIbss < Attribute
1919
+ TYPE = 4
1920
+ NAME = :"no_ibss"
1921
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1922
+ end
1923
+ class Radar < Attribute
1924
+ TYPE = 5
1925
+ NAME = :"radar"
1926
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
1927
+ end
1928
+ class MaxTxPower < Attribute
1929
+ TYPE = 6
1930
+ NAME = :"max_tx_power"
1931
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1932
+ end
1933
+ class DfsState < Attribute
1934
+ TYPE = 7
1935
+ NAME = :"dfs_state"
1936
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1937
+ end
1938
+ class DfsTime < Attribute
1939
+ TYPE = 8
1940
+ NAME = :"dfs_time"
1941
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1942
+ end
1943
+ class NoHt40Minus < Attribute
1944
+ TYPE = 9
1945
+ NAME = :"no_ht40_minus"
1946
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1947
+ end
1948
+ class NoHt40Plus < Attribute
1949
+ TYPE = 10
1950
+ NAME = :"no_ht40_plus"
1951
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1952
+ end
1953
+ class No80mhz < Attribute
1954
+ TYPE = 11
1955
+ NAME = :"no_80mhz"
1956
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1957
+ end
1958
+ class No160mhz < Attribute
1959
+ TYPE = 12
1960
+ NAME = :"no_160mhz"
1961
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1962
+ end
1963
+ class DfsCacTime < Attribute
1964
+ TYPE = 13
1965
+ NAME = :"dfs_cac_time"
1966
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1967
+ end
1968
+ class IndoorOnly < Attribute
1969
+ TYPE = 14
1970
+ NAME = :"indoor_only"
1971
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1972
+ end
1973
+ class IrConcurrent < Attribute
1974
+ TYPE = 15
1975
+ NAME = :"ir_concurrent"
1976
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1977
+ end
1978
+ class No20mhz < Attribute
1979
+ TYPE = 16
1980
+ NAME = :"no_20mhz"
1981
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1982
+ end
1983
+ class No10mhz < Attribute
1984
+ TYPE = 17
1985
+ NAME = :"no_10mhz"
1986
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1987
+ end
1988
+ class Wmm < Attribute
1989
+ TYPE = 18
1990
+ NAME = :"wmm"
1991
+ end
1992
+ class NoHe < Attribute
1993
+ TYPE = 19
1994
+ NAME = :"no_he"
1995
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
1996
+ end
1997
+ class Offset < Attribute
1998
+ TYPE = 20
1999
+ NAME = :"offset"
2000
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2001
+ end
2002
+ class X1mhz < Attribute
2003
+ TYPE = 21
2004
+ NAME = :"x_1mhz"
2005
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2006
+ end
2007
+ class X2mhz < Attribute
2008
+ TYPE = 22
2009
+ NAME = :"x_2mhz"
2010
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2011
+ end
2012
+ class X4mhz < Attribute
2013
+ TYPE = 23
2014
+ NAME = :"x_4mhz"
2015
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2016
+ end
2017
+ class X8mhz < Attribute
2018
+ TYPE = 24
2019
+ NAME = :"x_8mhz"
2020
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2021
+ end
2022
+ class X16mhz < Attribute
2023
+ TYPE = 25
2024
+ NAME = :"x_16mhz"
2025
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2026
+ end
2027
+ class No320mhz < Attribute
2028
+ TYPE = 26
2029
+ NAME = :"no_320mhz"
2030
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2031
+ end
2032
+ class NoEht < Attribute
2033
+ TYPE = 27
2034
+ NAME = :"no_eht"
2035
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2036
+ end
2037
+ class Psd < Attribute
2038
+ TYPE = 28
2039
+ NAME = :"psd"
2040
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2041
+ end
2042
+ class DfsConcurrent < Attribute
2043
+ TYPE = 29
2044
+ NAME = :"dfs_concurrent"
2045
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2046
+ end
2047
+ class No6ghzVlpClient < Attribute
2048
+ TYPE = 30
2049
+ NAME = :"no_6ghz_vlp_client"
2050
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2051
+ end
2052
+ class No6ghzAfcClient < Attribute
2053
+ TYPE = 31
2054
+ NAME = :"no_6ghz_afc_client"
2055
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2056
+ end
2057
+ class CanMonitor < Attribute
2058
+ TYPE = 32
2059
+ NAME = :"can_monitor"
2060
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2061
+ end
2062
+ class Allow6ghzVlpAp < Attribute
2063
+ TYPE = 33
2064
+ NAME = :"allow_6ghz_vlp_ap"
2065
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2066
+ end
2067
+ # :nodoc:
2068
+ BY_NAME = Ractor.make_shareable({:"freq" => Freq, :"disabled" => Disabled, :"no_ir" => NoIr, :"no_ibss" => NoIbss, :"radar" => Radar, :"max_tx_power" => MaxTxPower, :"dfs_state" => DfsState, :"dfs_time" => DfsTime, :"no_ht40_minus" => NoHt40Minus, :"no_ht40_plus" => NoHt40Plus, :"no_80mhz" => No80mhz, :"no_160mhz" => No160mhz, :"dfs_cac_time" => DfsCacTime, :"indoor_only" => IndoorOnly, :"ir_concurrent" => IrConcurrent, :"no_20mhz" => No20mhz, :"no_10mhz" => No10mhz, :"wmm" => Wmm, :"no_he" => NoHe, :"offset" => Offset, :"x_1mhz" => X1mhz, :"x_2mhz" => X2mhz, :"x_4mhz" => X4mhz, :"x_8mhz" => X8mhz, :"x_16mhz" => X16mhz, :"no_320mhz" => No320mhz, :"no_eht" => NoEht, :"psd" => Psd, :"dfs_concurrent" => DfsConcurrent, :"no_6ghz_vlp_client" => No6ghzVlpClient, :"no_6ghz_afc_client" => No6ghzAfcClient, :"can_monitor" => CanMonitor, :"allow_6ghz_vlp_ap" => Allow6ghzVlpAp}) #: Hash[::Symbol, Attribute]
2069
+ # :nodoc:
2070
+ BY_TYPE = Ractor.make_shareable({1 => Freq, 2 => Disabled, 3 => NoIr, 4 => NoIbss, 5 => Radar, 6 => MaxTxPower, 7 => DfsState, 8 => DfsTime, 9 => NoHt40Minus, 10 => NoHt40Plus, 11 => No80mhz, 12 => No160mhz, 13 => DfsCacTime, 14 => IndoorOnly, 15 => IrConcurrent, 16 => No20mhz, 17 => No10mhz, 18 => Wmm, 19 => NoHe, 20 => Offset, 21 => X1mhz, 22 => X2mhz, 23 => X4mhz, 24 => X8mhz, 25 => X16mhz, 26 => No320mhz, 27 => NoEht, 28 => Psd, 29 => DfsConcurrent, 30 => No6ghzVlpClient, 31 => No6ghzAfcClient, 32 => CanMonitor, 33 => Allow6ghzVlpAp}) #: Hash[::Integer, Attribute]
2071
+ class << self
2072
+ # Looks up Attribute class by name.
2073
+ #--
2074
+ # @rbs name: Symbol
2075
+ # @rbs return: Attribute
2076
+ def by_name(name); BY_NAME.fetch(name); end
2077
+ # Looks up Attribute class by type value.
2078
+ #--
2079
+ # @rbs type: Integer
2080
+ # @rbs return: Attribute
2081
+ def by_type(type); BY_TYPE.fetch(type); end
2082
+ end
2083
+ end
2084
+ class IfCombinationAttributes < ::Nl::Protocols::Genl::AttributeSet
2085
+ # Abstract class
2086
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2087
+ end
2088
+ class Limits < Attribute
2089
+ TYPE = 1
2090
+ NAME = :"limits"
2091
+ end
2092
+ class Maxnum < Attribute
2093
+ TYPE = 2
2094
+ NAME = :"maxnum"
2095
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2096
+ end
2097
+ class StaApBiMatch < Attribute
2098
+ TYPE = 3
2099
+ NAME = :"sta_ap_bi_match"
2100
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2101
+ end
2102
+ class NumChannels < Attribute
2103
+ TYPE = 4
2104
+ NAME = :"num_channels"
2105
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2106
+ end
2107
+ class RadarDetectWidths < Attribute
2108
+ TYPE = 5
2109
+ NAME = :"radar_detect_widths"
2110
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2111
+ end
2112
+ class RadarDetectRegions < Attribute
2113
+ TYPE = 6
2114
+ NAME = :"radar_detect_regions"
2115
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2116
+ end
2117
+ class BiMinGcd < Attribute
2118
+ TYPE = 7
2119
+ NAME = :"bi_min_gcd"
2120
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2121
+ end
2122
+ # :nodoc:
2123
+ BY_NAME = Ractor.make_shareable({:"limits" => Limits, :"maxnum" => Maxnum, :"sta_ap_bi_match" => StaApBiMatch, :"num_channels" => NumChannels, :"radar_detect_widths" => RadarDetectWidths, :"radar_detect_regions" => RadarDetectRegions, :"bi_min_gcd" => BiMinGcd}) #: Hash[::Symbol, Attribute]
2124
+ # :nodoc:
2125
+ BY_TYPE = Ractor.make_shareable({1 => Limits, 2 => Maxnum, 3 => StaApBiMatch, 4 => NumChannels, 5 => RadarDetectWidths, 6 => RadarDetectRegions, 7 => BiMinGcd}) #: Hash[::Integer, Attribute]
2126
+ class << self
2127
+ # Looks up Attribute class by name.
2128
+ #--
2129
+ # @rbs name: Symbol
2130
+ # @rbs return: Attribute
2131
+ def by_name(name); BY_NAME.fetch(name); end
2132
+ # Looks up Attribute class by type value.
2133
+ #--
2134
+ # @rbs type: Integer
2135
+ # @rbs return: Attribute
2136
+ def by_type(type); BY_TYPE.fetch(type); end
2137
+ end
2138
+ end
2139
+ class IfaceLimitAttributes < ::Nl::Protocols::Genl::AttributeSet
2140
+ # Abstract class
2141
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2142
+ end
2143
+ class Max < Attribute
2144
+ TYPE = 1
2145
+ NAME = :"max"
2146
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2147
+ end
2148
+ class Types < Attribute
2149
+ TYPE = 2
2150
+ NAME = :"types"
2151
+ end
2152
+ # :nodoc:
2153
+ BY_NAME = Ractor.make_shareable({:"max" => Max, :"types" => Types}) #: Hash[::Symbol, Attribute]
2154
+ # :nodoc:
2155
+ BY_TYPE = Ractor.make_shareable({1 => Max, 2 => Types}) #: Hash[::Integer, Attribute]
2156
+ class << self
2157
+ # Looks up Attribute class by name.
2158
+ #--
2159
+ # @rbs name: Symbol
2160
+ # @rbs return: Attribute
2161
+ def by_name(name); BY_NAME.fetch(name); end
2162
+ # Looks up Attribute class by type value.
2163
+ #--
2164
+ # @rbs type: Integer
2165
+ # @rbs return: Attribute
2166
+ def by_type(type); BY_TYPE.fetch(type); end
2167
+ end
2168
+ end
2169
+ class IftypeDataAttrs < ::Nl::Protocols::Genl::AttributeSet
2170
+ # Abstract class
2171
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2172
+ end
2173
+ class Iftypes < Attribute
2174
+ TYPE = 1
2175
+ NAME = :"iftypes"
2176
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2177
+ end
2178
+ class HeCapMac < Attribute
2179
+ TYPE = 2
2180
+ NAME = :"he_cap_mac"
2181
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2182
+ end
2183
+ class HeCapPhy < Attribute
2184
+ TYPE = 3
2185
+ NAME = :"he_cap_phy"
2186
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2187
+ end
2188
+ class HeCapMcsSet < Attribute
2189
+ TYPE = 4
2190
+ NAME = :"he_cap_mcs_set"
2191
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2192
+ end
2193
+ class HeCapPpe < Attribute
2194
+ TYPE = 5
2195
+ NAME = :"he_cap_ppe"
2196
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2197
+ end
2198
+ class He6ghzCapa < Attribute
2199
+ TYPE = 6
2200
+ NAME = :"he_6ghz_capa"
2201
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2202
+ end
2203
+ class VendorElems < Attribute
2204
+ TYPE = 7
2205
+ NAME = :"vendor_elems"
2206
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2207
+ end
2208
+ class EhtCapMac < Attribute
2209
+ TYPE = 8
2210
+ NAME = :"eht_cap_mac"
2211
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2212
+ end
2213
+ class EhtCapPhy < Attribute
2214
+ TYPE = 9
2215
+ NAME = :"eht_cap_phy"
2216
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2217
+ end
2218
+ class EhtCapMcsSet < Attribute
2219
+ TYPE = 10
2220
+ NAME = :"eht_cap_mcs_set"
2221
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2222
+ end
2223
+ class EhtCapPpe < Attribute
2224
+ TYPE = 11
2225
+ NAME = :"eht_cap_ppe"
2226
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Binary.new(check: nil)
2227
+ end
2228
+ # :nodoc:
2229
+ BY_NAME = Ractor.make_shareable({:"iftypes" => Iftypes, :"he_cap_mac" => HeCapMac, :"he_cap_phy" => HeCapPhy, :"he_cap_mcs_set" => HeCapMcsSet, :"he_cap_ppe" => HeCapPpe, :"he_6ghz_capa" => He6ghzCapa, :"vendor_elems" => VendorElems, :"eht_cap_mac" => EhtCapMac, :"eht_cap_phy" => EhtCapPhy, :"eht_cap_mcs_set" => EhtCapMcsSet, :"eht_cap_ppe" => EhtCapPpe}) #: Hash[::Symbol, Attribute]
2230
+ # :nodoc:
2231
+ BY_TYPE = Ractor.make_shareable({1 => Iftypes, 2 => HeCapMac, 3 => HeCapPhy, 4 => HeCapMcsSet, 5 => HeCapPpe, 6 => He6ghzCapa, 7 => VendorElems, 8 => EhtCapMac, 9 => EhtCapPhy, 10 => EhtCapMcsSet, 11 => EhtCapPpe}) #: Hash[::Integer, Attribute]
2232
+ class << self
2233
+ # Looks up Attribute class by name.
2234
+ #--
2235
+ # @rbs name: Symbol
2236
+ # @rbs return: Attribute
2237
+ def by_name(name); BY_NAME.fetch(name); end
2238
+ # Looks up Attribute class by type value.
2239
+ #--
2240
+ # @rbs type: Integer
2241
+ # @rbs return: Attribute
2242
+ def by_type(type); BY_TYPE.fetch(type); end
2243
+ end
2244
+ end
2245
+ class IftypeAttrs < ::Nl::Protocols::Genl::AttributeSet
2246
+ # Abstract class
2247
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2248
+ end
2249
+ class Unspecified < Attribute
2250
+ TYPE = 0
2251
+ NAME = :"unspecified"
2252
+ end
2253
+ class Adhoc < Attribute
2254
+ TYPE = 1
2255
+ NAME = :"adhoc"
2256
+ end
2257
+ class Station < Attribute
2258
+ TYPE = 2
2259
+ NAME = :"station"
2260
+ end
2261
+ class Ap < Attribute
2262
+ TYPE = 3
2263
+ NAME = :"ap"
2264
+ end
2265
+ class ApVlan < Attribute
2266
+ TYPE = 4
2267
+ NAME = :"ap_vlan"
2268
+ end
2269
+ class Wds < Attribute
2270
+ TYPE = 5
2271
+ NAME = :"wds"
2272
+ end
2273
+ class Monitor < Attribute
2274
+ TYPE = 6
2275
+ NAME = :"monitor"
2276
+ end
2277
+ class MeshPoint < Attribute
2278
+ TYPE = 7
2279
+ NAME = :"mesh_point"
2280
+ end
2281
+ class P2pClient < Attribute
2282
+ TYPE = 8
2283
+ NAME = :"p2p_client"
2284
+ end
2285
+ class P2pGo < Attribute
2286
+ TYPE = 9
2287
+ NAME = :"p2p_go"
2288
+ end
2289
+ class P2pDevice < Attribute
2290
+ TYPE = 10
2291
+ NAME = :"p2p_device"
2292
+ end
2293
+ class Ocb < Attribute
2294
+ TYPE = 11
2295
+ NAME = :"ocb"
2296
+ end
2297
+ class Nan < Attribute
2298
+ TYPE = 12
2299
+ NAME = :"nan"
2300
+ end
2301
+ # :nodoc:
2302
+ BY_NAME = Ractor.make_shareable({:"unspecified" => Unspecified, :"adhoc" => Adhoc, :"station" => Station, :"ap" => Ap, :"ap_vlan" => ApVlan, :"wds" => Wds, :"monitor" => Monitor, :"mesh_point" => MeshPoint, :"p2p_client" => P2pClient, :"p2p_go" => P2pGo, :"p2p_device" => P2pDevice, :"ocb" => Ocb, :"nan" => Nan}) #: Hash[::Symbol, Attribute]
2303
+ # :nodoc:
2304
+ BY_TYPE = Ractor.make_shareable({0 => Unspecified, 1 => Adhoc, 2 => Station, 3 => Ap, 4 => ApVlan, 5 => Wds, 6 => Monitor, 7 => MeshPoint, 8 => P2pClient, 9 => P2pGo, 10 => P2pDevice, 11 => Ocb, 12 => Nan}) #: Hash[::Integer, Attribute]
2305
+ class << self
2306
+ # Looks up Attribute class by name.
2307
+ #--
2308
+ # @rbs name: Symbol
2309
+ # @rbs return: Attribute
2310
+ def by_name(name); BY_NAME.fetch(name); end
2311
+ # Looks up Attribute class by type value.
2312
+ #--
2313
+ # @rbs type: Integer
2314
+ # @rbs return: Attribute
2315
+ def by_type(type); BY_TYPE.fetch(type); end
2316
+ end
2317
+ end
2318
+ class SarAttributes < ::Nl::Protocols::Genl::AttributeSet
2319
+ # Abstract class
2320
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2321
+ end
2322
+ class Type < Attribute
2323
+ TYPE = 1
2324
+ NAME = :"type"
2325
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2326
+ end
2327
+ class Specs < Attribute
2328
+ TYPE = 2
2329
+ NAME = :"specs"
2330
+ end
2331
+ # :nodoc:
2332
+ BY_NAME = Ractor.make_shareable({:"type" => Type, :"specs" => Specs}) #: Hash[::Symbol, Attribute]
2333
+ # :nodoc:
2334
+ BY_TYPE = Ractor.make_shareable({1 => Type, 2 => Specs}) #: Hash[::Integer, Attribute]
2335
+ class << self
2336
+ # Looks up Attribute class by name.
2337
+ #--
2338
+ # @rbs name: Symbol
2339
+ # @rbs return: Attribute
2340
+ def by_name(name); BY_NAME.fetch(name); end
2341
+ # Looks up Attribute class by type value.
2342
+ #--
2343
+ # @rbs type: Integer
2344
+ # @rbs return: Attribute
2345
+ def by_type(type); BY_TYPE.fetch(type); end
2346
+ end
2347
+ end
2348
+ class SarSpecs < ::Nl::Protocols::Genl::AttributeSet
2349
+ # Abstract class
2350
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2351
+ end
2352
+ class Power < Attribute
2353
+ TYPE = 1
2354
+ NAME = :"power"
2355
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::S32, check: nil)
2356
+ end
2357
+ class RangeIndex < Attribute
2358
+ TYPE = 2
2359
+ NAME = :"range_index"
2360
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2361
+ end
2362
+ class StartFreq < Attribute
2363
+ TYPE = 3
2364
+ NAME = :"start_freq"
2365
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2366
+ end
2367
+ class EndFreq < Attribute
2368
+ TYPE = 4
2369
+ NAME = :"end_freq"
2370
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2371
+ end
2372
+ # :nodoc:
2373
+ BY_NAME = Ractor.make_shareable({:"power" => Power, :"range_index" => RangeIndex, :"start_freq" => StartFreq, :"end_freq" => EndFreq}) #: Hash[::Symbol, Attribute]
2374
+ # :nodoc:
2375
+ BY_TYPE = Ractor.make_shareable({1 => Power, 2 => RangeIndex, 3 => StartFreq, 4 => EndFreq}) #: Hash[::Integer, Attribute]
2376
+ class << self
2377
+ # Looks up Attribute class by name.
2378
+ #--
2379
+ # @rbs name: Symbol
2380
+ # @rbs return: Attribute
2381
+ def by_name(name); BY_NAME.fetch(name); end
2382
+ # Looks up Attribute class by type value.
2383
+ #--
2384
+ # @rbs type: Integer
2385
+ # @rbs return: Attribute
2386
+ def by_type(type); BY_TYPE.fetch(type); end
2387
+ end
2388
+ end
2389
+ class SupportedIftypes < ::Nl::Protocols::Genl::AttributeSet
2390
+ # Abstract class
2391
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2392
+ end
2393
+ class Adhoc < Attribute
2394
+ TYPE = 1
2395
+ NAME = :"adhoc"
2396
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2397
+ end
2398
+ class Station < Attribute
2399
+ TYPE = 2
2400
+ NAME = :"station"
2401
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2402
+ end
2403
+ class Ap < Attribute
2404
+ TYPE = 3
2405
+ NAME = :"ap"
2406
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2407
+ end
2408
+ class ApVlan < Attribute
2409
+ TYPE = 4
2410
+ NAME = :"ap_vlan"
2411
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2412
+ end
2413
+ class Wds < Attribute
2414
+ TYPE = 5
2415
+ NAME = :"wds"
2416
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2417
+ end
2418
+ class Monitor < Attribute
2419
+ TYPE = 6
2420
+ NAME = :"monitor"
2421
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2422
+ end
2423
+ class MeshPoint < Attribute
2424
+ TYPE = 7
2425
+ NAME = :"mesh_point"
2426
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2427
+ end
2428
+ class P2pClient < Attribute
2429
+ TYPE = 8
2430
+ NAME = :"p2p_client"
2431
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2432
+ end
2433
+ class P2pGo < Attribute
2434
+ TYPE = 9
2435
+ NAME = :"p2p_go"
2436
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2437
+ end
2438
+ class P2pDevice < Attribute
2439
+ TYPE = 10
2440
+ NAME = :"p2p_device"
2441
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2442
+ end
2443
+ class Ocb < Attribute
2444
+ TYPE = 11
2445
+ NAME = :"ocb"
2446
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2447
+ end
2448
+ class Nan < Attribute
2449
+ TYPE = 12
2450
+ NAME = :"nan"
2451
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2452
+ end
2453
+ # :nodoc:
2454
+ BY_NAME = Ractor.make_shareable({:"adhoc" => Adhoc, :"station" => Station, :"ap" => Ap, :"ap_vlan" => ApVlan, :"wds" => Wds, :"monitor" => Monitor, :"mesh_point" => MeshPoint, :"p2p_client" => P2pClient, :"p2p_go" => P2pGo, :"p2p_device" => P2pDevice, :"ocb" => Ocb, :"nan" => Nan}) #: Hash[::Symbol, Attribute]
2455
+ # :nodoc:
2456
+ BY_TYPE = Ractor.make_shareable({1 => Adhoc, 2 => Station, 3 => Ap, 4 => ApVlan, 5 => Wds, 6 => Monitor, 7 => MeshPoint, 8 => P2pClient, 9 => P2pGo, 10 => P2pDevice, 11 => Ocb, 12 => Nan}) #: Hash[::Integer, Attribute]
2457
+ class << self
2458
+ # Looks up Attribute class by name.
2459
+ #--
2460
+ # @rbs name: Symbol
2461
+ # @rbs return: Attribute
2462
+ def by_name(name); BY_NAME.fetch(name); end
2463
+ # Looks up Attribute class by type value.
2464
+ #--
2465
+ # @rbs type: Integer
2466
+ # @rbs return: Attribute
2467
+ def by_type(type); BY_TYPE.fetch(type); end
2468
+ end
2469
+ end
2470
+ class TxqStatsAttrs < ::Nl::Protocols::Genl::AttributeSet
2471
+ # Abstract class
2472
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2473
+ end
2474
+ class BacklogBytes < Attribute
2475
+ TYPE = 1
2476
+ NAME = :"backlog_bytes"
2477
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2478
+ end
2479
+ class BacklogPackets < Attribute
2480
+ TYPE = 2
2481
+ NAME = :"backlog_packets"
2482
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2483
+ end
2484
+ class Flows < Attribute
2485
+ TYPE = 3
2486
+ NAME = :"flows"
2487
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2488
+ end
2489
+ class Drops < Attribute
2490
+ TYPE = 4
2491
+ NAME = :"drops"
2492
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2493
+ end
2494
+ class EcnMarks < Attribute
2495
+ TYPE = 5
2496
+ NAME = :"ecn_marks"
2497
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2498
+ end
2499
+ class Overlimit < Attribute
2500
+ TYPE = 6
2501
+ NAME = :"overlimit"
2502
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2503
+ end
2504
+ class Overmemory < Attribute
2505
+ TYPE = 7
2506
+ NAME = :"overmemory"
2507
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2508
+ end
2509
+ class Collisions < Attribute
2510
+ TYPE = 8
2511
+ NAME = :"collisions"
2512
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2513
+ end
2514
+ class TxBytes < Attribute
2515
+ TYPE = 9
2516
+ NAME = :"tx_bytes"
2517
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2518
+ end
2519
+ class TxPackets < Attribute
2520
+ TYPE = 10
2521
+ NAME = :"tx_packets"
2522
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2523
+ end
2524
+ class MaxFlows < Attribute
2525
+ TYPE = 11
2526
+ NAME = :"max_flows"
2527
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
2528
+ end
2529
+ # :nodoc:
2530
+ BY_NAME = Ractor.make_shareable({:"backlog_bytes" => BacklogBytes, :"backlog_packets" => BacklogPackets, :"flows" => Flows, :"drops" => Drops, :"ecn_marks" => EcnMarks, :"overlimit" => Overlimit, :"overmemory" => Overmemory, :"collisions" => Collisions, :"tx_bytes" => TxBytes, :"tx_packets" => TxPackets, :"max_flows" => MaxFlows}) #: Hash[::Symbol, Attribute]
2531
+ # :nodoc:
2532
+ BY_TYPE = Ractor.make_shareable({1 => BacklogBytes, 2 => BacklogPackets, 3 => Flows, 4 => Drops, 5 => EcnMarks, 6 => Overlimit, 7 => Overmemory, 8 => Collisions, 9 => TxBytes, 10 => TxPackets, 11 => MaxFlows}) #: Hash[::Integer, Attribute]
2533
+ class << self
2534
+ # Looks up Attribute class by name.
2535
+ #--
2536
+ # @rbs name: Symbol
2537
+ # @rbs return: Attribute
2538
+ def by_name(name); BY_NAME.fetch(name); end
2539
+ # Looks up Attribute class by type value.
2540
+ #--
2541
+ # @rbs type: Integer
2542
+ # @rbs return: Attribute
2543
+ def by_type(type); BY_TYPE.fetch(type); end
2544
+ end
2545
+ end
2546
+ class WmmAttrs < ::Nl::Protocols::Genl::AttributeSet
2547
+ # Abstract class
2548
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2549
+ end
2550
+ class CwMin < Attribute
2551
+ TYPE = 1
2552
+ NAME = :"cw_min"
2553
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
2554
+ end
2555
+ class CwMax < Attribute
2556
+ TYPE = 2
2557
+ NAME = :"cw_max"
2558
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
2559
+ end
2560
+ class Aifsn < Attribute
2561
+ TYPE = 3
2562
+ NAME = :"aifsn"
2563
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
2564
+ end
2565
+ class Txop < Attribute
2566
+ TYPE = 4
2567
+ NAME = :"txop"
2568
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Scalar.new(::Nl::Endian::Host::U16, check: nil)
2569
+ end
2570
+ # :nodoc:
2571
+ BY_NAME = Ractor.make_shareable({:"cw_min" => CwMin, :"cw_max" => CwMax, :"aifsn" => Aifsn, :"txop" => Txop}) #: Hash[::Symbol, Attribute]
2572
+ # :nodoc:
2573
+ BY_TYPE = Ractor.make_shareable({1 => CwMin, 2 => CwMax, 3 => Aifsn, 4 => Txop}) #: Hash[::Integer, Attribute]
2574
+ class << self
2575
+ # Looks up Attribute class by name.
2576
+ #--
2577
+ # @rbs name: Symbol
2578
+ # @rbs return: Attribute
2579
+ def by_name(name); BY_NAME.fetch(name); end
2580
+ # Looks up Attribute class by type value.
2581
+ #--
2582
+ # @rbs type: Integer
2583
+ # @rbs return: Attribute
2584
+ def by_type(type); BY_TYPE.fetch(type); end
2585
+ end
2586
+ end
2587
+ class WowlanTriggersAttrs < ::Nl::Protocols::Genl::AttributeSet
2588
+ # Abstract class
2589
+ class Attribute < ::Nl::Protocols::Genl::AttributeSet::Attribute
2590
+ end
2591
+ class Any < Attribute
2592
+ TYPE = 1
2593
+ NAME = :"any"
2594
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2595
+ end
2596
+ class Disconnect < Attribute
2597
+ TYPE = 2
2598
+ NAME = :"disconnect"
2599
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2600
+ end
2601
+ class MagicPkt < Attribute
2602
+ TYPE = 3
2603
+ NAME = :"magic_pkt"
2604
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2605
+ end
2606
+ class PktPattern < Attribute
2607
+ TYPE = 4
2608
+ NAME = :"pkt_pattern"
2609
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2610
+ end
2611
+ class GtkRekeySupported < Attribute
2612
+ TYPE = 5
2613
+ NAME = :"gtk_rekey_supported"
2614
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2615
+ end
2616
+ class GtkRekeyFailure < Attribute
2617
+ TYPE = 6
2618
+ NAME = :"gtk_rekey_failure"
2619
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2620
+ end
2621
+ class EapIdentRequest < Attribute
2622
+ TYPE = 7
2623
+ NAME = :"eap_ident_request"
2624
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2625
+ end
2626
+ class X4wayHandshake < Attribute
2627
+ TYPE = 8
2628
+ NAME = :"x_4way_handshake"
2629
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2630
+ end
2631
+ class RfkillRelease < Attribute
2632
+ TYPE = 9
2633
+ NAME = :"rfkill_release"
2634
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2635
+ end
2636
+ class WakeupPkt80211 < Attribute
2637
+ TYPE = 10
2638
+ NAME = :"wakeup_pkt_80211"
2639
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2640
+ end
2641
+ class WakeupPkt80211Len < Attribute
2642
+ TYPE = 11
2643
+ NAME = :"wakeup_pkt_80211_len"
2644
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2645
+ end
2646
+ class WakeupPkt8023 < Attribute
2647
+ TYPE = 12
2648
+ NAME = :"wakeup_pkt_8023"
2649
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2650
+ end
2651
+ class WakeupPkt8023Len < Attribute
2652
+ TYPE = 13
2653
+ NAME = :"wakeup_pkt_8023_len"
2654
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2655
+ end
2656
+ class TcpConnection < Attribute
2657
+ TYPE = 14
2658
+ NAME = :"tcp_connection"
2659
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2660
+ end
2661
+ class WakeupTcpMatch < Attribute
2662
+ TYPE = 15
2663
+ NAME = :"wakeup_tcp_match"
2664
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2665
+ end
2666
+ class WakeupTcpConnlost < Attribute
2667
+ TYPE = 16
2668
+ NAME = :"wakeup_tcp_connlost"
2669
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2670
+ end
2671
+ class WakeupTcpNomoretokens < Attribute
2672
+ TYPE = 17
2673
+ NAME = :"wakeup_tcp_nomoretokens"
2674
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2675
+ end
2676
+ class NetDetect < Attribute
2677
+ TYPE = 18
2678
+ NAME = :"net_detect"
2679
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2680
+ end
2681
+ class NetDetectResults < Attribute
2682
+ TYPE = 19
2683
+ NAME = :"net_detect_results"
2684
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2685
+ end
2686
+ class UnprotectedDeauthDisassoc < Attribute
2687
+ TYPE = 20
2688
+ NAME = :"unprotected_deauth_disassoc"
2689
+ DATATYPE = ::Nl::Protocols::Genl::DataTypes::Flag.new
2690
+ end
2691
+ # :nodoc:
2692
+ BY_NAME = Ractor.make_shareable({:"any" => Any, :"disconnect" => Disconnect, :"magic_pkt" => MagicPkt, :"pkt_pattern" => PktPattern, :"gtk_rekey_supported" => GtkRekeySupported, :"gtk_rekey_failure" => GtkRekeyFailure, :"eap_ident_request" => EapIdentRequest, :"x_4way_handshake" => X4wayHandshake, :"rfkill_release" => RfkillRelease, :"wakeup_pkt_80211" => WakeupPkt80211, :"wakeup_pkt_80211_len" => WakeupPkt80211Len, :"wakeup_pkt_8023" => WakeupPkt8023, :"wakeup_pkt_8023_len" => WakeupPkt8023Len, :"tcp_connection" => TcpConnection, :"wakeup_tcp_match" => WakeupTcpMatch, :"wakeup_tcp_connlost" => WakeupTcpConnlost, :"wakeup_tcp_nomoretokens" => WakeupTcpNomoretokens, :"net_detect" => NetDetect, :"net_detect_results" => NetDetectResults, :"unprotected_deauth_disassoc" => UnprotectedDeauthDisassoc}) #: Hash[::Symbol, Attribute]
2693
+ # :nodoc:
2694
+ BY_TYPE = Ractor.make_shareable({1 => Any, 2 => Disconnect, 3 => MagicPkt, 4 => PktPattern, 5 => GtkRekeySupported, 6 => GtkRekeyFailure, 7 => EapIdentRequest, 8 => X4wayHandshake, 9 => RfkillRelease, 10 => WakeupPkt80211, 11 => WakeupPkt80211Len, 12 => WakeupPkt8023, 13 => WakeupPkt8023Len, 14 => TcpConnection, 15 => WakeupTcpMatch, 16 => WakeupTcpConnlost, 17 => WakeupTcpNomoretokens, 18 => NetDetect, 19 => NetDetectResults, 20 => UnprotectedDeauthDisassoc}) #: Hash[::Integer, Attribute]
2695
+ class << self
2696
+ # Looks up Attribute class by name.
2697
+ #--
2698
+ # @rbs name: Symbol
2699
+ # @rbs return: Attribute
2700
+ def by_name(name); BY_NAME.fetch(name); end
2701
+ # Looks up Attribute class by type value.
2702
+ #--
2703
+ # @rbs type: Integer
2704
+ # @rbs return: Attribute
2705
+ def by_type(type); BY_TYPE.fetch(type); end
2706
+ end
2707
+ end
2708
+ Nl80211Attrs::WiphyBands::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(WiphyBands)
2709
+ Nl80211Attrs::SupportedIftypes::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SupportedIftypes)
2710
+ Nl80211Attrs::TxFrameTypes::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(IftypeAttrs)
2711
+ Nl80211Attrs::RxFrameTypes::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(IftypeAttrs)
2712
+ Nl80211Attrs::WowlanTriggersSupported::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(WowlanTriggersAttrs)
2713
+ Nl80211Attrs::InterfaceCombinations::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(IfCombinationAttributes))
2714
+ Nl80211Attrs::SoftwareIftypes::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SupportedIftypes)
2715
+ Nl80211Attrs::TxqStats::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(TxqStatsAttrs)
2716
+ Nl80211Attrs::SarSpec::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SarAttributes)
2717
+ WiphyBands::X2ghz::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2718
+ WiphyBands::X5ghz::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2719
+ WiphyBands::X60ghz::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2720
+ WiphyBands::X6ghz::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2721
+ WiphyBands::S1ghz::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2722
+ WiphyBands::Lc::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BandAttrs)
2723
+ BandAttrs::Freqs::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrequencyAttrs))
2724
+ BandAttrs::Rates::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(BitrateAttrs))
2725
+ BandAttrs::IftypeData::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(IftypeDataAttrs))
2726
+ FrequencyAttrs::Wmm::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(WmmAttrs))
2727
+ IfCombinationAttributes::Limits::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(IfaceLimitAttributes))
2728
+ IfaceLimitAttributes::Types::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SupportedIftypes)
2729
+ IftypeAttrs::Unspecified::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2730
+ IftypeAttrs::Adhoc::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2731
+ IftypeAttrs::Station::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2732
+ IftypeAttrs::Ap::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2733
+ IftypeAttrs::ApVlan::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2734
+ IftypeAttrs::Wds::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2735
+ IftypeAttrs::Monitor::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2736
+ IftypeAttrs::MeshPoint::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2737
+ IftypeAttrs::P2pClient::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2738
+ IftypeAttrs::P2pGo::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2739
+ IftypeAttrs::P2pDevice::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2740
+ IftypeAttrs::Ocb::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2741
+ IftypeAttrs::Nan::DATATYPE = ::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(FrameTypeAttrs)
2742
+ SarAttributes::Specs::DATATYPE = ::Nl::Protocols::Genl::DataTypes::IndexedArray.new(::Nl::Protocols::Genl::DataTypes::NestedAttributes.new(SarSpecs))
2743
+ end
2744
+ module Messages
2745
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
2746
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
2747
+ # in the request.
2748
+ class DoGetWiphyRequest < ::Nl::Protocols::Genl::Message
2749
+ TYPE = 1
2750
+ FIXED_HEADER = nil
2751
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
2752
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy ifindex wdev])
2753
+ # Gets the value of `wiphy` attribute in the message.
2754
+ #--
2755
+ # @rbs return: ::Integer
2756
+ def wiphy; attributes[:"wiphy"]&.value; end
2757
+ # Gets the value of `ifindex` attribute in the message.
2758
+ #--
2759
+ # @rbs return: ::Integer
2760
+ def ifindex; attributes[:"ifindex"]&.value; end
2761
+ # Gets the value of `wdev` attribute in the message.
2762
+ #--
2763
+ # @rbs return: ::Integer
2764
+ def wdev; attributes[:"wdev"]&.value; end
2765
+ end
2766
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
2767
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
2768
+ # in the request.
2769
+ class DoGetWiphyReply < ::Nl::Protocols::Genl::Message
2770
+ TYPE = 3
2771
+ FIXED_HEADER = nil
2772
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
2773
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy wiphy_name mac wiphy_bands supported_iftypes max_num_scan_ssids generation supported_commands max_scan_ie_len cipher_suites wiphy_retry_short wiphy_retry_long wiphy_frag_threshold wiphy_rts_threshold max_num_pmkids wiphy_coverage_class tx_frame_types rx_frame_types control_port_ethertype wiphy_antenna_tx wiphy_antenna_rx offchannel_tx_ok max_remain_on_channel_duration wiphy_antenna_avail_tx wiphy_antenna_avail_rx wowlan_triggers_supported interface_combinations software_iftypes max_num_sched_scan_ssids max_sched_scan_ie_len support_ap_uapsd max_match_sets tdls_support tdls_external_setup feature_flags ht_capability_mask ext_capa ext_capa_mask vht_capability_mask max_csa_counters ext_features max_num_sched_scan_plans max_scan_plan_interval max_scan_plan_iterations bands sched_scan_max_reqs txq_stats txq_limit txq_memory_limit txq_quantum sar_spec max_num_akm_suites])
2774
+ # Gets the value of `wiphy` attribute in the message.
2775
+ #--
2776
+ # @rbs return: ::Integer
2777
+ def wiphy; attributes[:"wiphy"]&.value; end
2778
+ # Gets the value of `wiphy-name` attribute in the message.
2779
+ #--
2780
+ # @rbs return: ::String
2781
+ def wiphy_name; attributes[:"wiphy_name"]&.value; end
2782
+ # Gets the value of `mac` attribute in the message.
2783
+ #--
2784
+ # @rbs return: untyped
2785
+ def mac; attributes[:"mac"]&.value; end
2786
+ # Gets the value of `wiphy-bands` attribute in the message.
2787
+ #--
2788
+ # @rbs return: AttributeSets::WiphyBands
2789
+ def wiphy_bands; attributes[:"wiphy_bands"]&.value; end
2790
+ # Gets the value of `supported-iftypes` attribute in the message.
2791
+ #--
2792
+ # @rbs return: AttributeSets::SupportedIftypes
2793
+ def supported_iftypes; attributes[:"supported_iftypes"]&.value; end
2794
+ # Gets the value of `max-num-scan-ssids` attribute in the message.
2795
+ #--
2796
+ # @rbs return: ::Integer
2797
+ def max_num_scan_ssids; attributes[:"max_num_scan_ssids"]&.value; end
2798
+ # Gets the value of `generation` attribute in the message.
2799
+ #--
2800
+ # @rbs return: ::Integer
2801
+ def generation; attributes[:"generation"]&.value; end
2802
+ # Gets the value of `supported-commands` attribute in the message.
2803
+ #--
2804
+ # @rbs return: untyped
2805
+ def supported_commands; attributes[:"supported_commands"]&.value; end
2806
+ # Gets the value of `max-scan-ie-len` attribute in the message.
2807
+ #--
2808
+ # @rbs return: ::Integer
2809
+ def max_scan_ie_len; attributes[:"max_scan_ie_len"]&.value; end
2810
+ # Gets the value of `cipher-suites` attribute in the message.
2811
+ #--
2812
+ # @rbs return: untyped
2813
+ def cipher_suites; attributes[:"cipher_suites"]&.value; end
2814
+ # Gets the value of `wiphy-retry-short` attribute in the message.
2815
+ #--
2816
+ # @rbs return: ::Integer
2817
+ def wiphy_retry_short; attributes[:"wiphy_retry_short"]&.value; end
2818
+ # Gets the value of `wiphy-retry-long` attribute in the message.
2819
+ #--
2820
+ # @rbs return: ::Integer
2821
+ def wiphy_retry_long; attributes[:"wiphy_retry_long"]&.value; end
2822
+ # Gets the value of `wiphy-frag-threshold` attribute in the message.
2823
+ #--
2824
+ # @rbs return: ::Integer
2825
+ def wiphy_frag_threshold; attributes[:"wiphy_frag_threshold"]&.value; end
2826
+ # Gets the value of `wiphy-rts-threshold` attribute in the message.
2827
+ #--
2828
+ # @rbs return: ::Integer
2829
+ def wiphy_rts_threshold; attributes[:"wiphy_rts_threshold"]&.value; end
2830
+ # Gets the value of `max-num-pmkids` attribute in the message.
2831
+ #--
2832
+ # @rbs return: ::Integer
2833
+ def max_num_pmkids; attributes[:"max_num_pmkids"]&.value; end
2834
+ # Gets the value of `wiphy-coverage-class` attribute in the message.
2835
+ #--
2836
+ # @rbs return: ::Integer
2837
+ def wiphy_coverage_class; attributes[:"wiphy_coverage_class"]&.value; end
2838
+ # Gets the value of `tx-frame-types` attribute in the message.
2839
+ #--
2840
+ # @rbs return: AttributeSets::IftypeAttrs
2841
+ def tx_frame_types; attributes[:"tx_frame_types"]&.value; end
2842
+ # Gets the value of `rx-frame-types` attribute in the message.
2843
+ #--
2844
+ # @rbs return: AttributeSets::IftypeAttrs
2845
+ def rx_frame_types; attributes[:"rx_frame_types"]&.value; end
2846
+ # Gets the value of `control-port-ethertype` attribute in the message.
2847
+ #--
2848
+ # @rbs return: ::Integer
2849
+ def control_port_ethertype; attributes[:"control_port_ethertype"]&.value; end
2850
+ # Gets the value of `wiphy-antenna-tx` attribute in the message.
2851
+ #--
2852
+ # @rbs return: ::Integer
2853
+ def wiphy_antenna_tx; attributes[:"wiphy_antenna_tx"]&.value; end
2854
+ # Gets the value of `wiphy-antenna-rx` attribute in the message.
2855
+ #--
2856
+ # @rbs return: ::Integer
2857
+ def wiphy_antenna_rx; attributes[:"wiphy_antenna_rx"]&.value; end
2858
+ # Gets the value of `offchannel-tx-ok` attribute in the message.
2859
+ #--
2860
+ # @rbs return: ::Integer
2861
+ def offchannel_tx_ok; attributes[:"offchannel_tx_ok"]&.value; end
2862
+ # Gets the value of `max-remain-on-channel-duration` attribute in the message.
2863
+ #--
2864
+ # @rbs return: ::Integer
2865
+ def max_remain_on_channel_duration; attributes[:"max_remain_on_channel_duration"]&.value; end
2866
+ # Gets the value of `wiphy-antenna-avail-tx` attribute in the message.
2867
+ #--
2868
+ # @rbs return: ::Integer
2869
+ def wiphy_antenna_avail_tx; attributes[:"wiphy_antenna_avail_tx"]&.value; end
2870
+ # Gets the value of `wiphy-antenna-avail-rx` attribute in the message.
2871
+ #--
2872
+ # @rbs return: ::Integer
2873
+ def wiphy_antenna_avail_rx; attributes[:"wiphy_antenna_avail_rx"]&.value; end
2874
+ # Gets the value of `wowlan-triggers-supported` attribute in the message.
2875
+ #--
2876
+ # @rbs return: AttributeSets::WowlanTriggersAttrs
2877
+ def wowlan_triggers_supported; attributes[:"wowlan_triggers_supported"]&.value; end
2878
+ # Gets the value of `interface-combinations` attribute in the message.
2879
+ #--
2880
+ # @rbs return: untyped
2881
+ def interface_combinations; attributes[:"interface_combinations"]&.value; end
2882
+ # Gets the value of `software-iftypes` attribute in the message.
2883
+ #--
2884
+ # @rbs return: AttributeSets::SupportedIftypes
2885
+ def software_iftypes; attributes[:"software_iftypes"]&.value; end
2886
+ # Gets the value of `max-num-sched-scan-ssids` attribute in the message.
2887
+ #--
2888
+ # @rbs return: ::Integer
2889
+ def max_num_sched_scan_ssids; attributes[:"max_num_sched_scan_ssids"]&.value; end
2890
+ # Gets the value of `max-sched-scan-ie-len` attribute in the message.
2891
+ #--
2892
+ # @rbs return: ::Integer
2893
+ def max_sched_scan_ie_len; attributes[:"max_sched_scan_ie_len"]&.value; end
2894
+ # Gets the value of `support-ap-uapsd` attribute in the message.
2895
+ #--
2896
+ # @rbs return: ::Integer
2897
+ def support_ap_uapsd; attributes[:"support_ap_uapsd"]&.value; end
2898
+ # Gets the value of `max-match-sets` attribute in the message.
2899
+ #--
2900
+ # @rbs return: ::Integer
2901
+ def max_match_sets; attributes[:"max_match_sets"]&.value; end
2902
+ # Gets the value of `tdls-support` attribute in the message.
2903
+ #--
2904
+ # @rbs return: ::Integer
2905
+ def tdls_support; attributes[:"tdls_support"]&.value; end
2906
+ # Gets the value of `tdls-external-setup` attribute in the message.
2907
+ #--
2908
+ # @rbs return: ::Integer
2909
+ def tdls_external_setup; attributes[:"tdls_external_setup"]&.value; end
2910
+ # Gets the value of `feature-flags` attribute in the message.
2911
+ #--
2912
+ # @rbs return: ::Integer
2913
+ def feature_flags; attributes[:"feature_flags"]&.value; end
2914
+ # Gets the value of `ht-capability-mask` attribute in the message.
2915
+ #--
2916
+ # @rbs return: untyped
2917
+ def ht_capability_mask; attributes[:"ht_capability_mask"]&.value; end
2918
+ # Gets the value of `ext-capa` attribute in the message.
2919
+ #--
2920
+ # @rbs return: untyped
2921
+ def ext_capa; attributes[:"ext_capa"]&.value; end
2922
+ # Gets the value of `ext-capa-mask` attribute in the message.
2923
+ #--
2924
+ # @rbs return: untyped
2925
+ def ext_capa_mask; attributes[:"ext_capa_mask"]&.value; end
2926
+ # Gets the value of `vht-capability-mask` attribute in the message.
2927
+ #--
2928
+ # @rbs return: untyped
2929
+ def vht_capability_mask; attributes[:"vht_capability_mask"]&.value; end
2930
+ # Gets the value of `max-csa-counters` attribute in the message.
2931
+ #--
2932
+ # @rbs return: ::Integer
2933
+ def max_csa_counters; attributes[:"max_csa_counters"]&.value; end
2934
+ # Gets the value of `ext-features` attribute in the message.
2935
+ #--
2936
+ # @rbs return: untyped
2937
+ def ext_features; attributes[:"ext_features"]&.value; end
2938
+ # Gets the value of `max-num-sched-scan-plans` attribute in the message.
2939
+ #--
2940
+ # @rbs return: ::Integer
2941
+ def max_num_sched_scan_plans; attributes[:"max_num_sched_scan_plans"]&.value; end
2942
+ # Gets the value of `max-scan-plan-interval` attribute in the message.
2943
+ #--
2944
+ # @rbs return: ::Integer
2945
+ def max_scan_plan_interval; attributes[:"max_scan_plan_interval"]&.value; end
2946
+ # Gets the value of `max-scan-plan-iterations` attribute in the message.
2947
+ #--
2948
+ # @rbs return: ::Integer
2949
+ def max_scan_plan_iterations; attributes[:"max_scan_plan_iterations"]&.value; end
2950
+ # Gets the value of `bands` attribute in the message.
2951
+ #--
2952
+ # @rbs return: ::Integer
2953
+ def bands; attributes[:"bands"]&.value; end
2954
+ # Gets the value of `sched-scan-max-reqs` attribute in the message.
2955
+ #--
2956
+ # @rbs return: ::Integer
2957
+ def sched_scan_max_reqs; attributes[:"sched_scan_max_reqs"]&.value; end
2958
+ # Gets the value of `txq-stats` attribute in the message.
2959
+ #--
2960
+ # @rbs return: AttributeSets::TxqStatsAttrs
2961
+ def txq_stats; attributes[:"txq_stats"]&.value; end
2962
+ # Gets the value of `txq-limit` attribute in the message.
2963
+ #--
2964
+ # @rbs return: ::Integer
2965
+ def txq_limit; attributes[:"txq_limit"]&.value; end
2966
+ # Gets the value of `txq-memory-limit` attribute in the message.
2967
+ #--
2968
+ # @rbs return: ::Integer
2969
+ def txq_memory_limit; attributes[:"txq_memory_limit"]&.value; end
2970
+ # Gets the value of `txq-quantum` attribute in the message.
2971
+ #--
2972
+ # @rbs return: ::Integer
2973
+ def txq_quantum; attributes[:"txq_quantum"]&.value; end
2974
+ # Gets the value of `sar-spec` attribute in the message.
2975
+ #--
2976
+ # @rbs return: AttributeSets::SarAttributes
2977
+ def sar_spec; attributes[:"sar_spec"]&.value; end
2978
+ # Gets the value of `max-num-akm-suites` attribute in the message.
2979
+ #--
2980
+ # @rbs return: untyped
2981
+ def max_num_akm_suites; attributes[:"max_num_akm_suites"]&.value; end
2982
+ end
2983
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
2984
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
2985
+ # in the request.
2986
+ class DumpGetWiphyRequest < ::Nl::Protocols::Genl::Message
2987
+ TYPE = 1
2988
+ FIXED_HEADER = nil
2989
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
2990
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy ifindex wdev split_wiphy_dump])
2991
+ # Gets the value of `wiphy` attribute in the message.
2992
+ #--
2993
+ # @rbs return: ::Integer
2994
+ def wiphy; attributes[:"wiphy"]&.value; end
2995
+ # Gets the value of `ifindex` attribute in the message.
2996
+ #--
2997
+ # @rbs return: ::Integer
2998
+ def ifindex; attributes[:"ifindex"]&.value; end
2999
+ # Gets the value of `wdev` attribute in the message.
3000
+ #--
3001
+ # @rbs return: ::Integer
3002
+ def wdev; attributes[:"wdev"]&.value; end
3003
+ # Gets the value of `split-wiphy-dump` attribute in the message.
3004
+ #--
3005
+ # @rbs return: ::Integer
3006
+ def split_wiphy_dump; attributes[:"split_wiphy_dump"]&.value; end
3007
+ end
3008
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
3009
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
3010
+ # in the request.
3011
+ class DumpGetWiphyReply < ::Nl::Protocols::Genl::Message
3012
+ TYPE = 3
3013
+ FIXED_HEADER = nil
3014
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3015
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy wiphy_name mac wiphy_bands supported_iftypes max_num_scan_ssids generation supported_commands max_scan_ie_len cipher_suites wiphy_retry_short wiphy_retry_long wiphy_frag_threshold wiphy_rts_threshold max_num_pmkids wiphy_coverage_class tx_frame_types rx_frame_types control_port_ethertype wiphy_antenna_tx wiphy_antenna_rx offchannel_tx_ok max_remain_on_channel_duration wiphy_antenna_avail_tx wiphy_antenna_avail_rx wowlan_triggers_supported interface_combinations software_iftypes max_num_sched_scan_ssids max_sched_scan_ie_len support_ap_uapsd max_match_sets tdls_support tdls_external_setup feature_flags ht_capability_mask ext_capa ext_capa_mask vht_capability_mask max_csa_counters ext_features max_num_sched_scan_plans max_scan_plan_interval max_scan_plan_iterations bands sched_scan_max_reqs txq_stats txq_limit txq_memory_limit txq_quantum sar_spec max_num_akm_suites])
3016
+ # Gets the value of `wiphy` attribute in the message.
3017
+ #--
3018
+ # @rbs return: ::Integer
3019
+ def wiphy; attributes[:"wiphy"]&.value; end
3020
+ # Gets the value of `wiphy-name` attribute in the message.
3021
+ #--
3022
+ # @rbs return: ::String
3023
+ def wiphy_name; attributes[:"wiphy_name"]&.value; end
3024
+ # Gets the value of `mac` attribute in the message.
3025
+ #--
3026
+ # @rbs return: untyped
3027
+ def mac; attributes[:"mac"]&.value; end
3028
+ # Gets the value of `wiphy-bands` attribute in the message.
3029
+ #--
3030
+ # @rbs return: AttributeSets::WiphyBands
3031
+ def wiphy_bands; attributes[:"wiphy_bands"]&.value; end
3032
+ # Gets the value of `supported-iftypes` attribute in the message.
3033
+ #--
3034
+ # @rbs return: AttributeSets::SupportedIftypes
3035
+ def supported_iftypes; attributes[:"supported_iftypes"]&.value; end
3036
+ # Gets the value of `max-num-scan-ssids` attribute in the message.
3037
+ #--
3038
+ # @rbs return: ::Integer
3039
+ def max_num_scan_ssids; attributes[:"max_num_scan_ssids"]&.value; end
3040
+ # Gets the value of `generation` attribute in the message.
3041
+ #--
3042
+ # @rbs return: ::Integer
3043
+ def generation; attributes[:"generation"]&.value; end
3044
+ # Gets the value of `supported-commands` attribute in the message.
3045
+ #--
3046
+ # @rbs return: untyped
3047
+ def supported_commands; attributes[:"supported_commands"]&.value; end
3048
+ # Gets the value of `max-scan-ie-len` attribute in the message.
3049
+ #--
3050
+ # @rbs return: ::Integer
3051
+ def max_scan_ie_len; attributes[:"max_scan_ie_len"]&.value; end
3052
+ # Gets the value of `cipher-suites` attribute in the message.
3053
+ #--
3054
+ # @rbs return: untyped
3055
+ def cipher_suites; attributes[:"cipher_suites"]&.value; end
3056
+ # Gets the value of `wiphy-retry-short` attribute in the message.
3057
+ #--
3058
+ # @rbs return: ::Integer
3059
+ def wiphy_retry_short; attributes[:"wiphy_retry_short"]&.value; end
3060
+ # Gets the value of `wiphy-retry-long` attribute in the message.
3061
+ #--
3062
+ # @rbs return: ::Integer
3063
+ def wiphy_retry_long; attributes[:"wiphy_retry_long"]&.value; end
3064
+ # Gets the value of `wiphy-frag-threshold` attribute in the message.
3065
+ #--
3066
+ # @rbs return: ::Integer
3067
+ def wiphy_frag_threshold; attributes[:"wiphy_frag_threshold"]&.value; end
3068
+ # Gets the value of `wiphy-rts-threshold` attribute in the message.
3069
+ #--
3070
+ # @rbs return: ::Integer
3071
+ def wiphy_rts_threshold; attributes[:"wiphy_rts_threshold"]&.value; end
3072
+ # Gets the value of `max-num-pmkids` attribute in the message.
3073
+ #--
3074
+ # @rbs return: ::Integer
3075
+ def max_num_pmkids; attributes[:"max_num_pmkids"]&.value; end
3076
+ # Gets the value of `wiphy-coverage-class` attribute in the message.
3077
+ #--
3078
+ # @rbs return: ::Integer
3079
+ def wiphy_coverage_class; attributes[:"wiphy_coverage_class"]&.value; end
3080
+ # Gets the value of `tx-frame-types` attribute in the message.
3081
+ #--
3082
+ # @rbs return: AttributeSets::IftypeAttrs
3083
+ def tx_frame_types; attributes[:"tx_frame_types"]&.value; end
3084
+ # Gets the value of `rx-frame-types` attribute in the message.
3085
+ #--
3086
+ # @rbs return: AttributeSets::IftypeAttrs
3087
+ def rx_frame_types; attributes[:"rx_frame_types"]&.value; end
3088
+ # Gets the value of `control-port-ethertype` attribute in the message.
3089
+ #--
3090
+ # @rbs return: ::Integer
3091
+ def control_port_ethertype; attributes[:"control_port_ethertype"]&.value; end
3092
+ # Gets the value of `wiphy-antenna-tx` attribute in the message.
3093
+ #--
3094
+ # @rbs return: ::Integer
3095
+ def wiphy_antenna_tx; attributes[:"wiphy_antenna_tx"]&.value; end
3096
+ # Gets the value of `wiphy-antenna-rx` attribute in the message.
3097
+ #--
3098
+ # @rbs return: ::Integer
3099
+ def wiphy_antenna_rx; attributes[:"wiphy_antenna_rx"]&.value; end
3100
+ # Gets the value of `offchannel-tx-ok` attribute in the message.
3101
+ #--
3102
+ # @rbs return: ::Integer
3103
+ def offchannel_tx_ok; attributes[:"offchannel_tx_ok"]&.value; end
3104
+ # Gets the value of `max-remain-on-channel-duration` attribute in the message.
3105
+ #--
3106
+ # @rbs return: ::Integer
3107
+ def max_remain_on_channel_duration; attributes[:"max_remain_on_channel_duration"]&.value; end
3108
+ # Gets the value of `wiphy-antenna-avail-tx` attribute in the message.
3109
+ #--
3110
+ # @rbs return: ::Integer
3111
+ def wiphy_antenna_avail_tx; attributes[:"wiphy_antenna_avail_tx"]&.value; end
3112
+ # Gets the value of `wiphy-antenna-avail-rx` attribute in the message.
3113
+ #--
3114
+ # @rbs return: ::Integer
3115
+ def wiphy_antenna_avail_rx; attributes[:"wiphy_antenna_avail_rx"]&.value; end
3116
+ # Gets the value of `wowlan-triggers-supported` attribute in the message.
3117
+ #--
3118
+ # @rbs return: AttributeSets::WowlanTriggersAttrs
3119
+ def wowlan_triggers_supported; attributes[:"wowlan_triggers_supported"]&.value; end
3120
+ # Gets the value of `interface-combinations` attribute in the message.
3121
+ #--
3122
+ # @rbs return: untyped
3123
+ def interface_combinations; attributes[:"interface_combinations"]&.value; end
3124
+ # Gets the value of `software-iftypes` attribute in the message.
3125
+ #--
3126
+ # @rbs return: AttributeSets::SupportedIftypes
3127
+ def software_iftypes; attributes[:"software_iftypes"]&.value; end
3128
+ # Gets the value of `max-num-sched-scan-ssids` attribute in the message.
3129
+ #--
3130
+ # @rbs return: ::Integer
3131
+ def max_num_sched_scan_ssids; attributes[:"max_num_sched_scan_ssids"]&.value; end
3132
+ # Gets the value of `max-sched-scan-ie-len` attribute in the message.
3133
+ #--
3134
+ # @rbs return: ::Integer
3135
+ def max_sched_scan_ie_len; attributes[:"max_sched_scan_ie_len"]&.value; end
3136
+ # Gets the value of `support-ap-uapsd` attribute in the message.
3137
+ #--
3138
+ # @rbs return: ::Integer
3139
+ def support_ap_uapsd; attributes[:"support_ap_uapsd"]&.value; end
3140
+ # Gets the value of `max-match-sets` attribute in the message.
3141
+ #--
3142
+ # @rbs return: ::Integer
3143
+ def max_match_sets; attributes[:"max_match_sets"]&.value; end
3144
+ # Gets the value of `tdls-support` attribute in the message.
3145
+ #--
3146
+ # @rbs return: ::Integer
3147
+ def tdls_support; attributes[:"tdls_support"]&.value; end
3148
+ # Gets the value of `tdls-external-setup` attribute in the message.
3149
+ #--
3150
+ # @rbs return: ::Integer
3151
+ def tdls_external_setup; attributes[:"tdls_external_setup"]&.value; end
3152
+ # Gets the value of `feature-flags` attribute in the message.
3153
+ #--
3154
+ # @rbs return: ::Integer
3155
+ def feature_flags; attributes[:"feature_flags"]&.value; end
3156
+ # Gets the value of `ht-capability-mask` attribute in the message.
3157
+ #--
3158
+ # @rbs return: untyped
3159
+ def ht_capability_mask; attributes[:"ht_capability_mask"]&.value; end
3160
+ # Gets the value of `ext-capa` attribute in the message.
3161
+ #--
3162
+ # @rbs return: untyped
3163
+ def ext_capa; attributes[:"ext_capa"]&.value; end
3164
+ # Gets the value of `ext-capa-mask` attribute in the message.
3165
+ #--
3166
+ # @rbs return: untyped
3167
+ def ext_capa_mask; attributes[:"ext_capa_mask"]&.value; end
3168
+ # Gets the value of `vht-capability-mask` attribute in the message.
3169
+ #--
3170
+ # @rbs return: untyped
3171
+ def vht_capability_mask; attributes[:"vht_capability_mask"]&.value; end
3172
+ # Gets the value of `max-csa-counters` attribute in the message.
3173
+ #--
3174
+ # @rbs return: ::Integer
3175
+ def max_csa_counters; attributes[:"max_csa_counters"]&.value; end
3176
+ # Gets the value of `ext-features` attribute in the message.
3177
+ #--
3178
+ # @rbs return: untyped
3179
+ def ext_features; attributes[:"ext_features"]&.value; end
3180
+ # Gets the value of `max-num-sched-scan-plans` attribute in the message.
3181
+ #--
3182
+ # @rbs return: ::Integer
3183
+ def max_num_sched_scan_plans; attributes[:"max_num_sched_scan_plans"]&.value; end
3184
+ # Gets the value of `max-scan-plan-interval` attribute in the message.
3185
+ #--
3186
+ # @rbs return: ::Integer
3187
+ def max_scan_plan_interval; attributes[:"max_scan_plan_interval"]&.value; end
3188
+ # Gets the value of `max-scan-plan-iterations` attribute in the message.
3189
+ #--
3190
+ # @rbs return: ::Integer
3191
+ def max_scan_plan_iterations; attributes[:"max_scan_plan_iterations"]&.value; end
3192
+ # Gets the value of `bands` attribute in the message.
3193
+ #--
3194
+ # @rbs return: ::Integer
3195
+ def bands; attributes[:"bands"]&.value; end
3196
+ # Gets the value of `sched-scan-max-reqs` attribute in the message.
3197
+ #--
3198
+ # @rbs return: ::Integer
3199
+ def sched_scan_max_reqs; attributes[:"sched_scan_max_reqs"]&.value; end
3200
+ # Gets the value of `txq-stats` attribute in the message.
3201
+ #--
3202
+ # @rbs return: AttributeSets::TxqStatsAttrs
3203
+ def txq_stats; attributes[:"txq_stats"]&.value; end
3204
+ # Gets the value of `txq-limit` attribute in the message.
3205
+ #--
3206
+ # @rbs return: ::Integer
3207
+ def txq_limit; attributes[:"txq_limit"]&.value; end
3208
+ # Gets the value of `txq-memory-limit` attribute in the message.
3209
+ #--
3210
+ # @rbs return: ::Integer
3211
+ def txq_memory_limit; attributes[:"txq_memory_limit"]&.value; end
3212
+ # Gets the value of `txq-quantum` attribute in the message.
3213
+ #--
3214
+ # @rbs return: ::Integer
3215
+ def txq_quantum; attributes[:"txq_quantum"]&.value; end
3216
+ # Gets the value of `sar-spec` attribute in the message.
3217
+ #--
3218
+ # @rbs return: AttributeSets::SarAttributes
3219
+ def sar_spec; attributes[:"sar_spec"]&.value; end
3220
+ # Gets the value of `max-num-akm-suites` attribute in the message.
3221
+ #--
3222
+ # @rbs return: untyped
3223
+ def max_num_akm_suites; attributes[:"max_num_akm_suites"]&.value; end
3224
+ end
3225
+ # Get information about an interface or dump a list of all interfaces
3226
+ class DoGetInterfaceRequest < ::Nl::Protocols::Genl::Message
3227
+ TYPE = 5
3228
+ FIXED_HEADER = nil
3229
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3230
+ ATTRIBUTES = Ractor.make_shareable(%i[ifname])
3231
+ # Gets the value of `ifname` attribute in the message.
3232
+ #--
3233
+ # @rbs return: ::String
3234
+ def ifname; attributes[:"ifname"]&.value; end
3235
+ end
3236
+ # Get information about an interface or dump a list of all interfaces
3237
+ class DoGetInterfaceReply < ::Nl::Protocols::Genl::Message
3238
+ TYPE = 7
3239
+ FIXED_HEADER = nil
3240
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3241
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy ifindex ifname iftype mac generation x_4addr wdev txq_stats])
3242
+ # Gets the value of `wiphy` attribute in the message.
3243
+ #--
3244
+ # @rbs return: ::Integer
3245
+ def wiphy; attributes[:"wiphy"]&.value; end
3246
+ # Gets the value of `ifindex` attribute in the message.
3247
+ #--
3248
+ # @rbs return: ::Integer
3249
+ def ifindex; attributes[:"ifindex"]&.value; end
3250
+ # Gets the value of `ifname` attribute in the message.
3251
+ #--
3252
+ # @rbs return: ::String
3253
+ def ifname; attributes[:"ifname"]&.value; end
3254
+ # Gets the value of `iftype` attribute in the message.
3255
+ #--
3256
+ # @rbs return: ::Integer
3257
+ def iftype; attributes[:"iftype"]&.value; end
3258
+ # Gets the value of `mac` attribute in the message.
3259
+ #--
3260
+ # @rbs return: untyped
3261
+ def mac; attributes[:"mac"]&.value; end
3262
+ # Gets the value of `generation` attribute in the message.
3263
+ #--
3264
+ # @rbs return: ::Integer
3265
+ def generation; attributes[:"generation"]&.value; end
3266
+ # Gets the value of `4addr` attribute in the message.
3267
+ #--
3268
+ # @rbs return: ::Integer
3269
+ def x_4addr; attributes[:"x_4addr"]&.value; end
3270
+ # Gets the value of `wdev` attribute in the message.
3271
+ #--
3272
+ # @rbs return: ::Integer
3273
+ def wdev; attributes[:"wdev"]&.value; end
3274
+ # Gets the value of `txq-stats` attribute in the message.
3275
+ #--
3276
+ # @rbs return: AttributeSets::TxqStatsAttrs
3277
+ def txq_stats; attributes[:"txq_stats"]&.value; end
3278
+ end
3279
+ # Get information about an interface or dump a list of all interfaces
3280
+ class DumpGetInterfaceRequest < ::Nl::Protocols::Genl::Message
3281
+ TYPE = 5
3282
+ FIXED_HEADER = nil
3283
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3284
+ ATTRIBUTES = Ractor.make_shareable(%i[ifname])
3285
+ # Gets the value of `ifname` attribute in the message.
3286
+ #--
3287
+ # @rbs return: ::String
3288
+ def ifname; attributes[:"ifname"]&.value; end
3289
+ end
3290
+ # Get information about an interface or dump a list of all interfaces
3291
+ class DumpGetInterfaceReply < ::Nl::Protocols::Genl::Message
3292
+ TYPE = 7
3293
+ FIXED_HEADER = nil
3294
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3295
+ ATTRIBUTES = Ractor.make_shareable(%i[wiphy ifindex ifname iftype mac generation x_4addr wdev txq_stats])
3296
+ # Gets the value of `wiphy` attribute in the message.
3297
+ #--
3298
+ # @rbs return: ::Integer
3299
+ def wiphy; attributes[:"wiphy"]&.value; end
3300
+ # Gets the value of `ifindex` attribute in the message.
3301
+ #--
3302
+ # @rbs return: ::Integer
3303
+ def ifindex; attributes[:"ifindex"]&.value; end
3304
+ # Gets the value of `ifname` attribute in the message.
3305
+ #--
3306
+ # @rbs return: ::String
3307
+ def ifname; attributes[:"ifname"]&.value; end
3308
+ # Gets the value of `iftype` attribute in the message.
3309
+ #--
3310
+ # @rbs return: ::Integer
3311
+ def iftype; attributes[:"iftype"]&.value; end
3312
+ # Gets the value of `mac` attribute in the message.
3313
+ #--
3314
+ # @rbs return: untyped
3315
+ def mac; attributes[:"mac"]&.value; end
3316
+ # Gets the value of `generation` attribute in the message.
3317
+ #--
3318
+ # @rbs return: ::Integer
3319
+ def generation; attributes[:"generation"]&.value; end
3320
+ # Gets the value of `4addr` attribute in the message.
3321
+ #--
3322
+ # @rbs return: ::Integer
3323
+ def x_4addr; attributes[:"x_4addr"]&.value; end
3324
+ # Gets the value of `wdev` attribute in the message.
3325
+ #--
3326
+ # @rbs return: ::Integer
3327
+ def wdev; attributes[:"wdev"]&.value; end
3328
+ # Gets the value of `txq-stats` attribute in the message.
3329
+ #--
3330
+ # @rbs return: AttributeSets::TxqStatsAttrs
3331
+ def txq_stats; attributes[:"txq_stats"]&.value; end
3332
+ end
3333
+ # Get information about supported protocol features
3334
+ class DoGetProtocolFeaturesRequest < ::Nl::Protocols::Genl::Message
3335
+ TYPE = 95
3336
+ FIXED_HEADER = nil
3337
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3338
+ ATTRIBUTES = Ractor.make_shareable(%i[protocol_features])
3339
+ # Gets the value of `protocol-features` attribute in the message.
3340
+ #--
3341
+ # @rbs return: ::Integer
3342
+ def protocol_features; attributes[:"protocol_features"]&.value; end
3343
+ end
3344
+ # Get information about supported protocol features
3345
+ class DoGetProtocolFeaturesReply < ::Nl::Protocols::Genl::Message
3346
+ TYPE = 95
3347
+ FIXED_HEADER = nil
3348
+ ATTRIBUTE_SET = AttributeSets::Nl80211Attrs
3349
+ ATTRIBUTES = Ractor.make_shareable(%i[protocol_features])
3350
+ # Gets the value of `protocol-features` attribute in the message.
3351
+ #--
3352
+ # @rbs return: ::Integer
3353
+ def protocol_features; attributes[:"protocol_features"]&.value; end
3354
+ end
3355
+ end
3356
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
3357
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
3358
+ # in the request.
3359
+ #--
3360
+ # @rbs (?wiphy: ::Integer, ?ifindex: ::Integer, ?wdev: ::Integer) -> Messages::DoGetWiphyReply
3361
+ def do_get_wiphy(**args)
3362
+ exchange_message(:"do", Messages::DoGetWiphyRequest, Messages::DoGetWiphyReply, args)
3363
+ end
3364
+ # Get information about a wiphy or dump a list of all wiphys. Requests to
3365
+ # dump get-wiphy should unconditionally include the split-wiphy-dump flag
3366
+ # in the request.
3367
+ #--
3368
+ # @rbs (?wiphy: ::Integer, ?ifindex: ::Integer, ?wdev: ::Integer, ?split_wiphy_dump: ::Integer) -> Enumerable[Messages::DumpGetWiphyReply]
3369
+ # | (?wiphy: ::Integer, ?ifindex: ::Integer, ?wdev: ::Integer, ?split_wiphy_dump: ::Integer) { (Messages::DumpGetWiphyReply) -> void } -> void
3370
+ def dump_get_wiphy(**args, &block)
3371
+ exchange_message(:"dump", Messages::DumpGetWiphyRequest, Messages::DumpGetWiphyReply, args, &block)
3372
+ end
3373
+ # Get information about an interface or dump a list of all interfaces
3374
+ #--
3375
+ # @rbs (?ifname: ::String) -> Messages::DoGetInterfaceReply
3376
+ def do_get_interface(**args)
3377
+ exchange_message(:"do", Messages::DoGetInterfaceRequest, Messages::DoGetInterfaceReply, args)
3378
+ end
3379
+ # Get information about an interface or dump a list of all interfaces
3380
+ #--
3381
+ # @rbs (?ifname: ::String) -> Enumerable[Messages::DumpGetInterfaceReply]
3382
+ # | (?ifname: ::String) { (Messages::DumpGetInterfaceReply) -> void } -> void
3383
+ def dump_get_interface(**args, &block)
3384
+ exchange_message(:"dump", Messages::DumpGetInterfaceRequest, Messages::DumpGetInterfaceReply, args, &block)
3385
+ end
3386
+ # Get information about supported protocol features
3387
+ #--
3388
+ # @rbs (?protocol_features: ::Integer) -> Messages::DoGetProtocolFeaturesReply
3389
+ def do_get_protocol_features(**args)
3390
+ exchange_message(:"do", Messages::DoGetProtocolFeaturesRequest, Messages::DoGetProtocolFeaturesReply, args)
3391
+ end
3392
+ end
3393
+ end; end