ronin-support 1.0.3 → 1.0.5
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/ruby.yml +3 -2
- data/ChangeLog.md +15 -0
- data/lib/ronin/support/binary/core_ext/array.rb +7 -2
- data/lib/ronin/support/binary/core_ext/string.rb +7 -2
- data/lib/ronin/support/binary/ctypes/object_type.rb +7 -1
- data/lib/ronin/support/binary/ctypes/os/linux.rb +2 -2
- data/lib/ronin/support/binary/stream/methods.rb +5 -1
- data/lib/ronin/support/binary/template.rb +37 -2
- data/lib/ronin/support/encoding/html/core_ext/integer.rb +1 -1
- data/lib/ronin/support/network/http/mixin.rb +32 -38
- data/lib/ronin/support/network/ssl/mixin.rb +3 -3
- data/lib/ronin/support/network/ssl.rb +3 -2
- data/lib/ronin/support/network/tls/mixin.rb +3 -3
- data/lib/ronin/support/text/entropy.rb +1 -1
- data/lib/ronin/support/version.rb +1 -1
- data/lib/ronin/support.rb +14 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a34adac08397fc6bc4164f60be481e5f945eda3d18fcf5f93c0145fcc6a624ea
|
4
|
+
data.tar.gz: a6199b50de111e4140ee8159a0537b557e1e0e481f51ca04e362222a13572338
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3b998a3b8fdfb358d1416d77c8f1107ef708f97ab635b6e1d5cd3d24804f958f4ea23e670cdf0c6dd718e358fccfda3fc2609432563c27e1f68d4f0c785bc426
|
7
|
+
data.tar.gz: b1d94229203e0485999d89a6521bd5ec43aa1356d347ae90f09e6ef85255b704a5e2de2bfcedd02a6b91596942a3673b796b8f70d760f883110f033f86545557
|
data/.github/workflows/ruby.yml
CHANGED
@@ -12,11 +12,12 @@ jobs:
|
|
12
12
|
- '3.0'
|
13
13
|
- '3.1'
|
14
14
|
- '3.2'
|
15
|
+
- '3.3'
|
15
16
|
# - jruby
|
16
17
|
# - truffleruby
|
17
18
|
name: Ruby ${{ matrix.ruby }}
|
18
19
|
steps:
|
19
|
-
- uses: actions/checkout@
|
20
|
+
- uses: actions/checkout@v4
|
20
21
|
- name: Set up Ruby
|
21
22
|
uses: ruby/setup-ruby@v1
|
22
23
|
with:
|
@@ -31,7 +32,7 @@ jobs:
|
|
31
32
|
rubocop:
|
32
33
|
runs-on: ubuntu-latest
|
33
34
|
steps:
|
34
|
-
- uses: actions/checkout@
|
35
|
+
- uses: actions/checkout@v4
|
35
36
|
- name: Set up Ruby
|
36
37
|
uses: ruby/setup-ruby@v1
|
37
38
|
with:
|
data/ChangeLog.md
CHANGED
@@ -1,3 +1,18 @@
|
|
1
|
+
### 1.0.5 / 2023-12-27
|
2
|
+
|
3
|
+
* Fixed a bug in {Ronin::Support::Binary::Stream::Methods#read_string} on Ruby
|
4
|
+
3.3.0.
|
5
|
+
|
6
|
+
### 1.0.4 / 2023-12-15
|
7
|
+
|
8
|
+
* Fixed a bug in {Array#pack} where complex types (ex: `[[:uint32, 4], 10]`)
|
9
|
+
were not being packed correctly.
|
10
|
+
* Fixed a bug in {String#unpack} where complex types (ex: `[[:uint32, 4], 10]`)
|
11
|
+
were not being unpacked correctly.
|
12
|
+
* Fixed a bug in {Ronin::Support::Binary::CTypes::ObjectType#initialize} when
|
13
|
+
the object's type has an infinite size, such as an unbounded Array type.
|
14
|
+
* Allow using non-RSA keys in all SSL/TLS methods.
|
15
|
+
|
1
16
|
### 1.0.3 / 2023-09-19
|
2
17
|
|
3
18
|
* {Ronin::Support::Crypto::Cert::Name#entries} now returns UTF-8 encoded
|
@@ -41,6 +41,11 @@ class Array
|
|
41
41
|
# :mips, :mips_le, :mips64, :mips64_le, nil] :arch
|
42
42
|
# The desired architecture to pack the data for.
|
43
43
|
#
|
44
|
+
# @option kwargs [:linux, :macos, :windows,
|
45
|
+
# :android, :apple_ios, :bsd,
|
46
|
+
# :freebsd, :openbsd, :netbsd] :os
|
47
|
+
# The Operating System (OS) to use.
|
48
|
+
#
|
44
49
|
# @return [String]
|
45
50
|
# The packed Array.
|
46
51
|
#
|
@@ -67,8 +72,8 @@ class Array
|
|
67
72
|
if (arguments.length == 1 && arguments.first.kind_of?(String))
|
68
73
|
pack_original(arguments.first)
|
69
74
|
else
|
70
|
-
|
71
|
-
|
75
|
+
template = Ronin::Support::Binary::Template.new(arguments,**kwargs)
|
76
|
+
template.pack(*self)
|
72
77
|
end
|
73
78
|
end
|
74
79
|
|
@@ -43,6 +43,11 @@ class String
|
|
43
43
|
# :mips, :mips_le, :mips64, :mips64_le, nil] :arch
|
44
44
|
# The desired architecture that the data was packed for.
|
45
45
|
#
|
46
|
+
# @option kwargs [:linux, :macos, :windows,
|
47
|
+
# :android, :apple_ios, :bsd,
|
48
|
+
# :freebsd, :openbsd, :netbsd] :os
|
49
|
+
# The Operating System (OS) to use.
|
50
|
+
#
|
46
51
|
# @return [Array]
|
47
52
|
# The values unpacked from the String.
|
48
53
|
#
|
@@ -69,8 +74,8 @@ class String
|
|
69
74
|
if (arguments.length == 1 && arguments.first.kind_of?(String))
|
70
75
|
unpack_original(arguments.first)
|
71
76
|
else
|
72
|
-
|
73
|
-
|
77
|
+
template = Ronin::Support::Binary::Template.new(arguments,**kwargs)
|
78
|
+
template.unpack(self)
|
74
79
|
end
|
75
80
|
end
|
76
81
|
|
@@ -44,7 +44,7 @@ module Ronin
|
|
44
44
|
typedef :long, :__blkcnt_t
|
45
45
|
typedef :long, :__blksize_t
|
46
46
|
typedef :long, :blksize_t
|
47
|
-
typedef
|
47
|
+
typedef :pointer, :__caddr_t
|
48
48
|
typedef :int, :__clockid_t
|
49
49
|
typedef :int, :clockid_t
|
50
50
|
typedef :long, :__clock_t
|
@@ -170,7 +170,7 @@ module Ronin
|
|
170
170
|
typedef :uint, :nlink_t
|
171
171
|
typedef :long_long, :__off64_t
|
172
172
|
typedef :long_long, :off_t
|
173
|
-
typedef
|
173
|
+
typedef :pointer, :__qaddr_t
|
174
174
|
typedef :long_long, :__quad_t
|
175
175
|
typedef :long_long, :quad_t
|
176
176
|
typedef :ulong_long, :__rlim64_t
|
@@ -111,7 +111,11 @@ module Ronin
|
|
111
111
|
# @api public
|
112
112
|
#
|
113
113
|
def read_string(length=nil)
|
114
|
-
new_string =
|
114
|
+
new_string = if (encoding = external_encoding)
|
115
|
+
String.new('', encoding: encoding)
|
116
|
+
else
|
117
|
+
String.new('')
|
118
|
+
end
|
115
119
|
|
116
120
|
if length
|
117
121
|
length.times do
|
@@ -132,11 +132,16 @@ module Ronin
|
|
132
132
|
# :arm64, :arm64_le, :arm64_be] :arch
|
133
133
|
# The desired architecture for the values within the template.
|
134
134
|
#
|
135
|
+
# @option kwargs [:linux, :macos, :windows,
|
136
|
+
# :android, :apple_ios, :bsd,
|
137
|
+
# :freebsd, :openbsd, :netbsd] :os
|
138
|
+
# The Operating System (OS) to use.
|
139
|
+
#
|
135
140
|
# @raise [ArgumentError]
|
136
141
|
# A given type is not known.
|
137
142
|
#
|
138
143
|
# @example
|
139
|
-
# template = Template.new([:uint32, [:char,
|
144
|
+
# template = Template.new([:uint32, [:char, 10]])
|
140
145
|
# template.pack(0x123456, ['A', 'B', 'C'])
|
141
146
|
# # => "CBA\x00XYZ\x00\x00\x00\x00\x00\x00\x00"
|
142
147
|
# template.unpack("CBA\x00XYZ\x00\x00\x00\x00\x00\x00\x00")
|
@@ -164,9 +169,39 @@ module Ronin
|
|
164
169
|
end
|
165
170
|
end
|
166
171
|
|
172
|
+
#
|
173
|
+
# Alias for `Template.new`.
|
174
|
+
#
|
175
|
+
# @param [::Array<Symbol, (Symbol, Integer)>] fields
|
176
|
+
# The C-types which the packer will use.
|
177
|
+
#
|
178
|
+
# @param [Hash{Symbol => Object}] kwargs
|
179
|
+
# Additional keyword arguments.
|
180
|
+
#
|
181
|
+
# @option kwargs [:little, :big, :net, nil] :endian
|
182
|
+
# The desired endianness of the values within the template.
|
183
|
+
#
|
184
|
+
# @option kwargs [:x86, :x86_64,
|
185
|
+
# :ppc, :ppc64,
|
186
|
+
# :mips, :mips_le, :mips_be,
|
187
|
+
# :mips64, :mips64_le, :mips64_be,
|
188
|
+
# :arm, :arm_le, :arm_be,
|
189
|
+
# :arm64, :arm64_le, :arm64_be] :arch
|
190
|
+
# The desired architecture for the values within the template.
|
191
|
+
#
|
192
|
+
# @option kwargs [:linux, :macos, :windows,
|
193
|
+
# :android, :apple_ios, :bsd,
|
194
|
+
# :freebsd, :openbsd, :netbsd] :os
|
195
|
+
# The Operating System (OS) to use.
|
196
|
+
#
|
197
|
+
# @return [Template]
|
198
|
+
# The new template object.
|
199
|
+
#
|
200
|
+
# @raise [ArgumentError]
|
201
|
+
# A given type is not known.
|
167
202
|
#
|
168
203
|
# @example
|
169
|
-
# template = Template
|
204
|
+
# template = Template[:uint32, [:char, 10]]
|
170
205
|
# template.pack(0x123456, ['A', 'B', 'C'])
|
171
206
|
# # => "CBA\x00XYZ\x00\x00\x00\x00\x00\x00\x00"
|
172
207
|
# template.unpack("CBA\x00XYZ\x00\x00\x00\x00\x00\x00\x00")
|
@@ -182,7 +182,7 @@ module Ronin
|
|
182
182
|
# The HTTP method to use for the request.
|
183
183
|
#
|
184
184
|
# @param [URI::HTTP, Addressable::URI, String] url
|
185
|
-
#
|
185
|
+
# The URL to create the HTTP request for.
|
186
186
|
#
|
187
187
|
# @!macro request_kwargs
|
188
188
|
# @!macro connect_kwargs
|
@@ -215,7 +215,7 @@ module Ronin
|
|
215
215
|
# The HTTP method to use for the request.
|
216
216
|
#
|
217
217
|
# @param [URI::HTTP, Addressable::URI, String] url
|
218
|
-
#
|
218
|
+
# The URL to create the HTTP request for.
|
219
219
|
#
|
220
220
|
# @!macro request_kwargs
|
221
221
|
# @!macro connect_kwargs
|
@@ -240,7 +240,7 @@ module Ronin
|
|
240
240
|
# The HTTP method to use for the request.
|
241
241
|
#
|
242
242
|
# @param [URI::HTTP, Addressable::URI, String] url
|
243
|
-
#
|
243
|
+
# The URL to create the HTTP request for.
|
244
244
|
#
|
245
245
|
# @!macro request_kwargs
|
246
246
|
# @!macro connect_kwargs
|
@@ -263,7 +263,7 @@ module Ronin
|
|
263
263
|
# The HTTP method to use for the request.
|
264
264
|
#
|
265
265
|
# @param [URI::HTTP, Addressable::URI, String] url
|
266
|
-
#
|
266
|
+
# The URL to create the HTTP request for.
|
267
267
|
#
|
268
268
|
# @!macro request_kwargs
|
269
269
|
# @!macro connect_kwargs
|
@@ -285,7 +285,7 @@ module Ronin
|
|
285
285
|
# Sends an HTTP request and returns the `Server` header.
|
286
286
|
#
|
287
287
|
# @param [URI::HTTP, Addressable::URI, String] url
|
288
|
-
#
|
288
|
+
# The URL to create the HTTP request for.
|
289
289
|
#
|
290
290
|
# @!macro connect_kwargs
|
291
291
|
# @!macro request_kwargs
|
@@ -307,7 +307,7 @@ module Ronin
|
|
307
307
|
# Sends an HTTP request and returns the `X-Powered-By` header.
|
308
308
|
#
|
309
309
|
# @param [URI::HTTP, Addressable::URI, String] url
|
310
|
-
#
|
310
|
+
# The URL to create the HTTP request for.
|
311
311
|
#
|
312
312
|
# @!macro request_kwargs
|
313
313
|
# @!macro connect_kwargs
|
@@ -332,7 +332,7 @@ module Ronin
|
|
332
332
|
# The HTTP method to use for the request.
|
333
333
|
#
|
334
334
|
# @param [URI::HTTP, Addressable::URI, String] url
|
335
|
-
#
|
335
|
+
# The URL to create the HTTP request for.
|
336
336
|
#
|
337
337
|
# @!macro request_kwargs
|
338
338
|
# @!macro connect_kwargs
|
@@ -354,7 +354,7 @@ module Ronin
|
|
354
354
|
# Performs a `COPY` request for the given URI.
|
355
355
|
#
|
356
356
|
# @param [URI::HTTP, Addressable::URI, String] url
|
357
|
-
#
|
357
|
+
# The URL to create the HTTP request for.
|
358
358
|
#
|
359
359
|
# @!macro request_kwargs
|
360
360
|
# @!macro connect_kwargs
|
@@ -372,15 +372,15 @@ module Ronin
|
|
372
372
|
#
|
373
373
|
# @api public
|
374
374
|
#
|
375
|
-
def http_copy(url, ssl: nil, **kwargs)
|
376
|
-
Network::HTTP.copy(url, ssl: ssl, **kwargs)
|
375
|
+
def http_copy(url, ssl: nil, **kwargs,&block)
|
376
|
+
Network::HTTP.copy(url, ssl: ssl, **kwargs,&block)
|
377
377
|
end
|
378
378
|
|
379
379
|
#
|
380
380
|
# Performs a `DELETE` request for the given URI.
|
381
381
|
#
|
382
382
|
# @param [URI::HTTP, Addressable::URI, String] url
|
383
|
-
#
|
383
|
+
# The URL to create the HTTP request for.
|
384
384
|
#
|
385
385
|
# @!macro request_kwargs
|
386
386
|
# @!macro connect_kwargs
|
@@ -406,7 +406,7 @@ module Ronin
|
|
406
406
|
# Performs a `GET` request for the given URI.
|
407
407
|
#
|
408
408
|
# @param [URI::HTTP, Addressable::URI, String] url
|
409
|
-
#
|
409
|
+
# The URL to create the HTTP request for.
|
410
410
|
#
|
411
411
|
# @!macro request_kwargs
|
412
412
|
# @!macro connect_kwargs
|
@@ -433,7 +433,7 @@ module Ronin
|
|
433
433
|
# headers.
|
434
434
|
#
|
435
435
|
# @param [URI::HTTP, Addressable::URI, String] url
|
436
|
-
#
|
436
|
+
# The URL to create the HTTP request for.
|
437
437
|
#
|
438
438
|
# @!macro request_kwargs
|
439
439
|
# @!macro connect_kwargs
|
@@ -456,7 +456,7 @@ module Ronin
|
|
456
456
|
# header(s).
|
457
457
|
#
|
458
458
|
# @param [URI::HTTP, Addressable::URI, String] url
|
459
|
-
#
|
459
|
+
# The URL to create the HTTP request for.
|
460
460
|
#
|
461
461
|
# @!macro request_kwargs
|
462
462
|
# @!macro connect_kwargs
|
@@ -477,7 +477,7 @@ module Ronin
|
|
477
477
|
# body.
|
478
478
|
#
|
479
479
|
# @param [URI::HTTP, Addressable::URI, String] url
|
480
|
-
#
|
480
|
+
# The URL to create the HTTP request for.
|
481
481
|
#
|
482
482
|
# @!macro request_kwargs
|
483
483
|
# @!macro connect_kwargs
|
@@ -497,7 +497,7 @@ module Ronin
|
|
497
497
|
# Performs a `HEAD` request for the given URI.
|
498
498
|
#
|
499
499
|
# @param [URI::HTTP, Addressable::URI, String] url
|
500
|
-
#
|
500
|
+
# The URL to create the HTTP request for.
|
501
501
|
#
|
502
502
|
# @!macro request_kwargs
|
503
503
|
# @!macro connect_kwargs
|
@@ -523,7 +523,7 @@ module Ronin
|
|
523
523
|
# Performs a `LOCK` request for the given URI.
|
524
524
|
#
|
525
525
|
# @param [URI::HTTP, Addressable::URI, String] url
|
526
|
-
#
|
526
|
+
# The URL to create the HTTP request for.
|
527
527
|
#
|
528
528
|
# @!macro request_kwargs
|
529
529
|
# @!macro connect_kwargs
|
@@ -549,7 +549,7 @@ module Ronin
|
|
549
549
|
# Performs a `MKCOL` request for the given URI.
|
550
550
|
#
|
551
551
|
# @param [URI::HTTP, Addressable::URI, String] url
|
552
|
-
#
|
552
|
+
# The URL to create the HTTP request for.
|
553
553
|
#
|
554
554
|
# @!macro request_kwargs
|
555
555
|
# @!macro connect_kwargs
|
@@ -575,7 +575,7 @@ module Ronin
|
|
575
575
|
# Performs a `MOVE` request for the given URI.
|
576
576
|
#
|
577
577
|
# @param [URI::HTTP, Addressable::URI, String] url
|
578
|
-
#
|
578
|
+
# The URL to create the HTTP request for.
|
579
579
|
#
|
580
580
|
# @!macro request_kwargs
|
581
581
|
# @!macro connect_kwargs
|
@@ -601,7 +601,7 @@ module Ronin
|
|
601
601
|
# Performs a `OPTIONS` request for the given URI.
|
602
602
|
#
|
603
603
|
# @param [URI::HTTP, Addressable::URI, String] url
|
604
|
-
#
|
604
|
+
# The URL to create the HTTP request for.
|
605
605
|
#
|
606
606
|
# @!macro request_kwargs
|
607
607
|
# @!macro connect_kwargs
|
@@ -628,17 +628,11 @@ module Ronin
|
|
628
628
|
# `Allow` response header.
|
629
629
|
#
|
630
630
|
# @param [URI::HTTP, Addressable::URI, String] url
|
631
|
-
#
|
631
|
+
# The URL to create the HTTP request for.
|
632
632
|
#
|
633
633
|
# @!macro request_kwargs
|
634
634
|
# @!macro connect_kwargs
|
635
635
|
#
|
636
|
-
# @yield [response]
|
637
|
-
# If a block is given it will be passed the received HTTP response.
|
638
|
-
#
|
639
|
-
# @yieldparam [Net::HTTPRresponse] response
|
640
|
-
# The received HTTP response object.
|
641
|
-
#
|
642
636
|
# @return [Array<Symbol>]
|
643
637
|
# The allowed HTTP request methods for the given URL.
|
644
638
|
#
|
@@ -646,15 +640,15 @@ module Ronin
|
|
646
640
|
#
|
647
641
|
# @api public
|
648
642
|
#
|
649
|
-
def http_allowed_methods(url, ssl: nil, **kwargs
|
650
|
-
Network::HTTP.allowed_methods(url, ssl: ssl, **kwargs
|
643
|
+
def http_allowed_methods(url, ssl: nil, **kwargs)
|
644
|
+
Network::HTTP.allowed_methods(url, ssl: ssl, **kwargs)
|
651
645
|
end
|
652
646
|
|
653
647
|
#
|
654
648
|
# Performs a `PATCH` request for the given URI.
|
655
649
|
#
|
656
650
|
# @param [URI::HTTP, Addressable::URI, String] url
|
657
|
-
#
|
651
|
+
# The URL to create the HTTP request for.
|
658
652
|
#
|
659
653
|
# @!macro request_kwargs
|
660
654
|
# @!macro connect_kwargs
|
@@ -682,7 +676,7 @@ module Ronin
|
|
682
676
|
# Performs a `POST` request for the given URI.
|
683
677
|
#
|
684
678
|
# @param [URI::HTTP, Addressable::URI, String] url
|
685
|
-
#
|
679
|
+
# The URL to create the HTTP request for.
|
686
680
|
#
|
687
681
|
# @!macro request_kwargs
|
688
682
|
# @!macro connect_kwargs
|
@@ -709,7 +703,7 @@ module Ronin
|
|
709
703
|
# headers.
|
710
704
|
#
|
711
705
|
# @param [URI::HTTP, Addressable::URI, String] url
|
712
|
-
#
|
706
|
+
# The URL to create the HTTP request for.
|
713
707
|
#
|
714
708
|
# @!macro request_kwargs
|
715
709
|
# @!macro connect_kwargs
|
@@ -732,7 +726,7 @@ module Ronin
|
|
732
726
|
# response body.
|
733
727
|
#
|
734
728
|
# @param [URI::HTTP, Addressable::URI, String] url
|
735
|
-
#
|
729
|
+
# The URL to create the HTTP request for.
|
736
730
|
#
|
737
731
|
# @!macro request_kwargs
|
738
732
|
# @!macro connect_kwargs
|
@@ -752,7 +746,7 @@ module Ronin
|
|
752
746
|
# Performs a `PROPFIND` request for the given URI.
|
753
747
|
#
|
754
748
|
# @param [URI::HTTP, Addressable::URI, String] url
|
755
|
-
#
|
749
|
+
# The URL to create the HTTP request for.
|
756
750
|
#
|
757
751
|
# @!macro request_kwargs
|
758
752
|
# @!macro connect_kwargs
|
@@ -780,7 +774,7 @@ module Ronin
|
|
780
774
|
# Performs a `PROPPATCH` request for the given URI.
|
781
775
|
#
|
782
776
|
# @param [URI::HTTP, Addressable::URI, String] url
|
783
|
-
#
|
777
|
+
# The URL to create the HTTP request for.
|
784
778
|
#
|
785
779
|
# @!macro request_kwargs
|
786
780
|
# @!macro connect_kwargs
|
@@ -808,7 +802,7 @@ module Ronin
|
|
808
802
|
# Performs a `PUT` request for the given URI.
|
809
803
|
#
|
810
804
|
# @param [URI::HTTP, Addressable::URI, String] url
|
811
|
-
#
|
805
|
+
# The URL to create the HTTP request for.
|
812
806
|
#
|
813
807
|
# @!macro request_kwargs
|
814
808
|
# @!macro connect_kwargs
|
@@ -836,7 +830,7 @@ module Ronin
|
|
836
830
|
# Performs a `TRACE` request for the given URI.
|
837
831
|
#
|
838
832
|
# @param [URI::HTTP, Addressable::URI, String] url
|
839
|
-
#
|
833
|
+
# The URL to create the HTTP request for.
|
840
834
|
#
|
841
835
|
# @!macro request_kwargs
|
842
836
|
# @!macro connect_kwargs
|
@@ -862,7 +856,7 @@ module Ronin
|
|
862
856
|
# Performs a `UNLOCK` request for the given URI.
|
863
857
|
#
|
864
858
|
# @param [URI::HTTP, Addressable::URI, String] url
|
865
|
-
#
|
859
|
+
# The URL to create the HTTP request for.
|
866
860
|
#
|
867
861
|
# @!macro request_kwargs
|
868
862
|
# @!macro connect_kwargs
|
@@ -108,7 +108,7 @@ module Ronin
|
|
108
108
|
# Path to the CA certificate file or directory.
|
109
109
|
#
|
110
110
|
# @return [OpenSSL::SSL::SSLSocket]
|
111
|
-
#
|
111
|
+
# The new SSL Socket.
|
112
112
|
#
|
113
113
|
# @api public
|
114
114
|
#
|
@@ -246,7 +246,7 @@ module Ronin
|
|
246
246
|
# The new SSL Socket.
|
247
247
|
#
|
248
248
|
# @return [OpenSSL::SSL::SSLSocket, nil]
|
249
|
-
#
|
249
|
+
# The new SSL Socket. If a block is given, then `nil` will be
|
250
250
|
# returned.
|
251
251
|
#
|
252
252
|
# @example
|
@@ -573,7 +573,7 @@ module Ronin
|
|
573
573
|
# Path to the CA certificate file or directory.
|
574
574
|
#
|
575
575
|
# @return [OpenSSL::SSL::SSLSocket]
|
576
|
-
#
|
576
|
+
# The new SSL Socket.
|
577
577
|
#
|
578
578
|
# @api public
|
579
579
|
#
|
@@ -16,7 +16,8 @@
|
|
16
16
|
# along with ronin-support. If not, see <https://www.gnu.org/licenses/>.
|
17
17
|
#
|
18
18
|
|
19
|
-
require 'ronin/support/
|
19
|
+
require 'ronin/support/crypto/openssl'
|
20
|
+
require 'ronin/support/crypto/key'
|
20
21
|
require 'ronin/support/network/ssl/local_key'
|
21
22
|
require 'ronin/support/network/ssl/local_cert'
|
22
23
|
require 'ronin/support/network/ssl/proxy'
|
@@ -148,7 +149,7 @@ module Ronin
|
|
148
149
|
context.verify_mode = VERIFY[verify]
|
149
150
|
|
150
151
|
if (key_file || key) && (cert_file || cert)
|
151
|
-
context.key = if key_file then Crypto::Key
|
152
|
+
context.key = if key_file then Crypto::Key.load_file(key_file)
|
152
153
|
else key
|
153
154
|
end
|
154
155
|
|
@@ -107,7 +107,7 @@ module Ronin
|
|
107
107
|
# Path to the CA certificate file or directory.
|
108
108
|
#
|
109
109
|
# @return [OpenSSL::SSL::SSLSocket]
|
110
|
-
#
|
110
|
+
# The new SSL Socket.
|
111
111
|
#
|
112
112
|
# @api public
|
113
113
|
#
|
@@ -233,7 +233,7 @@ module Ronin
|
|
233
233
|
# The new SSL Socket.
|
234
234
|
#
|
235
235
|
# @return [OpenSSL::SSL::SSLSocket, nil]
|
236
|
-
#
|
236
|
+
# The new SSL Socket. If a block is given, then `nil` will be
|
237
237
|
# returned.
|
238
238
|
#
|
239
239
|
# @example
|
@@ -519,7 +519,7 @@ module Ronin
|
|
519
519
|
# * `:client_once`
|
520
520
|
#
|
521
521
|
# @return [OpenSSL::SSL::SSLSocket]
|
522
|
-
#
|
522
|
+
# The new SSL Socket.
|
523
523
|
#
|
524
524
|
# @api public
|
525
525
|
#
|
data/lib/ronin/support.rb
CHANGED
@@ -28,6 +28,20 @@ require 'ronin/support/text'
|
|
28
28
|
require 'ronin/support/version'
|
29
29
|
|
30
30
|
module Ronin
|
31
|
+
#
|
32
|
+
# Top-level namespace for `ronin-support`.
|
33
|
+
#
|
34
|
+
# ## Example
|
35
|
+
#
|
36
|
+
# require 'ronin/support'
|
37
|
+
# include Ronin::Support
|
38
|
+
#
|
39
|
+
# "hello world".base64_encode
|
40
|
+
# # => "aGVsbG8gd29ybGQ=\n"
|
41
|
+
#
|
42
|
+
# http_get 'https://example.com/'
|
43
|
+
# # => #<Net::HTTPOK 200 OK readbody=true>
|
44
|
+
#
|
31
45
|
module Support
|
32
46
|
include Mixin
|
33
47
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ronin-support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Postmodern
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-12-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: chars
|
@@ -470,7 +470,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
470
470
|
- !ruby/object:Gem::Version
|
471
471
|
version: '0'
|
472
472
|
requirements: []
|
473
|
-
rubygems_version: 3.3
|
473
|
+
rubygems_version: 3.5.3
|
474
474
|
signing_key:
|
475
475
|
specification_version: 4
|
476
476
|
summary: A support library for ronin-rb.
|