openpgp: '&openpgp-unrecognized-packet-error' includes type tag.

* guix/openpgp.scm (&openpgp-unrecognized-packet-error)[type]: New
field.
(get-data, parse-subpackets): Initialize 'type' field.
This commit is contained in:
Ludovic Courtès 2020-10-14 10:19:38 +02:00
parent f73f3d01a2
commit 37a8f5b281
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5

View File

@ -34,6 +34,7 @@
openpgp-error?
openpgp-unrecognized-packet-error?
openpgp-unrecognized-packet-error-port
openpgp-unrecognized-packet-error-type
openpgp-invalid-signature-error?
openpgp-invalid-signature-error-port
@ -132,6 +133,7 @@
;; Error raised when reading an unsupported or unrecognized packet tag.
(define-condition-type &openpgp-unrecognized-packet-error &openpgp-error
openpgp-unrecognized-packet-error?
(type openpgp-unrecognized-packet-error-type)
(port openpgp-unrecognized-packet-error-port))
;; Error raised when reading an invalid signature packet.
@ -477,7 +479,8 @@ hexadecimal format for fingerprints."
((= tag PACKET-ONE-PASS-SIGNATURE)
'one-pass-signature) ;TODO: implement
(else
(raise (condition (&openpgp-unrecognized-packet-error (port p))))))))
(raise (condition (&openpgp-unrecognized-packet-error (type tag)
(port p))))))))
(define-record-type <openpgp-public-key>
(make-openpgp-public-key version subkey? time value fingerprint)
@ -817,6 +820,7 @@ FINGERPRINT, a bytevector."
(if critical?
(raise (condition
(&openpgp-unrecognized-packet-error
(type type)
(port signature-port))))
(list 'unsupported-subpacket type data))))))