lib-dhcp 0.1.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.
- checksums.yaml +7 -0
- data/.gitignore +10 -0
- data/.travis.yml +13 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +6 -0
- data/LICENSE.txt +21 -0
- data/README.md +33 -0
- data/Rakefile +10 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/exe/dhcp_dump +83 -0
- data/lib-dhcp.gemspec +31 -0
- data/lib/lib/dhcp.rb +276 -0
- data/lib/lib/dhcp/exception.rb +34 -0
- data/lib/lib/dhcp/messages/ack.rb +65 -0
- data/lib/lib/dhcp/messages/decline.rb +77 -0
- data/lib/lib/dhcp/messages/discover.rb +70 -0
- data/lib/lib/dhcp/messages/inform.rb +64 -0
- data/lib/lib/dhcp/messages/lease_active.rb +65 -0
- data/lib/lib/dhcp/messages/lease_query.rb +64 -0
- data/lib/lib/dhcp/messages/lease_unassigned.rb +64 -0
- data/lib/lib/dhcp/messages/lease_unknown.rb +64 -0
- data/lib/lib/dhcp/messages/message.rb +285 -0
- data/lib/lib/dhcp/messages/nack.rb +64 -0
- data/lib/lib/dhcp/messages/offer.rb +74 -0
- data/lib/lib/dhcp/messages/release.rb +64 -0
- data/lib/lib/dhcp/messages/request.rb +71 -0
- data/lib/lib/dhcp/options.rb +73 -0
- data/lib/lib/dhcp/options/option.rb +249 -0
- data/lib/lib/dhcp/options/option0.rb +34 -0
- data/lib/lib/dhcp/options/option1.rb +24 -0
- data/lib/lib/dhcp/options/option10.rb +20 -0
- data/lib/lib/dhcp/options/option100.rb +17 -0
- data/lib/lib/dhcp/options/option101.rb +17 -0
- data/lib/lib/dhcp/options/option102.rb +17 -0
- data/lib/lib/dhcp/options/option103.rb +17 -0
- data/lib/lib/dhcp/options/option104.rb +17 -0
- data/lib/lib/dhcp/options/option105.rb +17 -0
- data/lib/lib/dhcp/options/option106.rb +17 -0
- data/lib/lib/dhcp/options/option107.rb +17 -0
- data/lib/lib/dhcp/options/option108.rb +17 -0
- data/lib/lib/dhcp/options/option109.rb +17 -0
- data/lib/lib/dhcp/options/option11.rb +20 -0
- data/lib/lib/dhcp/options/option110.rb +17 -0
- data/lib/lib/dhcp/options/option111.rb +17 -0
- data/lib/lib/dhcp/options/option112.rb +17 -0
- data/lib/lib/dhcp/options/option113.rb +17 -0
- data/lib/lib/dhcp/options/option114.rb +17 -0
- data/lib/lib/dhcp/options/option115.rb +17 -0
- data/lib/lib/dhcp/options/option116.rb +17 -0
- data/lib/lib/dhcp/options/option117.rb +17 -0
- data/lib/lib/dhcp/options/option118.rb +17 -0
- data/lib/lib/dhcp/options/option119.rb +17 -0
- data/lib/lib/dhcp/options/option12.rb +20 -0
- data/lib/lib/dhcp/options/option120.rb +17 -0
- data/lib/lib/dhcp/options/option121.rb +17 -0
- data/lib/lib/dhcp/options/option122.rb +341 -0
- data/lib/lib/dhcp/options/option123.rb +17 -0
- data/lib/lib/dhcp/options/option124.rb +17 -0
- data/lib/lib/dhcp/options/option125.rb +17 -0
- data/lib/lib/dhcp/options/option126.rb +17 -0
- data/lib/lib/dhcp/options/option127.rb +17 -0
- data/lib/lib/dhcp/options/option128.rb +17 -0
- data/lib/lib/dhcp/options/option129.rb +17 -0
- data/lib/lib/dhcp/options/option13.rb +43 -0
- data/lib/lib/dhcp/options/option130.rb +17 -0
- data/lib/lib/dhcp/options/option131.rb +17 -0
- data/lib/lib/dhcp/options/option132.rb +17 -0
- data/lib/lib/dhcp/options/option133.rb +17 -0
- data/lib/lib/dhcp/options/option134.rb +17 -0
- data/lib/lib/dhcp/options/option135.rb +17 -0
- data/lib/lib/dhcp/options/option136.rb +17 -0
- data/lib/lib/dhcp/options/option137.rb +17 -0
- data/lib/lib/dhcp/options/option138.rb +17 -0
- data/lib/lib/dhcp/options/option139.rb +17 -0
- data/lib/lib/dhcp/options/option14.rb +21 -0
- data/lib/lib/dhcp/options/option140.rb +17 -0
- data/lib/lib/dhcp/options/option141.rb +17 -0
- data/lib/lib/dhcp/options/option142.rb +17 -0
- data/lib/lib/dhcp/options/option143.rb +17 -0
- data/lib/lib/dhcp/options/option144.rb +17 -0
- data/lib/lib/dhcp/options/option145.rb +17 -0
- data/lib/lib/dhcp/options/option146.rb +17 -0
- data/lib/lib/dhcp/options/option147.rb +17 -0
- data/lib/lib/dhcp/options/option148.rb +17 -0
- data/lib/lib/dhcp/options/option149.rb +17 -0
- data/lib/lib/dhcp/options/option15.rb +20 -0
- data/lib/lib/dhcp/options/option150.rb +17 -0
- data/lib/lib/dhcp/options/option151.rb +17 -0
- data/lib/lib/dhcp/options/option152.rb +17 -0
- data/lib/lib/dhcp/options/option153.rb +17 -0
- data/lib/lib/dhcp/options/option154.rb +17 -0
- data/lib/lib/dhcp/options/option155.rb +17 -0
- data/lib/lib/dhcp/options/option156.rb +17 -0
- data/lib/lib/dhcp/options/option157.rb +17 -0
- data/lib/lib/dhcp/options/option158.rb +17 -0
- data/lib/lib/dhcp/options/option159.rb +17 -0
- data/lib/lib/dhcp/options/option16.rb +19 -0
- data/lib/lib/dhcp/options/option160.rb +17 -0
- data/lib/lib/dhcp/options/option161.rb +17 -0
- data/lib/lib/dhcp/options/option162.rb +17 -0
- data/lib/lib/dhcp/options/option163.rb +17 -0
- data/lib/lib/dhcp/options/option164.rb +17 -0
- data/lib/lib/dhcp/options/option165.rb +17 -0
- data/lib/lib/dhcp/options/option166.rb +17 -0
- data/lib/lib/dhcp/options/option167.rb +17 -0
- data/lib/lib/dhcp/options/option168.rb +17 -0
- data/lib/lib/dhcp/options/option169.rb +17 -0
- data/lib/lib/dhcp/options/option17.rb +22 -0
- data/lib/lib/dhcp/options/option170.rb +17 -0
- data/lib/lib/dhcp/options/option171.rb +17 -0
- data/lib/lib/dhcp/options/option172.rb +17 -0
- data/lib/lib/dhcp/options/option173.rb +17 -0
- data/lib/lib/dhcp/options/option174.rb +17 -0
- data/lib/lib/dhcp/options/option175.rb +17 -0
- data/lib/lib/dhcp/options/option176.rb +17 -0
- data/lib/lib/dhcp/options/option177.rb +17 -0
- data/lib/lib/dhcp/options/option178.rb +17 -0
- data/lib/lib/dhcp/options/option179.rb +17 -0
- data/lib/lib/dhcp/options/option18.rb +23 -0
- data/lib/lib/dhcp/options/option180.rb +17 -0
- data/lib/lib/dhcp/options/option181.rb +17 -0
- data/lib/lib/dhcp/options/option182.rb +17 -0
- data/lib/lib/dhcp/options/option183.rb +17 -0
- data/lib/lib/dhcp/options/option184.rb +17 -0
- data/lib/lib/dhcp/options/option185.rb +17 -0
- data/lib/lib/dhcp/options/option186.rb +17 -0
- data/lib/lib/dhcp/options/option187.rb +17 -0
- data/lib/lib/dhcp/options/option188.rb +17 -0
- data/lib/lib/dhcp/options/option189.rb +17 -0
- data/lib/lib/dhcp/options/option19.rb +20 -0
- data/lib/lib/dhcp/options/option190.rb +17 -0
- data/lib/lib/dhcp/options/option191.rb +17 -0
- data/lib/lib/dhcp/options/option192.rb +17 -0
- data/lib/lib/dhcp/options/option193.rb +17 -0
- data/lib/lib/dhcp/options/option194.rb +17 -0
- data/lib/lib/dhcp/options/option195.rb +17 -0
- data/lib/lib/dhcp/options/option196.rb +17 -0
- data/lib/lib/dhcp/options/option197.rb +17 -0
- data/lib/lib/dhcp/options/option198.rb +17 -0
- data/lib/lib/dhcp/options/option199.rb +17 -0
- data/lib/lib/dhcp/options/option2.rb +45 -0
- data/lib/lib/dhcp/options/option20.rb +22 -0
- data/lib/lib/dhcp/options/option200.rb +17 -0
- data/lib/lib/dhcp/options/option201.rb +17 -0
- data/lib/lib/dhcp/options/option202.rb +17 -0
- data/lib/lib/dhcp/options/option203.rb +17 -0
- data/lib/lib/dhcp/options/option204.rb +17 -0
- data/lib/lib/dhcp/options/option205.rb +17 -0
- data/lib/lib/dhcp/options/option206.rb +17 -0
- data/lib/lib/dhcp/options/option207.rb +17 -0
- data/lib/lib/dhcp/options/option208.rb +17 -0
- data/lib/lib/dhcp/options/option209.rb +17 -0
- data/lib/lib/dhcp/options/option21.rb +87 -0
- data/lib/lib/dhcp/options/option210.rb +17 -0
- data/lib/lib/dhcp/options/option211.rb +17 -0
- data/lib/lib/dhcp/options/option212.rb +17 -0
- data/lib/lib/dhcp/options/option213.rb +17 -0
- data/lib/lib/dhcp/options/option214.rb +17 -0
- data/lib/lib/dhcp/options/option215.rb +17 -0
- data/lib/lib/dhcp/options/option216.rb +17 -0
- data/lib/lib/dhcp/options/option217.rb +17 -0
- data/lib/lib/dhcp/options/option218.rb +17 -0
- data/lib/lib/dhcp/options/option219.rb +17 -0
- data/lib/lib/dhcp/options/option22.rb +43 -0
- data/lib/lib/dhcp/options/option220.rb +17 -0
- data/lib/lib/dhcp/options/option221.rb +17 -0
- data/lib/lib/dhcp/options/option222.rb +17 -0
- data/lib/lib/dhcp/options/option223.rb +17 -0
- data/lib/lib/dhcp/options/option224.rb +17 -0
- data/lib/lib/dhcp/options/option225.rb +17 -0
- data/lib/lib/dhcp/options/option226.rb +17 -0
- data/lib/lib/dhcp/options/option227.rb +17 -0
- data/lib/lib/dhcp/options/option228.rb +17 -0
- data/lib/lib/dhcp/options/option229.rb +17 -0
- data/lib/lib/dhcp/options/option23.rb +44 -0
- data/lib/lib/dhcp/options/option230.rb +17 -0
- data/lib/lib/dhcp/options/option231.rb +17 -0
- data/lib/lib/dhcp/options/option232.rb +17 -0
- data/lib/lib/dhcp/options/option233.rb +17 -0
- data/lib/lib/dhcp/options/option234.rb +17 -0
- data/lib/lib/dhcp/options/option235.rb +17 -0
- data/lib/lib/dhcp/options/option236.rb +17 -0
- data/lib/lib/dhcp/options/option237.rb +17 -0
- data/lib/lib/dhcp/options/option238.rb +17 -0
- data/lib/lib/dhcp/options/option239.rb +17 -0
- data/lib/lib/dhcp/options/option24.rb +45 -0
- data/lib/lib/dhcp/options/option240.rb +17 -0
- data/lib/lib/dhcp/options/option241.rb +17 -0
- data/lib/lib/dhcp/options/option242.rb +17 -0
- data/lib/lib/dhcp/options/option243.rb +17 -0
- data/lib/lib/dhcp/options/option244.rb +17 -0
- data/lib/lib/dhcp/options/option245.rb +17 -0
- data/lib/lib/dhcp/options/option246.rb +17 -0
- data/lib/lib/dhcp/options/option247.rb +17 -0
- data/lib/lib/dhcp/options/option248.rb +17 -0
- data/lib/lib/dhcp/options/option249.rb +17 -0
- data/lib/lib/dhcp/options/option25.rb +20 -0
- data/lib/lib/dhcp/options/option250.rb +17 -0
- data/lib/lib/dhcp/options/option251.rb +17 -0
- data/lib/lib/dhcp/options/option252.rb +17 -0
- data/lib/lib/dhcp/options/option253.rb +17 -0
- data/lib/lib/dhcp/options/option254.rb +17 -0
- data/lib/lib/dhcp/options/option255.rb +29 -0
- data/lib/lib/dhcp/options/option26.rb +45 -0
- data/lib/lib/dhcp/options/option27.rb +16 -0
- data/lib/lib/dhcp/options/option28.rb +21 -0
- data/lib/lib/dhcp/options/option29.rb +16 -0
- data/lib/lib/dhcp/options/option3.rb +22 -0
- data/lib/lib/dhcp/options/option30.rb +16 -0
- data/lib/lib/dhcp/options/option31.rb +16 -0
- data/lib/lib/dhcp/options/option32.rb +18 -0
- data/lib/lib/dhcp/options/option33.rb +20 -0
- data/lib/lib/dhcp/options/option34.rb +16 -0
- data/lib/lib/dhcp/options/option35.rb +43 -0
- data/lib/lib/dhcp/options/option36.rb +16 -0
- data/lib/lib/dhcp/options/option37.rb +43 -0
- data/lib/lib/dhcp/options/option38.rb +43 -0
- data/lib/lib/dhcp/options/option39.rb +16 -0
- data/lib/lib/dhcp/options/option4.rb +21 -0
- data/lib/lib/dhcp/options/option40.rb +18 -0
- data/lib/lib/dhcp/options/option41.rb +18 -0
- data/lib/lib/dhcp/options/option42.rb +22 -0
- data/lib/lib/dhcp/options/option43.rb +16 -0
- data/lib/lib/dhcp/options/option44.rb +17 -0
- data/lib/lib/dhcp/options/option45.rb +18 -0
- data/lib/lib/dhcp/options/option46.rb +43 -0
- data/lib/lib/dhcp/options/option47.rb +17 -0
- data/lib/lib/dhcp/options/option48.rb +17 -0
- data/lib/lib/dhcp/options/option49.rb +17 -0
- data/lib/lib/dhcp/options/option5.rb +23 -0
- data/lib/lib/dhcp/options/option50.rb +16 -0
- data/lib/lib/dhcp/options/option51.rb +43 -0
- data/lib/lib/dhcp/options/option52.rb +45 -0
- data/lib/lib/dhcp/options/option53.rb +50 -0
- data/lib/lib/dhcp/options/option54.rb +16 -0
- data/lib/lib/dhcp/options/option55.rb +52 -0
- data/lib/lib/dhcp/options/option56.rb +20 -0
- data/lib/lib/dhcp/options/option57.rb +52 -0
- data/lib/lib/dhcp/options/option58.rb +45 -0
- data/lib/lib/dhcp/options/option59.rb +45 -0
- data/lib/lib/dhcp/options/option6.rb +23 -0
- data/lib/lib/dhcp/options/option60.rb +16 -0
- data/lib/lib/dhcp/options/option61.rb +37 -0
- data/lib/lib/dhcp/options/option62.rb +16 -0
- data/lib/lib/dhcp/options/option63.rb +16 -0
- data/lib/lib/dhcp/options/option64.rb +20 -0
- data/lib/lib/dhcp/options/option65.rb +17 -0
- data/lib/lib/dhcp/options/option66.rb +20 -0
- data/lib/lib/dhcp/options/option67.rb +20 -0
- data/lib/lib/dhcp/options/option68.rb +19 -0
- data/lib/lib/dhcp/options/option69.rb +17 -0
- data/lib/lib/dhcp/options/option7.rb +22 -0
- data/lib/lib/dhcp/options/option70.rb +17 -0
- data/lib/lib/dhcp/options/option71.rb +17 -0
- data/lib/lib/dhcp/options/option72.rb +17 -0
- data/lib/lib/dhcp/options/option73.rb +17 -0
- data/lib/lib/dhcp/options/option74.rb +17 -0
- data/lib/lib/dhcp/options/option75.rb +17 -0
- data/lib/lib/dhcp/options/option76.rb +17 -0
- data/lib/lib/dhcp/options/option77.rb +16 -0
- data/lib/lib/dhcp/options/option78.rb +16 -0
- data/lib/lib/dhcp/options/option79.rb +16 -0
- data/lib/lib/dhcp/options/option8.rb +22 -0
- data/lib/lib/dhcp/options/option80.rb +16 -0
- data/lib/lib/dhcp/options/option81.rb +16 -0
- data/lib/lib/dhcp/options/option82.rb +20 -0
- data/lib/lib/dhcp/options/option83.rb +16 -0
- data/lib/lib/dhcp/options/option84.rb +16 -0
- data/lib/lib/dhcp/options/option85.rb +16 -0
- data/lib/lib/dhcp/options/option86.rb +17 -0
- data/lib/lib/dhcp/options/option87.rb +16 -0
- data/lib/lib/dhcp/options/option88.rb +16 -0
- data/lib/lib/dhcp/options/option89.rb +16 -0
- data/lib/lib/dhcp/options/option9.rb +21 -0
- data/lib/lib/dhcp/options/option90.rb +16 -0
- data/lib/lib/dhcp/options/option91.rb +17 -0
- data/lib/lib/dhcp/options/option92.rb +17 -0
- data/lib/lib/dhcp/options/option93.rb +17 -0
- data/lib/lib/dhcp/options/option94.rb +17 -0
- data/lib/lib/dhcp/options/option95.rb +17 -0
- data/lib/lib/dhcp/options/option96.rb +17 -0
- data/lib/lib/dhcp/options/option97.rb +17 -0
- data/lib/lib/dhcp/options/option98.rb +17 -0
- data/lib/lib/dhcp/options/option99.rb +17 -0
- data/lib/lib/dhcp/options/sub_option.rb +32 -0
- data/lib/lib/dhcp/options/type/bool.rb +55 -0
- data/lib/lib/dhcp/options/type/ip_address.rb +73 -0
- data/lib/lib/dhcp/options/type/ip_array.rb +41 -0
- data/lib/lib/dhcp/options/type/netmask.rb +56 -0
- data/lib/lib/dhcp/options/type/raw.rb +51 -0
- data/lib/lib/dhcp/options/type/string.rb +49 -0
- data/lib/lib/dhcp/options/type/sub_option.rb +83 -0
- data/lib/lib/dhcp/packet.rb +96 -0
- data/lib/lib/dhcp/version.rb +5 -0
- metadata +409 -0
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option124 < Option
|
13
|
+
#TODO Option124
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option125 < Option
|
13
|
+
#TODO Option125
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option126 < Option
|
13
|
+
#TODO Option126
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option127 < Option
|
13
|
+
#TODO Option127
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option128 < Option
|
13
|
+
#TODO Option128
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option129 < Option
|
13
|
+
#TODO Option129
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,43 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 22.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
require_relative 'option'
|
7
|
+
|
8
|
+
module Lib
|
9
|
+
module DHCP
|
10
|
+
class Option13 < Option
|
11
|
+
# Boot File Size Option The code for this option is 13, and its length is 2
|
12
|
+
|
13
|
+
def_delegators :@payload, :to_s
|
14
|
+
|
15
|
+
def initialize(file_size)
|
16
|
+
super BOOT_FILE_SIZE, file_size.to_i
|
17
|
+
end
|
18
|
+
|
19
|
+
def payload=(file_size)
|
20
|
+
@payload = file_size.to_i
|
21
|
+
end
|
22
|
+
|
23
|
+
def len
|
24
|
+
2
|
25
|
+
end
|
26
|
+
|
27
|
+
def pack
|
28
|
+
[BOOT_FILE_SIZE, 2, @payload.to_i].pack('C2n')
|
29
|
+
end
|
30
|
+
|
31
|
+
alias_method :file_size, :payload
|
32
|
+
alias_method :file_size=, :payload=
|
33
|
+
|
34
|
+
private
|
35
|
+
|
36
|
+
def self.unpack(oid, len, payload)
|
37
|
+
raise ArgumentError, "OID Mismatch for BOOT FILE SIZE Option - #{oid}" unless oid.to_i == BOOT_FILE_SIZE
|
38
|
+
raise ArgumentError, "Wrong BOOT FILE SIZE Option length - #{len}" unless len == 2
|
39
|
+
self.new payload.unpack('n').first
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option130 < Option
|
13
|
+
#TODO Option130
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option131 < Option
|
13
|
+
#TODO Option131
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option132 < Option
|
13
|
+
#TODO Option132
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option133 < Option
|
13
|
+
#TODO Option133
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option134 < Option
|
13
|
+
#TODO Option134
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option135 < Option
|
13
|
+
#TODO Option135
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option136 < Option
|
13
|
+
#TODO Option136
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option137 < Option
|
13
|
+
#TODO Option137
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option138 < Option
|
13
|
+
#TODO Option138
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option139 < Option
|
13
|
+
#TODO Option139
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 22.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
require_relative 'option'
|
7
|
+
require_relative 'type/string'
|
8
|
+
|
9
|
+
module Lib
|
10
|
+
module DHCP
|
11
|
+
class Option14 < Option
|
12
|
+
# Merit Dump File, This option specifies the path-name of a file to which the client's core image should be
|
13
|
+
# dumped in the event the client crashes. The code for this option is 14. Its minimum length is 1.
|
14
|
+
|
15
|
+
include Type::String
|
16
|
+
|
17
|
+
alias_method :merit_dump_file, :payload
|
18
|
+
alias_method :merit_dump_file=, :payload=
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option140 < Option
|
13
|
+
#TODO Option140
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option141 < Option
|
13
|
+
#TODO Option141
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option142 < Option
|
13
|
+
#TODO Option142
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
#Author: Piotr Wojcieszonek
|
2
|
+
#e-mail: piotr@wojcieszonek.pl
|
3
|
+
# Copyright 23.03.2016 by Piotr Wojcieszonek
|
4
|
+
|
5
|
+
|
6
|
+
|
7
|
+
require_relative 'option'
|
8
|
+
require_relative 'type/raw'
|
9
|
+
|
10
|
+
module Lib
|
11
|
+
module DHCP
|
12
|
+
class Option143 < Option
|
13
|
+
#TODO Option143
|
14
|
+
include Lib::DHCP::Option::Type::Raw
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|