nl-linux 0.2.3 → 0.3.0

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 (57) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec +3 -0
  3. data/CHANGELOG.md +8 -0
  4. data/NLSPEC_VERSION +1 -1
  5. data/Rakefile +13 -3
  6. data/generated/nl/linux/binder.rb +80 -0
  7. data/generated/nl/linux/conntrack.rb +39 -2
  8. data/generated/nl/linux/dev_energymodel.rb +106 -0
  9. data/generated/nl/linux/devlink.rb +1478 -200
  10. data/generated/nl/linux/dpll.rb +790 -66
  11. data/generated/nl/linux/drm_ras.rb +309 -0
  12. data/generated/nl/linux/ethtool.rb +1597 -248
  13. data/generated/nl/linux/fou.rb +82 -13
  14. data/generated/nl/linux/handshake.rb +93 -1
  15. data/generated/nl/linux/lockd.rb +50 -0
  16. data/generated/nl/linux/mptcp_pm.rb +159 -0
  17. data/generated/nl/linux/net_shaper.rb +124 -1
  18. data/generated/nl/linux/netdev.rb +515 -6
  19. data/generated/nl/linux/nfsd.rb +878 -10
  20. data/generated/nl/linux/nftables.rb +2134 -179
  21. data/generated/nl/linux/nl80211.rb +81 -22
  22. data/generated/nl/linux/nlctrl.rb +59 -8
  23. data/generated/nl/linux/ovpn.rb +207 -12
  24. data/generated/nl/linux/ovs_datapath.rb +59 -10
  25. data/generated/nl/linux/ovs_flow.rb +63 -20
  26. data/generated/nl/linux/ovs_packet.rb +277 -0
  27. data/generated/nl/linux/ovs_vport.rb +59 -10
  28. data/generated/nl/linux/psp.rb +453 -6
  29. data/generated/nl/linux/rt_addr.rb +69 -14
  30. data/generated/nl/linux/rt_link.rb +452 -112
  31. data/generated/nl/linux/rt_neigh.rb +227 -16
  32. data/generated/nl/linux/rt_route.rb +92 -49
  33. data/generated/nl/linux/rt_rule.rb +300 -11
  34. data/generated/nl/linux/sunrpc_cache.rb +423 -0
  35. data/generated/nl/linux/tc.rb +168 -54
  36. data/generated/nl/linux/tcp_metrics.rb +69 -12
  37. data/generated/nl/linux/team.rb +80 -0
  38. data/generated/nl/linux/wireguard.rb +99 -7
  39. data/generated/nl/linux.rb +3 -0
  40. data/lib/nl/linux/version.rb +1 -1
  41. data/linux/devlink.yaml +92 -2
  42. data/linux/dpll.yaml +94 -5
  43. data/linux/drm_ras.yaml +126 -0
  44. data/linux/ethtool.yaml +21 -4
  45. data/linux/handshake.yaml +9 -0
  46. data/linux/mptcp_pm.yaml +1 -0
  47. data/linux/net_shaper.yaml +13 -6
  48. data/linux/netdev.yaml +61 -2
  49. data/linux/nfsd.yaml +303 -2
  50. data/linux/nftables.yaml +640 -49
  51. data/linux/ovpn.yaml +26 -1
  52. data/linux/ovs_packet.yaml +130 -0
  53. data/linux/psp.yaml +80 -3
  54. data/linux/rt-link.yaml +70 -24
  55. data/linux/sunrpc_cache.yaml +149 -0
  56. data/linux/tc.yaml +3 -0
  57. metadata +17 -9
@@ -1,4 +1,6 @@
1
1
  # SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2
+ #
3
+ # This file is based on Documentation/netlink/specs/nftables.yaml from Linux v7.2.
2
4
  #--
3
5
  # frozen_string_literal: true
4
6
  # rbs_inline: enabled
@@ -9,6 +11,7 @@ module Nl; module Linux
9
11
  class Nftables < ::Nl::Family
10
12
  NAME = "nftables"
11
13
  PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Raw.new("nftables", 12))
14
+ MCAST_GROUPS = Ractor.make_shareable({:"mgmt" => ::Nl::McastGroup.new("mgmt", nil)}) #: Hash[::Symbol, ::Nl::McastGroup]
12
15
  module Structs
13
16
  Nfgenmsg = Struct.new(
14
17
  :"nfgen_family", #: ::Integer
@@ -35,19 +38,126 @@ class Nftables < ::Nl::Family
35
38
  end
36
39
  end
37
40
  module AttributeSets
38
- class EmptyAttrs < ::Nl::Protocols::Raw::AttributeSet
41
+ # log expression netlink attributes
42
+ class LogAttrs < ::Nl::Protocols::Raw::AttributeSet
39
43
  # Abstract class
40
44
  class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
41
45
  end
42
- class Name < Attribute
46
+ class Group < Attribute
43
47
  TYPE = 1
44
- NAME = :"name"
48
+ NAME = :"group"
49
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
50
+ end
51
+ class Prefix < Attribute
52
+ TYPE = 2
53
+ NAME = :"prefix"
45
54
  DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
46
55
  end
56
+ class Snaplen < Attribute
57
+ TYPE = 3
58
+ NAME = :"snaplen"
59
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
60
+ end
61
+ class Qthreshold < Attribute
62
+ TYPE = 4
63
+ NAME = :"qthreshold"
64
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
65
+ end
66
+ class Level < Attribute
67
+ TYPE = 5
68
+ NAME = :"level"
69
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
70
+ end
71
+ class Flags < Attribute
72
+ TYPE = 6
73
+ NAME = :"flags"
74
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
75
+ end
47
76
  # :nodoc:
48
- BY_NAME = Ractor.make_shareable({:"name" => Name}) #: Hash[::Symbol, Attribute]
77
+ BY_NAME = Ractor.make_shareable({:"group" => Group, :"prefix" => Prefix, :"snaplen" => Snaplen, :"qthreshold" => Qthreshold, :"level" => Level, :"flags" => Flags}) #: Hash[::Symbol, Attribute]
49
78
  # :nodoc:
50
- BY_TYPE = Ractor.make_shareable({1 => Name}) #: Hash[::Integer, Attribute]
79
+ BY_TYPE = Ractor.make_shareable({1 => Group, 2 => Prefix, 3 => Snaplen, 4 => Qthreshold, 5 => Level, 6 => Flags}) #: Hash[::Integer, Attribute]
80
+ class << self
81
+ # Looks up Attribute class by name.
82
+ #--
83
+ # @rbs name: Symbol
84
+ # @rbs return: Attribute
85
+ def by_name(name); BY_NAME.fetch(name); end
86
+ # Looks up Attribute class by type value.
87
+ #--
88
+ # @rbs type: Integer
89
+ # @rbs return: Attribute
90
+ def by_type(type); BY_TYPE.fetch(type); end
91
+ end
92
+ end
93
+ # nf_tables number generator expression netlink attributes
94
+ class NumgenAttrs < ::Nl::Protocols::Raw::AttributeSet
95
+ # Abstract class
96
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
97
+ end
98
+ class Dreg < Attribute
99
+ TYPE = 1
100
+ NAME = :"dreg"
101
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
102
+ end
103
+ class Modulus < Attribute
104
+ TYPE = 2
105
+ NAME = :"modulus"
106
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
107
+ end
108
+ class Type < Attribute
109
+ TYPE = 3
110
+ NAME = :"type"
111
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
112
+ end
113
+ class Offset < Attribute
114
+ TYPE = 4
115
+ NAME = :"offset"
116
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
117
+ end
118
+ # :nodoc:
119
+ BY_NAME = Ractor.make_shareable({:"dreg" => Dreg, :"modulus" => Modulus, :"type" => Type, :"offset" => Offset}) #: Hash[::Symbol, Attribute]
120
+ # :nodoc:
121
+ BY_TYPE = Ractor.make_shareable({1 => Dreg, 2 => Modulus, 3 => Type, 4 => Offset}) #: Hash[::Integer, Attribute]
122
+ class << self
123
+ # Looks up Attribute class by name.
124
+ #--
125
+ # @rbs name: Symbol
126
+ # @rbs return: Attribute
127
+ def by_name(name); BY_NAME.fetch(name); end
128
+ # Looks up Attribute class by type value.
129
+ #--
130
+ # @rbs type: Integer
131
+ # @rbs return: Attribute
132
+ def by_type(type); BY_TYPE.fetch(type); end
133
+ end
134
+ end
135
+ class RangeAttrs < ::Nl::Protocols::Raw::AttributeSet
136
+ # Abstract class
137
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
138
+ end
139
+ class Sreg < Attribute
140
+ TYPE = 1
141
+ NAME = :"sreg"
142
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
143
+ end
144
+ class Op < Attribute
145
+ TYPE = 2
146
+ NAME = :"op"
147
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: -> { raise ArgumentError, "Value #{it.inspect} is greater than maximum 255" unless it <= 255 })
148
+ end
149
+ class FromData < Attribute
150
+ TYPE = 3
151
+ NAME = :"from_data"
152
+ end
153
+ class ToData < Attribute
154
+ TYPE = 4
155
+ NAME = :"to_data"
156
+ end
157
+ # :nodoc:
158
+ BY_NAME = Ractor.make_shareable({:"sreg" => Sreg, :"op" => Op, :"from_data" => FromData, :"to_data" => ToData}) #: Hash[::Symbol, Attribute]
159
+ # :nodoc:
160
+ BY_TYPE = Ractor.make_shareable({1 => Sreg, 2 => Op, 3 => FromData, 4 => ToData}) #: Hash[::Integer, Attribute]
51
161
  class << self
52
162
  # Looks up Attribute class by name.
53
163
  #--
@@ -111,15 +221,25 @@ class Nftables < ::Nl::Family
111
221
  NAME = :"handle"
112
222
  DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
113
223
  end
114
- class Userdata < Attribute
224
+ class Pad < Attribute
115
225
  TYPE = 5
226
+ NAME = :"pad"
227
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Pad.new()
228
+ end
229
+ class Userdata < Attribute
230
+ TYPE = 6
116
231
  NAME = :"userdata"
117
232
  DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
118
233
  end
234
+ class Owner < Attribute
235
+ TYPE = 7
236
+ NAME = :"owner"
237
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
238
+ end
119
239
  # :nodoc:
120
- BY_NAME = Ractor.make_shareable({:"name" => Name, :"flags" => Flags, :"use" => Use, :"handle" => Handle, :"userdata" => Userdata}) #: Hash[::Symbol, Attribute]
240
+ BY_NAME = Ractor.make_shareable({:"name" => Name, :"flags" => Flags, :"use" => Use, :"handle" => Handle, :"pad" => Pad, :"userdata" => Userdata, :"owner" => Owner}) #: Hash[::Symbol, Attribute]
121
241
  # :nodoc:
122
- BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Flags, 3 => Use, 4 => Handle, 5 => Userdata}) #: Hash[::Integer, Attribute]
242
+ BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Flags, 3 => Use, 4 => Handle, 5 => Pad, 6 => Userdata, 7 => Owner}) #: Hash[::Integer, Attribute]
123
243
  class << self
124
244
  # Looks up Attribute class by name.
125
245
  #--
@@ -316,12 +436,12 @@ class Nftables < ::Nl::Family
316
436
  class Bytes < Attribute
317
437
  TYPE = 1
318
438
  NAME = :"bytes"
319
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
439
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
320
440
  end
321
441
  class Packets < Attribute
322
442
  TYPE = 2
323
443
  NAME = :"packets"
324
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
444
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
325
445
  end
326
446
  # :nodoc:
327
447
  BY_NAME = Ractor.make_shareable({:"bytes" => Bytes, :"packets" => Packets}) #: Hash[::Symbol, Attribute]
@@ -472,12 +592,12 @@ class Nftables < ::Nl::Family
472
592
  class Proto < Attribute
473
593
  TYPE = 1
474
594
  NAME = :"proto"
475
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
595
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
476
596
  end
477
597
  class Flags < Attribute
478
598
  TYPE = 2
479
599
  NAME = :"flags"
480
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
600
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
481
601
  end
482
602
  # :nodoc:
483
603
  BY_NAME = Ractor.make_shareable({:"proto" => Proto, :"flags" => Flags}) #: Hash[::Symbol, Attribute]
@@ -587,10 +707,20 @@ class Nftables < ::Nl::Family
587
707
  TYPE = 18
588
708
  NAME = :"expressions"
589
709
  end
710
+ class Type < Attribute
711
+ TYPE = 19
712
+ NAME = :"type"
713
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
714
+ end
715
+ class Count < Attribute
716
+ TYPE = 20
717
+ NAME = :"count"
718
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
719
+ end
590
720
  # :nodoc:
591
- BY_NAME = Ractor.make_shareable({:"table" => Table, :"name" => Name, :"flags" => Flags, :"key_type" => KeyType, :"key_len" => KeyLen, :"data_type" => DataType, :"data_len" => DataLen, :"policy" => Policy, :"desc" => Desc, :"id" => Id, :"timeout" => Timeout, :"gc_interval" => GcInterval, :"userdata" => Userdata, :"pad" => Pad, :"obj_type" => ObjType, :"handle" => Handle, :"expr" => Expr, :"expressions" => Expressions}) #: Hash[::Symbol, Attribute]
721
+ BY_NAME = Ractor.make_shareable({:"table" => Table, :"name" => Name, :"flags" => Flags, :"key_type" => KeyType, :"key_len" => KeyLen, :"data_type" => DataType, :"data_len" => DataLen, :"policy" => Policy, :"desc" => Desc, :"id" => Id, :"timeout" => Timeout, :"gc_interval" => GcInterval, :"userdata" => Userdata, :"pad" => Pad, :"obj_type" => ObjType, :"handle" => Handle, :"expr" => Expr, :"expressions" => Expressions, :"type" => Type, :"count" => Count}) #: Hash[::Symbol, Attribute]
592
722
  # :nodoc:
593
- BY_TYPE = Ractor.make_shareable({1 => Table, 2 => Name, 3 => Flags, 4 => KeyType, 5 => KeyLen, 6 => DataType, 7 => DataLen, 8 => Policy, 9 => Desc, 10 => Id, 11 => Timeout, 12 => GcInterval, 13 => Userdata, 14 => Pad, 15 => ObjType, 16 => Handle, 17 => Expr, 18 => Expressions}) #: Hash[::Integer, Attribute]
723
+ BY_TYPE = Ractor.make_shareable({1 => Table, 2 => Name, 3 => Flags, 4 => KeyType, 5 => KeyLen, 6 => DataType, 7 => DataLen, 8 => Policy, 9 => Desc, 10 => Id, 11 => Timeout, 12 => GcInterval, 13 => Userdata, 14 => Pad, 15 => ObjType, 16 => Handle, 17 => Expr, 18 => Expressions, 19 => Type, 20 => Count}) #: Hash[::Integer, Attribute]
594
724
  class << self
595
725
  # Looks up Attribute class by name.
596
726
  #--
@@ -1069,6 +1199,20 @@ class Nftables < ::Nl::Family
1069
1199
  def by_type(type); BY_TYPE.fetch(type); end
1070
1200
  end
1071
1201
  end
1202
+ # The bitwise expression supports boolean and shift operations. It
1203
+ # implements the boolean operations by performing the following
1204
+ # operation::
1205
+ #
1206
+ # dreg = (sreg & mask) ^ xor
1207
+ #
1208
+ # with these mask and xor values:
1209
+ #
1210
+ # op mask xor
1211
+ # ---- ---- ---
1212
+ # NOT: 1 1
1213
+ # OR: ~x x
1214
+ # XOR: 1 x
1215
+ # AND: x 0
1072
1216
  class ExprBitwiseAttrs < ::Nl::Protocols::Raw::AttributeSet
1073
1217
  # Abstract class
1074
1218
  class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
@@ -1099,7 +1243,7 @@ class Nftables < ::Nl::Family
1099
1243
  class Op < Attribute
1100
1244
  TYPE = 6
1101
1245
  NAME = :"op"
1102
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
1246
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: -> { raise ArgumentError, "Value #{it.inspect} is greater than maximum 255" unless it <= 255 })
1103
1247
  end
1104
1248
  class Data < Attribute
1105
1249
  TYPE = 7
@@ -1204,7 +1348,7 @@ class Nftables < ::Nl::Family
1204
1348
  class ChainId < Attribute
1205
1349
  TYPE = 3
1206
1350
  NAME = :"chain_id"
1207
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
1351
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
1208
1352
  end
1209
1353
  # :nodoc:
1210
1354
  BY_NAME = Ractor.make_shareable({:"code" => Code, :"chain" => Chain, :"chain_id" => ChainId}) #: Hash[::Symbol, Attribute]
@@ -1230,12 +1374,12 @@ class Nftables < ::Nl::Family
1230
1374
  class Bytes < Attribute
1231
1375
  TYPE = 1
1232
1376
  NAME = :"bytes"
1233
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1377
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
1234
1378
  end
1235
1379
  class Packets < Attribute
1236
1380
  TYPE = 2
1237
1381
  NAME = :"packets"
1238
- DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U64, check: nil)
1382
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
1239
1383
  end
1240
1384
  class Pad < Attribute
1241
1385
  TYPE = 3
@@ -1438,6 +1582,42 @@ class Nftables < ::Nl::Family
1438
1582
  def by_type(type); BY_TYPE.fetch(type); end
1439
1583
  end
1440
1584
  end
1585
+ class ExprMasqAttrs < ::Nl::Protocols::Raw::AttributeSet
1586
+ # Abstract class
1587
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
1588
+ end
1589
+ class Flags < Attribute
1590
+ TYPE = 1
1591
+ NAME = :"flags"
1592
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
1593
+ end
1594
+ class RegProtoMin < Attribute
1595
+ TYPE = 2
1596
+ NAME = :"reg_proto_min"
1597
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
1598
+ end
1599
+ class RegProtoMax < Attribute
1600
+ TYPE = 3
1601
+ NAME = :"reg_proto_max"
1602
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
1603
+ end
1604
+ # :nodoc:
1605
+ BY_NAME = Ractor.make_shareable({:"flags" => Flags, :"reg_proto_min" => RegProtoMin, :"reg_proto_max" => RegProtoMax}) #: Hash[::Symbol, Attribute]
1606
+ # :nodoc:
1607
+ BY_TYPE = Ractor.make_shareable({1 => Flags, 2 => RegProtoMin, 3 => RegProtoMax}) #: Hash[::Integer, Attribute]
1608
+ class << self
1609
+ # Looks up Attribute class by name.
1610
+ #--
1611
+ # @rbs name: Symbol
1612
+ # @rbs return: Attribute
1613
+ def by_name(name); BY_NAME.fetch(name); end
1614
+ # Looks up Attribute class by type value.
1615
+ #--
1616
+ # @rbs type: Integer
1617
+ # @rbs return: Attribute
1618
+ def by_type(type); BY_TYPE.fetch(type); end
1619
+ end
1620
+ end
1441
1621
  class ExprMetaAttrs < ::Nl::Protocols::Raw::AttributeSet
1442
1622
  # Abstract class
1443
1623
  class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
@@ -1530,6 +1710,7 @@ class Nftables < ::Nl::Family
1530
1710
  def by_type(type); BY_TYPE.fetch(type); end
1531
1711
  end
1532
1712
  end
1713
+ # nf_tables payload expression netlink attributes
1533
1714
  class ExprPayloadAttrs < ::Nl::Protocols::Raw::AttributeSet
1534
1715
  # Abstract class
1535
1716
  class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
@@ -1740,6 +1921,116 @@ class Nftables < ::Nl::Family
1740
1921
  def by_type(type); BY_TYPE.fetch(type); end
1741
1922
  end
1742
1923
  end
1924
+ class CompatTargetAttrs < ::Nl::Protocols::Raw::AttributeSet
1925
+ # Abstract class
1926
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
1927
+ end
1928
+ class Name < Attribute
1929
+ TYPE = 1
1930
+ NAME = :"name"
1931
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: -> { raise ArgumentError, "Value #{it.inspect} is longer than maximum length 32" unless it.bytesize <= 32 })
1932
+ end
1933
+ class Rev < Attribute
1934
+ TYPE = 2
1935
+ NAME = :"rev"
1936
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: -> { raise ArgumentError, "Value #{it.inspect} is greater than maximum 255" unless it <= 255 })
1937
+ end
1938
+ class Info < Attribute
1939
+ TYPE = 3
1940
+ NAME = :"info"
1941
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
1942
+ end
1943
+ # :nodoc:
1944
+ BY_NAME = Ractor.make_shareable({:"name" => Name, :"rev" => Rev, :"info" => Info}) #: Hash[::Symbol, Attribute]
1945
+ # :nodoc:
1946
+ BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Rev, 3 => Info}) #: Hash[::Integer, Attribute]
1947
+ class << self
1948
+ # Looks up Attribute class by name.
1949
+ #--
1950
+ # @rbs name: Symbol
1951
+ # @rbs return: Attribute
1952
+ def by_name(name); BY_NAME.fetch(name); end
1953
+ # Looks up Attribute class by type value.
1954
+ #--
1955
+ # @rbs type: Integer
1956
+ # @rbs return: Attribute
1957
+ def by_type(type); BY_TYPE.fetch(type); end
1958
+ end
1959
+ end
1960
+ class CompatMatchAttrs < ::Nl::Protocols::Raw::AttributeSet
1961
+ # Abstract class
1962
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
1963
+ end
1964
+ class Name < Attribute
1965
+ TYPE = 1
1966
+ NAME = :"name"
1967
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: -> { raise ArgumentError, "Value #{it.inspect} is longer than maximum length 32" unless it.bytesize <= 32 })
1968
+ end
1969
+ class Rev < Attribute
1970
+ TYPE = 2
1971
+ NAME = :"rev"
1972
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: -> { raise ArgumentError, "Value #{it.inspect} is greater than maximum 255" unless it <= 255 })
1973
+ end
1974
+ class Info < Attribute
1975
+ TYPE = 3
1976
+ NAME = :"info"
1977
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
1978
+ end
1979
+ # :nodoc:
1980
+ BY_NAME = Ractor.make_shareable({:"name" => Name, :"rev" => Rev, :"info" => Info}) #: Hash[::Symbol, Attribute]
1981
+ # :nodoc:
1982
+ BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Rev, 3 => Info}) #: Hash[::Integer, Attribute]
1983
+ class << self
1984
+ # Looks up Attribute class by name.
1985
+ #--
1986
+ # @rbs name: Symbol
1987
+ # @rbs return: Attribute
1988
+ def by_name(name); BY_NAME.fetch(name); end
1989
+ # Looks up Attribute class by type value.
1990
+ #--
1991
+ # @rbs type: Integer
1992
+ # @rbs return: Attribute
1993
+ def by_type(type); BY_TYPE.fetch(type); end
1994
+ end
1995
+ end
1996
+ class CompatAttrs < ::Nl::Protocols::Raw::AttributeSet
1997
+ # Abstract class
1998
+ class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
1999
+ end
2000
+ class Name < Attribute
2001
+ TYPE = 1
2002
+ NAME = :"name"
2003
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: -> { raise ArgumentError, "Value #{it.inspect} is longer than maximum length 32" unless it.bytesize <= 32 })
2004
+ end
2005
+ class Rev < Attribute
2006
+ TYPE = 2
2007
+ NAME = :"rev"
2008
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: -> { raise ArgumentError, "Value #{it.inspect} is greater than maximum 255" unless it <= 255 })
2009
+ end
2010
+ class Type < Attribute
2011
+ TYPE = 3
2012
+ NAME = :"type"
2013
+ DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
2014
+ end
2015
+ # :nodoc:
2016
+ BY_NAME = Ractor.make_shareable({:"name" => Name, :"rev" => Rev, :"type" => Type}) #: Hash[::Symbol, Attribute]
2017
+ # :nodoc:
2018
+ BY_TYPE = Ractor.make_shareable({1 => Name, 2 => Rev, 3 => Type}) #: Hash[::Integer, Attribute]
2019
+ class << self
2020
+ # Looks up Attribute class by name.
2021
+ #--
2022
+ # @rbs name: Symbol
2023
+ # @rbs return: Attribute
2024
+ def by_name(name); BY_NAME.fetch(name); end
2025
+ # Looks up Attribute class by type value.
2026
+ #--
2027
+ # @rbs type: Integer
2028
+ # @rbs return: Attribute
2029
+ def by_type(type); BY_TYPE.fetch(type); end
2030
+ end
2031
+ end
2032
+ RangeAttrs::FromData::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(DataAttrs)
2033
+ RangeAttrs::ToData::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(DataAttrs)
1743
2034
  ChainAttrs::Hook::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NftHookAttrs)
1744
2035
  ChainAttrs::Counters::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NftCounterAttrs)
1745
2036
  NftHookAttrs::Devs::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(HookDevAttrs)
@@ -1843,7 +2134,7 @@ class Nftables < ::Nl::Family
1843
2134
  TYPE = 2560
1844
2135
  FIXED_HEADER = Structs::Nfgenmsg
1845
2136
  ATTRIBUTE_SET = AttributeSets::TableAttrs
1846
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2137
+ ATTRIBUTES = Ractor.make_shareable(%i[name flags userdata])
1847
2138
  # Gets the value of `nfgen-family` field in the message's fixed header.
1848
2139
  #--
1849
2140
  # @rbs return: ::Integer
@@ -1860,6 +2151,14 @@ class Nftables < ::Nl::Family
1860
2151
  #--
1861
2152
  # @rbs return: ::String
1862
2153
  def name; attributes[:"name"]&.value; end
2154
+ # Gets the value of `flags` attribute in the message.
2155
+ #--
2156
+ # @rbs return: ::Integer
2157
+ def flags; attributes[:"flags"]&.value; end
2158
+ # Gets the value of `userdata` attribute in the message.
2159
+ #--
2160
+ # @rbs return: ::String
2161
+ def userdata; attributes[:"userdata"]&.value; end
1863
2162
  end
1864
2163
  # Get / dump tables.
1865
2164
  class DoGettableRequest < ::Nl::Protocols::Raw::Message
@@ -1889,7 +2188,7 @@ class Nftables < ::Nl::Family
1889
2188
  TYPE = 2560
1890
2189
  FIXED_HEADER = Structs::Nfgenmsg
1891
2190
  ATTRIBUTE_SET = AttributeSets::TableAttrs
1892
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2191
+ ATTRIBUTES = Ractor.make_shareable(%i[name flags use handle userdata owner])
1893
2192
  # Gets the value of `nfgen-family` field in the message's fixed header.
1894
2193
  #--
1895
2194
  # @rbs return: ::Integer
@@ -1906,13 +2205,95 @@ class Nftables < ::Nl::Family
1906
2205
  #--
1907
2206
  # @rbs return: ::String
1908
2207
  def name; attributes[:"name"]&.value; end
1909
- end
1910
- # Delete an existing table.
1911
- class DoDeltableRequest < ::Nl::Protocols::Raw::Message
2208
+ # Gets the value of `flags` attribute in the message.
2209
+ #--
2210
+ # @rbs return: ::Integer
2211
+ def flags; attributes[:"flags"]&.value; end
2212
+ # Gets the value of `use` attribute in the message.
2213
+ #--
2214
+ # @rbs return: ::Integer
2215
+ def use; attributes[:"use"]&.value; end
2216
+ # Gets the value of `handle` attribute in the message.
2217
+ #--
2218
+ # @rbs return: ::Integer
2219
+ def handle; attributes[:"handle"]&.value; end
2220
+ # Gets the value of `userdata` attribute in the message.
2221
+ #--
2222
+ # @rbs return: ::String
2223
+ def userdata; attributes[:"userdata"]&.value; end
2224
+ # Gets the value of `owner` attribute in the message.
2225
+ #--
2226
+ # @rbs return: ::Integer
2227
+ def owner; attributes[:"owner"]&.value; end
2228
+ end
2229
+ # Get / dump tables.
2230
+ class DumpGettableRequest < ::Nl::Protocols::Raw::Message
2231
+ TYPE = 2561
2232
+ FIXED_HEADER = Structs::Nfgenmsg
2233
+ ATTRIBUTE_SET = AttributeSets::TableAttrs
2234
+ ATTRIBUTES = Ractor.make_shareable(%i[])
2235
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2236
+ #--
2237
+ # @rbs return: ::Integer
2238
+ def nfgen_family; fixed_header.nfgen_family; end
2239
+ # Gets the value of `version` field in the message's fixed header.
2240
+ #--
2241
+ # @rbs return: ::Integer
2242
+ def version; fixed_header.version; end
2243
+ # Gets the value of `res-id` field in the message's fixed header.
2244
+ #--
2245
+ # @rbs return: ::Integer
2246
+ def res_id; fixed_header.res_id; end
2247
+ end
2248
+ # Get / dump tables.
2249
+ class DumpGettableReply < ::Nl::Protocols::Raw::Message
2250
+ TYPE = 2560
2251
+ FIXED_HEADER = Structs::Nfgenmsg
2252
+ ATTRIBUTE_SET = AttributeSets::TableAttrs
2253
+ ATTRIBUTES = Ractor.make_shareable(%i[name flags use handle userdata owner])
2254
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2255
+ #--
2256
+ # @rbs return: ::Integer
2257
+ def nfgen_family; fixed_header.nfgen_family; end
2258
+ # Gets the value of `version` field in the message's fixed header.
2259
+ #--
2260
+ # @rbs return: ::Integer
2261
+ def version; fixed_header.version; end
2262
+ # Gets the value of `res-id` field in the message's fixed header.
2263
+ #--
2264
+ # @rbs return: ::Integer
2265
+ def res_id; fixed_header.res_id; end
2266
+ # Gets the value of `name` attribute in the message.
2267
+ #--
2268
+ # @rbs return: ::String
2269
+ def name; attributes[:"name"]&.value; end
2270
+ # Gets the value of `flags` attribute in the message.
2271
+ #--
2272
+ # @rbs return: ::Integer
2273
+ def flags; attributes[:"flags"]&.value; end
2274
+ # Gets the value of `use` attribute in the message.
2275
+ #--
2276
+ # @rbs return: ::Integer
2277
+ def use; attributes[:"use"]&.value; end
2278
+ # Gets the value of `handle` attribute in the message.
2279
+ #--
2280
+ # @rbs return: ::Integer
2281
+ def handle; attributes[:"handle"]&.value; end
2282
+ # Gets the value of `userdata` attribute in the message.
2283
+ #--
2284
+ # @rbs return: ::String
2285
+ def userdata; attributes[:"userdata"]&.value; end
2286
+ # Gets the value of `owner` attribute in the message.
2287
+ #--
2288
+ # @rbs return: ::Integer
2289
+ def owner; attributes[:"owner"]&.value; end
2290
+ end
2291
+ # Delete an existing table.
2292
+ class DoDeltableRequest < ::Nl::Protocols::Raw::Message
1912
2293
  TYPE = 2562
1913
2294
  FIXED_HEADER = Structs::Nfgenmsg
1914
2295
  ATTRIBUTE_SET = AttributeSets::TableAttrs
1915
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2296
+ ATTRIBUTES = Ractor.make_shareable(%i[name handle])
1916
2297
  # Gets the value of `nfgen-family` field in the message's fixed header.
1917
2298
  #--
1918
2299
  # @rbs return: ::Integer
@@ -1929,6 +2310,10 @@ class Nftables < ::Nl::Family
1929
2310
  #--
1930
2311
  # @rbs return: ::String
1931
2312
  def name; attributes[:"name"]&.value; end
2313
+ # Gets the value of `handle` attribute in the message.
2314
+ #--
2315
+ # @rbs return: ::Integer
2316
+ def handle; attributes[:"handle"]&.value; end
1932
2317
  end
1933
2318
  # Delete an existing table with destroy semantics (ignoring ENOENT
1934
2319
  # errors).
@@ -1936,7 +2321,7 @@ class Nftables < ::Nl::Family
1936
2321
  TYPE = 2586
1937
2322
  FIXED_HEADER = Structs::Nfgenmsg
1938
2323
  ATTRIBUTE_SET = AttributeSets::TableAttrs
1939
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2324
+ ATTRIBUTES = Ractor.make_shareable(%i[name handle])
1940
2325
  # Gets the value of `nfgen-family` field in the message's fixed header.
1941
2326
  #--
1942
2327
  # @rbs return: ::Integer
@@ -1953,13 +2338,17 @@ class Nftables < ::Nl::Family
1953
2338
  #--
1954
2339
  # @rbs return: ::String
1955
2340
  def name; attributes[:"name"]&.value; end
2341
+ # Gets the value of `handle` attribute in the message.
2342
+ #--
2343
+ # @rbs return: ::Integer
2344
+ def handle; attributes[:"handle"]&.value; end
1956
2345
  end
1957
2346
  # Create a new chain.
1958
2347
  class DoNewchainRequest < ::Nl::Protocols::Raw::Message
1959
2348
  TYPE = 2563
1960
2349
  FIXED_HEADER = Structs::Nfgenmsg
1961
2350
  ATTRIBUTE_SET = AttributeSets::ChainAttrs
1962
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2351
+ ATTRIBUTES = Ractor.make_shareable(%i[table handle name hook policy type counters flags userdata])
1963
2352
  # Gets the value of `nfgen-family` field in the message's fixed header.
1964
2353
  #--
1965
2354
  # @rbs return: ::Integer
@@ -1972,17 +2361,49 @@ class Nftables < ::Nl::Family
1972
2361
  #--
1973
2362
  # @rbs return: ::Integer
1974
2363
  def res_id; fixed_header.res_id; end
2364
+ # Gets the value of `table` attribute in the message.
2365
+ #--
2366
+ # @rbs return: ::String
2367
+ def table; attributes[:"table"]&.value; end
2368
+ # Gets the value of `handle` attribute in the message.
2369
+ #--
2370
+ # @rbs return: ::Integer
2371
+ def handle; attributes[:"handle"]&.value; end
1975
2372
  # Gets the value of `name` attribute in the message.
1976
2373
  #--
1977
2374
  # @rbs return: ::String
1978
2375
  def name; attributes[:"name"]&.value; end
2376
+ # Gets the value of `hook` attribute in the message.
2377
+ #--
2378
+ # @rbs return: AttributeSets::NftHookAttrs
2379
+ def hook; attributes[:"hook"]&.value; end
2380
+ # Gets the value of `policy` attribute in the message.
2381
+ #--
2382
+ # @rbs return: ::Integer
2383
+ def policy; attributes[:"policy"]&.value; end
2384
+ # Gets the value of `type` attribute in the message.
2385
+ #--
2386
+ # @rbs return: ::String
2387
+ def type; attributes[:"type"]&.value; end
2388
+ # Gets the value of `counters` attribute in the message.
2389
+ #--
2390
+ # @rbs return: AttributeSets::NftCounterAttrs
2391
+ def counters; attributes[:"counters"]&.value; end
2392
+ # Gets the value of `flags` attribute in the message.
2393
+ #--
2394
+ # @rbs return: ::Integer
2395
+ def flags; attributes[:"flags"]&.value; end
2396
+ # Gets the value of `userdata` attribute in the message.
2397
+ #--
2398
+ # @rbs return: ::String
2399
+ def userdata; attributes[:"userdata"]&.value; end
1979
2400
  end
1980
2401
  # Get / dump chains.
1981
2402
  class DoGetchainRequest < ::Nl::Protocols::Raw::Message
1982
2403
  TYPE = 2564
1983
2404
  FIXED_HEADER = Structs::Nfgenmsg
1984
2405
  ATTRIBUTE_SET = AttributeSets::ChainAttrs
1985
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2406
+ ATTRIBUTES = Ractor.make_shareable(%i[table name])
1986
2407
  # Gets the value of `nfgen-family` field in the message's fixed header.
1987
2408
  #--
1988
2409
  # @rbs return: ::Integer
@@ -1995,6 +2416,10 @@ class Nftables < ::Nl::Family
1995
2416
  #--
1996
2417
  # @rbs return: ::Integer
1997
2418
  def res_id; fixed_header.res_id; end
2419
+ # Gets the value of `table` attribute in the message.
2420
+ #--
2421
+ # @rbs return: ::String
2422
+ def table; attributes[:"table"]&.value; end
1998
2423
  # Gets the value of `name` attribute in the message.
1999
2424
  #--
2000
2425
  # @rbs return: ::String
@@ -2005,7 +2430,89 @@ class Nftables < ::Nl::Family
2005
2430
  TYPE = 2563
2006
2431
  FIXED_HEADER = Structs::Nfgenmsg
2007
2432
  ATTRIBUTE_SET = AttributeSets::ChainAttrs
2008
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2433
+ ATTRIBUTES = Ractor.make_shareable(%i[table handle name hook policy use type counters flags id userdata])
2434
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2435
+ #--
2436
+ # @rbs return: ::Integer
2437
+ def nfgen_family; fixed_header.nfgen_family; end
2438
+ # Gets the value of `version` field in the message's fixed header.
2439
+ #--
2440
+ # @rbs return: ::Integer
2441
+ def version; fixed_header.version; end
2442
+ # Gets the value of `res-id` field in the message's fixed header.
2443
+ #--
2444
+ # @rbs return: ::Integer
2445
+ def res_id; fixed_header.res_id; end
2446
+ # Gets the value of `table` attribute in the message.
2447
+ #--
2448
+ # @rbs return: ::String
2449
+ def table; attributes[:"table"]&.value; end
2450
+ # Gets the value of `handle` attribute in the message.
2451
+ #--
2452
+ # @rbs return: ::Integer
2453
+ def handle; attributes[:"handle"]&.value; end
2454
+ # Gets the value of `name` attribute in the message.
2455
+ #--
2456
+ # @rbs return: ::String
2457
+ def name; attributes[:"name"]&.value; end
2458
+ # Gets the value of `hook` attribute in the message.
2459
+ #--
2460
+ # @rbs return: AttributeSets::NftHookAttrs
2461
+ def hook; attributes[:"hook"]&.value; end
2462
+ # Gets the value of `policy` attribute in the message.
2463
+ #--
2464
+ # @rbs return: ::Integer
2465
+ def policy; attributes[:"policy"]&.value; end
2466
+ # Gets the value of `use` attribute in the message.
2467
+ #--
2468
+ # @rbs return: ::Integer
2469
+ def use; attributes[:"use"]&.value; end
2470
+ # Gets the value of `type` attribute in the message.
2471
+ #--
2472
+ # @rbs return: ::String
2473
+ def type; attributes[:"type"]&.value; end
2474
+ # Gets the value of `counters` attribute in the message.
2475
+ #--
2476
+ # @rbs return: AttributeSets::NftCounterAttrs
2477
+ def counters; attributes[:"counters"]&.value; end
2478
+ # Gets the value of `flags` attribute in the message.
2479
+ #--
2480
+ # @rbs return: ::Integer
2481
+ def flags; attributes[:"flags"]&.value; end
2482
+ # Gets the value of `id` attribute in the message.
2483
+ #--
2484
+ # @rbs return: ::Integer
2485
+ def id; attributes[:"id"]&.value; end
2486
+ # Gets the value of `userdata` attribute in the message.
2487
+ #--
2488
+ # @rbs return: ::String
2489
+ def userdata; attributes[:"userdata"]&.value; end
2490
+ end
2491
+ # Get / dump chains.
2492
+ class DumpGetchainRequest < ::Nl::Protocols::Raw::Message
2493
+ TYPE = 2564
2494
+ FIXED_HEADER = Structs::Nfgenmsg
2495
+ ATTRIBUTE_SET = AttributeSets::ChainAttrs
2496
+ ATTRIBUTES = Ractor.make_shareable(%i[])
2497
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2498
+ #--
2499
+ # @rbs return: ::Integer
2500
+ def nfgen_family; fixed_header.nfgen_family; end
2501
+ # Gets the value of `version` field in the message's fixed header.
2502
+ #--
2503
+ # @rbs return: ::Integer
2504
+ def version; fixed_header.version; end
2505
+ # Gets the value of `res-id` field in the message's fixed header.
2506
+ #--
2507
+ # @rbs return: ::Integer
2508
+ def res_id; fixed_header.res_id; end
2509
+ end
2510
+ # Get / dump chains.
2511
+ class DumpGetchainReply < ::Nl::Protocols::Raw::Message
2512
+ TYPE = 2563
2513
+ FIXED_HEADER = Structs::Nfgenmsg
2514
+ ATTRIBUTE_SET = AttributeSets::ChainAttrs
2515
+ ATTRIBUTES = Ractor.make_shareable(%i[table handle name hook policy use type counters flags id userdata])
2009
2516
  # Gets the value of `nfgen-family` field in the message's fixed header.
2010
2517
  #--
2011
2518
  # @rbs return: ::Integer
@@ -2018,17 +2525,57 @@ class Nftables < ::Nl::Family
2018
2525
  #--
2019
2526
  # @rbs return: ::Integer
2020
2527
  def res_id; fixed_header.res_id; end
2528
+ # Gets the value of `table` attribute in the message.
2529
+ #--
2530
+ # @rbs return: ::String
2531
+ def table; attributes[:"table"]&.value; end
2532
+ # Gets the value of `handle` attribute in the message.
2533
+ #--
2534
+ # @rbs return: ::Integer
2535
+ def handle; attributes[:"handle"]&.value; end
2021
2536
  # Gets the value of `name` attribute in the message.
2022
2537
  #--
2023
2538
  # @rbs return: ::String
2024
2539
  def name; attributes[:"name"]&.value; end
2540
+ # Gets the value of `hook` attribute in the message.
2541
+ #--
2542
+ # @rbs return: AttributeSets::NftHookAttrs
2543
+ def hook; attributes[:"hook"]&.value; end
2544
+ # Gets the value of `policy` attribute in the message.
2545
+ #--
2546
+ # @rbs return: ::Integer
2547
+ def policy; attributes[:"policy"]&.value; end
2548
+ # Gets the value of `use` attribute in the message.
2549
+ #--
2550
+ # @rbs return: ::Integer
2551
+ def use; attributes[:"use"]&.value; end
2552
+ # Gets the value of `type` attribute in the message.
2553
+ #--
2554
+ # @rbs return: ::String
2555
+ def type; attributes[:"type"]&.value; end
2556
+ # Gets the value of `counters` attribute in the message.
2557
+ #--
2558
+ # @rbs return: AttributeSets::NftCounterAttrs
2559
+ def counters; attributes[:"counters"]&.value; end
2560
+ # Gets the value of `flags` attribute in the message.
2561
+ #--
2562
+ # @rbs return: ::Integer
2563
+ def flags; attributes[:"flags"]&.value; end
2564
+ # Gets the value of `id` attribute in the message.
2565
+ #--
2566
+ # @rbs return: ::Integer
2567
+ def id; attributes[:"id"]&.value; end
2568
+ # Gets the value of `userdata` attribute in the message.
2569
+ #--
2570
+ # @rbs return: ::String
2571
+ def userdata; attributes[:"userdata"]&.value; end
2025
2572
  end
2026
2573
  # Delete an existing chain.
2027
2574
  class DoDelchainRequest < ::Nl::Protocols::Raw::Message
2028
2575
  TYPE = 2565
2029
2576
  FIXED_HEADER = Structs::Nfgenmsg
2030
2577
  ATTRIBUTE_SET = AttributeSets::ChainAttrs
2031
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2578
+ ATTRIBUTES = Ractor.make_shareable(%i[table handle name hook])
2032
2579
  # Gets the value of `nfgen-family` field in the message's fixed header.
2033
2580
  #--
2034
2581
  # @rbs return: ::Integer
@@ -2041,10 +2588,22 @@ class Nftables < ::Nl::Family
2041
2588
  #--
2042
2589
  # @rbs return: ::Integer
2043
2590
  def res_id; fixed_header.res_id; end
2591
+ # Gets the value of `table` attribute in the message.
2592
+ #--
2593
+ # @rbs return: ::String
2594
+ def table; attributes[:"table"]&.value; end
2595
+ # Gets the value of `handle` attribute in the message.
2596
+ #--
2597
+ # @rbs return: ::Integer
2598
+ def handle; attributes[:"handle"]&.value; end
2044
2599
  # Gets the value of `name` attribute in the message.
2045
2600
  #--
2046
2601
  # @rbs return: ::String
2047
2602
  def name; attributes[:"name"]&.value; end
2603
+ # Gets the value of `hook` attribute in the message.
2604
+ #--
2605
+ # @rbs return: AttributeSets::NftHookAttrs
2606
+ def hook; attributes[:"hook"]&.value; end
2048
2607
  end
2049
2608
  # Delete an existing chain with destroy semantics (ignoring ENOENT
2050
2609
  # errors).
@@ -2052,7 +2611,7 @@ class Nftables < ::Nl::Family
2052
2611
  TYPE = 2587
2053
2612
  FIXED_HEADER = Structs::Nfgenmsg
2054
2613
  ATTRIBUTE_SET = AttributeSets::ChainAttrs
2055
- ATTRIBUTES = Ractor.make_shareable(%i[name])
2614
+ ATTRIBUTES = Ractor.make_shareable(%i[table handle name hook])
2056
2615
  # Gets the value of `nfgen-family` field in the message's fixed header.
2057
2616
  #--
2058
2617
  # @rbs return: ::Integer
@@ -2065,17 +2624,29 @@ class Nftables < ::Nl::Family
2065
2624
  #--
2066
2625
  # @rbs return: ::Integer
2067
2626
  def res_id; fixed_header.res_id; end
2627
+ # Gets the value of `table` attribute in the message.
2628
+ #--
2629
+ # @rbs return: ::String
2630
+ def table; attributes[:"table"]&.value; end
2631
+ # Gets the value of `handle` attribute in the message.
2632
+ #--
2633
+ # @rbs return: ::Integer
2634
+ def handle; attributes[:"handle"]&.value; end
2068
2635
  # Gets the value of `name` attribute in the message.
2069
2636
  #--
2070
2637
  # @rbs return: ::String
2071
2638
  def name; attributes[:"name"]&.value; end
2639
+ # Gets the value of `hook` attribute in the message.
2640
+ #--
2641
+ # @rbs return: AttributeSets::NftHookAttrs
2642
+ def hook; attributes[:"hook"]&.value; end
2072
2643
  end
2073
2644
  # Create a new rule.
2074
2645
  class DoNewruleRequest < ::Nl::Protocols::Raw::Message
2075
2646
  TYPE = 2566
2076
2647
  FIXED_HEADER = Structs::Nfgenmsg
2077
2648
  ATTRIBUTE_SET = AttributeSets::RuleAttrs
2078
- ATTRIBUTES = Ractor.make_shareable(%i[])
2649
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle expressions compat position userdata position_id chain_id])
2079
2650
  # Gets the value of `nfgen-family` field in the message's fixed header.
2080
2651
  #--
2081
2652
  # @rbs return: ::Integer
@@ -2088,13 +2659,49 @@ class Nftables < ::Nl::Family
2088
2659
  #--
2089
2660
  # @rbs return: ::Integer
2090
2661
  def res_id; fixed_header.res_id; end
2662
+ # Gets the value of `table` attribute in the message.
2663
+ #--
2664
+ # @rbs return: ::String
2665
+ def table; attributes[:"table"]&.value; end
2666
+ # Gets the value of `chain` attribute in the message.
2667
+ #--
2668
+ # @rbs return: ::String
2669
+ def chain; attributes[:"chain"]&.value; end
2670
+ # Gets the value of `handle` attribute in the message.
2671
+ #--
2672
+ # @rbs return: ::Integer
2673
+ def handle; attributes[:"handle"]&.value; end
2674
+ # Gets the value of `expressions` attribute in the message.
2675
+ #--
2676
+ # @rbs return: AttributeSets::ExprListAttrs
2677
+ def expressions; attributes[:"expressions"]&.value; end
2678
+ # Gets the value of `compat` attribute in the message.
2679
+ #--
2680
+ # @rbs return: AttributeSets::RuleCompatAttrs
2681
+ def compat; attributes[:"compat"]&.value; end
2682
+ # Gets the value of `position` attribute in the message.
2683
+ #--
2684
+ # @rbs return: ::Integer
2685
+ def position; attributes[:"position"]&.value; end
2686
+ # Gets the value of `userdata` attribute in the message.
2687
+ #--
2688
+ # @rbs return: ::String
2689
+ def userdata; attributes[:"userdata"]&.value; end
2690
+ # Gets the value of `position-id` attribute in the message.
2691
+ #--
2692
+ # @rbs return: ::Integer
2693
+ def position_id; attributes[:"position_id"]&.value; end
2694
+ # Gets the value of `chain-id` attribute in the message.
2695
+ #--
2696
+ # @rbs return: ::Integer
2697
+ def chain_id; attributes[:"chain_id"]&.value; end
2091
2698
  end
2092
2699
  # Get / dump rules.
2093
2700
  class DoGetruleRequest < ::Nl::Protocols::Raw::Message
2094
2701
  TYPE = 2567
2095
2702
  FIXED_HEADER = Structs::Nfgenmsg
2096
2703
  ATTRIBUTE_SET = AttributeSets::RuleAttrs
2097
- ATTRIBUTES = Ractor.make_shareable(%i[])
2704
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle])
2098
2705
  # Gets the value of `nfgen-family` field in the message's fixed header.
2099
2706
  #--
2100
2707
  # @rbs return: ::Integer
@@ -2106,14 +2713,640 @@ class Nftables < ::Nl::Family
2106
2713
  # Gets the value of `res-id` field in the message's fixed header.
2107
2714
  #--
2108
2715
  # @rbs return: ::Integer
2109
- def res_id; fixed_header.res_id; end
2716
+ def res_id; fixed_header.res_id; end
2717
+ # Gets the value of `table` attribute in the message.
2718
+ #--
2719
+ # @rbs return: ::String
2720
+ def table; attributes[:"table"]&.value; end
2721
+ # Gets the value of `chain` attribute in the message.
2722
+ #--
2723
+ # @rbs return: ::String
2724
+ def chain; attributes[:"chain"]&.value; end
2725
+ # Gets the value of `handle` attribute in the message.
2726
+ #--
2727
+ # @rbs return: ::Integer
2728
+ def handle; attributes[:"handle"]&.value; end
2729
+ end
2730
+ # Get / dump rules.
2731
+ class DoGetruleReply < ::Nl::Protocols::Raw::Message
2732
+ TYPE = 2566
2733
+ FIXED_HEADER = Structs::Nfgenmsg
2734
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2735
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle expressions position userdata])
2736
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2737
+ #--
2738
+ # @rbs return: ::Integer
2739
+ def nfgen_family; fixed_header.nfgen_family; end
2740
+ # Gets the value of `version` field in the message's fixed header.
2741
+ #--
2742
+ # @rbs return: ::Integer
2743
+ def version; fixed_header.version; end
2744
+ # Gets the value of `res-id` field in the message's fixed header.
2745
+ #--
2746
+ # @rbs return: ::Integer
2747
+ def res_id; fixed_header.res_id; end
2748
+ # Gets the value of `table` attribute in the message.
2749
+ #--
2750
+ # @rbs return: ::String
2751
+ def table; attributes[:"table"]&.value; end
2752
+ # Gets the value of `chain` attribute in the message.
2753
+ #--
2754
+ # @rbs return: ::String
2755
+ def chain; attributes[:"chain"]&.value; end
2756
+ # Gets the value of `handle` attribute in the message.
2757
+ #--
2758
+ # @rbs return: ::Integer
2759
+ def handle; attributes[:"handle"]&.value; end
2760
+ # Gets the value of `expressions` attribute in the message.
2761
+ #--
2762
+ # @rbs return: AttributeSets::ExprListAttrs
2763
+ def expressions; attributes[:"expressions"]&.value; end
2764
+ # Gets the value of `position` attribute in the message.
2765
+ #--
2766
+ # @rbs return: ::Integer
2767
+ def position; attributes[:"position"]&.value; end
2768
+ # Gets the value of `userdata` attribute in the message.
2769
+ #--
2770
+ # @rbs return: ::String
2771
+ def userdata; attributes[:"userdata"]&.value; end
2772
+ end
2773
+ # Get / dump rules.
2774
+ class DumpGetruleRequest < ::Nl::Protocols::Raw::Message
2775
+ TYPE = 2567
2776
+ FIXED_HEADER = Structs::Nfgenmsg
2777
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2778
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain])
2779
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2780
+ #--
2781
+ # @rbs return: ::Integer
2782
+ def nfgen_family; fixed_header.nfgen_family; end
2783
+ # Gets the value of `version` field in the message's fixed header.
2784
+ #--
2785
+ # @rbs return: ::Integer
2786
+ def version; fixed_header.version; end
2787
+ # Gets the value of `res-id` field in the message's fixed header.
2788
+ #--
2789
+ # @rbs return: ::Integer
2790
+ def res_id; fixed_header.res_id; end
2791
+ # Gets the value of `table` attribute in the message.
2792
+ #--
2793
+ # @rbs return: ::String
2794
+ def table; attributes[:"table"]&.value; end
2795
+ # Gets the value of `chain` attribute in the message.
2796
+ #--
2797
+ # @rbs return: ::String
2798
+ def chain; attributes[:"chain"]&.value; end
2799
+ end
2800
+ # Get / dump rules.
2801
+ class DumpGetruleReply < ::Nl::Protocols::Raw::Message
2802
+ TYPE = 2566
2803
+ FIXED_HEADER = Structs::Nfgenmsg
2804
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2805
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle expressions position userdata])
2806
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2807
+ #--
2808
+ # @rbs return: ::Integer
2809
+ def nfgen_family; fixed_header.nfgen_family; end
2810
+ # Gets the value of `version` field in the message's fixed header.
2811
+ #--
2812
+ # @rbs return: ::Integer
2813
+ def version; fixed_header.version; end
2814
+ # Gets the value of `res-id` field in the message's fixed header.
2815
+ #--
2816
+ # @rbs return: ::Integer
2817
+ def res_id; fixed_header.res_id; end
2818
+ # Gets the value of `table` attribute in the message.
2819
+ #--
2820
+ # @rbs return: ::String
2821
+ def table; attributes[:"table"]&.value; end
2822
+ # Gets the value of `chain` attribute in the message.
2823
+ #--
2824
+ # @rbs return: ::String
2825
+ def chain; attributes[:"chain"]&.value; end
2826
+ # Gets the value of `handle` attribute in the message.
2827
+ #--
2828
+ # @rbs return: ::Integer
2829
+ def handle; attributes[:"handle"]&.value; end
2830
+ # Gets the value of `expressions` attribute in the message.
2831
+ #--
2832
+ # @rbs return: AttributeSets::ExprListAttrs
2833
+ def expressions; attributes[:"expressions"]&.value; end
2834
+ # Gets the value of `position` attribute in the message.
2835
+ #--
2836
+ # @rbs return: ::Integer
2837
+ def position; attributes[:"position"]&.value; end
2838
+ # Gets the value of `userdata` attribute in the message.
2839
+ #--
2840
+ # @rbs return: ::String
2841
+ def userdata; attributes[:"userdata"]&.value; end
2842
+ end
2843
+ # Get / dump rules and reset stateful expressions.
2844
+ class DoGetruleResetRequest < ::Nl::Protocols::Raw::Message
2845
+ TYPE = 2585
2846
+ FIXED_HEADER = Structs::Nfgenmsg
2847
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2848
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle])
2849
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2850
+ #--
2851
+ # @rbs return: ::Integer
2852
+ def nfgen_family; fixed_header.nfgen_family; end
2853
+ # Gets the value of `version` field in the message's fixed header.
2854
+ #--
2855
+ # @rbs return: ::Integer
2856
+ def version; fixed_header.version; end
2857
+ # Gets the value of `res-id` field in the message's fixed header.
2858
+ #--
2859
+ # @rbs return: ::Integer
2860
+ def res_id; fixed_header.res_id; end
2861
+ # Gets the value of `table` attribute in the message.
2862
+ #--
2863
+ # @rbs return: ::String
2864
+ def table; attributes[:"table"]&.value; end
2865
+ # Gets the value of `chain` attribute in the message.
2866
+ #--
2867
+ # @rbs return: ::String
2868
+ def chain; attributes[:"chain"]&.value; end
2869
+ # Gets the value of `handle` attribute in the message.
2870
+ #--
2871
+ # @rbs return: ::Integer
2872
+ def handle; attributes[:"handle"]&.value; end
2873
+ end
2874
+ # Get / dump rules and reset stateful expressions.
2875
+ class DoGetruleResetReply < ::Nl::Protocols::Raw::Message
2876
+ TYPE = 2566
2877
+ FIXED_HEADER = Structs::Nfgenmsg
2878
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2879
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle expressions position userdata])
2880
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2881
+ #--
2882
+ # @rbs return: ::Integer
2883
+ def nfgen_family; fixed_header.nfgen_family; end
2884
+ # Gets the value of `version` field in the message's fixed header.
2885
+ #--
2886
+ # @rbs return: ::Integer
2887
+ def version; fixed_header.version; end
2888
+ # Gets the value of `res-id` field in the message's fixed header.
2889
+ #--
2890
+ # @rbs return: ::Integer
2891
+ def res_id; fixed_header.res_id; end
2892
+ # Gets the value of `table` attribute in the message.
2893
+ #--
2894
+ # @rbs return: ::String
2895
+ def table; attributes[:"table"]&.value; end
2896
+ # Gets the value of `chain` attribute in the message.
2897
+ #--
2898
+ # @rbs return: ::String
2899
+ def chain; attributes[:"chain"]&.value; end
2900
+ # Gets the value of `handle` attribute in the message.
2901
+ #--
2902
+ # @rbs return: ::Integer
2903
+ def handle; attributes[:"handle"]&.value; end
2904
+ # Gets the value of `expressions` attribute in the message.
2905
+ #--
2906
+ # @rbs return: AttributeSets::ExprListAttrs
2907
+ def expressions; attributes[:"expressions"]&.value; end
2908
+ # Gets the value of `position` attribute in the message.
2909
+ #--
2910
+ # @rbs return: ::Integer
2911
+ def position; attributes[:"position"]&.value; end
2912
+ # Gets the value of `userdata` attribute in the message.
2913
+ #--
2914
+ # @rbs return: ::String
2915
+ def userdata; attributes[:"userdata"]&.value; end
2916
+ end
2917
+ # Get / dump rules and reset stateful expressions.
2918
+ class DumpGetruleResetRequest < ::Nl::Protocols::Raw::Message
2919
+ TYPE = 2585
2920
+ FIXED_HEADER = Structs::Nfgenmsg
2921
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2922
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle])
2923
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2924
+ #--
2925
+ # @rbs return: ::Integer
2926
+ def nfgen_family; fixed_header.nfgen_family; end
2927
+ # Gets the value of `version` field in the message's fixed header.
2928
+ #--
2929
+ # @rbs return: ::Integer
2930
+ def version; fixed_header.version; end
2931
+ # Gets the value of `res-id` field in the message's fixed header.
2932
+ #--
2933
+ # @rbs return: ::Integer
2934
+ def res_id; fixed_header.res_id; end
2935
+ # Gets the value of `table` attribute in the message.
2936
+ #--
2937
+ # @rbs return: ::String
2938
+ def table; attributes[:"table"]&.value; end
2939
+ # Gets the value of `chain` attribute in the message.
2940
+ #--
2941
+ # @rbs return: ::String
2942
+ def chain; attributes[:"chain"]&.value; end
2943
+ # Gets the value of `handle` attribute in the message.
2944
+ #--
2945
+ # @rbs return: ::Integer
2946
+ def handle; attributes[:"handle"]&.value; end
2947
+ end
2948
+ # Get / dump rules and reset stateful expressions.
2949
+ class DumpGetruleResetReply < ::Nl::Protocols::Raw::Message
2950
+ TYPE = 2566
2951
+ FIXED_HEADER = Structs::Nfgenmsg
2952
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2953
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle expressions position userdata])
2954
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2955
+ #--
2956
+ # @rbs return: ::Integer
2957
+ def nfgen_family; fixed_header.nfgen_family; end
2958
+ # Gets the value of `version` field in the message's fixed header.
2959
+ #--
2960
+ # @rbs return: ::Integer
2961
+ def version; fixed_header.version; end
2962
+ # Gets the value of `res-id` field in the message's fixed header.
2963
+ #--
2964
+ # @rbs return: ::Integer
2965
+ def res_id; fixed_header.res_id; end
2966
+ # Gets the value of `table` attribute in the message.
2967
+ #--
2968
+ # @rbs return: ::String
2969
+ def table; attributes[:"table"]&.value; end
2970
+ # Gets the value of `chain` attribute in the message.
2971
+ #--
2972
+ # @rbs return: ::String
2973
+ def chain; attributes[:"chain"]&.value; end
2974
+ # Gets the value of `handle` attribute in the message.
2975
+ #--
2976
+ # @rbs return: ::Integer
2977
+ def handle; attributes[:"handle"]&.value; end
2978
+ # Gets the value of `expressions` attribute in the message.
2979
+ #--
2980
+ # @rbs return: AttributeSets::ExprListAttrs
2981
+ def expressions; attributes[:"expressions"]&.value; end
2982
+ # Gets the value of `position` attribute in the message.
2983
+ #--
2984
+ # @rbs return: ::Integer
2985
+ def position; attributes[:"position"]&.value; end
2986
+ # Gets the value of `userdata` attribute in the message.
2987
+ #--
2988
+ # @rbs return: ::String
2989
+ def userdata; attributes[:"userdata"]&.value; end
2990
+ end
2991
+ # Delete an existing rule.
2992
+ class DoDelruleRequest < ::Nl::Protocols::Raw::Message
2993
+ TYPE = 2568
2994
+ FIXED_HEADER = Structs::Nfgenmsg
2995
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
2996
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle id])
2997
+ # Gets the value of `nfgen-family` field in the message's fixed header.
2998
+ #--
2999
+ # @rbs return: ::Integer
3000
+ def nfgen_family; fixed_header.nfgen_family; end
3001
+ # Gets the value of `version` field in the message's fixed header.
3002
+ #--
3003
+ # @rbs return: ::Integer
3004
+ def version; fixed_header.version; end
3005
+ # Gets the value of `res-id` field in the message's fixed header.
3006
+ #--
3007
+ # @rbs return: ::Integer
3008
+ def res_id; fixed_header.res_id; end
3009
+ # Gets the value of `table` attribute in the message.
3010
+ #--
3011
+ # @rbs return: ::String
3012
+ def table; attributes[:"table"]&.value; end
3013
+ # Gets the value of `chain` attribute in the message.
3014
+ #--
3015
+ # @rbs return: ::String
3016
+ def chain; attributes[:"chain"]&.value; end
3017
+ # Gets the value of `handle` attribute in the message.
3018
+ #--
3019
+ # @rbs return: ::Integer
3020
+ def handle; attributes[:"handle"]&.value; end
3021
+ # Gets the value of `id` attribute in the message.
3022
+ #--
3023
+ # @rbs return: ::Integer
3024
+ def id; attributes[:"id"]&.value; end
3025
+ end
3026
+ # Delete an existing rule with destroy semantics (ignoring ENOENT errors).
3027
+ class DoDestroyruleRequest < ::Nl::Protocols::Raw::Message
3028
+ TYPE = 2588
3029
+ FIXED_HEADER = Structs::Nfgenmsg
3030
+ ATTRIBUTE_SET = AttributeSets::RuleAttrs
3031
+ ATTRIBUTES = Ractor.make_shareable(%i[table chain handle id])
3032
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3033
+ #--
3034
+ # @rbs return: ::Integer
3035
+ def nfgen_family; fixed_header.nfgen_family; end
3036
+ # Gets the value of `version` field in the message's fixed header.
3037
+ #--
3038
+ # @rbs return: ::Integer
3039
+ def version; fixed_header.version; end
3040
+ # Gets the value of `res-id` field in the message's fixed header.
3041
+ #--
3042
+ # @rbs return: ::Integer
3043
+ def res_id; fixed_header.res_id; end
3044
+ # Gets the value of `table` attribute in the message.
3045
+ #--
3046
+ # @rbs return: ::String
3047
+ def table; attributes[:"table"]&.value; end
3048
+ # Gets the value of `chain` attribute in the message.
3049
+ #--
3050
+ # @rbs return: ::String
3051
+ def chain; attributes[:"chain"]&.value; end
3052
+ # Gets the value of `handle` attribute in the message.
3053
+ #--
3054
+ # @rbs return: ::Integer
3055
+ def handle; attributes[:"handle"]&.value; end
3056
+ # Gets the value of `id` attribute in the message.
3057
+ #--
3058
+ # @rbs return: ::Integer
3059
+ def id; attributes[:"id"]&.value; end
3060
+ end
3061
+ # Create a new set.
3062
+ class DoNewsetRequest < ::Nl::Protocols::Raw::Message
3063
+ TYPE = 2569
3064
+ FIXED_HEADER = Structs::Nfgenmsg
3065
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3066
+ ATTRIBUTES = Ractor.make_shareable(%i[table name flags key_type key_len data_type data_len policy desc id timeout gc_interval userdata obj_type])
3067
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3068
+ #--
3069
+ # @rbs return: ::Integer
3070
+ def nfgen_family; fixed_header.nfgen_family; end
3071
+ # Gets the value of `version` field in the message's fixed header.
3072
+ #--
3073
+ # @rbs return: ::Integer
3074
+ def version; fixed_header.version; end
3075
+ # Gets the value of `res-id` field in the message's fixed header.
3076
+ #--
3077
+ # @rbs return: ::Integer
3078
+ def res_id; fixed_header.res_id; end
3079
+ # Gets the value of `table` attribute in the message.
3080
+ #--
3081
+ # @rbs return: ::String
3082
+ def table; attributes[:"table"]&.value; end
3083
+ # Gets the value of `name` attribute in the message.
3084
+ #--
3085
+ # @rbs return: ::String
3086
+ def name; attributes[:"name"]&.value; end
3087
+ # Gets the value of `flags` attribute in the message.
3088
+ #--
3089
+ # @rbs return: ::Integer
3090
+ def flags; attributes[:"flags"]&.value; end
3091
+ # Gets the value of `key-type` attribute in the message.
3092
+ #--
3093
+ # @rbs return: ::Integer
3094
+ def key_type; attributes[:"key_type"]&.value; end
3095
+ # Gets the value of `key-len` attribute in the message.
3096
+ #--
3097
+ # @rbs return: ::Integer
3098
+ def key_len; attributes[:"key_len"]&.value; end
3099
+ # Gets the value of `data-type` attribute in the message.
3100
+ #--
3101
+ # @rbs return: ::Integer
3102
+ def data_type; attributes[:"data_type"]&.value; end
3103
+ # Gets the value of `data-len` attribute in the message.
3104
+ #--
3105
+ # @rbs return: ::Integer
3106
+ def data_len; attributes[:"data_len"]&.value; end
3107
+ # Gets the value of `policy` attribute in the message.
3108
+ #--
3109
+ # @rbs return: ::Integer
3110
+ def policy; attributes[:"policy"]&.value; end
3111
+ # Gets the value of `desc` attribute in the message.
3112
+ #--
3113
+ # @rbs return: AttributeSets::SetDescAttrs
3114
+ def desc; attributes[:"desc"]&.value; end
3115
+ # Gets the value of `id` attribute in the message.
3116
+ #--
3117
+ # @rbs return: ::Integer
3118
+ def id; attributes[:"id"]&.value; end
3119
+ # Gets the value of `timeout` attribute in the message.
3120
+ #--
3121
+ # @rbs return: ::Integer
3122
+ def timeout; attributes[:"timeout"]&.value; end
3123
+ # Gets the value of `gc-interval` attribute in the message.
3124
+ #--
3125
+ # @rbs return: ::Integer
3126
+ def gc_interval; attributes[:"gc_interval"]&.value; end
3127
+ # Gets the value of `userdata` attribute in the message.
3128
+ #--
3129
+ # @rbs return: ::String
3130
+ def userdata; attributes[:"userdata"]&.value; end
3131
+ # Gets the value of `obj-type` attribute in the message.
3132
+ #--
3133
+ # @rbs return: ::Integer
3134
+ def obj_type; attributes[:"obj_type"]&.value; end
3135
+ end
3136
+ # Get / dump sets.
3137
+ class DoGetsetRequest < ::Nl::Protocols::Raw::Message
3138
+ TYPE = 2570
3139
+ FIXED_HEADER = Structs::Nfgenmsg
3140
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3141
+ ATTRIBUTES = Ractor.make_shareable(%i[table name])
3142
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3143
+ #--
3144
+ # @rbs return: ::Integer
3145
+ def nfgen_family; fixed_header.nfgen_family; end
3146
+ # Gets the value of `version` field in the message's fixed header.
3147
+ #--
3148
+ # @rbs return: ::Integer
3149
+ def version; fixed_header.version; end
3150
+ # Gets the value of `res-id` field in the message's fixed header.
3151
+ #--
3152
+ # @rbs return: ::Integer
3153
+ def res_id; fixed_header.res_id; end
3154
+ # Gets the value of `table` attribute in the message.
3155
+ #--
3156
+ # @rbs return: ::String
3157
+ def table; attributes[:"table"]&.value; end
3158
+ # Gets the value of `name` attribute in the message.
3159
+ #--
3160
+ # @rbs return: ::String
3161
+ def name; attributes[:"name"]&.value; end
3162
+ end
3163
+ # Get / dump sets.
3164
+ class DoGetsetReply < ::Nl::Protocols::Raw::Message
3165
+ TYPE = 2569
3166
+ FIXED_HEADER = Structs::Nfgenmsg
3167
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3168
+ ATTRIBUTES = Ractor.make_shareable(%i[table name flags key_type key_len data_type data_len policy desc gc_interval userdata obj_type handle expr expressions])
3169
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3170
+ #--
3171
+ # @rbs return: ::Integer
3172
+ def nfgen_family; fixed_header.nfgen_family; end
3173
+ # Gets the value of `version` field in the message's fixed header.
3174
+ #--
3175
+ # @rbs return: ::Integer
3176
+ def version; fixed_header.version; end
3177
+ # Gets the value of `res-id` field in the message's fixed header.
3178
+ #--
3179
+ # @rbs return: ::Integer
3180
+ def res_id; fixed_header.res_id; end
3181
+ # Gets the value of `table` attribute in the message.
3182
+ #--
3183
+ # @rbs return: ::String
3184
+ def table; attributes[:"table"]&.value; end
3185
+ # Gets the value of `name` attribute in the message.
3186
+ #--
3187
+ # @rbs return: ::String
3188
+ def name; attributes[:"name"]&.value; end
3189
+ # Gets the value of `flags` attribute in the message.
3190
+ #--
3191
+ # @rbs return: ::Integer
3192
+ def flags; attributes[:"flags"]&.value; end
3193
+ # Gets the value of `key-type` attribute in the message.
3194
+ #--
3195
+ # @rbs return: ::Integer
3196
+ def key_type; attributes[:"key_type"]&.value; end
3197
+ # Gets the value of `key-len` attribute in the message.
3198
+ #--
3199
+ # @rbs return: ::Integer
3200
+ def key_len; attributes[:"key_len"]&.value; end
3201
+ # Gets the value of `data-type` attribute in the message.
3202
+ #--
3203
+ # @rbs return: ::Integer
3204
+ def data_type; attributes[:"data_type"]&.value; end
3205
+ # Gets the value of `data-len` attribute in the message.
3206
+ #--
3207
+ # @rbs return: ::Integer
3208
+ def data_len; attributes[:"data_len"]&.value; end
3209
+ # Gets the value of `policy` attribute in the message.
3210
+ #--
3211
+ # @rbs return: ::Integer
3212
+ def policy; attributes[:"policy"]&.value; end
3213
+ # Gets the value of `desc` attribute in the message.
3214
+ #--
3215
+ # @rbs return: AttributeSets::SetDescAttrs
3216
+ def desc; attributes[:"desc"]&.value; end
3217
+ # Gets the value of `gc-interval` attribute in the message.
3218
+ #--
3219
+ # @rbs return: ::Integer
3220
+ def gc_interval; attributes[:"gc_interval"]&.value; end
3221
+ # Gets the value of `userdata` attribute in the message.
3222
+ #--
3223
+ # @rbs return: ::String
3224
+ def userdata; attributes[:"userdata"]&.value; end
3225
+ # Gets the value of `obj-type` attribute in the message.
3226
+ #--
3227
+ # @rbs return: ::Integer
3228
+ def obj_type; attributes[:"obj_type"]&.value; end
3229
+ # Gets the value of `handle` attribute in the message.
3230
+ #--
3231
+ # @rbs return: ::Integer
3232
+ def handle; attributes[:"handle"]&.value; end
3233
+ # Gets the value of `expr` attribute in the message.
3234
+ #--
3235
+ # @rbs return: AttributeSets::ExprAttrs
3236
+ def expr; attributes[:"expr"]&.value; end
3237
+ # Gets the value of `expressions` attribute in the message.
3238
+ #--
3239
+ # @rbs return: AttributeSets::SetListAttrs
3240
+ def expressions; attributes[:"expressions"]&.value; end
3241
+ end
3242
+ # Get / dump sets.
3243
+ class DumpGetsetRequest < ::Nl::Protocols::Raw::Message
3244
+ TYPE = 2570
3245
+ FIXED_HEADER = Structs::Nfgenmsg
3246
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3247
+ ATTRIBUTES = Ractor.make_shareable(%i[table])
3248
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3249
+ #--
3250
+ # @rbs return: ::Integer
3251
+ def nfgen_family; fixed_header.nfgen_family; end
3252
+ # Gets the value of `version` field in the message's fixed header.
3253
+ #--
3254
+ # @rbs return: ::Integer
3255
+ def version; fixed_header.version; end
3256
+ # Gets the value of `res-id` field in the message's fixed header.
3257
+ #--
3258
+ # @rbs return: ::Integer
3259
+ def res_id; fixed_header.res_id; end
3260
+ # Gets the value of `table` attribute in the message.
3261
+ #--
3262
+ # @rbs return: ::String
3263
+ def table; attributes[:"table"]&.value; end
3264
+ end
3265
+ # Get / dump sets.
3266
+ class DumpGetsetReply < ::Nl::Protocols::Raw::Message
3267
+ TYPE = 2569
3268
+ FIXED_HEADER = Structs::Nfgenmsg
3269
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3270
+ ATTRIBUTES = Ractor.make_shareable(%i[table name flags key_type key_len data_type data_len policy desc gc_interval userdata obj_type handle expr expressions])
3271
+ # Gets the value of `nfgen-family` field in the message's fixed header.
3272
+ #--
3273
+ # @rbs return: ::Integer
3274
+ def nfgen_family; fixed_header.nfgen_family; end
3275
+ # Gets the value of `version` field in the message's fixed header.
3276
+ #--
3277
+ # @rbs return: ::Integer
3278
+ def version; fixed_header.version; end
3279
+ # Gets the value of `res-id` field in the message's fixed header.
3280
+ #--
3281
+ # @rbs return: ::Integer
3282
+ def res_id; fixed_header.res_id; end
3283
+ # Gets the value of `table` attribute in the message.
3284
+ #--
3285
+ # @rbs return: ::String
3286
+ def table; attributes[:"table"]&.value; end
3287
+ # Gets the value of `name` attribute in the message.
3288
+ #--
3289
+ # @rbs return: ::String
3290
+ def name; attributes[:"name"]&.value; end
3291
+ # Gets the value of `flags` attribute in the message.
3292
+ #--
3293
+ # @rbs return: ::Integer
3294
+ def flags; attributes[:"flags"]&.value; end
3295
+ # Gets the value of `key-type` attribute in the message.
3296
+ #--
3297
+ # @rbs return: ::Integer
3298
+ def key_type; attributes[:"key_type"]&.value; end
3299
+ # Gets the value of `key-len` attribute in the message.
3300
+ #--
3301
+ # @rbs return: ::Integer
3302
+ def key_len; attributes[:"key_len"]&.value; end
3303
+ # Gets the value of `data-type` attribute in the message.
3304
+ #--
3305
+ # @rbs return: ::Integer
3306
+ def data_type; attributes[:"data_type"]&.value; end
3307
+ # Gets the value of `data-len` attribute in the message.
3308
+ #--
3309
+ # @rbs return: ::Integer
3310
+ def data_len; attributes[:"data_len"]&.value; end
3311
+ # Gets the value of `policy` attribute in the message.
3312
+ #--
3313
+ # @rbs return: ::Integer
3314
+ def policy; attributes[:"policy"]&.value; end
3315
+ # Gets the value of `desc` attribute in the message.
3316
+ #--
3317
+ # @rbs return: AttributeSets::SetDescAttrs
3318
+ def desc; attributes[:"desc"]&.value; end
3319
+ # Gets the value of `gc-interval` attribute in the message.
3320
+ #--
3321
+ # @rbs return: ::Integer
3322
+ def gc_interval; attributes[:"gc_interval"]&.value; end
3323
+ # Gets the value of `userdata` attribute in the message.
3324
+ #--
3325
+ # @rbs return: ::String
3326
+ def userdata; attributes[:"userdata"]&.value; end
3327
+ # Gets the value of `obj-type` attribute in the message.
3328
+ #--
3329
+ # @rbs return: ::Integer
3330
+ def obj_type; attributes[:"obj_type"]&.value; end
3331
+ # Gets the value of `handle` attribute in the message.
3332
+ #--
3333
+ # @rbs return: ::Integer
3334
+ def handle; attributes[:"handle"]&.value; end
3335
+ # Gets the value of `expr` attribute in the message.
3336
+ #--
3337
+ # @rbs return: AttributeSets::ExprAttrs
3338
+ def expr; attributes[:"expr"]&.value; end
3339
+ # Gets the value of `expressions` attribute in the message.
3340
+ #--
3341
+ # @rbs return: AttributeSets::SetListAttrs
3342
+ def expressions; attributes[:"expressions"]&.value; end
2110
3343
  end
2111
- # Get / dump rules.
2112
- class DoGetruleReply < ::Nl::Protocols::Raw::Message
2113
- TYPE = 2566
3344
+ # Delete an existing set.
3345
+ class DoDelsetRequest < ::Nl::Protocols::Raw::Message
3346
+ TYPE = 2571
2114
3347
  FIXED_HEADER = Structs::Nfgenmsg
2115
- ATTRIBUTE_SET = AttributeSets::RuleAttrs
2116
- ATTRIBUTES = Ractor.make_shareable(%i[])
3348
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3349
+ ATTRIBUTES = Ractor.make_shareable(%i[table name handle])
2117
3350
  # Gets the value of `nfgen-family` field in the message's fixed header.
2118
3351
  #--
2119
3352
  # @rbs return: ::Integer
@@ -2126,13 +3359,25 @@ class Nftables < ::Nl::Family
2126
3359
  #--
2127
3360
  # @rbs return: ::Integer
2128
3361
  def res_id; fixed_header.res_id; end
3362
+ # Gets the value of `table` attribute in the message.
3363
+ #--
3364
+ # @rbs return: ::String
3365
+ def table; attributes[:"table"]&.value; end
3366
+ # Gets the value of `name` attribute in the message.
3367
+ #--
3368
+ # @rbs return: ::String
3369
+ def name; attributes[:"name"]&.value; end
3370
+ # Gets the value of `handle` attribute in the message.
3371
+ #--
3372
+ # @rbs return: ::Integer
3373
+ def handle; attributes[:"handle"]&.value; end
2129
3374
  end
2130
- # Get / dump rules and reset stateful expressions.
2131
- class DoGetruleResetRequest < ::Nl::Protocols::Raw::Message
2132
- TYPE = 2585
3375
+ # Delete an existing set with destroy semantics (ignoring ENOENT errors).
3376
+ class DoDestroysetRequest < ::Nl::Protocols::Raw::Message
3377
+ TYPE = 2589
2133
3378
  FIXED_HEADER = Structs::Nfgenmsg
2134
- ATTRIBUTE_SET = AttributeSets::RuleAttrs
2135
- ATTRIBUTES = Ractor.make_shareable(%i[])
3379
+ ATTRIBUTE_SET = AttributeSets::SetAttrs
3380
+ ATTRIBUTES = Ractor.make_shareable(%i[table name handle])
2136
3381
  # Gets the value of `nfgen-family` field in the message's fixed header.
2137
3382
  #--
2138
3383
  # @rbs return: ::Integer
@@ -2145,13 +3390,25 @@ class Nftables < ::Nl::Family
2145
3390
  #--
2146
3391
  # @rbs return: ::Integer
2147
3392
  def res_id; fixed_header.res_id; end
3393
+ # Gets the value of `table` attribute in the message.
3394
+ #--
3395
+ # @rbs return: ::String
3396
+ def table; attributes[:"table"]&.value; end
3397
+ # Gets the value of `name` attribute in the message.
3398
+ #--
3399
+ # @rbs return: ::String
3400
+ def name; attributes[:"name"]&.value; end
3401
+ # Gets the value of `handle` attribute in the message.
3402
+ #--
3403
+ # @rbs return: ::Integer
3404
+ def handle; attributes[:"handle"]&.value; end
2148
3405
  end
2149
- # Get / dump rules and reset stateful expressions.
2150
- class DoGetruleResetReply < ::Nl::Protocols::Raw::Message
2151
- TYPE = 2566
3406
+ # Create a new set element.
3407
+ class DoNewsetelemRequest < ::Nl::Protocols::Raw::Message
3408
+ TYPE = 2572
2152
3409
  FIXED_HEADER = Structs::Nfgenmsg
2153
- ATTRIBUTE_SET = AttributeSets::RuleAttrs
2154
- ATTRIBUTES = Ractor.make_shareable(%i[])
3410
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3411
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements set_id])
2155
3412
  # Gets the value of `nfgen-family` field in the message's fixed header.
2156
3413
  #--
2157
3414
  # @rbs return: ::Integer
@@ -2164,13 +3421,29 @@ class Nftables < ::Nl::Family
2164
3421
  #--
2165
3422
  # @rbs return: ::Integer
2166
3423
  def res_id; fixed_header.res_id; end
3424
+ # Gets the value of `table` attribute in the message.
3425
+ #--
3426
+ # @rbs return: ::String
3427
+ def table; attributes[:"table"]&.value; end
3428
+ # Gets the value of `set` attribute in the message.
3429
+ #--
3430
+ # @rbs return: ::String
3431
+ def set; attributes[:"set"]&.value; end
3432
+ # Gets the value of `elements` attribute in the message.
3433
+ #--
3434
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3435
+ def elements; attributes[:"elements"]&.value; end
3436
+ # Gets the value of `set-id` attribute in the message.
3437
+ #--
3438
+ # @rbs return: ::Integer
3439
+ def set_id; attributes[:"set_id"]&.value; end
2167
3440
  end
2168
- # Delete an existing rule.
2169
- class DoDelruleRequest < ::Nl::Protocols::Raw::Message
2170
- TYPE = 2568
3441
+ # Get / dump set elements.
3442
+ class DoGetsetelemRequest < ::Nl::Protocols::Raw::Message
3443
+ TYPE = 2573
2171
3444
  FIXED_HEADER = Structs::Nfgenmsg
2172
- ATTRIBUTE_SET = AttributeSets::RuleAttrs
2173
- ATTRIBUTES = Ractor.make_shareable(%i[])
3445
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3446
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2174
3447
  # Gets the value of `nfgen-family` field in the message's fixed header.
2175
3448
  #--
2176
3449
  # @rbs return: ::Integer
@@ -2183,13 +3456,25 @@ class Nftables < ::Nl::Family
2183
3456
  #--
2184
3457
  # @rbs return: ::Integer
2185
3458
  def res_id; fixed_header.res_id; end
3459
+ # Gets the value of `table` attribute in the message.
3460
+ #--
3461
+ # @rbs return: ::String
3462
+ def table; attributes[:"table"]&.value; end
3463
+ # Gets the value of `set` attribute in the message.
3464
+ #--
3465
+ # @rbs return: ::String
3466
+ def set; attributes[:"set"]&.value; end
3467
+ # Gets the value of `elements` attribute in the message.
3468
+ #--
3469
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3470
+ def elements; attributes[:"elements"]&.value; end
2186
3471
  end
2187
- # Delete an existing rule with destroy semantics (ignoring ENOENT errors).
2188
- class DoDestroyruleRequest < ::Nl::Protocols::Raw::Message
2189
- TYPE = 2588
3472
+ # Get / dump set elements.
3473
+ class DoGetsetelemReply < ::Nl::Protocols::Raw::Message
3474
+ TYPE = 2572
2190
3475
  FIXED_HEADER = Structs::Nfgenmsg
2191
- ATTRIBUTE_SET = AttributeSets::RuleAttrs
2192
- ATTRIBUTES = Ractor.make_shareable(%i[])
3476
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3477
+ ATTRIBUTES = Ractor.make_shareable(%i[elements])
2193
3478
  # Gets the value of `nfgen-family` field in the message's fixed header.
2194
3479
  #--
2195
3480
  # @rbs return: ::Integer
@@ -2202,13 +3487,17 @@ class Nftables < ::Nl::Family
2202
3487
  #--
2203
3488
  # @rbs return: ::Integer
2204
3489
  def res_id; fixed_header.res_id; end
3490
+ # Gets the value of `elements` attribute in the message.
3491
+ #--
3492
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3493
+ def elements; attributes[:"elements"]&.value; end
2205
3494
  end
2206
- # Create a new set.
2207
- class DoNewsetRequest < ::Nl::Protocols::Raw::Message
2208
- TYPE = 2569
3495
+ # Get / dump set elements.
3496
+ class DumpGetsetelemRequest < ::Nl::Protocols::Raw::Message
3497
+ TYPE = 2573
2209
3498
  FIXED_HEADER = Structs::Nfgenmsg
2210
- ATTRIBUTE_SET = AttributeSets::SetAttrs
2211
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3499
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3500
+ ATTRIBUTES = Ractor.make_shareable(%i[table set])
2212
3501
  # Gets the value of `nfgen-family` field in the message's fixed header.
2213
3502
  #--
2214
3503
  # @rbs return: ::Integer
@@ -2221,17 +3510,21 @@ class Nftables < ::Nl::Family
2221
3510
  #--
2222
3511
  # @rbs return: ::Integer
2223
3512
  def res_id; fixed_header.res_id; end
2224
- # Gets the value of `name` attribute in the message.
3513
+ # Gets the value of `table` attribute in the message.
2225
3514
  #--
2226
3515
  # @rbs return: ::String
2227
- def name; attributes[:"name"]&.value; end
3516
+ def table; attributes[:"table"]&.value; end
3517
+ # Gets the value of `set` attribute in the message.
3518
+ #--
3519
+ # @rbs return: ::String
3520
+ def set; attributes[:"set"]&.value; end
2228
3521
  end
2229
- # Get / dump sets.
2230
- class DoGetsetRequest < ::Nl::Protocols::Raw::Message
2231
- TYPE = 2570
3522
+ # Get / dump set elements.
3523
+ class DumpGetsetelemReply < ::Nl::Protocols::Raw::Message
3524
+ TYPE = 2572
2232
3525
  FIXED_HEADER = Structs::Nfgenmsg
2233
- ATTRIBUTE_SET = AttributeSets::SetAttrs
2234
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3526
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3527
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2235
3528
  # Gets the value of `nfgen-family` field in the message's fixed header.
2236
3529
  #--
2237
3530
  # @rbs return: ::Integer
@@ -2244,17 +3537,25 @@ class Nftables < ::Nl::Family
2244
3537
  #--
2245
3538
  # @rbs return: ::Integer
2246
3539
  def res_id; fixed_header.res_id; end
2247
- # Gets the value of `name` attribute in the message.
3540
+ # Gets the value of `table` attribute in the message.
2248
3541
  #--
2249
3542
  # @rbs return: ::String
2250
- def name; attributes[:"name"]&.value; end
3543
+ def table; attributes[:"table"]&.value; end
3544
+ # Gets the value of `set` attribute in the message.
3545
+ #--
3546
+ # @rbs return: ::String
3547
+ def set; attributes[:"set"]&.value; end
3548
+ # Gets the value of `elements` attribute in the message.
3549
+ #--
3550
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3551
+ def elements; attributes[:"elements"]&.value; end
2251
3552
  end
2252
- # Get / dump sets.
2253
- class DoGetsetReply < ::Nl::Protocols::Raw::Message
2254
- TYPE = 2569
3553
+ # Get / dump set elements and reset stateful expressions.
3554
+ class DoGetsetelemResetRequest < ::Nl::Protocols::Raw::Message
3555
+ TYPE = 2593
2255
3556
  FIXED_HEADER = Structs::Nfgenmsg
2256
- ATTRIBUTE_SET = AttributeSets::SetAttrs
2257
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3557
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3558
+ ATTRIBUTES = Ractor.make_shareable(%i[elements])
2258
3559
  # Gets the value of `nfgen-family` field in the message's fixed header.
2259
3560
  #--
2260
3561
  # @rbs return: ::Integer
@@ -2267,17 +3568,17 @@ class Nftables < ::Nl::Family
2267
3568
  #--
2268
3569
  # @rbs return: ::Integer
2269
3570
  def res_id; fixed_header.res_id; end
2270
- # Gets the value of `name` attribute in the message.
3571
+ # Gets the value of `elements` attribute in the message.
2271
3572
  #--
2272
- # @rbs return: ::String
2273
- def name; attributes[:"name"]&.value; end
3573
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3574
+ def elements; attributes[:"elements"]&.value; end
2274
3575
  end
2275
- # Delete an existing set.
2276
- class DoDelsetRequest < ::Nl::Protocols::Raw::Message
2277
- TYPE = 2571
3576
+ # Get / dump set elements and reset stateful expressions.
3577
+ class DoGetsetelemResetReply < ::Nl::Protocols::Raw::Message
3578
+ TYPE = 2572
2278
3579
  FIXED_HEADER = Structs::Nfgenmsg
2279
- ATTRIBUTE_SET = AttributeSets::SetAttrs
2280
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3580
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3581
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2281
3582
  # Gets the value of `nfgen-family` field in the message's fixed header.
2282
3583
  #--
2283
3584
  # @rbs return: ::Integer
@@ -2290,17 +3591,25 @@ class Nftables < ::Nl::Family
2290
3591
  #--
2291
3592
  # @rbs return: ::Integer
2292
3593
  def res_id; fixed_header.res_id; end
2293
- # Gets the value of `name` attribute in the message.
3594
+ # Gets the value of `table` attribute in the message.
2294
3595
  #--
2295
3596
  # @rbs return: ::String
2296
- def name; attributes[:"name"]&.value; end
3597
+ def table; attributes[:"table"]&.value; end
3598
+ # Gets the value of `set` attribute in the message.
3599
+ #--
3600
+ # @rbs return: ::String
3601
+ def set; attributes[:"set"]&.value; end
3602
+ # Gets the value of `elements` attribute in the message.
3603
+ #--
3604
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3605
+ def elements; attributes[:"elements"]&.value; end
2297
3606
  end
2298
- # Delete an existing set with destroy semantics (ignoring ENOENT errors).
2299
- class DoDestroysetRequest < ::Nl::Protocols::Raw::Message
2300
- TYPE = 2589
3607
+ # Get / dump set elements and reset stateful expressions.
3608
+ class DumpGetsetelemResetRequest < ::Nl::Protocols::Raw::Message
3609
+ TYPE = 2593
2301
3610
  FIXED_HEADER = Structs::Nfgenmsg
2302
- ATTRIBUTE_SET = AttributeSets::SetAttrs
2303
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3611
+ ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3612
+ ATTRIBUTES = Ractor.make_shareable(%i[table set])
2304
3613
  # Gets the value of `nfgen-family` field in the message's fixed header.
2305
3614
  #--
2306
3615
  # @rbs return: ::Integer
@@ -2313,17 +3622,21 @@ class Nftables < ::Nl::Family
2313
3622
  #--
2314
3623
  # @rbs return: ::Integer
2315
3624
  def res_id; fixed_header.res_id; end
2316
- # Gets the value of `name` attribute in the message.
3625
+ # Gets the value of `table` attribute in the message.
2317
3626
  #--
2318
3627
  # @rbs return: ::String
2319
- def name; attributes[:"name"]&.value; end
3628
+ def table; attributes[:"table"]&.value; end
3629
+ # Gets the value of `set` attribute in the message.
3630
+ #--
3631
+ # @rbs return: ::String
3632
+ def set; attributes[:"set"]&.value; end
2320
3633
  end
2321
- # Create a new set element.
2322
- class DoNewsetelemRequest < ::Nl::Protocols::Raw::Message
3634
+ # Get / dump set elements and reset stateful expressions.
3635
+ class DumpGetsetelemResetReply < ::Nl::Protocols::Raw::Message
2323
3636
  TYPE = 2572
2324
3637
  FIXED_HEADER = Structs::Nfgenmsg
2325
3638
  ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
2326
- ATTRIBUTES = Ractor.make_shareable(%i[])
3639
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2327
3640
  # Gets the value of `nfgen-family` field in the message's fixed header.
2328
3641
  #--
2329
3642
  # @rbs return: ::Integer
@@ -2336,13 +3649,25 @@ class Nftables < ::Nl::Family
2336
3649
  #--
2337
3650
  # @rbs return: ::Integer
2338
3651
  def res_id; fixed_header.res_id; end
3652
+ # Gets the value of `table` attribute in the message.
3653
+ #--
3654
+ # @rbs return: ::String
3655
+ def table; attributes[:"table"]&.value; end
3656
+ # Gets the value of `set` attribute in the message.
3657
+ #--
3658
+ # @rbs return: ::String
3659
+ def set; attributes[:"set"]&.value; end
3660
+ # Gets the value of `elements` attribute in the message.
3661
+ #--
3662
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3663
+ def elements; attributes[:"elements"]&.value; end
2339
3664
  end
2340
- # Get / dump set elements.
2341
- class DoGetsetelemRequest < ::Nl::Protocols::Raw::Message
2342
- TYPE = 2573
3665
+ # Delete an existing set element.
3666
+ class DoDelsetelemRequest < ::Nl::Protocols::Raw::Message
3667
+ TYPE = 2574
2343
3668
  FIXED_HEADER = Structs::Nfgenmsg
2344
3669
  ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
2345
- ATTRIBUTES = Ractor.make_shareable(%i[])
3670
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2346
3671
  # Gets the value of `nfgen-family` field in the message's fixed header.
2347
3672
  #--
2348
3673
  # @rbs return: ::Integer
@@ -2355,13 +3680,25 @@ class Nftables < ::Nl::Family
2355
3680
  #--
2356
3681
  # @rbs return: ::Integer
2357
3682
  def res_id; fixed_header.res_id; end
3683
+ # Gets the value of `table` attribute in the message.
3684
+ #--
3685
+ # @rbs return: ::String
3686
+ def table; attributes[:"table"]&.value; end
3687
+ # Gets the value of `set` attribute in the message.
3688
+ #--
3689
+ # @rbs return: ::String
3690
+ def set; attributes[:"set"]&.value; end
3691
+ # Gets the value of `elements` attribute in the message.
3692
+ #--
3693
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3694
+ def elements; attributes[:"elements"]&.value; end
2358
3695
  end
2359
- # Get / dump set elements.
2360
- class DoGetsetelemReply < ::Nl::Protocols::Raw::Message
2361
- TYPE = 2572
3696
+ # Delete an existing set element with destroy semantics.
3697
+ class DoDestroysetelemRequest < ::Nl::Protocols::Raw::Message
3698
+ TYPE = 2590
2362
3699
  FIXED_HEADER = Structs::Nfgenmsg
2363
3700
  ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
2364
- ATTRIBUTES = Ractor.make_shareable(%i[])
3701
+ ATTRIBUTES = Ractor.make_shareable(%i[table set elements])
2365
3702
  # Gets the value of `nfgen-family` field in the message's fixed header.
2366
3703
  #--
2367
3704
  # @rbs return: ::Integer
@@ -2374,12 +3711,24 @@ class Nftables < ::Nl::Family
2374
3711
  #--
2375
3712
  # @rbs return: ::Integer
2376
3713
  def res_id; fixed_header.res_id; end
3714
+ # Gets the value of `table` attribute in the message.
3715
+ #--
3716
+ # @rbs return: ::String
3717
+ def table; attributes[:"table"]&.value; end
3718
+ # Gets the value of `set` attribute in the message.
3719
+ #--
3720
+ # @rbs return: ::String
3721
+ def set; attributes[:"set"]&.value; end
3722
+ # Gets the value of `elements` attribute in the message.
3723
+ #--
3724
+ # @rbs return: AttributeSets::SetelemListElemAttrs
3725
+ def elements; attributes[:"elements"]&.value; end
2377
3726
  end
2378
- # Get / dump set elements and reset stateful expressions.
2379
- class DoGetsetelemResetRequest < ::Nl::Protocols::Raw::Message
2380
- TYPE = 2593
3727
+ # Get / dump rule-set generation.
3728
+ class DoGetgenRequest < ::Nl::Protocols::Raw::Message
3729
+ TYPE = 2576
2381
3730
  FIXED_HEADER = Structs::Nfgenmsg
2382
- ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3731
+ ATTRIBUTE_SET = AttributeSets::GenAttrs
2383
3732
  ATTRIBUTES = Ractor.make_shareable(%i[])
2384
3733
  # Gets the value of `nfgen-family` field in the message's fixed header.
2385
3734
  #--
@@ -2394,12 +3743,12 @@ class Nftables < ::Nl::Family
2394
3743
  # @rbs return: ::Integer
2395
3744
  def res_id; fixed_header.res_id; end
2396
3745
  end
2397
- # Get / dump set elements and reset stateful expressions.
2398
- class DoGetsetelemResetReply < ::Nl::Protocols::Raw::Message
2399
- TYPE = 2572
3746
+ # Get / dump rule-set generation.
3747
+ class DoGetgenReply < ::Nl::Protocols::Raw::Message
3748
+ TYPE = 2575
2400
3749
  FIXED_HEADER = Structs::Nfgenmsg
2401
- ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
2402
- ATTRIBUTES = Ractor.make_shareable(%i[])
3750
+ ATTRIBUTE_SET = AttributeSets::GenAttrs
3751
+ ATTRIBUTES = Ractor.make_shareable(%i[id proc_pid proc_name])
2403
3752
  # Gets the value of `nfgen-family` field in the message's fixed header.
2404
3753
  #--
2405
3754
  # @rbs return: ::Integer
@@ -2412,12 +3761,24 @@ class Nftables < ::Nl::Family
2412
3761
  #--
2413
3762
  # @rbs return: ::Integer
2414
3763
  def res_id; fixed_header.res_id; end
3764
+ # Gets the value of `id` attribute in the message.
3765
+ #--
3766
+ # @rbs return: ::Integer
3767
+ def id; attributes[:"id"]&.value; end
3768
+ # Gets the value of `proc-pid` attribute in the message.
3769
+ #--
3770
+ # @rbs return: ::Integer
3771
+ def proc_pid; attributes[:"proc_pid"]&.value; end
3772
+ # Gets the value of `proc-name` attribute in the message.
3773
+ #--
3774
+ # @rbs return: ::String
3775
+ def proc_name; attributes[:"proc_name"]&.value; end
2415
3776
  end
2416
- # Delete an existing set element.
2417
- class DoDelsetelemRequest < ::Nl::Protocols::Raw::Message
2418
- TYPE = 2574
3777
+ # Get / dump rule-set generation.
3778
+ class DumpGetgenRequest < ::Nl::Protocols::Raw::Message
3779
+ TYPE = 2576
2419
3780
  FIXED_HEADER = Structs::Nfgenmsg
2420
- ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
3781
+ ATTRIBUTE_SET = AttributeSets::GenAttrs
2421
3782
  ATTRIBUTES = Ractor.make_shareable(%i[])
2422
3783
  # Gets the value of `nfgen-family` field in the message's fixed header.
2423
3784
  #--
@@ -2432,12 +3793,12 @@ class Nftables < ::Nl::Family
2432
3793
  # @rbs return: ::Integer
2433
3794
  def res_id; fixed_header.res_id; end
2434
3795
  end
2435
- # Delete an existing set element with destroy semantics.
2436
- class DoDestroysetelemRequest < ::Nl::Protocols::Raw::Message
2437
- TYPE = 2590
3796
+ # Get / dump rule-set generation.
3797
+ class DumpGetgenReply < ::Nl::Protocols::Raw::Message
3798
+ TYPE = 2575
2438
3799
  FIXED_HEADER = Structs::Nfgenmsg
2439
- ATTRIBUTE_SET = AttributeSets::SetelemListAttrs
2440
- ATTRIBUTES = Ractor.make_shareable(%i[])
3800
+ ATTRIBUTE_SET = AttributeSets::GenAttrs
3801
+ ATTRIBUTES = Ractor.make_shareable(%i[id proc_pid proc_name])
2441
3802
  # Gets the value of `nfgen-family` field in the message's fixed header.
2442
3803
  #--
2443
3804
  # @rbs return: ::Integer
@@ -2450,13 +3811,25 @@ class Nftables < ::Nl::Family
2450
3811
  #--
2451
3812
  # @rbs return: ::Integer
2452
3813
  def res_id; fixed_header.res_id; end
3814
+ # Gets the value of `id` attribute in the message.
3815
+ #--
3816
+ # @rbs return: ::Integer
3817
+ def id; attributes[:"id"]&.value; end
3818
+ # Gets the value of `proc-pid` attribute in the message.
3819
+ #--
3820
+ # @rbs return: ::Integer
3821
+ def proc_pid; attributes[:"proc_pid"]&.value; end
3822
+ # Gets the value of `proc-name` attribute in the message.
3823
+ #--
3824
+ # @rbs return: ::String
3825
+ def proc_name; attributes[:"proc_name"]&.value; end
2453
3826
  end
2454
- # Get / dump rule-set generation.
2455
- class DoGetgenRequest < ::Nl::Protocols::Raw::Message
2456
- TYPE = 2576
3827
+ # Create a new stateful object.
3828
+ class DoNewobjRequest < ::Nl::Protocols::Raw::Message
3829
+ TYPE = 2578
2457
3830
  FIXED_HEADER = Structs::Nfgenmsg
2458
- ATTRIBUTE_SET = AttributeSets::GenAttrs
2459
- ATTRIBUTES = Ractor.make_shareable(%i[])
3831
+ ATTRIBUTE_SET = AttributeSets::ObjAttrs
3832
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type data userdata])
2460
3833
  # Gets the value of `nfgen-family` field in the message's fixed header.
2461
3834
  #--
2462
3835
  # @rbs return: ::Integer
@@ -2469,13 +3842,33 @@ class Nftables < ::Nl::Family
2469
3842
  #--
2470
3843
  # @rbs return: ::Integer
2471
3844
  def res_id; fixed_header.res_id; end
3845
+ # Gets the value of `table` attribute in the message.
3846
+ #--
3847
+ # @rbs return: ::String
3848
+ def table; attributes[:"table"]&.value; end
3849
+ # Gets the value of `name` attribute in the message.
3850
+ #--
3851
+ # @rbs return: ::String
3852
+ def name; attributes[:"name"]&.value; end
3853
+ # Gets the value of `type` attribute in the message.
3854
+ #--
3855
+ # @rbs return: ::Integer
3856
+ def type; attributes[:"type"]&.value; end
3857
+ # Gets the value of `data` attribute in the message.
3858
+ #--
3859
+ # @rbs return: ::String
3860
+ def data; attributes[:"data"]&.value; end
3861
+ # Gets the value of `userdata` attribute in the message.
3862
+ #--
3863
+ # @rbs return: ::String
3864
+ def userdata; attributes[:"userdata"]&.value; end
2472
3865
  end
2473
- # Get / dump rule-set generation.
2474
- class DoGetgenReply < ::Nl::Protocols::Raw::Message
2475
- TYPE = 2575
3866
+ # Get / dump stateful objects.
3867
+ class DoGetobjRequest < ::Nl::Protocols::Raw::Message
3868
+ TYPE = 2579
2476
3869
  FIXED_HEADER = Structs::Nfgenmsg
2477
- ATTRIBUTE_SET = AttributeSets::GenAttrs
2478
- ATTRIBUTES = Ractor.make_shareable(%i[])
3870
+ ATTRIBUTE_SET = AttributeSets::ObjAttrs
3871
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type])
2479
3872
  # Gets the value of `nfgen-family` field in the message's fixed header.
2480
3873
  #--
2481
3874
  # @rbs return: ::Integer
@@ -2487,14 +3880,26 @@ class Nftables < ::Nl::Family
2487
3880
  # Gets the value of `res-id` field in the message's fixed header.
2488
3881
  #--
2489
3882
  # @rbs return: ::Integer
2490
- def res_id; fixed_header.res_id; end
3883
+ def res_id; fixed_header.res_id; end
3884
+ # Gets the value of `table` attribute in the message.
3885
+ #--
3886
+ # @rbs return: ::String
3887
+ def table; attributes[:"table"]&.value; end
3888
+ # Gets the value of `name` attribute in the message.
3889
+ #--
3890
+ # @rbs return: ::String
3891
+ def name; attributes[:"name"]&.value; end
3892
+ # Gets the value of `type` attribute in the message.
3893
+ #--
3894
+ # @rbs return: ::Integer
3895
+ def type; attributes[:"type"]&.value; end
2491
3896
  end
2492
- # Create a new stateful object.
2493
- class DoNewobjRequest < ::Nl::Protocols::Raw::Message
3897
+ # Get / dump stateful objects.
3898
+ class DoGetobjReply < ::Nl::Protocols::Raw::Message
2494
3899
  TYPE = 2578
2495
3900
  FIXED_HEADER = Structs::Nfgenmsg
2496
3901
  ATTRIBUTE_SET = AttributeSets::ObjAttrs
2497
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3902
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type data use handle userdata])
2498
3903
  # Gets the value of `nfgen-family` field in the message's fixed header.
2499
3904
  #--
2500
3905
  # @rbs return: ::Integer
@@ -2507,17 +3912,41 @@ class Nftables < ::Nl::Family
2507
3912
  #--
2508
3913
  # @rbs return: ::Integer
2509
3914
  def res_id; fixed_header.res_id; end
3915
+ # Gets the value of `table` attribute in the message.
3916
+ #--
3917
+ # @rbs return: ::String
3918
+ def table; attributes[:"table"]&.value; end
2510
3919
  # Gets the value of `name` attribute in the message.
2511
3920
  #--
2512
3921
  # @rbs return: ::String
2513
3922
  def name; attributes[:"name"]&.value; end
3923
+ # Gets the value of `type` attribute in the message.
3924
+ #--
3925
+ # @rbs return: ::Integer
3926
+ def type; attributes[:"type"]&.value; end
3927
+ # Gets the value of `data` attribute in the message.
3928
+ #--
3929
+ # @rbs return: ::String
3930
+ def data; attributes[:"data"]&.value; end
3931
+ # Gets the value of `use` attribute in the message.
3932
+ #--
3933
+ # @rbs return: ::Integer
3934
+ def use; attributes[:"use"]&.value; end
3935
+ # Gets the value of `handle` attribute in the message.
3936
+ #--
3937
+ # @rbs return: ::Integer
3938
+ def handle; attributes[:"handle"]&.value; end
3939
+ # Gets the value of `userdata` attribute in the message.
3940
+ #--
3941
+ # @rbs return: ::String
3942
+ def userdata; attributes[:"userdata"]&.value; end
2514
3943
  end
2515
3944
  # Get / dump stateful objects.
2516
- class DoGetobjRequest < ::Nl::Protocols::Raw::Message
3945
+ class DumpGetobjRequest < ::Nl::Protocols::Raw::Message
2517
3946
  TYPE = 2579
2518
3947
  FIXED_HEADER = Structs::Nfgenmsg
2519
3948
  ATTRIBUTE_SET = AttributeSets::ObjAttrs
2520
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3949
+ ATTRIBUTES = Ractor.make_shareable(%i[table type])
2521
3950
  # Gets the value of `nfgen-family` field in the message's fixed header.
2522
3951
  #--
2523
3952
  # @rbs return: ::Integer
@@ -2530,17 +3959,21 @@ class Nftables < ::Nl::Family
2530
3959
  #--
2531
3960
  # @rbs return: ::Integer
2532
3961
  def res_id; fixed_header.res_id; end
2533
- # Gets the value of `name` attribute in the message.
3962
+ # Gets the value of `table` attribute in the message.
2534
3963
  #--
2535
3964
  # @rbs return: ::String
2536
- def name; attributes[:"name"]&.value; end
3965
+ def table; attributes[:"table"]&.value; end
3966
+ # Gets the value of `type` attribute in the message.
3967
+ #--
3968
+ # @rbs return: ::Integer
3969
+ def type; attributes[:"type"]&.value; end
2537
3970
  end
2538
3971
  # Get / dump stateful objects.
2539
- class DoGetobjReply < ::Nl::Protocols::Raw::Message
3972
+ class DumpGetobjReply < ::Nl::Protocols::Raw::Message
2540
3973
  TYPE = 2578
2541
3974
  FIXED_HEADER = Structs::Nfgenmsg
2542
3975
  ATTRIBUTE_SET = AttributeSets::ObjAttrs
2543
- ATTRIBUTES = Ractor.make_shareable(%i[name])
3976
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type data use handle userdata])
2544
3977
  # Gets the value of `nfgen-family` field in the message's fixed header.
2545
3978
  #--
2546
3979
  # @rbs return: ::Integer
@@ -2553,17 +3986,41 @@ class Nftables < ::Nl::Family
2553
3986
  #--
2554
3987
  # @rbs return: ::Integer
2555
3988
  def res_id; fixed_header.res_id; end
3989
+ # Gets the value of `table` attribute in the message.
3990
+ #--
3991
+ # @rbs return: ::String
3992
+ def table; attributes[:"table"]&.value; end
2556
3993
  # Gets the value of `name` attribute in the message.
2557
3994
  #--
2558
3995
  # @rbs return: ::String
2559
3996
  def name; attributes[:"name"]&.value; end
3997
+ # Gets the value of `type` attribute in the message.
3998
+ #--
3999
+ # @rbs return: ::Integer
4000
+ def type; attributes[:"type"]&.value; end
4001
+ # Gets the value of `data` attribute in the message.
4002
+ #--
4003
+ # @rbs return: ::String
4004
+ def data; attributes[:"data"]&.value; end
4005
+ # Gets the value of `use` attribute in the message.
4006
+ #--
4007
+ # @rbs return: ::Integer
4008
+ def use; attributes[:"use"]&.value; end
4009
+ # Gets the value of `handle` attribute in the message.
4010
+ #--
4011
+ # @rbs return: ::Integer
4012
+ def handle; attributes[:"handle"]&.value; end
4013
+ # Gets the value of `userdata` attribute in the message.
4014
+ #--
4015
+ # @rbs return: ::String
4016
+ def userdata; attributes[:"userdata"]&.value; end
2560
4017
  end
2561
4018
  # Delete an existing stateful object.
2562
4019
  class DoDelobjRequest < ::Nl::Protocols::Raw::Message
2563
4020
  TYPE = 2580
2564
4021
  FIXED_HEADER = Structs::Nfgenmsg
2565
4022
  ATTRIBUTE_SET = AttributeSets::ObjAttrs
2566
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4023
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type handle])
2567
4024
  # Gets the value of `nfgen-family` field in the message's fixed header.
2568
4025
  #--
2569
4026
  # @rbs return: ::Integer
@@ -2576,17 +4033,29 @@ class Nftables < ::Nl::Family
2576
4033
  #--
2577
4034
  # @rbs return: ::Integer
2578
4035
  def res_id; fixed_header.res_id; end
4036
+ # Gets the value of `table` attribute in the message.
4037
+ #--
4038
+ # @rbs return: ::String
4039
+ def table; attributes[:"table"]&.value; end
2579
4040
  # Gets the value of `name` attribute in the message.
2580
4041
  #--
2581
4042
  # @rbs return: ::String
2582
4043
  def name; attributes[:"name"]&.value; end
4044
+ # Gets the value of `type` attribute in the message.
4045
+ #--
4046
+ # @rbs return: ::Integer
4047
+ def type; attributes[:"type"]&.value; end
4048
+ # Gets the value of `handle` attribute in the message.
4049
+ #--
4050
+ # @rbs return: ::Integer
4051
+ def handle; attributes[:"handle"]&.value; end
2583
4052
  end
2584
4053
  # Delete an existing stateful object with destroy semantics.
2585
4054
  class DoDestroyobjRequest < ::Nl::Protocols::Raw::Message
2586
4055
  TYPE = 2591
2587
4056
  FIXED_HEADER = Structs::Nfgenmsg
2588
4057
  ATTRIBUTE_SET = AttributeSets::ObjAttrs
2589
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4058
+ ATTRIBUTES = Ractor.make_shareable(%i[table name type handle])
2590
4059
  # Gets the value of `nfgen-family` field in the message's fixed header.
2591
4060
  #--
2592
4061
  # @rbs return: ::Integer
@@ -2599,17 +4068,29 @@ class Nftables < ::Nl::Family
2599
4068
  #--
2600
4069
  # @rbs return: ::Integer
2601
4070
  def res_id; fixed_header.res_id; end
4071
+ # Gets the value of `table` attribute in the message.
4072
+ #--
4073
+ # @rbs return: ::String
4074
+ def table; attributes[:"table"]&.value; end
2602
4075
  # Gets the value of `name` attribute in the message.
2603
4076
  #--
2604
4077
  # @rbs return: ::String
2605
4078
  def name; attributes[:"name"]&.value; end
4079
+ # Gets the value of `type` attribute in the message.
4080
+ #--
4081
+ # @rbs return: ::Integer
4082
+ def type; attributes[:"type"]&.value; end
4083
+ # Gets the value of `handle` attribute in the message.
4084
+ #--
4085
+ # @rbs return: ::Integer
4086
+ def handle; attributes[:"handle"]&.value; end
2606
4087
  end
2607
4088
  # Create a new flow table.
2608
4089
  class DoNewflowtableRequest < ::Nl::Protocols::Raw::Message
2609
4090
  TYPE = 2582
2610
4091
  FIXED_HEADER = Structs::Nfgenmsg
2611
4092
  ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
2612
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4093
+ ATTRIBUTES = Ractor.make_shareable(%i[table name hook flags])
2613
4094
  # Gets the value of `nfgen-family` field in the message's fixed header.
2614
4095
  #--
2615
4096
  # @rbs return: ::Integer
@@ -2622,17 +4103,29 @@ class Nftables < ::Nl::Family
2622
4103
  #--
2623
4104
  # @rbs return: ::Integer
2624
4105
  def res_id; fixed_header.res_id; end
4106
+ # Gets the value of `table` attribute in the message.
4107
+ #--
4108
+ # @rbs return: ::String
4109
+ def table; attributes[:"table"]&.value; end
2625
4110
  # Gets the value of `name` attribute in the message.
2626
4111
  #--
2627
4112
  # @rbs return: ::String
2628
4113
  def name; attributes[:"name"]&.value; end
4114
+ # Gets the value of `hook` attribute in the message.
4115
+ #--
4116
+ # @rbs return: AttributeSets::FlowtableHookAttrs
4117
+ def hook; attributes[:"hook"]&.value; end
4118
+ # Gets the value of `flags` attribute in the message.
4119
+ #--
4120
+ # @rbs return: ::Integer
4121
+ def flags; attributes[:"flags"]&.value; end
2629
4122
  end
2630
4123
  # Get / dump flow tables.
2631
4124
  class DoGetflowtableRequest < ::Nl::Protocols::Raw::Message
2632
4125
  TYPE = 2583
2633
4126
  FIXED_HEADER = Structs::Nfgenmsg
2634
4127
  ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
2635
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4128
+ ATTRIBUTES = Ractor.make_shareable(%i[table name])
2636
4129
  # Gets the value of `nfgen-family` field in the message's fixed header.
2637
4130
  #--
2638
4131
  # @rbs return: ::Integer
@@ -2645,6 +4138,10 @@ class Nftables < ::Nl::Family
2645
4138
  #--
2646
4139
  # @rbs return: ::Integer
2647
4140
  def res_id; fixed_header.res_id; end
4141
+ # Gets the value of `table` attribute in the message.
4142
+ #--
4143
+ # @rbs return: ::String
4144
+ def table; attributes[:"table"]&.value; end
2648
4145
  # Gets the value of `name` attribute in the message.
2649
4146
  #--
2650
4147
  # @rbs return: ::String
@@ -2655,7 +4152,69 @@ class Nftables < ::Nl::Family
2655
4152
  TYPE = 2582
2656
4153
  FIXED_HEADER = Structs::Nfgenmsg
2657
4154
  ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
2658
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4155
+ ATTRIBUTES = Ractor.make_shareable(%i[table name hook use handle flags])
4156
+ # Gets the value of `nfgen-family` field in the message's fixed header.
4157
+ #--
4158
+ # @rbs return: ::Integer
4159
+ def nfgen_family; fixed_header.nfgen_family; end
4160
+ # Gets the value of `version` field in the message's fixed header.
4161
+ #--
4162
+ # @rbs return: ::Integer
4163
+ def version; fixed_header.version; end
4164
+ # Gets the value of `res-id` field in the message's fixed header.
4165
+ #--
4166
+ # @rbs return: ::Integer
4167
+ def res_id; fixed_header.res_id; end
4168
+ # Gets the value of `table` attribute in the message.
4169
+ #--
4170
+ # @rbs return: ::String
4171
+ def table; attributes[:"table"]&.value; end
4172
+ # Gets the value of `name` attribute in the message.
4173
+ #--
4174
+ # @rbs return: ::String
4175
+ def name; attributes[:"name"]&.value; end
4176
+ # Gets the value of `hook` attribute in the message.
4177
+ #--
4178
+ # @rbs return: AttributeSets::FlowtableHookAttrs
4179
+ def hook; attributes[:"hook"]&.value; end
4180
+ # Gets the value of `use` attribute in the message.
4181
+ #--
4182
+ # @rbs return: ::Integer
4183
+ def use; attributes[:"use"]&.value; end
4184
+ # Gets the value of `handle` attribute in the message.
4185
+ #--
4186
+ # @rbs return: ::Integer
4187
+ def handle; attributes[:"handle"]&.value; end
4188
+ # Gets the value of `flags` attribute in the message.
4189
+ #--
4190
+ # @rbs return: ::Integer
4191
+ def flags; attributes[:"flags"]&.value; end
4192
+ end
4193
+ # Get / dump flow tables.
4194
+ class DumpGetflowtableRequest < ::Nl::Protocols::Raw::Message
4195
+ TYPE = 2583
4196
+ FIXED_HEADER = Structs::Nfgenmsg
4197
+ ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
4198
+ ATTRIBUTES = Ractor.make_shareable(%i[])
4199
+ # Gets the value of `nfgen-family` field in the message's fixed header.
4200
+ #--
4201
+ # @rbs return: ::Integer
4202
+ def nfgen_family; fixed_header.nfgen_family; end
4203
+ # Gets the value of `version` field in the message's fixed header.
4204
+ #--
4205
+ # @rbs return: ::Integer
4206
+ def version; fixed_header.version; end
4207
+ # Gets the value of `res-id` field in the message's fixed header.
4208
+ #--
4209
+ # @rbs return: ::Integer
4210
+ def res_id; fixed_header.res_id; end
4211
+ end
4212
+ # Get / dump flow tables.
4213
+ class DumpGetflowtableReply < ::Nl::Protocols::Raw::Message
4214
+ TYPE = 2582
4215
+ FIXED_HEADER = Structs::Nfgenmsg
4216
+ ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
4217
+ ATTRIBUTES = Ractor.make_shareable(%i[table name hook use handle flags])
2659
4218
  # Gets the value of `nfgen-family` field in the message's fixed header.
2660
4219
  #--
2661
4220
  # @rbs return: ::Integer
@@ -2668,17 +4227,37 @@ class Nftables < ::Nl::Family
2668
4227
  #--
2669
4228
  # @rbs return: ::Integer
2670
4229
  def res_id; fixed_header.res_id; end
4230
+ # Gets the value of `table` attribute in the message.
4231
+ #--
4232
+ # @rbs return: ::String
4233
+ def table; attributes[:"table"]&.value; end
2671
4234
  # Gets the value of `name` attribute in the message.
2672
4235
  #--
2673
4236
  # @rbs return: ::String
2674
4237
  def name; attributes[:"name"]&.value; end
4238
+ # Gets the value of `hook` attribute in the message.
4239
+ #--
4240
+ # @rbs return: AttributeSets::FlowtableHookAttrs
4241
+ def hook; attributes[:"hook"]&.value; end
4242
+ # Gets the value of `use` attribute in the message.
4243
+ #--
4244
+ # @rbs return: ::Integer
4245
+ def use; attributes[:"use"]&.value; end
4246
+ # Gets the value of `handle` attribute in the message.
4247
+ #--
4248
+ # @rbs return: ::Integer
4249
+ def handle; attributes[:"handle"]&.value; end
4250
+ # Gets the value of `flags` attribute in the message.
4251
+ #--
4252
+ # @rbs return: ::Integer
4253
+ def flags; attributes[:"flags"]&.value; end
2675
4254
  end
2676
4255
  # Delete an existing flow table.
2677
4256
  class DoDelflowtableRequest < ::Nl::Protocols::Raw::Message
2678
4257
  TYPE = 2584
2679
4258
  FIXED_HEADER = Structs::Nfgenmsg
2680
4259
  ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
2681
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4260
+ ATTRIBUTES = Ractor.make_shareable(%i[table name hook handle])
2682
4261
  # Gets the value of `nfgen-family` field in the message's fixed header.
2683
4262
  #--
2684
4263
  # @rbs return: ::Integer
@@ -2691,17 +4270,29 @@ class Nftables < ::Nl::Family
2691
4270
  #--
2692
4271
  # @rbs return: ::Integer
2693
4272
  def res_id; fixed_header.res_id; end
4273
+ # Gets the value of `table` attribute in the message.
4274
+ #--
4275
+ # @rbs return: ::String
4276
+ def table; attributes[:"table"]&.value; end
2694
4277
  # Gets the value of `name` attribute in the message.
2695
4278
  #--
2696
4279
  # @rbs return: ::String
2697
4280
  def name; attributes[:"name"]&.value; end
4281
+ # Gets the value of `hook` attribute in the message.
4282
+ #--
4283
+ # @rbs return: AttributeSets::FlowtableHookAttrs
4284
+ def hook; attributes[:"hook"]&.value; end
4285
+ # Gets the value of `handle` attribute in the message.
4286
+ #--
4287
+ # @rbs return: ::Integer
4288
+ def handle; attributes[:"handle"]&.value; end
2698
4289
  end
2699
4290
  # Delete an existing flow table with destroy semantics.
2700
4291
  class DoDestroyflowtableRequest < ::Nl::Protocols::Raw::Message
2701
4292
  TYPE = 2592
2702
4293
  FIXED_HEADER = Structs::Nfgenmsg
2703
4294
  ATTRIBUTE_SET = AttributeSets::FlowtableAttrs
2704
- ATTRIBUTES = Ractor.make_shareable(%i[name])
4295
+ ATTRIBUTES = Ractor.make_shareable(%i[table name hook handle])
2705
4296
  # Gets the value of `nfgen-family` field in the message's fixed header.
2706
4297
  #--
2707
4298
  # @rbs return: ::Integer
@@ -2714,12 +4305,27 @@ class Nftables < ::Nl::Family
2714
4305
  #--
2715
4306
  # @rbs return: ::Integer
2716
4307
  def res_id; fixed_header.res_id; end
4308
+ # Gets the value of `table` attribute in the message.
4309
+ #--
4310
+ # @rbs return: ::String
4311
+ def table; attributes[:"table"]&.value; end
2717
4312
  # Gets the value of `name` attribute in the message.
2718
4313
  #--
2719
4314
  # @rbs return: ::String
2720
4315
  def name; attributes[:"name"]&.value; end
4316
+ # Gets the value of `hook` attribute in the message.
4317
+ #--
4318
+ # @rbs return: AttributeSets::FlowtableHookAttrs
4319
+ def hook; attributes[:"hook"]&.value; end
4320
+ # Gets the value of `handle` attribute in the message.
4321
+ #--
4322
+ # @rbs return: ::Integer
4323
+ def handle; attributes[:"handle"]&.value; end
2721
4324
  end
2722
4325
  end
4326
+ module Notifications
4327
+ end
4328
+ NOTIFICATIONS = Ractor.make_shareable({}) #: Hash[::Integer, ::Class]
2723
4329
  # Start a batch of operations
2724
4330
  #--
2725
4331
  # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?genid: ::Integer) -> Messages::DoBatchBeginReply
@@ -2734,7 +4340,7 @@ class Nftables < ::Nl::Family
2734
4340
  end
2735
4341
  # Create a new table.
2736
4342
  #--
2737
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4343
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?flags: ::Integer, ?userdata: ::String) -> void
2738
4344
  def do_newtable(**args)
2739
4345
  exchange_message(:"do", Messages::DoNewtableRequest, nil, args)
2740
4346
  end
@@ -2744,125 +4350,174 @@ class Nftables < ::Nl::Family
2744
4350
  def do_gettable(**args)
2745
4351
  exchange_message(:"do", Messages::DoGettableRequest, Messages::DoGettableReply, args)
2746
4352
  end
4353
+ # Get / dump tables.
4354
+ #--
4355
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Enumerable[Messages::DumpGettableReply]
4356
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) { (Messages::DumpGettableReply) -> void } -> void
4357
+ def dump_gettable(**args, &block)
4358
+ exchange_message(:"dump", Messages::DumpGettableRequest, Messages::DumpGettableReply, args, &block)
4359
+ end
2747
4360
  # Delete an existing table.
2748
4361
  #--
2749
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4362
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?handle: ::Integer) -> void
2750
4363
  def do_deltable(**args)
2751
4364
  exchange_message(:"do", Messages::DoDeltableRequest, nil, args)
2752
4365
  end
2753
4366
  # Delete an existing table with destroy semantics (ignoring ENOENT
2754
4367
  # errors).
2755
4368
  #--
2756
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4369
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?handle: ::Integer) -> void
2757
4370
  def do_destroytable(**args)
2758
4371
  exchange_message(:"do", Messages::DoDestroytableRequest, nil, args)
2759
4372
  end
2760
4373
  # Create a new chain.
2761
4374
  #--
2762
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4375
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs, ?policy: ::Integer, ?type: ::String, ?counters: AttributeSets::NftCounterAttrs, ?flags: ::Integer, ?userdata: ::String) -> void
2763
4376
  def do_newchain(**args)
2764
4377
  exchange_message(:"do", Messages::DoNewchainRequest, nil, args)
2765
4378
  end
2766
4379
  # Get / dump chains.
2767
4380
  #--
2768
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> Messages::DoGetchainReply
4381
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> Messages::DoGetchainReply
2769
4382
  def do_getchain(**args)
2770
4383
  exchange_message(:"do", Messages::DoGetchainRequest, Messages::DoGetchainReply, args)
2771
4384
  end
4385
+ # Get / dump chains.
4386
+ #--
4387
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Enumerable[Messages::DumpGetchainReply]
4388
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) { (Messages::DumpGetchainReply) -> void } -> void
4389
+ def dump_getchain(**args, &block)
4390
+ exchange_message(:"dump", Messages::DumpGetchainRequest, Messages::DumpGetchainReply, args, &block)
4391
+ end
2772
4392
  # Delete an existing chain.
2773
4393
  #--
2774
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4394
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs) -> void
2775
4395
  def do_delchain(**args)
2776
4396
  exchange_message(:"do", Messages::DoDelchainRequest, nil, args)
2777
4397
  end
2778
4398
  # Delete an existing chain with destroy semantics (ignoring ENOENT
2779
4399
  # errors).
2780
4400
  #--
2781
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4401
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs) -> void
2782
4402
  def do_destroychain(**args)
2783
4403
  exchange_message(:"do", Messages::DoDestroychainRequest, nil, args)
2784
4404
  end
2785
4405
  # Create a new rule.
2786
4406
  #--
2787
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4407
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?expressions: AttributeSets::ExprListAttrs, ?compat: AttributeSets::RuleCompatAttrs, ?position: ::Integer, ?userdata: ::String, ?position_id: ::Integer, ?chain_id: ::Integer) -> void
2788
4408
  def do_newrule(**args)
2789
4409
  exchange_message(:"do", Messages::DoNewruleRequest, nil, args)
2790
4410
  end
2791
4411
  # Get / dump rules.
2792
4412
  #--
2793
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Messages::DoGetruleReply
4413
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> Messages::DoGetruleReply
2794
4414
  def do_getrule(**args)
2795
4415
  exchange_message(:"do", Messages::DoGetruleRequest, Messages::DoGetruleReply, args)
2796
4416
  end
4417
+ # Get / dump rules.
4418
+ #--
4419
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String) -> Enumerable[Messages::DumpGetruleReply]
4420
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String) { (Messages::DumpGetruleReply) -> void } -> void
4421
+ def dump_getrule(**args, &block)
4422
+ exchange_message(:"dump", Messages::DumpGetruleRequest, Messages::DumpGetruleReply, args, &block)
4423
+ end
2797
4424
  # Get / dump rules and reset stateful expressions.
2798
4425
  #--
2799
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Messages::DoGetruleResetReply
4426
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> Messages::DoGetruleResetReply
2800
4427
  def do_getrule_reset(**args)
2801
4428
  exchange_message(:"do", Messages::DoGetruleResetRequest, Messages::DoGetruleResetReply, args)
2802
4429
  end
4430
+ # Get / dump rules and reset stateful expressions.
4431
+ #--
4432
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> Enumerable[Messages::DumpGetruleResetReply]
4433
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) { (Messages::DumpGetruleResetReply) -> void } -> void
4434
+ def dump_getrule_reset(**args, &block)
4435
+ exchange_message(:"dump", Messages::DumpGetruleResetRequest, Messages::DumpGetruleResetReply, args, &block)
4436
+ end
2803
4437
  # Delete an existing rule.
2804
4438
  #--
2805
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4439
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?id: ::Integer) -> void
2806
4440
  def do_delrule(**args)
2807
4441
  exchange_message(:"do", Messages::DoDelruleRequest, nil, args)
2808
4442
  end
2809
4443
  # Delete an existing rule with destroy semantics (ignoring ENOENT errors).
2810
4444
  #--
2811
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4445
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?id: ::Integer) -> void
2812
4446
  def do_destroyrule(**args)
2813
4447
  exchange_message(:"do", Messages::DoDestroyruleRequest, nil, args)
2814
4448
  end
2815
4449
  # Create a new set.
2816
4450
  #--
2817
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4451
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?flags: ::Integer, ?key_type: ::Integer, ?key_len: ::Integer, ?data_type: ::Integer, ?data_len: ::Integer, ?policy: ::Integer, ?desc: AttributeSets::SetDescAttrs, ?id: ::Integer, ?timeout: ::Integer, ?gc_interval: ::Integer, ?userdata: ::String, ?obj_type: ::Integer) -> void
2818
4452
  def do_newset(**args)
2819
4453
  exchange_message(:"do", Messages::DoNewsetRequest, nil, args)
2820
4454
  end
2821
4455
  # Get / dump sets.
2822
4456
  #--
2823
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> Messages::DoGetsetReply
4457
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> Messages::DoGetsetReply
2824
4458
  def do_getset(**args)
2825
4459
  exchange_message(:"do", Messages::DoGetsetRequest, Messages::DoGetsetReply, args)
2826
4460
  end
4461
+ # Get / dump sets.
4462
+ #--
4463
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String) -> Enumerable[Messages::DumpGetsetReply]
4464
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String) { (Messages::DumpGetsetReply) -> void } -> void
4465
+ def dump_getset(**args, &block)
4466
+ exchange_message(:"dump", Messages::DumpGetsetRequest, Messages::DumpGetsetReply, args, &block)
4467
+ end
2827
4468
  # Delete an existing set.
2828
4469
  #--
2829
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4470
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?handle: ::Integer) -> void
2830
4471
  def do_delset(**args)
2831
4472
  exchange_message(:"do", Messages::DoDelsetRequest, nil, args)
2832
4473
  end
2833
4474
  # Delete an existing set with destroy semantics (ignoring ENOENT errors).
2834
4475
  #--
2835
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4476
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?handle: ::Integer) -> void
2836
4477
  def do_destroyset(**args)
2837
4478
  exchange_message(:"do", Messages::DoDestroysetRequest, nil, args)
2838
4479
  end
2839
4480
  # Create a new set element.
2840
4481
  #--
2841
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4482
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs, ?set_id: ::Integer) -> void
2842
4483
  def do_newsetelem(**args)
2843
4484
  exchange_message(:"do", Messages::DoNewsetelemRequest, nil, args)
2844
4485
  end
2845
4486
  # Get / dump set elements.
2846
4487
  #--
2847
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Messages::DoGetsetelemReply
4488
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> Messages::DoGetsetelemReply
2848
4489
  def do_getsetelem(**args)
2849
4490
  exchange_message(:"do", Messages::DoGetsetelemRequest, Messages::DoGetsetelemReply, args)
2850
4491
  end
4492
+ # Get / dump set elements.
4493
+ #--
4494
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) -> Enumerable[Messages::DumpGetsetelemReply]
4495
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) { (Messages::DumpGetsetelemReply) -> void } -> void
4496
+ def dump_getsetelem(**args, &block)
4497
+ exchange_message(:"dump", Messages::DumpGetsetelemRequest, Messages::DumpGetsetelemReply, args, &block)
4498
+ end
2851
4499
  # Get / dump set elements and reset stateful expressions.
2852
4500
  #--
2853
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Messages::DoGetsetelemResetReply
4501
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?elements: AttributeSets::SetelemListElemAttrs) -> Messages::DoGetsetelemResetReply
2854
4502
  def do_getsetelem_reset(**args)
2855
4503
  exchange_message(:"do", Messages::DoGetsetelemResetRequest, Messages::DoGetsetelemResetReply, args)
2856
4504
  end
4505
+ # Get / dump set elements and reset stateful expressions.
4506
+ #--
4507
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) -> Enumerable[Messages::DumpGetsetelemResetReply]
4508
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) { (Messages::DumpGetsetelemResetReply) -> void } -> void
4509
+ def dump_getsetelem_reset(**args, &block)
4510
+ exchange_message(:"dump", Messages::DumpGetsetelemResetRequest, Messages::DumpGetsetelemResetReply, args, &block)
4511
+ end
2857
4512
  # Delete an existing set element.
2858
4513
  #--
2859
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4514
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> void
2860
4515
  def do_delsetelem(**args)
2861
4516
  exchange_message(:"do", Messages::DoDelsetelemRequest, nil, args)
2862
4517
  end
2863
4518
  # Delete an existing set element with destroy semantics.
2864
4519
  #--
2865
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> void
4520
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> void
2866
4521
  def do_destroysetelem(**args)
2867
4522
  exchange_message(:"do", Messages::DoDestroysetelemRequest, nil, args)
2868
4523
  end
@@ -2872,53 +4527,353 @@ class Nftables < ::Nl::Family
2872
4527
  def do_getgen(**args)
2873
4528
  exchange_message(:"do", Messages::DoGetgenRequest, Messages::DoGetgenReply, args)
2874
4529
  end
4530
+ # Get / dump rule-set generation.
4531
+ #--
4532
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Enumerable[Messages::DumpGetgenReply]
4533
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) { (Messages::DumpGetgenReply) -> void } -> void
4534
+ def dump_getgen(**args, &block)
4535
+ exchange_message(:"dump", Messages::DumpGetgenRequest, Messages::DumpGetgenReply, args, &block)
4536
+ end
2875
4537
  # Create a new stateful object.
2876
4538
  #--
2877
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4539
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?data: ::String, ?userdata: ::String) -> void
2878
4540
  def do_newobj(**args)
2879
4541
  exchange_message(:"do", Messages::DoNewobjRequest, nil, args)
2880
4542
  end
2881
4543
  # Get / dump stateful objects.
2882
4544
  #--
2883
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> Messages::DoGetobjReply
4545
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer) -> Messages::DoGetobjReply
2884
4546
  def do_getobj(**args)
2885
4547
  exchange_message(:"do", Messages::DoGetobjRequest, Messages::DoGetobjReply, args)
2886
4548
  end
4549
+ # Get / dump stateful objects.
4550
+ #--
4551
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?type: ::Integer) -> Enumerable[Messages::DumpGetobjReply]
4552
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?type: ::Integer) { (Messages::DumpGetobjReply) -> void } -> void
4553
+ def dump_getobj(**args, &block)
4554
+ exchange_message(:"dump", Messages::DumpGetobjRequest, Messages::DumpGetobjReply, args, &block)
4555
+ end
2887
4556
  # Delete an existing stateful object.
2888
4557
  #--
2889
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4558
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?handle: ::Integer) -> void
2890
4559
  def do_delobj(**args)
2891
4560
  exchange_message(:"do", Messages::DoDelobjRequest, nil, args)
2892
4561
  end
2893
4562
  # Delete an existing stateful object with destroy semantics.
2894
4563
  #--
2895
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4564
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?handle: ::Integer) -> void
2896
4565
  def do_destroyobj(**args)
2897
4566
  exchange_message(:"do", Messages::DoDestroyobjRequest, nil, args)
2898
4567
  end
2899
4568
  # Create a new flow table.
2900
4569
  #--
2901
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4570
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?flags: ::Integer) -> void
2902
4571
  def do_newflowtable(**args)
2903
4572
  exchange_message(:"do", Messages::DoNewflowtableRequest, nil, args)
2904
4573
  end
2905
4574
  # Get / dump flow tables.
2906
4575
  #--
2907
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> Messages::DoGetflowtableReply
4576
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> Messages::DoGetflowtableReply
2908
4577
  def do_getflowtable(**args)
2909
4578
  exchange_message(:"do", Messages::DoGetflowtableRequest, Messages::DoGetflowtableReply, args)
2910
4579
  end
4580
+ # Get / dump flow tables.
4581
+ #--
4582
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Enumerable[Messages::DumpGetflowtableReply]
4583
+ # | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) { (Messages::DumpGetflowtableReply) -> void } -> void
4584
+ def dump_getflowtable(**args, &block)
4585
+ exchange_message(:"dump", Messages::DumpGetflowtableRequest, Messages::DumpGetflowtableReply, args, &block)
4586
+ end
2911
4587
  # Delete an existing flow table.
2912
4588
  #--
2913
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4589
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?handle: ::Integer) -> void
2914
4590
  def do_delflowtable(**args)
2915
4591
  exchange_message(:"do", Messages::DoDelflowtableRequest, nil, args)
2916
4592
  end
2917
4593
  # Delete an existing flow table with destroy semantics.
2918
4594
  #--
2919
- # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> void
4595
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?handle: ::Integer) -> void
2920
4596
  def do_destroyflowtable(**args)
2921
4597
  exchange_message(:"do", Messages::DoDestroyflowtableRequest, nil, args)
2922
4598
  end
4599
+ class AsyncOperations
4600
+ # :nodoc:
4601
+ def initialize(&exchange)
4602
+ @exchange = exchange
4603
+ end
4604
+ # Start a batch of operations
4605
+ #--
4606
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?genid: ::Integer) -> ::Nl::Async::Future[Messages::DoBatchBeginReply]
4607
+ def do_batch_begin(**args)
4608
+ @exchange.call(:"do", Messages::DoBatchBeginRequest, Messages::DoBatchBeginReply, args)
4609
+ end
4610
+ # Finish a batch of operations
4611
+ #--
4612
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?genid: ::Integer) -> ::Nl::Async::Future[void]
4613
+ def do_batch_end(**args)
4614
+ @exchange.call(:"do", Messages::DoBatchEndRequest, nil, args)
4615
+ end
4616
+ # Create a new table.
4617
+ #--
4618
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?flags: ::Integer, ?userdata: ::String) -> ::Nl::Async::Future[void]
4619
+ def do_newtable(**args)
4620
+ @exchange.call(:"do", Messages::DoNewtableRequest, nil, args)
4621
+ end
4622
+ # Get / dump tables.
4623
+ #--
4624
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String) -> ::Nl::Async::Future[Messages::DoGettableReply]
4625
+ def do_gettable(**args)
4626
+ @exchange.call(:"do", Messages::DoGettableRequest, Messages::DoGettableReply, args)
4627
+ end
4628
+ # Get / dump tables.
4629
+ #--
4630
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGettableReply]
4631
+ def dump_gettable(**args)
4632
+ @exchange.call(:"dump", Messages::DumpGettableRequest, Messages::DumpGettableReply, args)
4633
+ end
4634
+ # Delete an existing table.
4635
+ #--
4636
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4637
+ def do_deltable(**args)
4638
+ @exchange.call(:"do", Messages::DoDeltableRequest, nil, args)
4639
+ end
4640
+ # Delete an existing table with destroy semantics (ignoring ENOENT
4641
+ # errors).
4642
+ #--
4643
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?name: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4644
+ def do_destroytable(**args)
4645
+ @exchange.call(:"do", Messages::DoDestroytableRequest, nil, args)
4646
+ end
4647
+ # Create a new chain.
4648
+ #--
4649
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs, ?policy: ::Integer, ?type: ::String, ?counters: AttributeSets::NftCounterAttrs, ?flags: ::Integer, ?userdata: ::String) -> ::Nl::Async::Future[void]
4650
+ def do_newchain(**args)
4651
+ @exchange.call(:"do", Messages::DoNewchainRequest, nil, args)
4652
+ end
4653
+ # Get / dump chains.
4654
+ #--
4655
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> ::Nl::Async::Future[Messages::DoGetchainReply]
4656
+ def do_getchain(**args)
4657
+ @exchange.call(:"do", Messages::DoGetchainRequest, Messages::DoGetchainReply, args)
4658
+ end
4659
+ # Get / dump chains.
4660
+ #--
4661
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGetchainReply]
4662
+ def dump_getchain(**args)
4663
+ @exchange.call(:"dump", Messages::DumpGetchainRequest, Messages::DumpGetchainReply, args)
4664
+ end
4665
+ # Delete an existing chain.
4666
+ #--
4667
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs) -> ::Nl::Async::Future[void]
4668
+ def do_delchain(**args)
4669
+ @exchange.call(:"do", Messages::DoDelchainRequest, nil, args)
4670
+ end
4671
+ # Delete an existing chain with destroy semantics (ignoring ENOENT
4672
+ # errors).
4673
+ #--
4674
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?handle: ::Integer, ?name: ::String, ?hook: AttributeSets::NftHookAttrs) -> ::Nl::Async::Future[void]
4675
+ def do_destroychain(**args)
4676
+ @exchange.call(:"do", Messages::DoDestroychainRequest, nil, args)
4677
+ end
4678
+ # Create a new rule.
4679
+ #--
4680
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?expressions: AttributeSets::ExprListAttrs, ?compat: AttributeSets::RuleCompatAttrs, ?position: ::Integer, ?userdata: ::String, ?position_id: ::Integer, ?chain_id: ::Integer) -> ::Nl::Async::Future[void]
4681
+ def do_newrule(**args)
4682
+ @exchange.call(:"do", Messages::DoNewruleRequest, nil, args)
4683
+ end
4684
+ # Get / dump rules.
4685
+ #--
4686
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[Messages::DoGetruleReply]
4687
+ def do_getrule(**args)
4688
+ @exchange.call(:"do", Messages::DoGetruleRequest, Messages::DoGetruleReply, args)
4689
+ end
4690
+ # Get / dump rules.
4691
+ #--
4692
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String) -> ::Nl::Async::Stream[Messages::DumpGetruleReply]
4693
+ def dump_getrule(**args)
4694
+ @exchange.call(:"dump", Messages::DumpGetruleRequest, Messages::DumpGetruleReply, args)
4695
+ end
4696
+ # Get / dump rules and reset stateful expressions.
4697
+ #--
4698
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[Messages::DoGetruleResetReply]
4699
+ def do_getrule_reset(**args)
4700
+ @exchange.call(:"do", Messages::DoGetruleResetRequest, Messages::DoGetruleResetReply, args)
4701
+ end
4702
+ # Get / dump rules and reset stateful expressions.
4703
+ #--
4704
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGetruleResetReply]
4705
+ def dump_getrule_reset(**args)
4706
+ @exchange.call(:"dump", Messages::DumpGetruleResetRequest, Messages::DumpGetruleResetReply, args)
4707
+ end
4708
+ # Delete an existing rule.
4709
+ #--
4710
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?id: ::Integer) -> ::Nl::Async::Future[void]
4711
+ def do_delrule(**args)
4712
+ @exchange.call(:"do", Messages::DoDelruleRequest, nil, args)
4713
+ end
4714
+ # Delete an existing rule with destroy semantics (ignoring ENOENT errors).
4715
+ #--
4716
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?chain: ::String, ?handle: ::Integer, ?id: ::Integer) -> ::Nl::Async::Future[void]
4717
+ def do_destroyrule(**args)
4718
+ @exchange.call(:"do", Messages::DoDestroyruleRequest, nil, args)
4719
+ end
4720
+ # Create a new set.
4721
+ #--
4722
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?flags: ::Integer, ?key_type: ::Integer, ?key_len: ::Integer, ?data_type: ::Integer, ?data_len: ::Integer, ?policy: ::Integer, ?desc: AttributeSets::SetDescAttrs, ?id: ::Integer, ?timeout: ::Integer, ?gc_interval: ::Integer, ?userdata: ::String, ?obj_type: ::Integer) -> ::Nl::Async::Future[void]
4723
+ def do_newset(**args)
4724
+ @exchange.call(:"do", Messages::DoNewsetRequest, nil, args)
4725
+ end
4726
+ # Get / dump sets.
4727
+ #--
4728
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> ::Nl::Async::Future[Messages::DoGetsetReply]
4729
+ def do_getset(**args)
4730
+ @exchange.call(:"do", Messages::DoGetsetRequest, Messages::DoGetsetReply, args)
4731
+ end
4732
+ # Get / dump sets.
4733
+ #--
4734
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String) -> ::Nl::Async::Stream[Messages::DumpGetsetReply]
4735
+ def dump_getset(**args)
4736
+ @exchange.call(:"dump", Messages::DumpGetsetRequest, Messages::DumpGetsetReply, args)
4737
+ end
4738
+ # Delete an existing set.
4739
+ #--
4740
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4741
+ def do_delset(**args)
4742
+ @exchange.call(:"do", Messages::DoDelsetRequest, nil, args)
4743
+ end
4744
+ # Delete an existing set with destroy semantics (ignoring ENOENT errors).
4745
+ #--
4746
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4747
+ def do_destroyset(**args)
4748
+ @exchange.call(:"do", Messages::DoDestroysetRequest, nil, args)
4749
+ end
4750
+ # Create a new set element.
4751
+ #--
4752
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs, ?set_id: ::Integer) -> ::Nl::Async::Future[void]
4753
+ def do_newsetelem(**args)
4754
+ @exchange.call(:"do", Messages::DoNewsetelemRequest, nil, args)
4755
+ end
4756
+ # Get / dump set elements.
4757
+ #--
4758
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> ::Nl::Async::Future[Messages::DoGetsetelemReply]
4759
+ def do_getsetelem(**args)
4760
+ @exchange.call(:"do", Messages::DoGetsetelemRequest, Messages::DoGetsetelemReply, args)
4761
+ end
4762
+ # Get / dump set elements.
4763
+ #--
4764
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) -> ::Nl::Async::Stream[Messages::DumpGetsetelemReply]
4765
+ def dump_getsetelem(**args)
4766
+ @exchange.call(:"dump", Messages::DumpGetsetelemRequest, Messages::DumpGetsetelemReply, args)
4767
+ end
4768
+ # Get / dump set elements and reset stateful expressions.
4769
+ #--
4770
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?elements: AttributeSets::SetelemListElemAttrs) -> ::Nl::Async::Future[Messages::DoGetsetelemResetReply]
4771
+ def do_getsetelem_reset(**args)
4772
+ @exchange.call(:"do", Messages::DoGetsetelemResetRequest, Messages::DoGetsetelemResetReply, args)
4773
+ end
4774
+ # Get / dump set elements and reset stateful expressions.
4775
+ #--
4776
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String) -> ::Nl::Async::Stream[Messages::DumpGetsetelemResetReply]
4777
+ def dump_getsetelem_reset(**args)
4778
+ @exchange.call(:"dump", Messages::DumpGetsetelemResetRequest, Messages::DumpGetsetelemResetReply, args)
4779
+ end
4780
+ # Delete an existing set element.
4781
+ #--
4782
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> ::Nl::Async::Future[void]
4783
+ def do_delsetelem(**args)
4784
+ @exchange.call(:"do", Messages::DoDelsetelemRequest, nil, args)
4785
+ end
4786
+ # Delete an existing set element with destroy semantics.
4787
+ #--
4788
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?set: ::String, ?elements: AttributeSets::SetelemListElemAttrs) -> ::Nl::Async::Future[void]
4789
+ def do_destroysetelem(**args)
4790
+ @exchange.call(:"do", Messages::DoDestroysetelemRequest, nil, args)
4791
+ end
4792
+ # Get / dump rule-set generation.
4793
+ #--
4794
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> ::Nl::Async::Future[Messages::DoGetgenReply]
4795
+ def do_getgen(**args)
4796
+ @exchange.call(:"do", Messages::DoGetgenRequest, Messages::DoGetgenReply, args)
4797
+ end
4798
+ # Get / dump rule-set generation.
4799
+ #--
4800
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGetgenReply]
4801
+ def dump_getgen(**args)
4802
+ @exchange.call(:"dump", Messages::DumpGetgenRequest, Messages::DumpGetgenReply, args)
4803
+ end
4804
+ # Create a new stateful object.
4805
+ #--
4806
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?data: ::String, ?userdata: ::String) -> ::Nl::Async::Future[void]
4807
+ def do_newobj(**args)
4808
+ @exchange.call(:"do", Messages::DoNewobjRequest, nil, args)
4809
+ end
4810
+ # Get / dump stateful objects.
4811
+ #--
4812
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer) -> ::Nl::Async::Future[Messages::DoGetobjReply]
4813
+ def do_getobj(**args)
4814
+ @exchange.call(:"do", Messages::DoGetobjRequest, Messages::DoGetobjReply, args)
4815
+ end
4816
+ # Get / dump stateful objects.
4817
+ #--
4818
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?type: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGetobjReply]
4819
+ def dump_getobj(**args)
4820
+ @exchange.call(:"dump", Messages::DumpGetobjRequest, Messages::DumpGetobjReply, args)
4821
+ end
4822
+ # Delete an existing stateful object.
4823
+ #--
4824
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4825
+ def do_delobj(**args)
4826
+ @exchange.call(:"do", Messages::DoDelobjRequest, nil, args)
4827
+ end
4828
+ # Delete an existing stateful object with destroy semantics.
4829
+ #--
4830
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?type: ::Integer, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4831
+ def do_destroyobj(**args)
4832
+ @exchange.call(:"do", Messages::DoDestroyobjRequest, nil, args)
4833
+ end
4834
+ # Create a new flow table.
4835
+ #--
4836
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?flags: ::Integer) -> ::Nl::Async::Future[void]
4837
+ def do_newflowtable(**args)
4838
+ @exchange.call(:"do", Messages::DoNewflowtableRequest, nil, args)
4839
+ end
4840
+ # Get / dump flow tables.
4841
+ #--
4842
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String) -> ::Nl::Async::Future[Messages::DoGetflowtableReply]
4843
+ def do_getflowtable(**args)
4844
+ @exchange.call(:"do", Messages::DoGetflowtableRequest, Messages::DoGetflowtableReply, args)
4845
+ end
4846
+ # Get / dump flow tables.
4847
+ #--
4848
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> ::Nl::Async::Stream[Messages::DumpGetflowtableReply]
4849
+ def dump_getflowtable(**args)
4850
+ @exchange.call(:"dump", Messages::DumpGetflowtableRequest, Messages::DumpGetflowtableReply, args)
4851
+ end
4852
+ # Delete an existing flow table.
4853
+ #--
4854
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4855
+ def do_delflowtable(**args)
4856
+ @exchange.call(:"do", Messages::DoDelflowtableRequest, nil, args)
4857
+ end
4858
+ # Delete an existing flow table with destroy semantics.
4859
+ #--
4860
+ # @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?table: ::String, ?name: ::String, ?hook: AttributeSets::FlowtableHookAttrs, ?handle: ::Integer) -> ::Nl::Async::Future[void]
4861
+ def do_destroyflowtable(**args)
4862
+ @exchange.call(:"do", Messages::DoDestroyflowtableRequest, nil, args)
4863
+ end
4864
+ end
4865
+ # Returns the asynchronous operation facade for this family.
4866
+ #--
4867
+ # @rbs (?stream_capacity: ::Integer?) -> AsyncOperations
4868
+ def async(stream_capacity: nil)
4869
+ return @async_operations ||= build_async_facade(AsyncOperations) if stream_capacity.nil?
4870
+ build_async_facade(AsyncOperations, stream_capacity:)
4871
+ end
4872
+ #--
4873
+ # @rbs (*(:mgmt) groups) -> self
4874
+ def subscribe(*groups) = super
4875
+ #--
4876
+ # @rbs (*(:mgmt) groups) -> self
4877
+ def unsubscribe(*groups) = super
2923
4878
  end
2924
4879
  end; end