dhcp_parser 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +45 -8
- data/dhcp_parser-0.2.0.gem +0 -0
- data/dhcp_parser.gemspec +2 -2
- data/examples/test2_xml.xml +68 -0
- data/examples/test7_dhcp.conf +43 -0
- data/examples/test_data.xml +67 -0
- data/examples/xmlconvert.xml +67 -0
- data/lib/dhcp_parser.rb +11 -0
- data/lib/dhcp_parser/net.rb +2 -0
- data/lib/dhcp_parser/version.rb +1 -1
- data/lib/dhcp_parser/writeconf.rb +3 -1
- data/lib/dhcp_parser/xml.rb +75 -0
- metadata +11 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 45c02bbf595dabb546c4d7f52dea4651b75a360b
|
4
|
+
data.tar.gz: 4119da3631add28e7ad0f138da16d6993941859e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7351f33960e5b9c5babb1ab2230995291561e661f69bcfb846f0a881c61765e4e0eab09463a79528701ddcfa241f06203d5a6fca3c06705d5d4e12d10186f499
|
7
|
+
data.tar.gz: c90f6db16449c4003107b5ecebdba776acbcaff01778993630ba14ba54aa342857a5539d81a4699cb4e8dc4699cea5230d87f3a043dc4cd8c3b7ea19b0db5241
|
data/README.md
CHANGED
@@ -22,9 +22,7 @@ Or install it yourself as:
|
|
22
22
|
|
23
23
|
## Usage
|
24
24
|
|
25
|
-
|
26
|
-
|
27
|
-
__With file dhcp.conf__
|
25
|
+
#### With file dhcp.conf
|
28
26
|
|
29
27
|
```ruby
|
30
28
|
subnet 192.168.1.0 netmask 255.255.255.0 {
|
@@ -84,7 +82,7 @@ subnet 10.152.187.0 netmask 255.255.255.0 {
|
|
84
82
|
}
|
85
83
|
```
|
86
84
|
|
87
|
-
|
85
|
+
#### 1. Read file
|
88
86
|
|
89
87
|
* The first, create object dhcp with param: the path to file config
|
90
88
|
|
@@ -200,14 +198,53 @@ array_net[0]
|
|
200
198
|
|
201
199
|
```
|
202
200
|
|
203
|
-
|
201
|
+
* Set array net
|
202
|
+
|
203
|
+
```ruby
|
204
|
+
#
|
205
|
+
# Create object
|
206
|
+
net1 = Net.new
|
207
|
+
net2 = Net.new
|
208
|
+
|
209
|
+
# the object's attribute list
|
210
|
+
subnet = ""
|
211
|
+
netmask = ""
|
212
|
+
option = {}
|
213
|
+
differ = {}
|
214
|
+
pool = { "range" => "",
|
215
|
+
"allow" => "",
|
216
|
+
"denny" => "",
|
217
|
+
"hosts" => []
|
218
|
+
}
|
219
|
+
|
220
|
+
# Set attributes:
|
221
|
+
net1.attribute
|
222
|
+
net2.attribute
|
223
|
+
```
|
224
|
+
|
225
|
+
#### 2. Write file
|
204
226
|
|
205
227
|
Create object net, then set attribute for object. Then call method write_file in module WriteConf with param: "path/file_name", "array_net"
|
206
228
|
|
207
229
|
```ruby
|
208
|
-
|
209
|
-
|
210
|
-
|
230
|
+
array_net = dhcp.net
|
231
|
+
result = dhcp.write_file_conf(path/file_name.type, array_net)
|
232
|
+
# Success
|
233
|
+
=> true
|
234
|
+
# Fail
|
235
|
+
=> false
|
236
|
+
```
|
237
|
+
|
238
|
+
#### 3. Convert to XML and write file xml
|
239
|
+
|
240
|
+
```ruby
|
241
|
+
# Convert to XML
|
242
|
+
array_net = dhcp.net
|
243
|
+
xml = dhcp.to_xml(array_net)
|
244
|
+
|
245
|
+
# Write file
|
246
|
+
result = dhcp.write_file_xml(path/filename.type, xml)
|
247
|
+
|
211
248
|
# Success
|
212
249
|
=> true
|
213
250
|
# Fail
|
Binary file
|
data/dhcp_parser.gemspec
CHANGED
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["Nguyen hoang anh"]
|
10
10
|
spec.email = ["anhnh@vccloud.vn"]
|
11
11
|
|
12
|
-
spec.summary = %q{Parser file dhcp.conf
|
13
|
-
spec.description = %q{
|
12
|
+
spec.summary = %q{Parser file dhcp.conf}
|
13
|
+
spec.description = %q{Update convert file config to xml and write file xml.}
|
14
14
|
spec.homepage = "https://github.com/hoanganhhanoi/dhcp_parser"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
@@ -0,0 +1,68 @@
|
|
1
|
+
<subnets>
|
2
|
+
<subnet>
|
3
|
+
<net>192.168.1.0</net>
|
4
|
+
<mask>255.255.255.0</mask>
|
5
|
+
<option>
|
6
|
+
<routers>192.168.1.1</routers>
|
7
|
+
<subnet-mask>255.255.255.0</subnet-mask>
|
8
|
+
<broadcast-address>192.168.1.255</broadcast-address>
|
9
|
+
<domain-name-servers>194.168.4.100</domain-name-servers>
|
10
|
+
<ntp-servers>192.168.1.1</ntp-servers>
|
11
|
+
<netbios-name-servers>192.168.1.1</netbios-name-servers>
|
12
|
+
</option>
|
13
|
+
<default-lease-time>60400</default-lease-time>
|
14
|
+
<max-lease-time>60400</max-lease-time>
|
15
|
+
<authoritative>true</authoritative>
|
16
|
+
<pool>
|
17
|
+
<range>
|
18
|
+
<min>192.168.25.20</min>
|
19
|
+
<max>192.168.25.200</max>
|
20
|
+
</range>
|
21
|
+
<allow>unknown-clients</allow>
|
22
|
+
<denny></denny>
|
23
|
+
<hosts>
|
24
|
+
<host>
|
25
|
+
<name>bla1</name>
|
26
|
+
<ethernet>DD:GH:DF:E5:F7:D7</ethernet>
|
27
|
+
<address>192.168.1.2</address>
|
28
|
+
</host>
|
29
|
+
<host>
|
30
|
+
<name>bla2</name>
|
31
|
+
<ethernet>00:JJ:YU:38:AC:45</ethernet>
|
32
|
+
<address>192.168.1.20</address>
|
33
|
+
</host>
|
34
|
+
</hosts>
|
35
|
+
</pool>
|
36
|
+
</subnet>
|
37
|
+
<subnet>
|
38
|
+
<net>10.152.187.0</net>
|
39
|
+
<mask>255.255.255.255</mask>
|
40
|
+
<option>
|
41
|
+
<routers>10.152.187.1</routers>
|
42
|
+
<subnet-mask>255.255.255.255</subnet-mask>
|
43
|
+
<broadcast-address>10.150.168.255</broadcast-address>
|
44
|
+
<domain-name-servers>192.168.4.101</domain-name-servers>
|
45
|
+
<ntp-servers>10.152.187.10</ntp-servers>
|
46
|
+
<netbios-name-servers>10.152.187.12</netbios-name-servers>
|
47
|
+
<netbios-node-type>2</netbios-node-type>
|
48
|
+
</option>
|
49
|
+
<authoritative>false<authoritative>
|
50
|
+
<default-lease-time>86400</default-lease-time>
|
51
|
+
<max-lease-time>86400</max-lease-time>
|
52
|
+
<pool>
|
53
|
+
<range>
|
54
|
+
<min>192.168.25.20</min>
|
55
|
+
<max>192.168.25.30</max>
|
56
|
+
</range>
|
57
|
+
<allow></allow>
|
58
|
+
<denny>unknown-clients</denny>
|
59
|
+
<hosts>
|
60
|
+
<host>
|
61
|
+
<name>bla3</name>
|
62
|
+
<ethernet>00:KK:HD:66:55:9B</ethernet>
|
63
|
+
<address>10.152.187.2</address>
|
64
|
+
</host>
|
65
|
+
</hosts>
|
66
|
+
</pool>
|
67
|
+
</subnet>
|
68
|
+
</subnets>
|
@@ -0,0 +1,43 @@
|
|
1
|
+
subnet 192.168.1.0 netmask 255.255.255.0 {
|
2
|
+
option routers 192.168.1.1;
|
3
|
+
option subnet-mask 255.255.255.0;
|
4
|
+
option broadcast-address 192.168.1.255;
|
5
|
+
option domain-name-servers 194.168.4.100;
|
6
|
+
authoritative;
|
7
|
+
default-lease-time 2;
|
8
|
+
max-lease-time 86400;
|
9
|
+
pool {
|
10
|
+
range 192.168.25.20 192.168.25.200;
|
11
|
+
allow unknown-clients;
|
12
|
+
host bla1 {
|
13
|
+
hardware ethernet DD:GH:DF:E5:F7:D7;
|
14
|
+
fixed-address 192.168.1.2
|
15
|
+
}
|
16
|
+
host bla2 {
|
17
|
+
hardware ethernet 00:JJ:YU:38:AC:45;
|
18
|
+
fixed-address 192.168.1.20
|
19
|
+
}
|
20
|
+
}
|
21
|
+
}
|
22
|
+
|
23
|
+
subnet 192.168.1.0 netmask 255.255.255.0 {
|
24
|
+
option routers 192.168.1.1;
|
25
|
+
option subnet-mask 255.255.255.0;
|
26
|
+
option broadcast-address 192.168.1.255;
|
27
|
+
option domain-name-servers 194.168.4.100;
|
28
|
+
default-lease-time 2;
|
29
|
+
max-lease-time 86400;
|
30
|
+
pool {
|
31
|
+
range 192.168.25.20 192.168.25.200;
|
32
|
+
denny unknown-clients;
|
33
|
+
host bla1 {
|
34
|
+
hardware ethernet DD:GH:DF:E5:F7:D7;
|
35
|
+
fixed-address 192.168.1.2
|
36
|
+
}
|
37
|
+
host bla2 {
|
38
|
+
hardware ethernet 00:JJ:YU:38:AC:45;
|
39
|
+
fixed-address 192.168.1.20
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}
|
43
|
+
|
@@ -0,0 +1,67 @@
|
|
1
|
+
<subnets>
|
2
|
+
<subnet>
|
3
|
+
<net>192.168.1.0</net>
|
4
|
+
<mask>255.255.255.0</mask>
|
5
|
+
<option>
|
6
|
+
<routers>192.168.1.1</routers>
|
7
|
+
<subnet-mask>255.255.255.0</subnet-mask>
|
8
|
+
<broadcast-address>192.168.1.255</broadcast-address>
|
9
|
+
<domain-name-servers>194.168.4.100</domain-name-servers>
|
10
|
+
</option>
|
11
|
+
<authoritative>true</authoritative>
|
12
|
+
<default-lease-time>2</default-lease-time>
|
13
|
+
<max-lease-time>86400</max-lease-time>
|
14
|
+
<pool>
|
15
|
+
<range>
|
16
|
+
<min>192.168.25.20</min>
|
17
|
+
<max>192.168.25.200</max>
|
18
|
+
</range>
|
19
|
+
<allow>unknown-clients</allow>
|
20
|
+
<denny></denny>
|
21
|
+
<hosts>
|
22
|
+
<host>
|
23
|
+
<name>bla1</name>
|
24
|
+
<ethernet>DD:GH:DF:E5:F7:D7</ethernet>
|
25
|
+
<address>192.168.1.2</address>
|
26
|
+
</host>
|
27
|
+
<host>
|
28
|
+
<name>bla2</name>
|
29
|
+
<ethernet>00:JJ:YU:38:AC:45</ethernet>
|
30
|
+
<address>192.168.1.20</address>
|
31
|
+
</host>
|
32
|
+
</hosts>
|
33
|
+
</pool>
|
34
|
+
</subnet>
|
35
|
+
<subnet>
|
36
|
+
<net>192.168.1.0</net>
|
37
|
+
<mask>255.255.255.0</mask>
|
38
|
+
<option>
|
39
|
+
<routers>192.168.1.1</routers>
|
40
|
+
<subnet-mask>255.255.255.0</subnet-mask>
|
41
|
+
<broadcast-address>192.168.1.255</broadcast-address>
|
42
|
+
<domain-name-servers>194.168.4.100</domain-name-servers>
|
43
|
+
</option>
|
44
|
+
<default-lease-time>2</default-lease-time>
|
45
|
+
<max-lease-time>86400</max-lease-time>
|
46
|
+
<pool>
|
47
|
+
<range>
|
48
|
+
<min>192.168.25.20</min>
|
49
|
+
<max>192.168.25.200</max>
|
50
|
+
</range>
|
51
|
+
<allow></allow>
|
52
|
+
<denny>unknown-clients</denny>
|
53
|
+
<hosts>
|
54
|
+
<host>
|
55
|
+
<name>bla1</name>
|
56
|
+
<ethernet>DD:GH:DF:E5:F7:D7</ethernet>
|
57
|
+
<address>192.168.1.2</address>
|
58
|
+
</host>
|
59
|
+
<host>
|
60
|
+
<name>bla2</name>
|
61
|
+
<ethernet>00:JJ:YU:38:AC:45</ethernet>
|
62
|
+
<address>192.168.1.20</address>
|
63
|
+
</host>
|
64
|
+
</hosts>
|
65
|
+
</pool>
|
66
|
+
</subnet>
|
67
|
+
</subnets>
|
@@ -0,0 +1,67 @@
|
|
1
|
+
<subnets>
|
2
|
+
<subnet>
|
3
|
+
<net>192.168.1.0</net>
|
4
|
+
<mask>255.255.255.0</mask>
|
5
|
+
<option>
|
6
|
+
<routers>192.168.1.1</routers>
|
7
|
+
<subnet-mask>255.255.255.0</subnet-mask>
|
8
|
+
<broadcast-address>192.168.1.255</broadcast-address>
|
9
|
+
<domain-name-servers>194.168.4.100</domain-name-servers>
|
10
|
+
</option>
|
11
|
+
<authoritative>true</authoritative>
|
12
|
+
<default-lease-time>2</default-lease-time>
|
13
|
+
<max-lease-time>86400</max-lease-time>
|
14
|
+
<pool>
|
15
|
+
<range>
|
16
|
+
<min>192.168.25.20</min>
|
17
|
+
<max>192.168.25.200</max>
|
18
|
+
</range>
|
19
|
+
<allow>unknown-clients</allow>
|
20
|
+
<denny></denny>
|
21
|
+
<hosts>
|
22
|
+
<host>
|
23
|
+
<name>bla1</name>
|
24
|
+
<ethernet>DD:GH:DF:E5:F7:D7</ethernet>
|
25
|
+
<address>192.168.1.2</address>
|
26
|
+
</host>
|
27
|
+
<host>
|
28
|
+
<name>bla2</name>
|
29
|
+
<ethernet>00:JJ:YU:38:AC:45</ethernet>
|
30
|
+
<address>192.168.1.20</address>
|
31
|
+
</host>
|
32
|
+
</hosts>
|
33
|
+
</pool>
|
34
|
+
</subnet>
|
35
|
+
<subnet>
|
36
|
+
<net>192.168.1.0</net>
|
37
|
+
<mask>255.255.255.0</mask>
|
38
|
+
<option>
|
39
|
+
<routers>192.168.1.1</routers>
|
40
|
+
<subnet-mask>255.255.255.0</subnet-mask>
|
41
|
+
<broadcast-address>192.168.1.255</broadcast-address>
|
42
|
+
<domain-name-servers>194.168.4.100</domain-name-servers>
|
43
|
+
</option>
|
44
|
+
<default-lease-time>2</default-lease-time>
|
45
|
+
<max-lease-time>86400</max-lease-time>
|
46
|
+
<pool>
|
47
|
+
<range>
|
48
|
+
<min>192.168.25.20</min>
|
49
|
+
<max>192.168.25.200</max>
|
50
|
+
</range>
|
51
|
+
<allow></allow>
|
52
|
+
<denny>unknown-clients</denny>
|
53
|
+
<hosts>
|
54
|
+
<host>
|
55
|
+
<name>bla1</name>
|
56
|
+
<ethernet>DD:GH:DF:E5:F7:D7</ethernet>
|
57
|
+
<address>192.168.1.2</address>
|
58
|
+
</host>
|
59
|
+
<host>
|
60
|
+
<name>bla2</name>
|
61
|
+
<ethernet>00:JJ:YU:38:AC:45</ethernet>
|
62
|
+
<address>192.168.1.20</address>
|
63
|
+
</host>
|
64
|
+
</hosts>
|
65
|
+
</pool>
|
66
|
+
</subnet>
|
67
|
+
</subnets>
|
data/lib/dhcp_parser.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative "dhcp_parser/writeconf.rb"
|
2
|
+
require_relative "dhcp_parser/xml.rb"
|
2
3
|
require_relative "dhcp_parser/net.rb"
|
3
4
|
require_relative "dhcp_parser/host.rb"
|
4
5
|
require_relative "dhcp_parser/version.rb"
|
@@ -394,5 +395,15 @@ module DHCPParser
|
|
394
395
|
result = WriteConf.write_file_conf(file_name, arr_net)
|
395
396
|
end
|
396
397
|
end
|
398
|
+
|
399
|
+
# Convert xml
|
400
|
+
def to_xml(arr_net)
|
401
|
+
xml = XMLConvert.to_xml(arr_net)
|
402
|
+
end
|
403
|
+
|
404
|
+
# Write file xml
|
405
|
+
def write_file_xml(file_name, xml_string)
|
406
|
+
result = XMLConvert.write_file_xml(file_name, xml_string)
|
407
|
+
end
|
397
408
|
end
|
398
409
|
end
|
data/lib/dhcp_parser/net.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative "writeconf.rb"
|
2
|
+
require_relative "xml.rb"
|
2
3
|
require_relative "host.rb"
|
3
4
|
|
4
5
|
class Net
|
@@ -45,6 +46,7 @@ class Net
|
|
45
46
|
net2.option["subnet-mask"] = "255.255.255.0"
|
46
47
|
net2.option["broadcast-address"] = "192.168.1.255"
|
47
48
|
net2.option["domain-name-servers"] = "194.168.4.100"
|
49
|
+
net1.differ["authoritative"] = "true"
|
48
50
|
net2.differ["default-lease-time"] = "2"
|
49
51
|
net2.differ['max-lease-time'] = "86400"
|
50
52
|
# Set pool
|
data/lib/dhcp_parser/version.rb
CHANGED
@@ -0,0 +1,75 @@
|
|
1
|
+
|
2
|
+
module XMLConvert
|
3
|
+
|
4
|
+
def self.to_xml(arr_net)
|
5
|
+
if arr_net.empty?
|
6
|
+
return false
|
7
|
+
else
|
8
|
+
xml = "<subnets>\n"
|
9
|
+
|
10
|
+
arr_net.each do |net|
|
11
|
+
xml += "\s\s<subnet>\n"
|
12
|
+
# Set subnet
|
13
|
+
xml += "\s\s\s\s<net>#{net.subnet}</net>\n"
|
14
|
+
# Set netmask
|
15
|
+
xml += "\s\s\s\s<mask>#{net.netmask}</mask>\n"
|
16
|
+
|
17
|
+
# Set option
|
18
|
+
xml += "\s\s\s\s<option>\n"
|
19
|
+
net.option.each do |key, value|
|
20
|
+
xml += "\s\s\s\s\s\s<#{key}>#{value}</#{key}>\n"
|
21
|
+
end
|
22
|
+
xml += "\s\s\s\s</option>\n"
|
23
|
+
|
24
|
+
# Set differ
|
25
|
+
if net.differ["authoritative"].nil?
|
26
|
+
xml += "\s\s\s\s<authoritative>false<authoritative>\n"
|
27
|
+
end
|
28
|
+
net.differ.each do |key, value|
|
29
|
+
xml += "\s\s\s\s<#{key}>#{value}</#{key}>\n"
|
30
|
+
end
|
31
|
+
|
32
|
+
# Set pool
|
33
|
+
xml += "\s\s\s\s<pool>\n"
|
34
|
+
net.pool.each do |key, value|
|
35
|
+
if key.eql?("range")
|
36
|
+
xml += "\s\s\s\s\s\s<#{key}>\n"
|
37
|
+
xml += "\s\s\s\s\s\s\s\s<min>#{value["min"]}</min>\n"
|
38
|
+
xml += "\s\s\s\s\s\s\s\s<max>#{value["max"]}</max>\n"
|
39
|
+
xml += "\s\s\s\s\s\s</#{key}>\n"
|
40
|
+
elsif key.eql?("hosts")
|
41
|
+
xml += "\s\s\s\s\s\s<#{key}>\n"
|
42
|
+
value.each do |h|
|
43
|
+
xml += "\s\s\s\s\s\s\s\s<host>\n"
|
44
|
+
xml += "\s\s\s\s\s\s\s\s\s\s<name>#{h.host}</name>\n"
|
45
|
+
xml += "\s\s\s\s\s\s\s\s\s\s<ethernet>#{h.hardware_ethernet}</ethernet>\n"
|
46
|
+
xml += "\s\s\s\s\s\s\s\s\s\s<address>#{h.fixed_address}</address>\n"
|
47
|
+
xml += "\s\s\s\s\s\s\s\s</host>\n"
|
48
|
+
end
|
49
|
+
xml += "\s\s\s\s\s\s</#{key}>\n"
|
50
|
+
else
|
51
|
+
xml += "\s\s\s\s\s\s<#{key}>#{value}</#{key}>\n"
|
52
|
+
end
|
53
|
+
end
|
54
|
+
xml += "\s\s\s\s</pool>\n"
|
55
|
+
|
56
|
+
# end subnet
|
57
|
+
xml += "\s\s</subnet>\n"
|
58
|
+
end
|
59
|
+
|
60
|
+
# end subnets
|
61
|
+
xml += "</subnets>"
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
def self.write_file_xml(file_name, xml_string)
|
66
|
+
if xml_string.empty? && file_name.empty?
|
67
|
+
return false
|
68
|
+
else
|
69
|
+
File.open("#{file_name}", "w+") do |file|
|
70
|
+
file.write(xml_string)
|
71
|
+
end
|
72
|
+
return true
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dhcp_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nguyen hoang anh
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-11-
|
11
|
+
date: 2015-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -38,7 +38,7 @@ dependencies:
|
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '10.0'
|
41
|
-
description:
|
41
|
+
description: Update convert file config to xml and write file xml.
|
42
42
|
email:
|
43
43
|
- anhnh@vccloud.vn
|
44
44
|
executables: []
|
@@ -54,18 +54,24 @@ files:
|
|
54
54
|
- bin/console
|
55
55
|
- bin/setup
|
56
56
|
- dhcp_parser-0.1.0.gem
|
57
|
+
- dhcp_parser-0.2.0.gem
|
57
58
|
- dhcp_parser.gemspec
|
58
59
|
- examples/default_dhcp.conf
|
59
60
|
- examples/test1_dhcp.conf
|
61
|
+
- examples/test2_xml.xml
|
60
62
|
- examples/test3_dhcp.conf
|
61
63
|
- examples/test5_dhcp.conf
|
62
64
|
- examples/test6_dhcp.conf
|
65
|
+
- examples/test7_dhcp.conf
|
66
|
+
- examples/test_data.xml
|
63
67
|
- examples/test_dhcp.conf
|
68
|
+
- examples/xmlconvert.xml
|
64
69
|
- lib/dhcp_parser.rb
|
65
70
|
- lib/dhcp_parser/host.rb
|
66
71
|
- lib/dhcp_parser/net.rb
|
67
72
|
- lib/dhcp_parser/version.rb
|
68
73
|
- lib/dhcp_parser/writeconf.rb
|
74
|
+
- lib/dhcp_parser/xml.rb
|
69
75
|
homepage: https://github.com/hoanganhhanoi/dhcp_parser
|
70
76
|
licenses:
|
71
77
|
- MIT
|
@@ -86,9 +92,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
86
92
|
version: '0'
|
87
93
|
requirements: []
|
88
94
|
rubyforge_project:
|
89
|
-
rubygems_version: 2.
|
95
|
+
rubygems_version: 2.5.0
|
90
96
|
signing_key:
|
91
97
|
specification_version: 4
|
92
|
-
summary: Parser file dhcp.conf
|
98
|
+
summary: Parser file dhcp.conf
|
93
99
|
test_files: []
|
94
100
|
has_rdoc:
|