summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-10-14 10:19:38 +0200
committerLudovic Courtès <ludo@gnu.org>2020-10-14 15:22:55 +0200
commit37a8f5b281644bd5355406a4df76bbb9efc50d9c (patch)
treec26e25ad5b8536f18cb5c89c356b1784f187b506
parentf73f3d01a28bf791815de24523ed6b1a2da1f179 (diff)
downloadguix-37a8f5b281644bd5355406a4df76bbb9efc50d9c.tar.gz
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.
-rw-r--r--guix/openpgp.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/guix/openpgp.scm b/guix/openpgp.scm
index 153752ee73..648c359621 100644
--- a/guix/openpgp.scm
+++ b/guix/openpgp.scm
@@ -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))))))