summaryrefslogtreecommitdiff
path: root/Data
diff options
context:
space:
mode:
authorStephen Paul Weber <singpolyma@singpolyma.net>2012-04-27 15:23:20 -0500
committerStephen Paul Weber <singpolyma@singpolyma.net>2012-04-27 15:23:20 -0500
commit26f1db51b6146ee09a119113506dc8f58559fbcf (patch)
tree04e79d46c7d08506749e03d4840dc109685a9335 /Data
parentd9b4face488cb3eb1a914f37b24751bb5dd9aeac (diff)
SymmetricAlgorithm
Diffstat (limited to 'Data')
-rw-r--r--Data/OpenPGP.hs30
1 files changed, 30 insertions, 0 deletions
diff --git a/Data/OpenPGP.hs b/Data/OpenPGP.hs
index acf5fb6..878fb99 100644
--- a/Data/OpenPGP.hs
+++ b/Data/OpenPGP.hs
@@ -46,6 +46,7 @@ module Data.OpenPGP (
46 SignatureSubpacket(..), 46 SignatureSubpacket(..),
47 HashAlgorithm(..), 47 HashAlgorithm(..),
48 KeyAlgorithm(..), 48 KeyAlgorithm(..),
49 SymmetricAlgorithm(..),
49 CompressionAlgorithm(..), 50 CompressionAlgorithm(..),
50 MPI(..), 51 MPI(..),
51 find_key, 52 find_key,
@@ -590,6 +591,35 @@ instance BINARY_CLASS KeyAlgorithm where
590 put = put . enum_to_word8 591 put = put . enum_to_word8
591 get = fmap enum_from_word8 get 592 get = fmap enum_from_word8 get
592 593
594data SymmetricAlgorithm = Unencrypted | IDEA | TripleDES | CAST5 | Blowfish | AES128 | AES192 | AES256 | Twofish | SymmetricAlgorithm Word8
595 deriving (Show, Read, Eq)
596
597instance Enum SymmetricAlgorithm where
598 toEnum 00 = Unencrypted
599 toEnum 01 = IDEA
600 toEnum 02 = TripleDES
601 toEnum 03 = CAST5
602 toEnum 04 = Blowfish
603 toEnum 07 = AES128
604 toEnum 08 = AES192
605 toEnum 09 = AES256
606 toEnum 10 = Twofish
607 toEnum x = SymmetricAlgorithm $ fromIntegral x
608 fromEnum Unencrypted = 00
609 fromEnum IDEA = 01
610 fromEnum TripleDES = 02
611 fromEnum CAST5 = 03
612 fromEnum Blowfish = 04
613 fromEnum AES128 = 07
614 fromEnum AES192 = 08
615 fromEnum AES256 = 09
616 fromEnum Twofish = 10
617 fromEnum (SymmetricAlgorithm x) = fromIntegral x
618
619instance BINARY_CLASS SymmetricAlgorithm where
620 put = put . enum_to_word8
621 get = fmap enum_from_word8 get
622
593data CompressionAlgorithm = Uncompressed | ZIP | ZLIB | BZip2 | CompressionAlgorithm Word8 623data CompressionAlgorithm = Uncompressed | ZIP | ZLIB | BZip2 | CompressionAlgorithm Word8
594 deriving (Show, Read, Eq) 624 deriving (Show, Read, Eq)
595 625