linzer 0.6.2 → 0.6.3
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/CHANGELOG.md +4 -0
- data/lib/linzer/signature.rb +8 -6
- data/lib/linzer/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f2a241d8621efa2c0ed148bfcf9f4973296f1dd342d1ddddea7840a55f6f6385
|
4
|
+
data.tar.gz: 74b4b845ec51e87b1a616be0d2757a6e123ffb9d1ec2b5c4234edc7644522662
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '067900eddd392626dcc1a0bdec5f8c7b0b00fd67dbe938376231f4c9c1262245e6ed2dcb1b4ea8af37a10c50cd47747b553b315869104342c5b94e2b45810132'
|
7
|
+
data.tar.gz: 7f1293c1feff0c225bda479422d77dc3ac1489c6c8d2233cfdd6ef3bc7a689345f091987ce9f3600a34f74ffd9688eeebdbd048a5e54ec992df1fbc1a1e65355
|
data/CHANGELOG.md
CHANGED
data/lib/linzer/signature.rb
CHANGED
@@ -31,11 +31,11 @@ module Linzer
|
|
31
31
|
headers.transform_keys!(&:downcase)
|
32
32
|
validate headers
|
33
33
|
|
34
|
-
input =
|
34
|
+
input = parse_structured_field(headers, "signature-input")
|
35
35
|
reject_multiple_signatures if input.size > 1 && options[:label].nil?
|
36
36
|
label = options[:label] || input.keys.first
|
37
37
|
|
38
|
-
signature =
|
38
|
+
signature = parse_structured_field(headers, "signature")
|
39
39
|
fail_with_signature_not_found label unless signature.key?(label)
|
40
40
|
|
41
41
|
raw_signature =
|
@@ -44,8 +44,7 @@ module Linzer
|
|
44
44
|
|
45
45
|
fail_due_invalid_components unless input[label].value.respond_to?(:each)
|
46
46
|
|
47
|
-
|
48
|
-
components = input[label].value.map { |c| c.value.encode(ascii) }
|
47
|
+
components = input[label].value.map(&:value)
|
49
48
|
parameters = input[label].parameters
|
50
49
|
|
51
50
|
new(components, raw_signature, label, parameters)
|
@@ -75,8 +74,11 @@ module Linzer
|
|
75
74
|
raise Error.new "Unexpected value for covered components."
|
76
75
|
end
|
77
76
|
|
78
|
-
def
|
79
|
-
|
77
|
+
def parse_structured_field(hsh, field_name)
|
78
|
+
# Serialized Structured Field values for HTTP are ASCII strings.
|
79
|
+
# See: RFC 8941 (https://datatracker.ietf.org/doc/html/rfc8941)
|
80
|
+
value = hsh[field_name].encode(Encoding::US_ASCII)
|
81
|
+
Message.parse_structured_dictionary(value, field_name)
|
80
82
|
end
|
81
83
|
end
|
82
84
|
end
|
data/lib/linzer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: linzer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Miguel Landaeta
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-03-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: openssl
|