summaryrefslogtreecommitdiff
path: root/lib/OpenPGP.hs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/OpenPGP.hs')
-rw-r--r--lib/OpenPGP.hs8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/OpenPGP.hs b/lib/OpenPGP.hs
index 231f351..94489c9 100644
--- a/lib/OpenPGP.hs
+++ b/lib/OpenPGP.hs
@@ -103,7 +103,7 @@ parse_new_length = do
103 second <- fmap fromIntegral (get :: Get Word8) 103 second <- fmap fromIntegral (get :: Get Word8)
104 return $ ((len - 192) `shiftL` 8) + second + 192 104 return $ ((len - 192) `shiftL` 8) + second + 192
105 -- Five octet length 105 -- Five octet length
106 _ | len == 255 -> get :: Get Word32 106 255 -> get :: Get Word32
107 -- TODO: Partial body lengths. 1 << (len & 0x1F) 107 -- TODO: Partial body lengths. 1 << (len & 0x1F)
108 108
109-- http://tools.ietf.org/html/rfc4880#section-4.2.1 109-- http://tools.ietf.org/html/rfc4880#section-4.2.1
@@ -232,11 +232,11 @@ parse_packet 5 = do
232 s2k_useage <- get :: Get Word8 232 s2k_useage <- get :: Get Word8
233 let k = SecretKeyPacket version timestamp algorithm key s2k_useage 233 let k = SecretKeyPacket version timestamp algorithm key s2k_useage
234 k' <- case s2k_useage of 234 k' <- case s2k_useage of
235 _ | s2k_useage == 255 || s2k_useage == 254 -> do 235 _ | s2k_useage `elem` [255, 254] -> do
236 symmetric_type <- get 236 symmetric_type <- get
237 s2k_type <- get 237 s2k_type <- get
238 s2k_hash_algorithm <- get 238 s2k_hash_algorithm <- get
239 s2k_salt <- if s2k_type == 1 || s2k_type == 3 then get 239 s2k_salt <- if s2k_type `elem` [1, 3] then get
240 else return undefined 240 else return undefined
241 s2k_count <- if s2k_type == 3 then do 241 s2k_count <- if s2k_type == 3 then do
242 c <- fmap fromIntegral (get :: Get Word8) 242 c <- fmap fromIntegral (get :: Get Word8)
@@ -321,7 +321,7 @@ fingerprint_material (PublicKeyPacket {version = 4,
321 ] 321 ]
322 where material = LZ.concat $ 322 where material = LZ.concat $
323 map (\f -> encode (key ! f)) (public_key_fields algorithm) 323 map (\f -> encode (key ! f)) (public_key_fields algorithm)
324fingerprint_material p | version p == 2 || version p == 3 = [n, e] 324fingerprint_material p | (version p) `elem` [2, 3] = [n, e]
325 where n = LZ.drop 2 (encode (key p ! 'n')) 325 where n = LZ.drop 2 (encode (key p ! 'n'))
326 e = LZ.drop 2 (encode (key p ! 'e')) 326 e = LZ.drop 2 (encode (key p ! 'e'))
327 327