Skip to content

Commit 4d4ea2e

Browse files
committed
fix(jws): validate payload size for b64=false
1 parent 8817129 commit 4d4ea2e

2 files changed

Lines changed: 4 additions & 2 deletions

File tree

src/joserfc/_rfc7797/compact.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,8 @@ def extract_rfc7515_compact(
4949

5050
registry.validate_header_size(header_segment)
5151
registry.validate_signature_size(signature_segment)
52+
if payload_segment:
53+
registry.validate_payload_size(payload_segment)
5254

5355
protected = decode_header(header_segment)
5456

@@ -61,7 +63,6 @@ def extract_rfc7515_compact(
6163
payload = to_bytes(payload)
6264
payload_segment = urlsafe_b64encode(payload)
6365
else:
64-
registry.validate_payload_size(payload_segment)
6566
try:
6667
payload = urlsafe_b64decode(payload_segment)
6768
except (TypeError, ValueError):

src/joserfc/_rfc7797/json.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,11 @@ def extract_rfc7797_json(value: FlattenedJSONSerialization, registry: JWSRegistr
3131
member = HeaderMember(protected, header)
3232

3333
payload_segment: bytes = value["payload"].encode("utf-8")
34+
registry.validate_payload_size(payload_segment)
35+
3436
if is_rfc7797_enabled(member.headers()):
3537
payload = payload_segment
3638
else:
37-
registry.validate_payload_size(payload_segment)
3839
try:
3940
payload = urlsafe_b64decode(payload_segment)
4041
except (TypeError, ValueError):

0 commit comments

Comments
 (0)