packetgen 3.1.3 → 3.1.4

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 (128) hide show
  1. checksums.yaml +4 -4
  2. data/lib/packetgen.rb +24 -2
  3. data/lib/packetgen/capture.rb +30 -24
  4. data/lib/packetgen/config.rb +2 -2
  5. data/lib/packetgen/deprecation.rb +33 -7
  6. data/lib/packetgen/header.rb +2 -9
  7. data/lib/packetgen/header/arp.rb +2 -2
  8. data/lib/packetgen/header/asn1_base.rb +2 -2
  9. data/lib/packetgen/header/base.rb +2 -4
  10. data/lib/packetgen/header/bootp.rb +3 -3
  11. data/lib/packetgen/header/dhcp.rb +2 -2
  12. data/lib/packetgen/header/dhcp/option.rb +2 -2
  13. data/lib/packetgen/header/dhcp/options.rb +2 -2
  14. data/lib/packetgen/header/dhcpv6.rb +12 -12
  15. data/lib/packetgen/header/dhcpv6/duid.rb +8 -4
  16. data/lib/packetgen/header/dhcpv6/option.rb +4 -4
  17. data/lib/packetgen/header/dhcpv6/options.rb +2 -2
  18. data/lib/packetgen/header/dhcpv6/relay.rb +2 -2
  19. data/lib/packetgen/header/dns.rb +9 -9
  20. data/lib/packetgen/header/dns/name.rb +2 -2
  21. data/lib/packetgen/header/dns/opt.rb +2 -2
  22. data/lib/packetgen/header/dns/option.rb +2 -2
  23. data/lib/packetgen/header/dns/qdsection.rb +2 -2
  24. data/lib/packetgen/header/dns/question.rb +35 -35
  25. data/lib/packetgen/header/dns/rr.rb +3 -3
  26. data/lib/packetgen/header/dns/rrsection.rb +2 -2
  27. data/lib/packetgen/header/dot11.rb +5 -13
  28. data/lib/packetgen/header/dot11/control.rb +5 -5
  29. data/lib/packetgen/header/dot11/data.rb +2 -2
  30. data/lib/packetgen/header/dot11/element.rb +16 -16
  31. data/lib/packetgen/header/dot11/management.rb +2 -2
  32. data/lib/packetgen/header/dot11/sub_mngt.rb +2 -12
  33. data/lib/packetgen/header/dot1q.rb +2 -2
  34. data/lib/packetgen/header/dot1x.rb +6 -6
  35. data/lib/packetgen/header/eap.rb +16 -16
  36. data/lib/packetgen/header/eap/fast.rb +2 -2
  37. data/lib/packetgen/header/eap/md5.rb +2 -2
  38. data/lib/packetgen/header/eap/tls.rb +2 -2
  39. data/lib/packetgen/header/eap/ttls.rb +2 -2
  40. data/lib/packetgen/header/eth.rb +8 -5
  41. data/lib/packetgen/header/gre.rb +2 -2
  42. data/lib/packetgen/header/http.rb +2 -0
  43. data/lib/packetgen/header/http/headers.rb +2 -2
  44. data/lib/packetgen/header/http/request.rb +5 -5
  45. data/lib/packetgen/header/http/response.rb +6 -6
  46. data/lib/packetgen/header/http/verbs.rb +2 -2
  47. data/lib/packetgen/header/icmp.rb +2 -2
  48. data/lib/packetgen/header/icmpv6.rb +2 -2
  49. data/lib/packetgen/header/igmp.rb +4 -4
  50. data/lib/packetgen/header/igmpv3.rb +3 -3
  51. data/lib/packetgen/header/igmpv3/group_record.rb +6 -6
  52. data/lib/packetgen/header/igmpv3/mq.rb +2 -2
  53. data/lib/packetgen/header/igmpv3/mr.rb +2 -2
  54. data/lib/packetgen/header/ip.rb +3 -5
  55. data/lib/packetgen/header/ip/addr.rb +7 -2
  56. data/lib/packetgen/header/ip/option.rb +4 -6
  57. data/lib/packetgen/header/ip/options.rb +3 -5
  58. data/lib/packetgen/header/ipv6.rb +2 -2
  59. data/lib/packetgen/header/ipv6/addr.rb +7 -2
  60. data/lib/packetgen/header/ipv6/extension.rb +2 -2
  61. data/lib/packetgen/header/ipv6/hop_by_hop.rb +3 -3
  62. data/lib/packetgen/header/llc.rb +2 -2
  63. data/lib/packetgen/header/mdns.rb +2 -2
  64. data/lib/packetgen/header/mld.rb +2 -2
  65. data/lib/packetgen/header/mldv2.rb +2 -2
  66. data/lib/packetgen/header/mldv2/mcast_address_record.rb +2 -2
  67. data/lib/packetgen/header/mldv2/mlq.rb +2 -2
  68. data/lib/packetgen/header/mldv2/mlr.rb +2 -2
  69. data/lib/packetgen/header/ospfv2.rb +9 -9
  70. data/lib/packetgen/header/ospfv2/db_description.rb +2 -2
  71. data/lib/packetgen/header/ospfv2/hello.rb +2 -2
  72. data/lib/packetgen/header/ospfv2/ls_ack.rb +2 -2
  73. data/lib/packetgen/header/ospfv2/ls_request.rb +2 -2
  74. data/lib/packetgen/header/ospfv2/ls_update.rb +2 -2
  75. data/lib/packetgen/header/ospfv2/lsa.rb +3 -5
  76. data/lib/packetgen/header/ospfv2/lsa_header.rb +6 -6
  77. data/lib/packetgen/header/ospfv3.rb +2 -2
  78. data/lib/packetgen/header/ospfv3/db_description.rb +2 -2
  79. data/lib/packetgen/header/ospfv3/hello.rb +2 -2
  80. data/lib/packetgen/header/ospfv3/ipv6_prefix.rb +2 -2
  81. data/lib/packetgen/header/ospfv3/ls_ack.rb +2 -2
  82. data/lib/packetgen/header/ospfv3/ls_request.rb +2 -2
  83. data/lib/packetgen/header/ospfv3/ls_update.rb +2 -2
  84. data/lib/packetgen/header/ospfv3/lsa.rb +3 -5
  85. data/lib/packetgen/header/ospfv3/lsa_header.rb +7 -7
  86. data/lib/packetgen/header/snmp.rb +31 -28
  87. data/lib/packetgen/header/tcp.rb +3 -3
  88. data/lib/packetgen/header/tcp/option.rb +3 -5
  89. data/lib/packetgen/header/tcp/options.rb +2 -2
  90. data/lib/packetgen/header/tftp.rb +6 -6
  91. data/lib/packetgen/header/udp.rb +3 -3
  92. data/lib/packetgen/headerable.rb +5 -4
  93. data/lib/packetgen/inject.rb +23 -0
  94. data/lib/packetgen/inspect.rb +24 -5
  95. data/lib/packetgen/packet.rb +76 -51
  96. data/lib/packetgen/pcap.rb +29 -0
  97. data/lib/packetgen/pcapng.rb +2 -2
  98. data/lib/packetgen/pcapng/block.rb +12 -12
  99. data/lib/packetgen/pcapng/epb.rb +3 -7
  100. data/lib/packetgen/pcapng/file.rb +134 -95
  101. data/lib/packetgen/pcapng/idb.rb +30 -30
  102. data/lib/packetgen/pcapng/shb.rb +25 -34
  103. data/lib/packetgen/pcapng/spb.rb +4 -8
  104. data/lib/packetgen/pcapng/unknown_block.rb +2 -2
  105. data/lib/packetgen/pcaprub_wrapper.rb +67 -0
  106. data/lib/packetgen/proto.rb +2 -2
  107. data/lib/packetgen/types.rb +2 -0
  108. data/lib/packetgen/types/abstract_tlv.rb +24 -6
  109. data/lib/packetgen/types/array.rb +5 -5
  110. data/lib/packetgen/types/cstring.rb +2 -2
  111. data/lib/packetgen/types/enum.rb +3 -2
  112. data/lib/packetgen/types/fields.rb +5 -7
  113. data/lib/packetgen/types/int.rb +3 -5
  114. data/lib/packetgen/types/int_string.rb +2 -2
  115. data/lib/packetgen/types/length_from.rb +3 -3
  116. data/lib/packetgen/types/oui.rb +2 -2
  117. data/lib/packetgen/types/string.rb +2 -2
  118. data/lib/packetgen/types/tlv.rb +2 -2
  119. data/lib/packetgen/utils.rb +2 -2
  120. data/lib/packetgen/utils/arp_spoofer.rb +2 -2
  121. data/lib/packetgen/version.rb +3 -3
  122. metadata +26 -50
  123. data/.gitignore +0 -13
  124. data/.rubocop.yml +0 -30
  125. data/.travis.yml +0 -19
  126. data/Gemfile +0 -4
  127. data/Rakefile +0 -21
  128. data/packetgen.gemspec +0 -36
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DHCPv6
@@ -55,7 +55,7 @@ module PacketGen
55
55
  case options[:type]
56
56
  when Integer
57
57
  klass = Option.subclasses[options[:type]]
58
- klass.new(options) if klass
58
+ klass&.new(options)
59
59
  when String
60
60
  if DHCPv6.const_defined?(options[:type])
61
61
  klass = DHCPv6.const_get(options[:type])
@@ -95,7 +95,7 @@ module PacketGen
95
95
  # Get a human-readable string for this option
96
96
  # @return [String]
97
97
  def to_human
98
- str = "#{human_type}:".dup
98
+ str = +"#{human_type}:"
99
99
  if respond_to?(:human_data) && !human_data.empty?
100
100
  str << human_data
101
101
  elsif !self[:data].nil?
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DHCPv6
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DHCPv6
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  # DNS: Domain Name Service
@@ -120,7 +120,7 @@ module PacketGen
120
120
 
121
121
  # DNS opcodes
122
122
  OPCODES = {
123
- 'query' => 0,
123
+ 'query' => 0,
124
124
  'iquery' => 1,
125
125
  'status' => 2,
126
126
  'notify' => 4,
@@ -129,13 +129,13 @@ module PacketGen
129
129
 
130
130
  # DNS Response codes
131
131
  RCODES = {
132
- 'ok' => 0,
133
- 'no-error' => 0,
134
- 'format-error' => 1,
135
- 'server-failure' => 2,
136
- 'name-error' => 3,
132
+ 'ok' => 0,
133
+ 'no-error' => 0,
134
+ 'format-error' => 1,
135
+ 'server-failure' => 2,
136
+ 'name-error' => 3,
137
137
  'not-implemented' => 4,
138
- 'refused' => 5
138
+ 'refused' => 5
139
139
  }.freeze
140
140
 
141
141
  # @!attribute id
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  require_relative 'option'
9
9
 
10
10
  module PacketGen
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -13,44 +13,44 @@ module PacketGen
13
13
  class Question < Types::Fields
14
14
  # Ressource Record types
15
15
  TYPES = {
16
- 'A' => 1,
17
- 'NS' => 2,
18
- 'MD' => 3,
19
- 'MF' => 4,
20
- 'CNAME' => 5,
21
- 'SOA' => 6,
22
- 'MB' => 7,
23
- 'MG' => 8,
24
- 'MR' => 9,
25
- 'NULL' => 10,
26
- 'WKS' => 11,
27
- 'PTR' => 12,
28
- 'HINFO' => 13,
29
- 'MINFO' => 14,
30
- 'MX' => 15,
31
- 'TXT' => 16,
32
- 'AAAA' => 28,
33
- 'SRV' => 33,
34
- 'NAPTR' => 35,
35
- 'KX' => 36,
36
- 'CERT' => 37,
37
- 'OPT' => 41,
38
- 'DS' => 43,
39
- 'RRSIG' => 46,
40
- 'NSEC' => 47,
41
- 'DNSKEY' => 48,
42
- 'TKEY' => 249,
43
- 'TSIG' => 250,
44
- '*' => 255
16
+ 'A' => 1,
17
+ 'NS' => 2,
18
+ 'MD' => 3,
19
+ 'MF' => 4,
20
+ 'CNAME' => 5,
21
+ 'SOA' => 6,
22
+ 'MB' => 7,
23
+ 'MG' => 8,
24
+ 'MR' => 9,
25
+ 'NULL' => 10,
26
+ 'WKS' => 11,
27
+ 'PTR' => 12,
28
+ 'HINFO' => 13,
29
+ 'MINFO' => 14,
30
+ 'MX' => 15,
31
+ 'TXT' => 16,
32
+ 'AAAA' => 28,
33
+ 'SRV' => 33,
34
+ 'NAPTR' => 35,
35
+ 'KX' => 36,
36
+ 'CERT' => 37,
37
+ 'OPT' => 41,
38
+ 'DS' => 43,
39
+ 'RRSIG' => 46,
40
+ 'NSEC' => 47,
41
+ 'DNSKEY' => 48,
42
+ 'TKEY' => 249,
43
+ 'TSIG' => 250,
44
+ '*' => 255
45
45
  }.freeze
46
46
 
47
47
  # Ressource Record classes
48
48
  CLASSES = {
49
- 'IN' => 1,
50
- 'CH' => 3,
51
- 'HS' => 4,
49
+ 'IN' => 1,
50
+ 'CH' => 3,
51
+ 'HS' => 4,
52
52
  'NONE' => 254,
53
- '*' => 255
53
+ '*' => 255
54
54
  }.freeze
55
55
 
56
56
  # @!attribute name
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -98,7 +98,7 @@ module PacketGen
98
98
  def human_rrclass
99
99
  if self[:name].dns.is_a? MDNS
100
100
  str = self.class::CLASSES.key(self.rrclass & 0x7fff) || '0x%04x' % (self.rrclass & 0x7fff)
101
- str += ' CACHE-FLUSH' if self.rrclass & 0x8000 > 0
101
+ str += ' CACHE-FLUSH' if (self.rrclass & 0x8000).positive?
102
102
  str
103
103
  else
104
104
  self.class::CLASSES.key(self.rrclass) || '0x%04x' % self.rrclass
@@ -1,10 +1,10 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # This file is part of PacketGen
2
4
  # See https://github.com/sdaubert/packetgen for more informations
3
5
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
4
6
  # This program is published under MIT license.
5
7
 
6
- # frozen_string_literal: true
7
-
8
8
  module PacketGen
9
9
  module Header
10
10
  class DNS
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  require 'zlib'
10
10
 
11
11
  module PacketGen
@@ -68,9 +68,7 @@ module PacketGen
68
68
  # @param [String] iface interface name
69
69
  # @return [void]
70
70
  def to_w(iface)
71
- pcap = PCAPRUB::Pcap.open_live(iface, PCAP_SNAPLEN, PCAP_PROMISC, PCAP_TIMEOUT)
72
- pcap.inject self.to_s
73
- pcap.close
71
+ Inject.inject(iface: iface, data: self)
74
72
  end
75
73
  end
76
74
  self.add_class PPI
@@ -130,10 +128,7 @@ module PacketGen
130
128
  # @param [String] iface interface name
131
129
  # @return [void]
132
130
  def to_w(iface)
133
- pcap = PCAPRUB::Pcap.open_live(iface, PCAP_SNAPLEN, PCAP_PROMISC,
134
- PCAP_TIMEOUT)
135
- pcap.inject self.to_s
136
- pcap.close
131
+ Inject.inject(iface: iface, data: self)
137
132
  end
138
133
  end
139
134
  self.add_class RadioTap
@@ -379,10 +374,7 @@ module PacketGen
379
374
  # @param [String] iface interface name
380
375
  # @return [void]
381
376
  def to_w(iface)
382
- pcap = PCAPRUB::Pcap.open_live(iface, PCAP_SNAPLEN, PCAP_PROMISC,
383
- PCAP_TIMEOUT)
384
- pcap.inject self.to_s
385
- pcap.close
377
+ Inject.inject(iface: iface, data: self)
386
378
  end
387
379
 
388
380
  # Callback called when a Dot11 header is added to a packet
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  class Dot11
@@ -25,9 +25,9 @@ module PacketGen
25
25
  class Control < Dot11
26
26
  # Control subtypes
27
27
  SUBTYPES = {
28
- 7 => 'Wrapper',
29
- 8 => 'Block Ack Request',
30
- 9 => 'Block Ack',
28
+ 7 => 'Wrapper',
29
+ 8 => 'Block Ack Request',
30
+ 9 => 'Block Ack',
31
31
  10 => 'PS-Poll',
32
32
  11 => 'RTS',
33
33
  12 => 'CTS',
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  class Dot11
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  class Dot11
@@ -22,20 +22,20 @@ module PacketGen
22
22
  class Element
23
23
  # Known element types
24
24
  TYPES = {
25
- 0 => 'SSID',
26
- 1 => 'Rates',
27
- 2 => 'FHset',
28
- 3 => 'DSset',
29
- 4 => 'CFset',
30
- 5 => 'TIM',
31
- 6 => 'IBSSset',
32
- 16 => 'challenge',
33
- 42 => 'ERPinfo',
34
- 46 => 'QoS Cap.',
35
- 47 => 'ERPinfo',
36
- 48 => 'RSNinfo',
37
- 50 => 'ESRates',
38
- 68 => 'reserved',
25
+ 0 => 'SSID',
26
+ 1 => 'Rates',
27
+ 2 => 'FHset',
28
+ 3 => 'DSset',
29
+ 4 => 'CFset',
30
+ 5 => 'TIM',
31
+ 6 => 'IBSSset',
32
+ 16 => 'challenge',
33
+ 42 => 'ERPinfo',
34
+ 46 => 'QoS Cap.',
35
+ 47 => 'ERPinfo',
36
+ 48 => 'RSNinfo',
37
+ 50 => 'ESRates',
38
+ 68 => 'reserved',
39
39
  221 => 'vendor'
40
40
  }.freeze
41
41
  end
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  class Dot11
@@ -1,11 +1,11 @@
1
1
  # coding: utf-8
2
+ # frozen_string_literal: true
3
+
2
4
  # This file is part of PacketGen
3
5
  # See https://github.com/sdaubert/packetgen for more informations
4
6
  # Copyright (C) 2016 Sylvain Daubert <sylvain.daubert@laposte.net>
5
7
  # This program is published under MIT license.
6
8
 
7
- # frozen_string_literal: true
8
-
9
9
  module PacketGen
10
10
  module Header
11
11
  class Dot11
@@ -21,16 +21,6 @@ module PacketGen
21
21
  # @return [Array<Element>]
22
22
  define_field :elements, ArrayOfElements
23
23
 
24
- # @return [String]
25
- #def inspect
26
- # str = super
27
- # str << Inspect.dashed_line('Dot11 Elements', 2)
28
- # @elements.each do |el|
29
- # str << Inspect.shift_level(2) << el.to_human << "\n"
30
- # end
31
- # str
32
- #end
33
-
34
24
  # Add an {Element} to header
35
25
  # @param [Integer,String] type element type
36
26
  # @param [Object] value element value