hOpenPGP 2.7.4 → 2.7.4.1
raw patch · 2 files changed
+34/−18 lines, 2 files
Files
- Codec/Encryption/OpenPGP/KeyringParser.hs +32/−16
- hOpenPGP.cabal +2/−2
Codec/Encryption/OpenPGP/KeyringParser.hs view
@@ -105,8 +105,10 @@ brokenTK _ = fail "Unexpected broken packet type" pkPayload :: Parser [Pkt] (PKPayload, Maybe SKAddendum)-pkPayload = do [PublicKeyPkt p] <- satisfy isPKP- return (p, Nothing)+pkPayload = do pkpkts <- satisfy isPKP+ case pkpkts of+ [PublicKeyPkt p] -> return (p, Nothing)+ _ -> failure where isPKP [PublicKeyPkt _] = True isPKP _ = False@@ -129,25 +131,34 @@ isSP' _ = False signedUID :: Bool -> Parser [Pkt] (UidOrUat, [SignaturePayload])-signedUID intolerant = do [UserIdPkt u] <- satisfy isUID- sigs <- concatMany (signature intolerant [GenericCert, PersonaCert, CasualCert, PositiveCert, CertRevocationSig])- return (I u, sigs)+signedUID intolerant = do upkts <- satisfy isUID+ case upkts of+ [UserIdPkt u] -> do+ sigs <- concatMany (signature intolerant [GenericCert, PersonaCert, CasualCert, PositiveCert, CertRevocationSig])+ return (I u, sigs)+ _ -> failure where isUID [UserIdPkt _] = True isUID _ = False signedUAt :: Bool -> Parser [Pkt] (UidOrUat, [SignaturePayload])-signedUAt intolerant = do [UserAttributePkt us] <- satisfy isUAt- sigs <- concatMany (signature intolerant [GenericCert, PersonaCert, CasualCert, PositiveCert, CertRevocationSig])- return (A us, sigs)+signedUAt intolerant = do uapkts <- satisfy isUAt+ case uapkts of+ [UserAttributePkt us] -> do+ sigs <- concatMany (signature intolerant [GenericCert, PersonaCert, CasualCert, PositiveCert, CertRevocationSig])+ return (A us, sigs)+ _ -> failure where isUAt [UserAttributePkt _] = True isUAt _ = False signedOrRevokedPubSubkey :: Bool -> Parser [Pkt] [(Pkt, [SignaturePayload])]-signedOrRevokedPubSubkey intolerant = do [p] <- satisfy isPSKP- sigs <- concatMany (signature intolerant [SubkeyBindingSig, SubkeyRevocationSig])- return [(p, sigs)]+signedOrRevokedPubSubkey intolerant = do pskpkts <- satisfy isPSKP+ case pskpkts of+ [p] -> do+ sigs <- concatMany (signature intolerant [SubkeyBindingSig, SubkeyRevocationSig])+ return [(p, sigs)]+ _ -> failure where isPSKP [PublicSubkeyPkt _] = True isPSKP _ = False@@ -158,9 +169,12 @@ return [] rawOrSignedOrRevokedSecSubkey :: Bool -> Parser [Pkt] [(Pkt, [SignaturePayload])]-rawOrSignedOrRevokedSecSubkey intolerant = do [p] <- satisfy isSSKP- sigs <- concatMany (signature intolerant [SubkeyBindingSig, SubkeyRevocationSig])- return [(p, sigs)]+rawOrSignedOrRevokedSecSubkey intolerant = do sskpkts <- satisfy isSSKP+ case sskpkts of+ [p] -> do+ sigs <- concatMany (signature intolerant [SubkeyBindingSig, SubkeyRevocationSig])+ return [(p, sigs)]+ _ -> failure where isSSKP [SecretSubkeyPkt _ _] = True isSSKP _ = False@@ -171,8 +185,10 @@ return [] skPayload :: Parser [Pkt] (PKPayload, Maybe SKAddendum)-skPayload = do [SecretKeyPkt p ska] <- satisfy isSKP- return (p, Just ska)+skPayload = do spkts <- satisfy isSKP+ case spkts of+ [SecretKeyPkt p ska] -> return (p, Just ska)+ _ -> failure where isSKP [SecretKeyPkt _ _] = True isSKP _ = False
hOpenPGP.cabal view
@@ -1,5 +1,5 @@ Name: hOpenPGP-Version: 2.7.4+Version: 2.7.4.1 Synopsis: native Haskell implementation of OpenPGP (RFC4880) Description: native Haskell implementation of OpenPGP (RFC4880), plus Camellia (RFC5581), plus ECC (RFC6637) Homepage: https://salsa.debian.org/clint/hOpenPGP@@ -342,4 +342,4 @@ source-repository this type: git location: https://salsa.debian.org/clint/hOpenPGP.git- tag: v2.7.4+ tag: v2.7.4.1