Module: Rex::Proto::DNS::Packet::Raw
- Defined in:
- lib/rex/proto/dns/packet.rb
Class Method Summary collapse
-
.from_int_be(data) ⇒ Array
Convert data from big endian unsigned int.
-
.from_int_le(data) ⇒ Array
Convert data from little endian unsigned int.
-
.from_long_be(data) ⇒ Array
Convert data from big endian unsigned long.
-
.from_long_le(data) ⇒ Array
Convert data from little endian unsigned long.
-
.from_short_be(data) ⇒ Array
Convert data from big endian unsigned short.
-
.from_short_le(data) ⇒ Array
Convert data from little endian unsigned short.
-
.request_id(data) ⇒ Fixnum
Returns request ID from raw packet skipping parsing.
-
.request_length(data) ⇒ Fixnum
Returns request length from raw packet skipping parsing.
-
.to_int_be(data) ⇒ String
Convert data to big endian unsigned int.
-
.to_int_le(data) ⇒ String
Convert data to little endian unsigned int.
-
.to_long_be(data) ⇒ String
Convert data to big endian unsigned long.
-
.to_long_le(data) ⇒ String
Convert data to little endian unsigned long.
-
.to_short_be(data) ⇒ String
Convert data to big endian unsigned short.
-
.to_short_le(data) ⇒ String
Convert data to little endian unsigned short.
Class Method Details
.from_int_be(data) ⇒ Array
Convert data from big endian unsigned int
266 267 268 |
# File 'lib/rex/proto/dns/packet.rb', line 266 def self.from_int_be(data) data.unpack('I>*') end |
.from_int_le(data) ⇒ Array
Convert data from little endian unsigned int
206 207 208 |
# File 'lib/rex/proto/dns/packet.rb', line 206 def self.from_int_le(data) data.unpack('I*') end |
.from_long_be(data) ⇒ Array
Convert data from big endian unsigned long
286 287 288 |
# File 'lib/rex/proto/dns/packet.rb', line 286 def self.from_long_be(data) data.unpack('L>*') end |
.from_long_le(data) ⇒ Array
Convert data from little endian unsigned long
226 227 228 |
# File 'lib/rex/proto/dns/packet.rb', line 226 def self.from_long_le(data) data.unpack('L*') end |
.from_short_be(data) ⇒ Array
Convert data from big endian unsigned short
246 247 248 |
# File 'lib/rex/proto/dns/packet.rb', line 246 def self.from_short_be(data) data.unpack('S>*') end |
.from_short_le(data) ⇒ Array
Convert data from little endian unsigned short
186 187 188 |
# File 'lib/rex/proto/dns/packet.rb', line 186 def self.from_short_le(data) data.unpack('S*') end |
.request_id(data) ⇒ Fixnum
Returns request ID from raw packet skipping parsing
296 297 298 |
# File 'lib/rex/proto/dns/packet.rb', line 296 def self.request_id(data) self.from_short_be(data[0..1])[0] end |
.request_length(data) ⇒ Fixnum
Returns request length from raw packet skipping parsing
306 307 308 |
# File 'lib/rex/proto/dns/packet.rb', line 306 def self.request_length(data) self.from_short_le(data[0..2])[0] end |
.to_int_be(data) ⇒ String
Convert data to big endian unsigned int
256 257 258 |
# File 'lib/rex/proto/dns/packet.rb', line 256 def self.to_int_be(data) [data].flatten.pack('I>*') end |
.to_int_le(data) ⇒ String
Convert data to little endian unsigned int
196 197 198 |
# File 'lib/rex/proto/dns/packet.rb', line 196 def self.to_int_le(data) [data].flatten.pack('I*') end |
.to_long_be(data) ⇒ String
Convert data to big endian unsigned long
276 277 278 |
# File 'lib/rex/proto/dns/packet.rb', line 276 def self.to_long_be(data) [data].flatten.pack('L>*') end |
.to_long_le(data) ⇒ String
Convert data to little endian unsigned long
216 217 218 |
# File 'lib/rex/proto/dns/packet.rb', line 216 def self.to_long_le(data) [data].flatten.pack('L*') end |
.to_short_be(data) ⇒ String
Convert data to big endian unsigned short
236 237 238 |
# File 'lib/rex/proto/dns/packet.rb', line 236 def self.to_short_be(data) [data].flatten.pack('S>*') end |
.to_short_le(data) ⇒ String
Convert data to little endian unsigned short
176 177 178 |
# File 'lib/rex/proto/dns/packet.rb', line 176 def self.to_short_le(data) [data].flatten.pack('S*') end |