nl-linux 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/Rakefile +31 -5
- data/generated/nl/linux/binder.rb +96 -0
- data/generated/nl/linux/conntrack.rb +1227 -0
- data/generated/nl/linux/dev_energymodel.rb +235 -0
- data/generated/nl/linux/devlink.rb +5177 -0
- data/generated/nl/linux/dpll.rb +944 -0
- data/generated/nl/linux/ethtool.rb +7121 -0
- data/generated/nl/linux/fou.rb +332 -0
- data/generated/nl/linux/handshake.rb +238 -0
- data/generated/nl/linux/lockd.rb +99 -0
- data/generated/nl/linux/mptcp_pm.rb +607 -0
- data/generated/nl/linux/net_shaper.rb +731 -0
- data/generated/nl/linux/netdev.rb +1450 -0
- data/generated/nl/linux/nfsd.rb +500 -0
- data/generated/nl/linux/nftables.rb +2924 -0
- data/generated/nl/linux/nl80211.rb +3393 -0
- data/generated/nl/linux/nlctrl.rb +397 -0
- data/generated/nl/linux/ovpn.rb +964 -0
- data/generated/nl/linux/ovs_datapath.rb +321 -0
- data/generated/nl/linux/ovs_flow.rb +1447 -0
- data/generated/nl/linux/ovs_vport.rb +391 -0
- data/generated/nl/linux/psp.rb +463 -0
- data/generated/nl/linux/rt_addr.rb +448 -0
- data/generated/nl/linux/rt_link.rb +4613 -0
- data/generated/nl/linux/rt_neigh.rb +897 -0
- data/generated/nl/linux/rt_route.rb +1126 -0
- data/generated/nl/linux/rt_rule.rb +708 -0
- data/generated/nl/linux/tc.rb +7066 -0
- data/generated/nl/linux/tcp_metrics.rb +317 -0
- data/generated/nl/linux/team.rb +339 -0
- data/generated/nl/linux/wireguard.rb +430 -0
- data/generated/nl/linux.rb +35 -0
- data/lib/nl/linux/version.rb +1 -1
- data/lib/nl-linux.rb +1 -1
- metadata +37 -7
- data/lib/nl/linux.rb +0 -3
|
@@ -0,0 +1,1227 @@
|
|
|
1
|
+
# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
|
|
2
|
+
#--
|
|
3
|
+
# frozen_string_literal: true
|
|
4
|
+
# rbs_inline: enabled
|
|
5
|
+
# This code is generated by Ynl::Generator. DO NOT EDIT.
|
|
6
|
+
require 'nl'
|
|
7
|
+
module Nl; module Linux
|
|
8
|
+
# Netfilter connection tracking subsystem over nfnetlink
|
|
9
|
+
class Conntrack < ::Nl::Family
|
|
10
|
+
NAME = "conntrack"
|
|
11
|
+
PROTOCOL = Ractor.make_shareable(::Nl::Protocols::Raw.new("conntrack", 12))
|
|
12
|
+
module Structs
|
|
13
|
+
Nfgenmsg = Struct.new(
|
|
14
|
+
:"nfgen_family", #: ::Integer
|
|
15
|
+
:"version", #: ::Integer
|
|
16
|
+
:"res_id", #: ::Integer
|
|
17
|
+
)
|
|
18
|
+
class Nfgenmsg
|
|
19
|
+
# :nodoc:
|
|
20
|
+
MEMBERS = Ractor.make_shareable({nfgen_family: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), version: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), res_id: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
|
|
21
|
+
# Decodes the struct.
|
|
22
|
+
#--
|
|
23
|
+
# @rbs decoder: ::Nl::Decoder
|
|
24
|
+
# @rbs return: instance
|
|
25
|
+
def self.decode(decoder)
|
|
26
|
+
self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
|
|
27
|
+
end
|
|
28
|
+
# Encodes the struct.
|
|
29
|
+
#--
|
|
30
|
+
# @rbs encoder: ::Nl::Encoder
|
|
31
|
+
# @rbs return: void
|
|
32
|
+
def encode(encoder)
|
|
33
|
+
MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
NfCtTcpFlagsMask = Struct.new(
|
|
37
|
+
:"flags", #: ::Integer
|
|
38
|
+
:"mask", #: ::Integer
|
|
39
|
+
)
|
|
40
|
+
class NfCtTcpFlagsMask
|
|
41
|
+
# :nodoc:
|
|
42
|
+
MEMBERS = Ractor.make_shareable({flags: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil), mask: ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)}) #: Hash[::Symbol, ::Nl::_DataType]
|
|
43
|
+
# Decodes the struct.
|
|
44
|
+
#--
|
|
45
|
+
# @rbs decoder: ::Nl::Decoder
|
|
46
|
+
# @rbs return: instance
|
|
47
|
+
def self.decode(decoder)
|
|
48
|
+
self.new(*MEMBERS.map {|name, datatype| datatype.decode(decoder) })
|
|
49
|
+
end
|
|
50
|
+
# Encodes the struct.
|
|
51
|
+
#--
|
|
52
|
+
# @rbs encoder: ::Nl::Encoder
|
|
53
|
+
# @rbs return: void
|
|
54
|
+
def encode(encoder)
|
|
55
|
+
MEMBERS.each {|name, datatype| datatype.encode(encoder, self.public_send(name)) }
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
module AttributeSets
|
|
60
|
+
class CounterAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
61
|
+
# Abstract class
|
|
62
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
63
|
+
end
|
|
64
|
+
class Packets < Attribute
|
|
65
|
+
TYPE = 1
|
|
66
|
+
NAME = :"packets"
|
|
67
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
|
|
68
|
+
end
|
|
69
|
+
class Bytes < Attribute
|
|
70
|
+
TYPE = 2
|
|
71
|
+
NAME = :"bytes"
|
|
72
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
|
|
73
|
+
end
|
|
74
|
+
class PacketsOld < Attribute
|
|
75
|
+
TYPE = 3
|
|
76
|
+
NAME = :"packets_old"
|
|
77
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
|
|
78
|
+
end
|
|
79
|
+
class BytesOld < Attribute
|
|
80
|
+
TYPE = 4
|
|
81
|
+
NAME = :"bytes_old"
|
|
82
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U32, check: nil)
|
|
83
|
+
end
|
|
84
|
+
class Pad < Attribute
|
|
85
|
+
TYPE = 5
|
|
86
|
+
NAME = :"pad"
|
|
87
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Pad.new()
|
|
88
|
+
end
|
|
89
|
+
# :nodoc:
|
|
90
|
+
BY_NAME = Ractor.make_shareable({:"packets" => Packets, :"bytes" => Bytes, :"packets_old" => PacketsOld, :"bytes_old" => BytesOld, :"pad" => Pad}) #: Hash[::Symbol, Attribute]
|
|
91
|
+
# :nodoc:
|
|
92
|
+
BY_TYPE = Ractor.make_shareable({1 => Packets, 2 => Bytes, 3 => PacketsOld, 4 => BytesOld, 5 => Pad}) #: Hash[::Integer, Attribute]
|
|
93
|
+
class << self
|
|
94
|
+
# Looks up Attribute class by name.
|
|
95
|
+
#--
|
|
96
|
+
# @rbs name: Symbol
|
|
97
|
+
# @rbs return: Attribute
|
|
98
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
99
|
+
# Looks up Attribute class by type value.
|
|
100
|
+
#--
|
|
101
|
+
# @rbs type: Integer
|
|
102
|
+
# @rbs return: Attribute
|
|
103
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
104
|
+
end
|
|
105
|
+
end
|
|
106
|
+
class TupleProtoAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
107
|
+
# Abstract class
|
|
108
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
109
|
+
end
|
|
110
|
+
class ProtoNum < Attribute
|
|
111
|
+
TYPE = 1
|
|
112
|
+
NAME = :"proto_num"
|
|
113
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
114
|
+
end
|
|
115
|
+
class ProtoSrcPort < Attribute
|
|
116
|
+
TYPE = 2
|
|
117
|
+
NAME = :"proto_src_port"
|
|
118
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
119
|
+
end
|
|
120
|
+
class ProtoDstPort < Attribute
|
|
121
|
+
TYPE = 3
|
|
122
|
+
NAME = :"proto_dst_port"
|
|
123
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
124
|
+
end
|
|
125
|
+
class ProtoIcmpId < Attribute
|
|
126
|
+
TYPE = 4
|
|
127
|
+
NAME = :"proto_icmp_id"
|
|
128
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
129
|
+
end
|
|
130
|
+
class ProtoIcmpType < Attribute
|
|
131
|
+
TYPE = 5
|
|
132
|
+
NAME = :"proto_icmp_type"
|
|
133
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
134
|
+
end
|
|
135
|
+
class ProtoIcmpCode < Attribute
|
|
136
|
+
TYPE = 6
|
|
137
|
+
NAME = :"proto_icmp_code"
|
|
138
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
139
|
+
end
|
|
140
|
+
class ProtoIcmpv6Id < Attribute
|
|
141
|
+
TYPE = 7
|
|
142
|
+
NAME = :"proto_icmpv6_id"
|
|
143
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
144
|
+
end
|
|
145
|
+
class ProtoIcmpv6Type < Attribute
|
|
146
|
+
TYPE = 8
|
|
147
|
+
NAME = :"proto_icmpv6_type"
|
|
148
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
149
|
+
end
|
|
150
|
+
class ProtoIcmpv6Code < Attribute
|
|
151
|
+
TYPE = 9
|
|
152
|
+
NAME = :"proto_icmpv6_code"
|
|
153
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
154
|
+
end
|
|
155
|
+
# :nodoc:
|
|
156
|
+
BY_NAME = Ractor.make_shareable({:"proto_num" => ProtoNum, :"proto_src_port" => ProtoSrcPort, :"proto_dst_port" => ProtoDstPort, :"proto_icmp_id" => ProtoIcmpId, :"proto_icmp_type" => ProtoIcmpType, :"proto_icmp_code" => ProtoIcmpCode, :"proto_icmpv6_id" => ProtoIcmpv6Id, :"proto_icmpv6_type" => ProtoIcmpv6Type, :"proto_icmpv6_code" => ProtoIcmpv6Code}) #: Hash[::Symbol, Attribute]
|
|
157
|
+
# :nodoc:
|
|
158
|
+
BY_TYPE = Ractor.make_shareable({1 => ProtoNum, 2 => ProtoSrcPort, 3 => ProtoDstPort, 4 => ProtoIcmpId, 5 => ProtoIcmpType, 6 => ProtoIcmpCode, 7 => ProtoIcmpv6Id, 8 => ProtoIcmpv6Type, 9 => ProtoIcmpv6Code}) #: Hash[::Integer, Attribute]
|
|
159
|
+
class << self
|
|
160
|
+
# Looks up Attribute class by name.
|
|
161
|
+
#--
|
|
162
|
+
# @rbs name: Symbol
|
|
163
|
+
# @rbs return: Attribute
|
|
164
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
165
|
+
# Looks up Attribute class by type value.
|
|
166
|
+
#--
|
|
167
|
+
# @rbs type: Integer
|
|
168
|
+
# @rbs return: Attribute
|
|
169
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
class TupleIpAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
173
|
+
# Abstract class
|
|
174
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
175
|
+
end
|
|
176
|
+
class IpV4Src < Attribute
|
|
177
|
+
TYPE = 1
|
|
178
|
+
NAME = :"ip_v4_src"
|
|
179
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
180
|
+
end
|
|
181
|
+
class IpV4Dst < Attribute
|
|
182
|
+
TYPE = 2
|
|
183
|
+
NAME = :"ip_v4_dst"
|
|
184
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
185
|
+
end
|
|
186
|
+
class IpV6Src < Attribute
|
|
187
|
+
TYPE = 3
|
|
188
|
+
NAME = :"ip_v6_src"
|
|
189
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: -> { raise ArgumentError, "Value #{it.inspect} is shorter than minimum length 16" unless it.bytesize >= 16 })
|
|
190
|
+
end
|
|
191
|
+
class IpV6Dst < Attribute
|
|
192
|
+
TYPE = 4
|
|
193
|
+
NAME = :"ip_v6_dst"
|
|
194
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: -> { raise ArgumentError, "Value #{it.inspect} is shorter than minimum length 16" unless it.bytesize >= 16 })
|
|
195
|
+
end
|
|
196
|
+
# :nodoc:
|
|
197
|
+
BY_NAME = Ractor.make_shareable({:"ip_v4_src" => IpV4Src, :"ip_v4_dst" => IpV4Dst, :"ip_v6_src" => IpV6Src, :"ip_v6_dst" => IpV6Dst}) #: Hash[::Symbol, Attribute]
|
|
198
|
+
# :nodoc:
|
|
199
|
+
BY_TYPE = Ractor.make_shareable({1 => IpV4Src, 2 => IpV4Dst, 3 => IpV6Src, 4 => IpV6Dst}) #: Hash[::Integer, Attribute]
|
|
200
|
+
class << self
|
|
201
|
+
# Looks up Attribute class by name.
|
|
202
|
+
#--
|
|
203
|
+
# @rbs name: Symbol
|
|
204
|
+
# @rbs return: Attribute
|
|
205
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
206
|
+
# Looks up Attribute class by type value.
|
|
207
|
+
#--
|
|
208
|
+
# @rbs type: Integer
|
|
209
|
+
# @rbs return: Attribute
|
|
210
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
211
|
+
end
|
|
212
|
+
end
|
|
213
|
+
class TupleAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
214
|
+
# Abstract class
|
|
215
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
216
|
+
end
|
|
217
|
+
class TupleIp < Attribute
|
|
218
|
+
TYPE = 1
|
|
219
|
+
NAME = :"tuple_ip"
|
|
220
|
+
end
|
|
221
|
+
class TupleProto < Attribute
|
|
222
|
+
TYPE = 2
|
|
223
|
+
NAME = :"tuple_proto"
|
|
224
|
+
end
|
|
225
|
+
class TupleZone < Attribute
|
|
226
|
+
TYPE = 3
|
|
227
|
+
NAME = :"tuple_zone"
|
|
228
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
229
|
+
end
|
|
230
|
+
# :nodoc:
|
|
231
|
+
BY_NAME = Ractor.make_shareable({:"tuple_ip" => TupleIp, :"tuple_proto" => TupleProto, :"tuple_zone" => TupleZone}) #: Hash[::Symbol, Attribute]
|
|
232
|
+
# :nodoc:
|
|
233
|
+
BY_TYPE = Ractor.make_shareable({1 => TupleIp, 2 => TupleProto, 3 => TupleZone}) #: Hash[::Integer, Attribute]
|
|
234
|
+
class << self
|
|
235
|
+
# Looks up Attribute class by name.
|
|
236
|
+
#--
|
|
237
|
+
# @rbs name: Symbol
|
|
238
|
+
# @rbs return: Attribute
|
|
239
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
240
|
+
# Looks up Attribute class by type value.
|
|
241
|
+
#--
|
|
242
|
+
# @rbs type: Integer
|
|
243
|
+
# @rbs return: Attribute
|
|
244
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
245
|
+
end
|
|
246
|
+
end
|
|
247
|
+
class ProtoinfoTcpAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
248
|
+
# Abstract class
|
|
249
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
250
|
+
end
|
|
251
|
+
class TcpState < Attribute
|
|
252
|
+
TYPE = 1
|
|
253
|
+
NAME = :"tcp_state"
|
|
254
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
255
|
+
end
|
|
256
|
+
class TcpWscaleOriginal < Attribute
|
|
257
|
+
TYPE = 2
|
|
258
|
+
NAME = :"tcp_wscale_original"
|
|
259
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
260
|
+
end
|
|
261
|
+
class TcpWscaleReply < Attribute
|
|
262
|
+
TYPE = 3
|
|
263
|
+
NAME = :"tcp_wscale_reply"
|
|
264
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
265
|
+
end
|
|
266
|
+
class TcpFlagsOriginal < Attribute
|
|
267
|
+
TYPE = 4
|
|
268
|
+
NAME = :"tcp_flags_original"
|
|
269
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
270
|
+
end
|
|
271
|
+
class TcpFlagsReply < Attribute
|
|
272
|
+
TYPE = 5
|
|
273
|
+
NAME = :"tcp_flags_reply"
|
|
274
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
275
|
+
end
|
|
276
|
+
# :nodoc:
|
|
277
|
+
BY_NAME = Ractor.make_shareable({:"tcp_state" => TcpState, :"tcp_wscale_original" => TcpWscaleOriginal, :"tcp_wscale_reply" => TcpWscaleReply, :"tcp_flags_original" => TcpFlagsOriginal, :"tcp_flags_reply" => TcpFlagsReply}) #: Hash[::Symbol, Attribute]
|
|
278
|
+
# :nodoc:
|
|
279
|
+
BY_TYPE = Ractor.make_shareable({1 => TcpState, 2 => TcpWscaleOriginal, 3 => TcpWscaleReply, 4 => TcpFlagsOriginal, 5 => TcpFlagsReply}) #: Hash[::Integer, Attribute]
|
|
280
|
+
class << self
|
|
281
|
+
# Looks up Attribute class by name.
|
|
282
|
+
#--
|
|
283
|
+
# @rbs name: Symbol
|
|
284
|
+
# @rbs return: Attribute
|
|
285
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
286
|
+
# Looks up Attribute class by type value.
|
|
287
|
+
#--
|
|
288
|
+
# @rbs type: Integer
|
|
289
|
+
# @rbs return: Attribute
|
|
290
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
291
|
+
end
|
|
292
|
+
end
|
|
293
|
+
class ProtoinfoDccpAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
294
|
+
# Abstract class
|
|
295
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
296
|
+
end
|
|
297
|
+
class DccpState < Attribute
|
|
298
|
+
TYPE = 1
|
|
299
|
+
NAME = :"dccp_state"
|
|
300
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
301
|
+
end
|
|
302
|
+
class DccpRole < Attribute
|
|
303
|
+
TYPE = 2
|
|
304
|
+
NAME = :"dccp_role"
|
|
305
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
306
|
+
end
|
|
307
|
+
class DccpHandshakeSeq < Attribute
|
|
308
|
+
TYPE = 3
|
|
309
|
+
NAME = :"dccp_handshake_seq"
|
|
310
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
|
|
311
|
+
end
|
|
312
|
+
class DccpPad < Attribute
|
|
313
|
+
TYPE = 4
|
|
314
|
+
NAME = :"dccp_pad"
|
|
315
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Pad.new()
|
|
316
|
+
end
|
|
317
|
+
# :nodoc:
|
|
318
|
+
BY_NAME = Ractor.make_shareable({:"dccp_state" => DccpState, :"dccp_role" => DccpRole, :"dccp_handshake_seq" => DccpHandshakeSeq, :"dccp_pad" => DccpPad}) #: Hash[::Symbol, Attribute]
|
|
319
|
+
# :nodoc:
|
|
320
|
+
BY_TYPE = Ractor.make_shareable({1 => DccpState, 2 => DccpRole, 3 => DccpHandshakeSeq, 4 => DccpPad}) #: Hash[::Integer, Attribute]
|
|
321
|
+
class << self
|
|
322
|
+
# Looks up Attribute class by name.
|
|
323
|
+
#--
|
|
324
|
+
# @rbs name: Symbol
|
|
325
|
+
# @rbs return: Attribute
|
|
326
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
327
|
+
# Looks up Attribute class by type value.
|
|
328
|
+
#--
|
|
329
|
+
# @rbs type: Integer
|
|
330
|
+
# @rbs return: Attribute
|
|
331
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
332
|
+
end
|
|
333
|
+
end
|
|
334
|
+
class ProtoinfoSctpAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
335
|
+
# Abstract class
|
|
336
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
337
|
+
end
|
|
338
|
+
class SctpState < Attribute
|
|
339
|
+
TYPE = 1
|
|
340
|
+
NAME = :"sctp_state"
|
|
341
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Host::U8, check: nil)
|
|
342
|
+
end
|
|
343
|
+
class VtagOriginal < Attribute
|
|
344
|
+
TYPE = 2
|
|
345
|
+
NAME = :"vtag_original"
|
|
346
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
347
|
+
end
|
|
348
|
+
class VtagReply < Attribute
|
|
349
|
+
TYPE = 3
|
|
350
|
+
NAME = :"vtag_reply"
|
|
351
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
352
|
+
end
|
|
353
|
+
# :nodoc:
|
|
354
|
+
BY_NAME = Ractor.make_shareable({:"sctp_state" => SctpState, :"vtag_original" => VtagOriginal, :"vtag_reply" => VtagReply}) #: Hash[::Symbol, Attribute]
|
|
355
|
+
# :nodoc:
|
|
356
|
+
BY_TYPE = Ractor.make_shareable({1 => SctpState, 2 => VtagOriginal, 3 => VtagReply}) #: Hash[::Integer, Attribute]
|
|
357
|
+
class << self
|
|
358
|
+
# Looks up Attribute class by name.
|
|
359
|
+
#--
|
|
360
|
+
# @rbs name: Symbol
|
|
361
|
+
# @rbs return: Attribute
|
|
362
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
363
|
+
# Looks up Attribute class by type value.
|
|
364
|
+
#--
|
|
365
|
+
# @rbs type: Integer
|
|
366
|
+
# @rbs return: Attribute
|
|
367
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
368
|
+
end
|
|
369
|
+
end
|
|
370
|
+
class ProtoinfoAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
371
|
+
# Abstract class
|
|
372
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
373
|
+
end
|
|
374
|
+
class ProtoinfoTcp < Attribute
|
|
375
|
+
TYPE = 1
|
|
376
|
+
NAME = :"protoinfo_tcp"
|
|
377
|
+
end
|
|
378
|
+
class ProtoinfoDccp < Attribute
|
|
379
|
+
TYPE = 2
|
|
380
|
+
NAME = :"protoinfo_dccp"
|
|
381
|
+
end
|
|
382
|
+
class ProtoinfoSctp < Attribute
|
|
383
|
+
TYPE = 3
|
|
384
|
+
NAME = :"protoinfo_sctp"
|
|
385
|
+
end
|
|
386
|
+
# :nodoc:
|
|
387
|
+
BY_NAME = Ractor.make_shareable({:"protoinfo_tcp" => ProtoinfoTcp, :"protoinfo_dccp" => ProtoinfoDccp, :"protoinfo_sctp" => ProtoinfoSctp}) #: Hash[::Symbol, Attribute]
|
|
388
|
+
# :nodoc:
|
|
389
|
+
BY_TYPE = Ractor.make_shareable({1 => ProtoinfoTcp, 2 => ProtoinfoDccp, 3 => ProtoinfoSctp}) #: Hash[::Integer, Attribute]
|
|
390
|
+
class << self
|
|
391
|
+
# Looks up Attribute class by name.
|
|
392
|
+
#--
|
|
393
|
+
# @rbs name: Symbol
|
|
394
|
+
# @rbs return: Attribute
|
|
395
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
396
|
+
# Looks up Attribute class by type value.
|
|
397
|
+
#--
|
|
398
|
+
# @rbs type: Integer
|
|
399
|
+
# @rbs return: Attribute
|
|
400
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
401
|
+
end
|
|
402
|
+
end
|
|
403
|
+
class HelpAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
404
|
+
# Abstract class
|
|
405
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
406
|
+
end
|
|
407
|
+
class HelpName < Attribute
|
|
408
|
+
TYPE = 1
|
|
409
|
+
NAME = :"help_name"
|
|
410
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
|
|
411
|
+
end
|
|
412
|
+
# :nodoc:
|
|
413
|
+
BY_NAME = Ractor.make_shareable({:"help_name" => HelpName}) #: Hash[::Symbol, Attribute]
|
|
414
|
+
# :nodoc:
|
|
415
|
+
BY_TYPE = Ractor.make_shareable({1 => HelpName}) #: Hash[::Integer, Attribute]
|
|
416
|
+
class << self
|
|
417
|
+
# Looks up Attribute class by name.
|
|
418
|
+
#--
|
|
419
|
+
# @rbs name: Symbol
|
|
420
|
+
# @rbs return: Attribute
|
|
421
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
422
|
+
# Looks up Attribute class by type value.
|
|
423
|
+
#--
|
|
424
|
+
# @rbs type: Integer
|
|
425
|
+
# @rbs return: Attribute
|
|
426
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
427
|
+
end
|
|
428
|
+
end
|
|
429
|
+
class NatProtoAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
430
|
+
# Abstract class
|
|
431
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
432
|
+
end
|
|
433
|
+
class NatPortMin < Attribute
|
|
434
|
+
TYPE = 1
|
|
435
|
+
NAME = :"nat_port_min"
|
|
436
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
437
|
+
end
|
|
438
|
+
class NatPortMax < Attribute
|
|
439
|
+
TYPE = 2
|
|
440
|
+
NAME = :"nat_port_max"
|
|
441
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
442
|
+
end
|
|
443
|
+
# :nodoc:
|
|
444
|
+
BY_NAME = Ractor.make_shareable({:"nat_port_min" => NatPortMin, :"nat_port_max" => NatPortMax}) #: Hash[::Symbol, Attribute]
|
|
445
|
+
# :nodoc:
|
|
446
|
+
BY_TYPE = Ractor.make_shareable({1 => NatPortMin, 2 => NatPortMax}) #: Hash[::Integer, Attribute]
|
|
447
|
+
class << self
|
|
448
|
+
# Looks up Attribute class by name.
|
|
449
|
+
#--
|
|
450
|
+
# @rbs name: Symbol
|
|
451
|
+
# @rbs return: Attribute
|
|
452
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
453
|
+
# Looks up Attribute class by type value.
|
|
454
|
+
#--
|
|
455
|
+
# @rbs type: Integer
|
|
456
|
+
# @rbs return: Attribute
|
|
457
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
458
|
+
end
|
|
459
|
+
end
|
|
460
|
+
class NatAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
461
|
+
# Abstract class
|
|
462
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
463
|
+
end
|
|
464
|
+
class NatV4Minip < Attribute
|
|
465
|
+
TYPE = 1
|
|
466
|
+
NAME = :"nat_v4_minip"
|
|
467
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
468
|
+
end
|
|
469
|
+
class NatV4Maxip < Attribute
|
|
470
|
+
TYPE = 2
|
|
471
|
+
NAME = :"nat_v4_maxip"
|
|
472
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
473
|
+
end
|
|
474
|
+
class NatV6Minip < Attribute
|
|
475
|
+
TYPE = 3
|
|
476
|
+
NAME = :"nat_v6_minip"
|
|
477
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
478
|
+
end
|
|
479
|
+
class NatV6Maxip < Attribute
|
|
480
|
+
TYPE = 4
|
|
481
|
+
NAME = :"nat_v6_maxip"
|
|
482
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
483
|
+
end
|
|
484
|
+
class NatProto < Attribute
|
|
485
|
+
TYPE = 5
|
|
486
|
+
NAME = :"nat_proto"
|
|
487
|
+
end
|
|
488
|
+
# :nodoc:
|
|
489
|
+
BY_NAME = Ractor.make_shareable({:"nat_v4_minip" => NatV4Minip, :"nat_v4_maxip" => NatV4Maxip, :"nat_v6_minip" => NatV6Minip, :"nat_v6_maxip" => NatV6Maxip, :"nat_proto" => NatProto}) #: Hash[::Symbol, Attribute]
|
|
490
|
+
# :nodoc:
|
|
491
|
+
BY_TYPE = Ractor.make_shareable({1 => NatV4Minip, 2 => NatV4Maxip, 3 => NatV6Minip, 4 => NatV6Maxip, 5 => NatProto}) #: Hash[::Integer, Attribute]
|
|
492
|
+
class << self
|
|
493
|
+
# Looks up Attribute class by name.
|
|
494
|
+
#--
|
|
495
|
+
# @rbs name: Symbol
|
|
496
|
+
# @rbs return: Attribute
|
|
497
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
498
|
+
# Looks up Attribute class by type value.
|
|
499
|
+
#--
|
|
500
|
+
# @rbs type: Integer
|
|
501
|
+
# @rbs return: Attribute
|
|
502
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
503
|
+
end
|
|
504
|
+
end
|
|
505
|
+
class SeqadjAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
506
|
+
# Abstract class
|
|
507
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
508
|
+
end
|
|
509
|
+
class CorrectionPos < Attribute
|
|
510
|
+
TYPE = 1
|
|
511
|
+
NAME = :"correction_pos"
|
|
512
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
513
|
+
end
|
|
514
|
+
class OffsetBefore < Attribute
|
|
515
|
+
TYPE = 2
|
|
516
|
+
NAME = :"offset_before"
|
|
517
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
518
|
+
end
|
|
519
|
+
class OffsetAfter < Attribute
|
|
520
|
+
TYPE = 3
|
|
521
|
+
NAME = :"offset_after"
|
|
522
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
523
|
+
end
|
|
524
|
+
# :nodoc:
|
|
525
|
+
BY_NAME = Ractor.make_shareable({:"correction_pos" => CorrectionPos, :"offset_before" => OffsetBefore, :"offset_after" => OffsetAfter}) #: Hash[::Symbol, Attribute]
|
|
526
|
+
# :nodoc:
|
|
527
|
+
BY_TYPE = Ractor.make_shareable({1 => CorrectionPos, 2 => OffsetBefore, 3 => OffsetAfter}) #: Hash[::Integer, Attribute]
|
|
528
|
+
class << self
|
|
529
|
+
# Looks up Attribute class by name.
|
|
530
|
+
#--
|
|
531
|
+
# @rbs name: Symbol
|
|
532
|
+
# @rbs return: Attribute
|
|
533
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
534
|
+
# Looks up Attribute class by type value.
|
|
535
|
+
#--
|
|
536
|
+
# @rbs type: Integer
|
|
537
|
+
# @rbs return: Attribute
|
|
538
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
539
|
+
end
|
|
540
|
+
end
|
|
541
|
+
class SecctxAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
542
|
+
# Abstract class
|
|
543
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
544
|
+
end
|
|
545
|
+
class SecctxName < Attribute
|
|
546
|
+
TYPE = 1
|
|
547
|
+
NAME = :"secctx_name"
|
|
548
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::String.new(check: nil)
|
|
549
|
+
end
|
|
550
|
+
# :nodoc:
|
|
551
|
+
BY_NAME = Ractor.make_shareable({:"secctx_name" => SecctxName}) #: Hash[::Symbol, Attribute]
|
|
552
|
+
# :nodoc:
|
|
553
|
+
BY_TYPE = Ractor.make_shareable({1 => SecctxName}) #: Hash[::Integer, Attribute]
|
|
554
|
+
class << self
|
|
555
|
+
# Looks up Attribute class by name.
|
|
556
|
+
#--
|
|
557
|
+
# @rbs name: Symbol
|
|
558
|
+
# @rbs return: Attribute
|
|
559
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
560
|
+
# Looks up Attribute class by type value.
|
|
561
|
+
#--
|
|
562
|
+
# @rbs type: Integer
|
|
563
|
+
# @rbs return: Attribute
|
|
564
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
565
|
+
end
|
|
566
|
+
end
|
|
567
|
+
class SynproxyAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
568
|
+
# Abstract class
|
|
569
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
570
|
+
end
|
|
571
|
+
class Isn < Attribute
|
|
572
|
+
TYPE = 1
|
|
573
|
+
NAME = :"isn"
|
|
574
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
575
|
+
end
|
|
576
|
+
class Its < Attribute
|
|
577
|
+
TYPE = 2
|
|
578
|
+
NAME = :"its"
|
|
579
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
580
|
+
end
|
|
581
|
+
class Tsoff < Attribute
|
|
582
|
+
TYPE = 3
|
|
583
|
+
NAME = :"tsoff"
|
|
584
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
585
|
+
end
|
|
586
|
+
# :nodoc:
|
|
587
|
+
BY_NAME = Ractor.make_shareable({:"isn" => Isn, :"its" => Its, :"tsoff" => Tsoff}) #: Hash[::Symbol, Attribute]
|
|
588
|
+
# :nodoc:
|
|
589
|
+
BY_TYPE = Ractor.make_shareable({1 => Isn, 2 => Its, 3 => Tsoff}) #: Hash[::Integer, Attribute]
|
|
590
|
+
class << self
|
|
591
|
+
# Looks up Attribute class by name.
|
|
592
|
+
#--
|
|
593
|
+
# @rbs name: Symbol
|
|
594
|
+
# @rbs return: Attribute
|
|
595
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
596
|
+
# Looks up Attribute class by type value.
|
|
597
|
+
#--
|
|
598
|
+
# @rbs type: Integer
|
|
599
|
+
# @rbs return: Attribute
|
|
600
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
601
|
+
end
|
|
602
|
+
end
|
|
603
|
+
class ConntrackAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
604
|
+
# Abstract class
|
|
605
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
606
|
+
end
|
|
607
|
+
class TupleOrig < Attribute
|
|
608
|
+
TYPE = 1
|
|
609
|
+
NAME = :"tuple_orig"
|
|
610
|
+
end
|
|
611
|
+
class TupleReply < Attribute
|
|
612
|
+
TYPE = 2
|
|
613
|
+
NAME = :"tuple_reply"
|
|
614
|
+
end
|
|
615
|
+
class Status < Attribute
|
|
616
|
+
TYPE = 3
|
|
617
|
+
NAME = :"status"
|
|
618
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
619
|
+
end
|
|
620
|
+
class Protoinfo < Attribute
|
|
621
|
+
TYPE = 4
|
|
622
|
+
NAME = :"protoinfo"
|
|
623
|
+
end
|
|
624
|
+
class Help < Attribute
|
|
625
|
+
TYPE = 5
|
|
626
|
+
NAME = :"help"
|
|
627
|
+
end
|
|
628
|
+
class NatSrc < Attribute
|
|
629
|
+
TYPE = 6
|
|
630
|
+
NAME = :"nat_src"
|
|
631
|
+
end
|
|
632
|
+
class Timeout < Attribute
|
|
633
|
+
TYPE = 7
|
|
634
|
+
NAME = :"timeout"
|
|
635
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
636
|
+
end
|
|
637
|
+
class Mark < Attribute
|
|
638
|
+
TYPE = 8
|
|
639
|
+
NAME = :"mark"
|
|
640
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
641
|
+
end
|
|
642
|
+
class CountersOrig < Attribute
|
|
643
|
+
TYPE = 9
|
|
644
|
+
NAME = :"counters_orig"
|
|
645
|
+
end
|
|
646
|
+
class CountersReply < Attribute
|
|
647
|
+
TYPE = 10
|
|
648
|
+
NAME = :"counters_reply"
|
|
649
|
+
end
|
|
650
|
+
class Use < Attribute
|
|
651
|
+
TYPE = 11
|
|
652
|
+
NAME = :"use"
|
|
653
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
654
|
+
end
|
|
655
|
+
class Id < Attribute
|
|
656
|
+
TYPE = 12
|
|
657
|
+
NAME = :"id"
|
|
658
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
659
|
+
end
|
|
660
|
+
class NatDst < Attribute
|
|
661
|
+
TYPE = 13
|
|
662
|
+
NAME = :"nat_dst"
|
|
663
|
+
end
|
|
664
|
+
class TupleMaster < Attribute
|
|
665
|
+
TYPE = 14
|
|
666
|
+
NAME = :"tuple_master"
|
|
667
|
+
end
|
|
668
|
+
class SeqAdjOrig < Attribute
|
|
669
|
+
TYPE = 15
|
|
670
|
+
NAME = :"seq_adj_orig"
|
|
671
|
+
end
|
|
672
|
+
class SeqAdjReply < Attribute
|
|
673
|
+
TYPE = 16
|
|
674
|
+
NAME = :"seq_adj_reply"
|
|
675
|
+
end
|
|
676
|
+
class Secmark < Attribute
|
|
677
|
+
TYPE = 17
|
|
678
|
+
NAME = :"secmark"
|
|
679
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
680
|
+
end
|
|
681
|
+
class Zone < Attribute
|
|
682
|
+
TYPE = 18
|
|
683
|
+
NAME = :"zone"
|
|
684
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U16, check: nil)
|
|
685
|
+
end
|
|
686
|
+
class Secctx < Attribute
|
|
687
|
+
TYPE = 19
|
|
688
|
+
NAME = :"secctx"
|
|
689
|
+
end
|
|
690
|
+
class Timestamp < Attribute
|
|
691
|
+
TYPE = 20
|
|
692
|
+
NAME = :"timestamp"
|
|
693
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
|
|
694
|
+
end
|
|
695
|
+
class MarkMask < Attribute
|
|
696
|
+
TYPE = 21
|
|
697
|
+
NAME = :"mark_mask"
|
|
698
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
699
|
+
end
|
|
700
|
+
class Labels < Attribute
|
|
701
|
+
TYPE = 22
|
|
702
|
+
NAME = :"labels"
|
|
703
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
704
|
+
end
|
|
705
|
+
class LabelsMask < Attribute
|
|
706
|
+
TYPE = 23
|
|
707
|
+
NAME = :"labels_mask"
|
|
708
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Binary.new(check: nil)
|
|
709
|
+
end
|
|
710
|
+
class Synproxy < Attribute
|
|
711
|
+
TYPE = 24
|
|
712
|
+
NAME = :"synproxy"
|
|
713
|
+
end
|
|
714
|
+
class Filter < Attribute
|
|
715
|
+
TYPE = 25
|
|
716
|
+
NAME = :"filter"
|
|
717
|
+
end
|
|
718
|
+
class StatusMask < Attribute
|
|
719
|
+
TYPE = 26
|
|
720
|
+
NAME = :"status_mask"
|
|
721
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
722
|
+
end
|
|
723
|
+
class TimestampEvent < Attribute
|
|
724
|
+
TYPE = 27
|
|
725
|
+
NAME = :"timestamp_event"
|
|
726
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U64, check: nil)
|
|
727
|
+
end
|
|
728
|
+
# :nodoc:
|
|
729
|
+
BY_NAME = Ractor.make_shareable({:"tuple_orig" => TupleOrig, :"tuple_reply" => TupleReply, :"status" => Status, :"protoinfo" => Protoinfo, :"help" => Help, :"nat_src" => NatSrc, :"timeout" => Timeout, :"mark" => Mark, :"counters_orig" => CountersOrig, :"counters_reply" => CountersReply, :"use" => Use, :"id" => Id, :"nat_dst" => NatDst, :"tuple_master" => TupleMaster, :"seq_adj_orig" => SeqAdjOrig, :"seq_adj_reply" => SeqAdjReply, :"secmark" => Secmark, :"zone" => Zone, :"secctx" => Secctx, :"timestamp" => Timestamp, :"mark_mask" => MarkMask, :"labels" => Labels, :"labels_mask" => LabelsMask, :"synproxy" => Synproxy, :"filter" => Filter, :"status_mask" => StatusMask, :"timestamp_event" => TimestampEvent}) #: Hash[::Symbol, Attribute]
|
|
730
|
+
# :nodoc:
|
|
731
|
+
BY_TYPE = Ractor.make_shareable({1 => TupleOrig, 2 => TupleReply, 3 => Status, 4 => Protoinfo, 5 => Help, 6 => NatSrc, 7 => Timeout, 8 => Mark, 9 => CountersOrig, 10 => CountersReply, 11 => Use, 12 => Id, 13 => NatDst, 14 => TupleMaster, 15 => SeqAdjOrig, 16 => SeqAdjReply, 17 => Secmark, 18 => Zone, 19 => Secctx, 20 => Timestamp, 21 => MarkMask, 22 => Labels, 23 => LabelsMask, 24 => Synproxy, 25 => Filter, 26 => StatusMask, 27 => TimestampEvent}) #: Hash[::Integer, Attribute]
|
|
732
|
+
class << self
|
|
733
|
+
# Looks up Attribute class by name.
|
|
734
|
+
#--
|
|
735
|
+
# @rbs name: Symbol
|
|
736
|
+
# @rbs return: Attribute
|
|
737
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
738
|
+
# Looks up Attribute class by type value.
|
|
739
|
+
#--
|
|
740
|
+
# @rbs type: Integer
|
|
741
|
+
# @rbs return: Attribute
|
|
742
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
743
|
+
end
|
|
744
|
+
end
|
|
745
|
+
class ConntrackStatsAttrs < ::Nl::Protocols::Raw::AttributeSet
|
|
746
|
+
# Abstract class
|
|
747
|
+
class Attribute < ::Nl::Protocols::Raw::AttributeSet::Attribute
|
|
748
|
+
end
|
|
749
|
+
class Searched < Attribute
|
|
750
|
+
TYPE = 1
|
|
751
|
+
NAME = :"searched"
|
|
752
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
753
|
+
end
|
|
754
|
+
class Found < Attribute
|
|
755
|
+
TYPE = 2
|
|
756
|
+
NAME = :"found"
|
|
757
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
758
|
+
end
|
|
759
|
+
class New < Attribute
|
|
760
|
+
TYPE = 3
|
|
761
|
+
NAME = :"new"
|
|
762
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
763
|
+
end
|
|
764
|
+
class Invalid < Attribute
|
|
765
|
+
TYPE = 4
|
|
766
|
+
NAME = :"invalid"
|
|
767
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
768
|
+
end
|
|
769
|
+
class Ignore < Attribute
|
|
770
|
+
TYPE = 5
|
|
771
|
+
NAME = :"ignore"
|
|
772
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
773
|
+
end
|
|
774
|
+
class Delete < Attribute
|
|
775
|
+
TYPE = 6
|
|
776
|
+
NAME = :"delete"
|
|
777
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
778
|
+
end
|
|
779
|
+
class DeleteList < Attribute
|
|
780
|
+
TYPE = 7
|
|
781
|
+
NAME = :"delete_list"
|
|
782
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
783
|
+
end
|
|
784
|
+
class Insert < Attribute
|
|
785
|
+
TYPE = 8
|
|
786
|
+
NAME = :"insert"
|
|
787
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
788
|
+
end
|
|
789
|
+
class InsertFailed < Attribute
|
|
790
|
+
TYPE = 9
|
|
791
|
+
NAME = :"insert_failed"
|
|
792
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
793
|
+
end
|
|
794
|
+
class Drop < Attribute
|
|
795
|
+
TYPE = 10
|
|
796
|
+
NAME = :"drop"
|
|
797
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
798
|
+
end
|
|
799
|
+
class EarlyDrop < Attribute
|
|
800
|
+
TYPE = 11
|
|
801
|
+
NAME = :"early_drop"
|
|
802
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
803
|
+
end
|
|
804
|
+
class Error < Attribute
|
|
805
|
+
TYPE = 12
|
|
806
|
+
NAME = :"error"
|
|
807
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
808
|
+
end
|
|
809
|
+
class SearchRestart < Attribute
|
|
810
|
+
TYPE = 13
|
|
811
|
+
NAME = :"search_restart"
|
|
812
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
813
|
+
end
|
|
814
|
+
class ClashResolve < Attribute
|
|
815
|
+
TYPE = 14
|
|
816
|
+
NAME = :"clash_resolve"
|
|
817
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
818
|
+
end
|
|
819
|
+
class ChainToolong < Attribute
|
|
820
|
+
TYPE = 15
|
|
821
|
+
NAME = :"chain_toolong"
|
|
822
|
+
DATATYPE = ::Nl::Protocols::Raw::DataTypes::Scalar.new(::Nl::Endian::Big::U32, check: nil)
|
|
823
|
+
end
|
|
824
|
+
# :nodoc:
|
|
825
|
+
BY_NAME = Ractor.make_shareable({:"searched" => Searched, :"found" => Found, :"new" => New, :"invalid" => Invalid, :"ignore" => Ignore, :"delete" => Delete, :"delete_list" => DeleteList, :"insert" => Insert, :"insert_failed" => InsertFailed, :"drop" => Drop, :"early_drop" => EarlyDrop, :"error" => Error, :"search_restart" => SearchRestart, :"clash_resolve" => ClashResolve, :"chain_toolong" => ChainToolong}) #: Hash[::Symbol, Attribute]
|
|
826
|
+
# :nodoc:
|
|
827
|
+
BY_TYPE = Ractor.make_shareable({1 => Searched, 2 => Found, 3 => New, 4 => Invalid, 5 => Ignore, 6 => Delete, 7 => DeleteList, 8 => Insert, 9 => InsertFailed, 10 => Drop, 11 => EarlyDrop, 12 => Error, 13 => SearchRestart, 14 => ClashResolve, 15 => ChainToolong}) #: Hash[::Integer, Attribute]
|
|
828
|
+
class << self
|
|
829
|
+
# Looks up Attribute class by name.
|
|
830
|
+
#--
|
|
831
|
+
# @rbs name: Symbol
|
|
832
|
+
# @rbs return: Attribute
|
|
833
|
+
def by_name(name); BY_NAME.fetch(name); end
|
|
834
|
+
# Looks up Attribute class by type value.
|
|
835
|
+
#--
|
|
836
|
+
# @rbs type: Integer
|
|
837
|
+
# @rbs return: Attribute
|
|
838
|
+
def by_type(type); BY_TYPE.fetch(type); end
|
|
839
|
+
end
|
|
840
|
+
end
|
|
841
|
+
TupleAttrs::TupleIp::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleIpAttrs)
|
|
842
|
+
TupleAttrs::TupleProto::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleProtoAttrs)
|
|
843
|
+
ProtoinfoAttrs::ProtoinfoTcp::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(ProtoinfoTcpAttrs)
|
|
844
|
+
ProtoinfoAttrs::ProtoinfoDccp::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(ProtoinfoDccpAttrs)
|
|
845
|
+
ProtoinfoAttrs::ProtoinfoSctp::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(ProtoinfoSctpAttrs)
|
|
846
|
+
NatAttrs::NatProto::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NatProtoAttrs)
|
|
847
|
+
ConntrackAttrs::TupleOrig::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleAttrs)
|
|
848
|
+
ConntrackAttrs::TupleReply::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleAttrs)
|
|
849
|
+
ConntrackAttrs::Protoinfo::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(ProtoinfoAttrs)
|
|
850
|
+
ConntrackAttrs::Help::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(HelpAttrs)
|
|
851
|
+
ConntrackAttrs::NatSrc::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NatAttrs)
|
|
852
|
+
ConntrackAttrs::CountersOrig::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(CounterAttrs)
|
|
853
|
+
ConntrackAttrs::CountersReply::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(CounterAttrs)
|
|
854
|
+
ConntrackAttrs::NatDst::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(NatAttrs)
|
|
855
|
+
ConntrackAttrs::TupleMaster::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleAttrs)
|
|
856
|
+
ConntrackAttrs::SeqAdjOrig::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(SeqadjAttrs)
|
|
857
|
+
ConntrackAttrs::SeqAdjReply::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(SeqadjAttrs)
|
|
858
|
+
ConntrackAttrs::Secctx::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(SecctxAttrs)
|
|
859
|
+
ConntrackAttrs::Synproxy::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(SynproxyAttrs)
|
|
860
|
+
ConntrackAttrs::Filter::DATATYPE = ::Nl::Protocols::Raw::DataTypes::NestedAttributes.new(TupleAttrs)
|
|
861
|
+
end
|
|
862
|
+
module Messages
|
|
863
|
+
# get / dump entries
|
|
864
|
+
class DoGetRequest < ::Nl::Protocols::Raw::Message
|
|
865
|
+
TYPE = 257
|
|
866
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
867
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackAttrs
|
|
868
|
+
ATTRIBUTES = Ractor.make_shareable(%i[tuple_orig tuple_reply zone])
|
|
869
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
870
|
+
#--
|
|
871
|
+
# @rbs return: ::Integer
|
|
872
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
873
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
874
|
+
#--
|
|
875
|
+
# @rbs return: ::Integer
|
|
876
|
+
def version; fixed_header.version; end
|
|
877
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
878
|
+
#--
|
|
879
|
+
# @rbs return: ::Integer
|
|
880
|
+
def res_id; fixed_header.res_id; end
|
|
881
|
+
# Gets the value of `tuple-orig` attribute in the message.
|
|
882
|
+
#--
|
|
883
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
884
|
+
def tuple_orig; attributes[:"tuple_orig"]&.value; end
|
|
885
|
+
# Gets the value of `tuple-reply` attribute in the message.
|
|
886
|
+
#--
|
|
887
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
888
|
+
def tuple_reply; attributes[:"tuple_reply"]&.value; end
|
|
889
|
+
# Gets the value of `zone` attribute in the message.
|
|
890
|
+
#--
|
|
891
|
+
# @rbs return: ::Integer
|
|
892
|
+
def zone; attributes[:"zone"]&.value; end
|
|
893
|
+
end
|
|
894
|
+
# get / dump entries
|
|
895
|
+
class DoGetReply < ::Nl::Protocols::Raw::Message
|
|
896
|
+
TYPE = 256
|
|
897
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
898
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackAttrs
|
|
899
|
+
ATTRIBUTES = Ractor.make_shareable(%i[tuple_orig tuple_reply status protoinfo help nat_src timeout mark counters_orig counters_reply use id nat_dst tuple_master seq_adj_orig seq_adj_reply zone secctx labels synproxy])
|
|
900
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
901
|
+
#--
|
|
902
|
+
# @rbs return: ::Integer
|
|
903
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
904
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
905
|
+
#--
|
|
906
|
+
# @rbs return: ::Integer
|
|
907
|
+
def version; fixed_header.version; end
|
|
908
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
909
|
+
#--
|
|
910
|
+
# @rbs return: ::Integer
|
|
911
|
+
def res_id; fixed_header.res_id; end
|
|
912
|
+
# Gets the value of `tuple-orig` attribute in the message.
|
|
913
|
+
#--
|
|
914
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
915
|
+
def tuple_orig; attributes[:"tuple_orig"]&.value; end
|
|
916
|
+
# Gets the value of `tuple-reply` attribute in the message.
|
|
917
|
+
#--
|
|
918
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
919
|
+
def tuple_reply; attributes[:"tuple_reply"]&.value; end
|
|
920
|
+
# Gets the value of `status` attribute in the message.
|
|
921
|
+
#--
|
|
922
|
+
# @rbs return: ::Integer
|
|
923
|
+
def status; attributes[:"status"]&.value; end
|
|
924
|
+
# Gets the value of `protoinfo` attribute in the message.
|
|
925
|
+
#--
|
|
926
|
+
# @rbs return: AttributeSets::ProtoinfoAttrs
|
|
927
|
+
def protoinfo; attributes[:"protoinfo"]&.value; end
|
|
928
|
+
# Gets the value of `help` attribute in the message.
|
|
929
|
+
#--
|
|
930
|
+
# @rbs return: AttributeSets::HelpAttrs
|
|
931
|
+
def help; attributes[:"help"]&.value; end
|
|
932
|
+
# Gets the value of `nat-src` attribute in the message.
|
|
933
|
+
#--
|
|
934
|
+
# @rbs return: AttributeSets::NatAttrs
|
|
935
|
+
def nat_src; attributes[:"nat_src"]&.value; end
|
|
936
|
+
# Gets the value of `timeout` attribute in the message.
|
|
937
|
+
#--
|
|
938
|
+
# @rbs return: ::Integer
|
|
939
|
+
def timeout; attributes[:"timeout"]&.value; end
|
|
940
|
+
# Gets the value of `mark` attribute in the message.
|
|
941
|
+
#--
|
|
942
|
+
# @rbs return: ::Integer
|
|
943
|
+
def mark; attributes[:"mark"]&.value; end
|
|
944
|
+
# Gets the value of `counters-orig` attribute in the message.
|
|
945
|
+
#--
|
|
946
|
+
# @rbs return: AttributeSets::CounterAttrs
|
|
947
|
+
def counters_orig; attributes[:"counters_orig"]&.value; end
|
|
948
|
+
# Gets the value of `counters-reply` attribute in the message.
|
|
949
|
+
#--
|
|
950
|
+
# @rbs return: AttributeSets::CounterAttrs
|
|
951
|
+
def counters_reply; attributes[:"counters_reply"]&.value; end
|
|
952
|
+
# Gets the value of `use` attribute in the message.
|
|
953
|
+
#--
|
|
954
|
+
# @rbs return: ::Integer
|
|
955
|
+
def use; attributes[:"use"]&.value; end
|
|
956
|
+
# Gets the value of `id` attribute in the message.
|
|
957
|
+
#--
|
|
958
|
+
# @rbs return: ::Integer
|
|
959
|
+
def id; attributes[:"id"]&.value; end
|
|
960
|
+
# Gets the value of `nat-dst` attribute in the message.
|
|
961
|
+
#--
|
|
962
|
+
# @rbs return: AttributeSets::NatAttrs
|
|
963
|
+
def nat_dst; attributes[:"nat_dst"]&.value; end
|
|
964
|
+
# Gets the value of `tuple-master` attribute in the message.
|
|
965
|
+
#--
|
|
966
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
967
|
+
def tuple_master; attributes[:"tuple_master"]&.value; end
|
|
968
|
+
# Gets the value of `seq-adj-orig` attribute in the message.
|
|
969
|
+
#--
|
|
970
|
+
# @rbs return: AttributeSets::SeqadjAttrs
|
|
971
|
+
def seq_adj_orig; attributes[:"seq_adj_orig"]&.value; end
|
|
972
|
+
# Gets the value of `seq-adj-reply` attribute in the message.
|
|
973
|
+
#--
|
|
974
|
+
# @rbs return: AttributeSets::SeqadjAttrs
|
|
975
|
+
def seq_adj_reply; attributes[:"seq_adj_reply"]&.value; end
|
|
976
|
+
# Gets the value of `zone` attribute in the message.
|
|
977
|
+
#--
|
|
978
|
+
# @rbs return: ::Integer
|
|
979
|
+
def zone; attributes[:"zone"]&.value; end
|
|
980
|
+
# Gets the value of `secctx` attribute in the message.
|
|
981
|
+
#--
|
|
982
|
+
# @rbs return: AttributeSets::SecctxAttrs
|
|
983
|
+
def secctx; attributes[:"secctx"]&.value; end
|
|
984
|
+
# Gets the value of `labels` attribute in the message.
|
|
985
|
+
#--
|
|
986
|
+
# @rbs return: untyped
|
|
987
|
+
def labels; attributes[:"labels"]&.value; end
|
|
988
|
+
# Gets the value of `synproxy` attribute in the message.
|
|
989
|
+
#--
|
|
990
|
+
# @rbs return: AttributeSets::SynproxyAttrs
|
|
991
|
+
def synproxy; attributes[:"synproxy"]&.value; end
|
|
992
|
+
end
|
|
993
|
+
# get / dump entries
|
|
994
|
+
class DumpGetRequest < ::Nl::Protocols::Raw::Message
|
|
995
|
+
TYPE = 257
|
|
996
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
997
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackAttrs
|
|
998
|
+
ATTRIBUTES = Ractor.make_shareable(%i[status mark zone filter])
|
|
999
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
1000
|
+
#--
|
|
1001
|
+
# @rbs return: ::Integer
|
|
1002
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
1003
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
1004
|
+
#--
|
|
1005
|
+
# @rbs return: ::Integer
|
|
1006
|
+
def version; fixed_header.version; end
|
|
1007
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
1008
|
+
#--
|
|
1009
|
+
# @rbs return: ::Integer
|
|
1010
|
+
def res_id; fixed_header.res_id; end
|
|
1011
|
+
# Gets the value of `status` attribute in the message.
|
|
1012
|
+
#--
|
|
1013
|
+
# @rbs return: ::Integer
|
|
1014
|
+
def status; attributes[:"status"]&.value; end
|
|
1015
|
+
# Gets the value of `mark` attribute in the message.
|
|
1016
|
+
#--
|
|
1017
|
+
# @rbs return: ::Integer
|
|
1018
|
+
def mark; attributes[:"mark"]&.value; end
|
|
1019
|
+
# Gets the value of `zone` attribute in the message.
|
|
1020
|
+
#--
|
|
1021
|
+
# @rbs return: ::Integer
|
|
1022
|
+
def zone; attributes[:"zone"]&.value; end
|
|
1023
|
+
# Gets the value of `filter` attribute in the message.
|
|
1024
|
+
#--
|
|
1025
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
1026
|
+
def filter; attributes[:"filter"]&.value; end
|
|
1027
|
+
end
|
|
1028
|
+
# get / dump entries
|
|
1029
|
+
class DumpGetReply < ::Nl::Protocols::Raw::Message
|
|
1030
|
+
TYPE = 256
|
|
1031
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
1032
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackAttrs
|
|
1033
|
+
ATTRIBUTES = Ractor.make_shareable(%i[tuple_orig tuple_reply status protoinfo help nat_src timeout mark counters_orig counters_reply use id nat_dst tuple_master seq_adj_orig seq_adj_reply zone secctx labels synproxy])
|
|
1034
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
1035
|
+
#--
|
|
1036
|
+
# @rbs return: ::Integer
|
|
1037
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
1038
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
1039
|
+
#--
|
|
1040
|
+
# @rbs return: ::Integer
|
|
1041
|
+
def version; fixed_header.version; end
|
|
1042
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
1043
|
+
#--
|
|
1044
|
+
# @rbs return: ::Integer
|
|
1045
|
+
def res_id; fixed_header.res_id; end
|
|
1046
|
+
# Gets the value of `tuple-orig` attribute in the message.
|
|
1047
|
+
#--
|
|
1048
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
1049
|
+
def tuple_orig; attributes[:"tuple_orig"]&.value; end
|
|
1050
|
+
# Gets the value of `tuple-reply` attribute in the message.
|
|
1051
|
+
#--
|
|
1052
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
1053
|
+
def tuple_reply; attributes[:"tuple_reply"]&.value; end
|
|
1054
|
+
# Gets the value of `status` attribute in the message.
|
|
1055
|
+
#--
|
|
1056
|
+
# @rbs return: ::Integer
|
|
1057
|
+
def status; attributes[:"status"]&.value; end
|
|
1058
|
+
# Gets the value of `protoinfo` attribute in the message.
|
|
1059
|
+
#--
|
|
1060
|
+
# @rbs return: AttributeSets::ProtoinfoAttrs
|
|
1061
|
+
def protoinfo; attributes[:"protoinfo"]&.value; end
|
|
1062
|
+
# Gets the value of `help` attribute in the message.
|
|
1063
|
+
#--
|
|
1064
|
+
# @rbs return: AttributeSets::HelpAttrs
|
|
1065
|
+
def help; attributes[:"help"]&.value; end
|
|
1066
|
+
# Gets the value of `nat-src` attribute in the message.
|
|
1067
|
+
#--
|
|
1068
|
+
# @rbs return: AttributeSets::NatAttrs
|
|
1069
|
+
def nat_src; attributes[:"nat_src"]&.value; end
|
|
1070
|
+
# Gets the value of `timeout` attribute in the message.
|
|
1071
|
+
#--
|
|
1072
|
+
# @rbs return: ::Integer
|
|
1073
|
+
def timeout; attributes[:"timeout"]&.value; end
|
|
1074
|
+
# Gets the value of `mark` attribute in the message.
|
|
1075
|
+
#--
|
|
1076
|
+
# @rbs return: ::Integer
|
|
1077
|
+
def mark; attributes[:"mark"]&.value; end
|
|
1078
|
+
# Gets the value of `counters-orig` attribute in the message.
|
|
1079
|
+
#--
|
|
1080
|
+
# @rbs return: AttributeSets::CounterAttrs
|
|
1081
|
+
def counters_orig; attributes[:"counters_orig"]&.value; end
|
|
1082
|
+
# Gets the value of `counters-reply` attribute in the message.
|
|
1083
|
+
#--
|
|
1084
|
+
# @rbs return: AttributeSets::CounterAttrs
|
|
1085
|
+
def counters_reply; attributes[:"counters_reply"]&.value; end
|
|
1086
|
+
# Gets the value of `use` attribute in the message.
|
|
1087
|
+
#--
|
|
1088
|
+
# @rbs return: ::Integer
|
|
1089
|
+
def use; attributes[:"use"]&.value; end
|
|
1090
|
+
# Gets the value of `id` attribute in the message.
|
|
1091
|
+
#--
|
|
1092
|
+
# @rbs return: ::Integer
|
|
1093
|
+
def id; attributes[:"id"]&.value; end
|
|
1094
|
+
# Gets the value of `nat-dst` attribute in the message.
|
|
1095
|
+
#--
|
|
1096
|
+
# @rbs return: AttributeSets::NatAttrs
|
|
1097
|
+
def nat_dst; attributes[:"nat_dst"]&.value; end
|
|
1098
|
+
# Gets the value of `tuple-master` attribute in the message.
|
|
1099
|
+
#--
|
|
1100
|
+
# @rbs return: AttributeSets::TupleAttrs
|
|
1101
|
+
def tuple_master; attributes[:"tuple_master"]&.value; end
|
|
1102
|
+
# Gets the value of `seq-adj-orig` attribute in the message.
|
|
1103
|
+
#--
|
|
1104
|
+
# @rbs return: AttributeSets::SeqadjAttrs
|
|
1105
|
+
def seq_adj_orig; attributes[:"seq_adj_orig"]&.value; end
|
|
1106
|
+
# Gets the value of `seq-adj-reply` attribute in the message.
|
|
1107
|
+
#--
|
|
1108
|
+
# @rbs return: AttributeSets::SeqadjAttrs
|
|
1109
|
+
def seq_adj_reply; attributes[:"seq_adj_reply"]&.value; end
|
|
1110
|
+
# Gets the value of `zone` attribute in the message.
|
|
1111
|
+
#--
|
|
1112
|
+
# @rbs return: ::Integer
|
|
1113
|
+
def zone; attributes[:"zone"]&.value; end
|
|
1114
|
+
# Gets the value of `secctx` attribute in the message.
|
|
1115
|
+
#--
|
|
1116
|
+
# @rbs return: AttributeSets::SecctxAttrs
|
|
1117
|
+
def secctx; attributes[:"secctx"]&.value; end
|
|
1118
|
+
# Gets the value of `labels` attribute in the message.
|
|
1119
|
+
#--
|
|
1120
|
+
# @rbs return: untyped
|
|
1121
|
+
def labels; attributes[:"labels"]&.value; end
|
|
1122
|
+
# Gets the value of `synproxy` attribute in the message.
|
|
1123
|
+
#--
|
|
1124
|
+
# @rbs return: AttributeSets::SynproxyAttrs
|
|
1125
|
+
def synproxy; attributes[:"synproxy"]&.value; end
|
|
1126
|
+
end
|
|
1127
|
+
# dump pcpu conntrack stats
|
|
1128
|
+
class DumpGetStatsRequest < ::Nl::Protocols::Raw::Message
|
|
1129
|
+
TYPE = 260
|
|
1130
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
1131
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackStatsAttrs
|
|
1132
|
+
ATTRIBUTES = Ractor.make_shareable(%i[])
|
|
1133
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
1134
|
+
#--
|
|
1135
|
+
# @rbs return: ::Integer
|
|
1136
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
1137
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
1138
|
+
#--
|
|
1139
|
+
# @rbs return: ::Integer
|
|
1140
|
+
def version; fixed_header.version; end
|
|
1141
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
1142
|
+
#--
|
|
1143
|
+
# @rbs return: ::Integer
|
|
1144
|
+
def res_id; fixed_header.res_id; end
|
|
1145
|
+
end
|
|
1146
|
+
# dump pcpu conntrack stats
|
|
1147
|
+
class DumpGetStatsReply < ::Nl::Protocols::Raw::Message
|
|
1148
|
+
TYPE = 260
|
|
1149
|
+
FIXED_HEADER = Structs::Nfgenmsg
|
|
1150
|
+
ATTRIBUTE_SET = AttributeSets::ConntrackStatsAttrs
|
|
1151
|
+
ATTRIBUTES = Ractor.make_shareable(%i[searched found insert insert_failed drop early_drop error search_restart clash_resolve chain_toolong])
|
|
1152
|
+
# Gets the value of `nfgen-family` field in the message's fixed header.
|
|
1153
|
+
#--
|
|
1154
|
+
# @rbs return: ::Integer
|
|
1155
|
+
def nfgen_family; fixed_header.nfgen_family; end
|
|
1156
|
+
# Gets the value of `version` field in the message's fixed header.
|
|
1157
|
+
#--
|
|
1158
|
+
# @rbs return: ::Integer
|
|
1159
|
+
def version; fixed_header.version; end
|
|
1160
|
+
# Gets the value of `res-id` field in the message's fixed header.
|
|
1161
|
+
#--
|
|
1162
|
+
# @rbs return: ::Integer
|
|
1163
|
+
def res_id; fixed_header.res_id; end
|
|
1164
|
+
# Gets the value of `searched` attribute in the message.
|
|
1165
|
+
#--
|
|
1166
|
+
# @rbs return: ::Integer
|
|
1167
|
+
def searched; attributes[:"searched"]&.value; end
|
|
1168
|
+
# Gets the value of `found` attribute in the message.
|
|
1169
|
+
#--
|
|
1170
|
+
# @rbs return: ::Integer
|
|
1171
|
+
def found; attributes[:"found"]&.value; end
|
|
1172
|
+
# Gets the value of `insert` attribute in the message.
|
|
1173
|
+
#--
|
|
1174
|
+
# @rbs return: ::Integer
|
|
1175
|
+
def insert; attributes[:"insert"]&.value; end
|
|
1176
|
+
# Gets the value of `insert-failed` attribute in the message.
|
|
1177
|
+
#--
|
|
1178
|
+
# @rbs return: ::Integer
|
|
1179
|
+
def insert_failed; attributes[:"insert_failed"]&.value; end
|
|
1180
|
+
# Gets the value of `drop` attribute in the message.
|
|
1181
|
+
#--
|
|
1182
|
+
# @rbs return: ::Integer
|
|
1183
|
+
def drop; attributes[:"drop"]&.value; end
|
|
1184
|
+
# Gets the value of `early-drop` attribute in the message.
|
|
1185
|
+
#--
|
|
1186
|
+
# @rbs return: ::Integer
|
|
1187
|
+
def early_drop; attributes[:"early_drop"]&.value; end
|
|
1188
|
+
# Gets the value of `error` attribute in the message.
|
|
1189
|
+
#--
|
|
1190
|
+
# @rbs return: ::Integer
|
|
1191
|
+
def error; attributes[:"error"]&.value; end
|
|
1192
|
+
# Gets the value of `search-restart` attribute in the message.
|
|
1193
|
+
#--
|
|
1194
|
+
# @rbs return: ::Integer
|
|
1195
|
+
def search_restart; attributes[:"search_restart"]&.value; end
|
|
1196
|
+
# Gets the value of `clash-resolve` attribute in the message.
|
|
1197
|
+
#--
|
|
1198
|
+
# @rbs return: ::Integer
|
|
1199
|
+
def clash_resolve; attributes[:"clash_resolve"]&.value; end
|
|
1200
|
+
# Gets the value of `chain-toolong` attribute in the message.
|
|
1201
|
+
#--
|
|
1202
|
+
# @rbs return: ::Integer
|
|
1203
|
+
def chain_toolong; attributes[:"chain_toolong"]&.value; end
|
|
1204
|
+
end
|
|
1205
|
+
end
|
|
1206
|
+
# get / dump entries
|
|
1207
|
+
#--
|
|
1208
|
+
# @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?tuple_orig: AttributeSets::TupleAttrs, ?tuple_reply: AttributeSets::TupleAttrs, ?zone: ::Integer) -> Messages::DoGetReply
|
|
1209
|
+
def do_get(**args)
|
|
1210
|
+
exchange_message(:"do", Messages::DoGetRequest, Messages::DoGetReply, args)
|
|
1211
|
+
end
|
|
1212
|
+
# get / dump entries
|
|
1213
|
+
#--
|
|
1214
|
+
# @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?status: ::Integer, ?mark: ::Integer, ?zone: ::Integer, ?filter: AttributeSets::TupleAttrs) -> Enumerable[Messages::DumpGetReply]
|
|
1215
|
+
# | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer, ?status: ::Integer, ?mark: ::Integer, ?zone: ::Integer, ?filter: AttributeSets::TupleAttrs) { (Messages::DumpGetReply) -> void } -> void
|
|
1216
|
+
def dump_get(**args, &block)
|
|
1217
|
+
exchange_message(:"dump", Messages::DumpGetRequest, Messages::DumpGetReply, args, &block)
|
|
1218
|
+
end
|
|
1219
|
+
# dump pcpu conntrack stats
|
|
1220
|
+
#--
|
|
1221
|
+
# @rbs (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) -> Enumerable[Messages::DumpGetStatsReply]
|
|
1222
|
+
# | (?nfgen_family: ::Integer, ?version: ::Integer, ?res_id: ::Integer) { (Messages::DumpGetStatsReply) -> void } -> void
|
|
1223
|
+
def dump_get_stats(**args, &block)
|
|
1224
|
+
exchange_message(:"dump", Messages::DumpGetStatsRequest, Messages::DumpGetStatsReply, args, &block)
|
|
1225
|
+
end
|
|
1226
|
+
end
|
|
1227
|
+
end; end
|