lib-bootp 0.1.2 → 0.2.1
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/.github/workflows/gem-push.yml +39 -0
- data/.github/workflows/run-test.yml +20 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/lib/lib/bootp/packet/hardware_address_length.rb +0 -1
- data/lib/lib/bootp/packet/hardware_address_type.rb +11 -0
- data/lib/lib/bootp/packet/op_code.rb +12 -0
- data/lib/lib/bootp/version.rb +1 -1
- data/lib/lib/bootp.rb +25 -1
- data/lib-bootp.gemspec +4 -4
- metadata +23 -21
- data/.travis.yml +0 -14
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f9a19cfd41f846c12bac6c05b8ca0fcf39c16f0939844a5f860ab5dd7cb55beb
|
|
4
|
+
data.tar.gz: a001116b28853de679bbbc0aa22218f60c8b7b703b07c1b5c6ba37da9e8e822e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cad5b30ff7bb65f4ce2421cb94f8074bd1ec0e2ebab504a91af17bc71199c7d44d1f9b7cbb0ac8fcc0f172a2b85c57ec222ef59e035c5f0d8786f52a720dcf6d
|
|
7
|
+
data.tar.gz: 0c9ee138004cefda84236a63c9943bf6102cc6d9740fe9a8167853209363a0d8fa96d7d263a1d118c6c8bdce11e2983e9caff8fe03b3bcfb380b7aa6775015a6
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
name: Ruby Gem
|
|
2
|
+
on:
|
|
3
|
+
push:
|
|
4
|
+
branches:
|
|
5
|
+
- master
|
|
6
|
+
|
|
7
|
+
jobs:
|
|
8
|
+
create-tag:
|
|
9
|
+
runs-on: ubuntu-latest
|
|
10
|
+
steps:
|
|
11
|
+
- uses: actions/checkout@v3
|
|
12
|
+
|
|
13
|
+
- name: Create Git tag
|
|
14
|
+
run: |
|
|
15
|
+
VERSION=$(ruby -e "require 'rubygems'; spec = Gem::Specification.load(Dir.glob('*.gemspec').first); puts spec.version")
|
|
16
|
+
git tag v$VERSION
|
|
17
|
+
git push origin v$VERSION
|
|
18
|
+
|
|
19
|
+
build-and-publish:
|
|
20
|
+
runs-on: ubuntu-latest
|
|
21
|
+
permissions:
|
|
22
|
+
contents: read
|
|
23
|
+
packages: write
|
|
24
|
+
steps:
|
|
25
|
+
- uses: actions/checkout@v3
|
|
26
|
+
|
|
27
|
+
- name: Set up Ruby
|
|
28
|
+
uses: ruby/setup-ruby@v1
|
|
29
|
+
|
|
30
|
+
- name: Publish to RubyGems
|
|
31
|
+
run: |
|
|
32
|
+
mkdir -p $HOME/.gem
|
|
33
|
+
touch $HOME/.gem/credentials
|
|
34
|
+
chmod 0600 $HOME/.gem/credentials
|
|
35
|
+
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
|
36
|
+
gem build *.gemspec
|
|
37
|
+
gem push *.gem
|
|
38
|
+
env:
|
|
39
|
+
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
name: Run Tests
|
|
2
|
+
|
|
3
|
+
on: [push, pull_request]
|
|
4
|
+
|
|
5
|
+
jobs:
|
|
6
|
+
test:
|
|
7
|
+
runs-on: ubuntu-latest
|
|
8
|
+
|
|
9
|
+
steps:
|
|
10
|
+
- name: Checkout code
|
|
11
|
+
uses: actions/checkout@v3
|
|
12
|
+
|
|
13
|
+
- name: Set up Ruby
|
|
14
|
+
uses: ruby/setup-ruby@v1
|
|
15
|
+
|
|
16
|
+
- name: Install dependencies
|
|
17
|
+
run: bundle install
|
|
18
|
+
|
|
19
|
+
- name: Run tests
|
|
20
|
+
run: bundle exec rspec
|
data/.ruby-gemset
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lib-bootp
|
data/.ruby-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
truffleruby-22.3.1
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
# Copyright 14.03.2016 by Piotr Wojcieszonek
|
|
4
4
|
|
|
5
5
|
require 'forwardable'
|
|
6
|
+
require 'json'
|
|
6
7
|
#require 'comparable'
|
|
7
8
|
|
|
8
9
|
module Lib
|
|
@@ -28,6 +29,17 @@ module Lib
|
|
|
28
29
|
end
|
|
29
30
|
end
|
|
30
31
|
|
|
32
|
+
def to_json(*params)
|
|
33
|
+
self.to_h.to_json
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def to_h
|
|
37
|
+
{
|
|
38
|
+
code: @op.to_s,
|
|
39
|
+
name: self.to_s
|
|
40
|
+
}
|
|
41
|
+
end
|
|
42
|
+
|
|
31
43
|
def <=>(other)
|
|
32
44
|
return self.to_i <=> other if other.is_a?(Integer)
|
|
33
45
|
self.to_s <=> other.to_s.upcase
|
data/lib/lib/bootp/version.rb
CHANGED
data/lib/lib/bootp.rb
CHANGED
|
@@ -14,7 +14,7 @@ require 'lib/bootp/packet/ip_address'
|
|
|
14
14
|
require 'lib/bootp/packet/server_host_name'
|
|
15
15
|
require 'lib/bootp/packet/boot_file'
|
|
16
16
|
require 'lib/bootp/packet/client_hardware_address'
|
|
17
|
-
|
|
17
|
+
require 'json'
|
|
18
18
|
|
|
19
19
|
module Lib
|
|
20
20
|
module BOOTP
|
|
@@ -168,6 +168,30 @@ module Lib
|
|
|
168
168
|
self.new(op:op, htype:htype, hlen:hlen, hops:hops, xid:xid, secs:secs, flags:flags, ciaddr:ciaddr, yiaddr:yiaddr, siaddr:siaddr, giaddr:giaddr, chaddr:chaddr, sname:sname, file:file)
|
|
169
169
|
end
|
|
170
170
|
|
|
171
|
+
def to_json
|
|
172
|
+
to_h.to_json
|
|
173
|
+
end
|
|
174
|
+
|
|
175
|
+
def self.from_json(json)
|
|
176
|
+
json = JSON.parse json
|
|
177
|
+
Lib::BOOTP::Packet.new(
|
|
178
|
+
op: json['op']['code'].to_i,
|
|
179
|
+
htype: json['htype']['code'].to_i,
|
|
180
|
+
hlen: json['hlen'].to_i,
|
|
181
|
+
hops: json['hops'].to_i,
|
|
182
|
+
xid: json['xid'].to_i,
|
|
183
|
+
secs: json['secs'].to_i,
|
|
184
|
+
flags: json['flags'].to_i,
|
|
185
|
+
ciaddr: json['ciaddr'],
|
|
186
|
+
yiaddr: json['yiaddr'],
|
|
187
|
+
siaddr: json['siaddr'],
|
|
188
|
+
giaddr: json['giaddr'],
|
|
189
|
+
chaddr: json['chaddr'],
|
|
190
|
+
sname: json['sname'],
|
|
191
|
+
file: json['file']
|
|
192
|
+
)
|
|
193
|
+
end
|
|
194
|
+
|
|
171
195
|
end
|
|
172
196
|
end
|
|
173
197
|
end
|
data/lib-bootp.gemspec
CHANGED
|
@@ -20,11 +20,11 @@ Gem::Specification.new do |spec|
|
|
|
20
20
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
21
21
|
spec.require_paths = ["lib"]
|
|
22
22
|
|
|
23
|
-
spec.add_development_dependency "bundler"
|
|
24
|
-
spec.add_development_dependency "rake"
|
|
25
|
-
spec.add_development_dependency "rspec"
|
|
23
|
+
spec.add_development_dependency "bundler"
|
|
24
|
+
spec.add_development_dependency "rake"
|
|
25
|
+
spec.add_development_dependency "rspec"
|
|
26
26
|
|
|
27
27
|
spec.add_dependency 'net-address', '~> 0.1'
|
|
28
28
|
|
|
29
|
-
spec.required_ruby_version = '>=
|
|
29
|
+
spec.required_ruby_version = '>= 3.0.0'
|
|
30
30
|
end
|
metadata
CHANGED
|
@@ -1,57 +1,57 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: lib-bootp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1
|
|
4
|
+
version: 0.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Piotr Wojcieszonek
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-08-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- - "
|
|
17
|
+
- - ">="
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '
|
|
19
|
+
version: '0'
|
|
20
20
|
type: :development
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
|
-
- - "
|
|
24
|
+
- - ">="
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: '
|
|
26
|
+
version: '0'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: rake
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
30
30
|
requirements:
|
|
31
|
-
- - "
|
|
31
|
+
- - ">="
|
|
32
32
|
- !ruby/object:Gem::Version
|
|
33
|
-
version: '
|
|
33
|
+
version: '0'
|
|
34
34
|
type: :development
|
|
35
35
|
prerelease: false
|
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
37
|
requirements:
|
|
38
|
-
- - "
|
|
38
|
+
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
|
-
version: '
|
|
40
|
+
version: '0'
|
|
41
41
|
- !ruby/object:Gem::Dependency
|
|
42
42
|
name: rspec
|
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
|
44
44
|
requirements:
|
|
45
|
-
- - "
|
|
45
|
+
- - ">="
|
|
46
46
|
- !ruby/object:Gem::Version
|
|
47
|
-
version: '
|
|
47
|
+
version: '0'
|
|
48
48
|
type: :development
|
|
49
49
|
prerelease: false
|
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
51
|
requirements:
|
|
52
|
-
- - "
|
|
52
|
+
- - ">="
|
|
53
53
|
- !ruby/object:Gem::Version
|
|
54
|
-
version: '
|
|
54
|
+
version: '0'
|
|
55
55
|
- !ruby/object:Gem::Dependency
|
|
56
56
|
name: net-address
|
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -73,9 +73,12 @@ executables: []
|
|
|
73
73
|
extensions: []
|
|
74
74
|
extra_rdoc_files: []
|
|
75
75
|
files:
|
|
76
|
+
- ".github/workflows/gem-push.yml"
|
|
77
|
+
- ".github/workflows/run-test.yml"
|
|
76
78
|
- ".gitignore"
|
|
77
79
|
- ".rspec"
|
|
78
|
-
- ".
|
|
80
|
+
- ".ruby-gemset"
|
|
81
|
+
- ".ruby-version"
|
|
79
82
|
- CODE_OF_CONDUCT.md
|
|
80
83
|
- Gemfile
|
|
81
84
|
- LICENSE.txt
|
|
@@ -101,7 +104,7 @@ homepage: https://github.com/pwojcieszonek/lib-bootp
|
|
|
101
104
|
licenses:
|
|
102
105
|
- MIT
|
|
103
106
|
metadata: {}
|
|
104
|
-
post_install_message:
|
|
107
|
+
post_install_message:
|
|
105
108
|
rdoc_options: []
|
|
106
109
|
require_paths:
|
|
107
110
|
- lib
|
|
@@ -109,16 +112,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
109
112
|
requirements:
|
|
110
113
|
- - ">="
|
|
111
114
|
- !ruby/object:Gem::Version
|
|
112
|
-
version:
|
|
115
|
+
version: 3.0.0
|
|
113
116
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
114
117
|
requirements:
|
|
115
118
|
- - ">="
|
|
116
119
|
- !ruby/object:Gem::Version
|
|
117
120
|
version: '0'
|
|
118
121
|
requirements: []
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
signing_key:
|
|
122
|
+
rubygems_version: 3.2.32
|
|
123
|
+
signing_key:
|
|
122
124
|
specification_version: 4
|
|
123
125
|
summary: BOOTP protocol library
|
|
124
126
|
test_files: []
|
data/.travis.yml
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
sudo: false
|
|
2
|
-
language: ruby
|
|
3
|
-
rvm:
|
|
4
|
-
- 2.3.3
|
|
5
|
-
before_install: gem install bundler -v 1.16.0
|
|
6
|
-
deploy:
|
|
7
|
-
provider: rubygems
|
|
8
|
-
api_key:
|
|
9
|
-
secure: PmmHPxfXZEJ4Tr0clcWhO6+r70CNeOVg44V3bBuIp9OGC6scyaqnwrzn1SMloI8r7Hi6g2OB58Q4XgiC5omU7EjArdt1gP0lI1CcXZcU5dyHn+egYsmr0gyW//yWU36xD10/mtmJo920Waei0Le6R0x22TMAO0i3V+2S2vnT99fuMxSaL3pYoMehLssdqhrFVa6Yy6/HW/9+2T9N7EaF4yFqxttVLnoDHxp8xOwWMD32x4mn3+xjuTyVH6X2XJf6NGXU+zZ+6STuyXEkOVhP+x69pbQzsosSlx0R8viX5UcNZxcucbB4t4Zu6Da9Irfba7272mghqxhwZuEZ6x5NsjG7UEV6bnGPpBC5UcqFrSctqAlwNT71t6QiYYS7LTwGHzVOdC6hV/l5FmAKWlh/ijtaip5XTtC0muA+gO6nKupw2vSXYuVqQmbu/Bm5X9CyJusz3efCBEdf9aUO4gZJlNuYxYN+yAetAK0zh1IvSqZo1z+7aVECRwDxxzIhJXMhtjNPHTNPXBf+qO01BHgSNVWq/eU9PZB+AkH3RudnXcKRVi9fNAXyy3fiOzjc5xCWFYs4Q5eeR3Sp/CtqLjeNgCSL1PROrS3Oy9kJ+iK+8oSouHtBuAvU1YEV5iVEA6LzoOYhTdFlBYRWyJfDls2+xo2a6Hq06B+P4+6ZJXHqApk=
|
|
10
|
-
gemspec: lib-bootp.gemspec
|
|
11
|
-
gem: lib-bootp
|
|
12
|
-
on:
|
|
13
|
-
tags: true
|
|
14
|
-
repo: pwojcieszonek/lib-bootp
|