From d1dce393d77121509c7ac6d729a09f9f94bc7ab7 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Sun, 14 Jul 2019 00:10:42 -0400 Subject: newtype UidString --- lib/KeyRing/BuildKeyDB.hs | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'lib/KeyRing/BuildKeyDB.hs') diff --git a/lib/KeyRing/BuildKeyDB.hs b/lib/KeyRing/BuildKeyDB.hs index cd1bae9..0eddc51 100644 --- a/lib/KeyRing/BuildKeyDB.hs +++ b/lib/KeyRing/BuildKeyDB.hs @@ -30,7 +30,6 @@ import qualified Data.ByteString.Lazy as L (ByteString, concat, empty, null, toChunks, toStrict, head) import Data.Char -import Data.Functor import Data.List import qualified Data.Map as Map import Data.Maybe @@ -55,7 +54,6 @@ import qualified System.Posix.Types as Posix import Data.Hourglass import Foreign.C.Types (CTime (..)) import Data.Traversable (sequenceA) -import qualified Data.Traversable as Traversable import System.IO (openFile, IOMode(ReadMode)) import System.Posix.IO (fdToHandle) @@ -678,7 +676,7 @@ insertSubkey transcode kk (KeyData top topsigs uids subs) tags inputfile key0 = uids' <- flip (maybe $ return $ KikiSuccess (uids,[])) istor $ \idstr -> do let has_torid = do -- TODO: check for omitted real name field - (sigtrusts,om) <- Map.lookup idstr uids + (sigtrusts,om) <- Map.lookup (UidString idstr) uids listToMaybe $ do s <- (signatures $ Message (packet top:UserIDPacket idstr:map (packet . fst) sigtrusts)) signatures_over $ verify (Message [packet top]) s @@ -700,7 +698,7 @@ insertSubkey transcode kk (KeyData top topsigs uids subs) tags inputfile key0 = let om = Map.singleton fname (origin sig (-1)) trust = Map.empty return $ KikiSuccess - ( Map.insert idstr ([( (mappedPacket fname sig) {locations=om} + ( Map.insert (UidString idstr) ([( (mappedPacket fname sig) {locations=om} , trust)],om) uids , [] ) @@ -801,7 +799,7 @@ matchSpec (KeyTag key tag) (KeyData _ sigs _ _) = not . null $ filter match ps matchSpec (KeyUidMatch pat) (KeyData _ _ uids _) = not $ null us where - us = filter (isInfixOf pat) $ Map.keys uids + us = filter (isInfixOf pat) $ unUidString <$> Map.keys uids doImport :: PacketTranscoder @@ -946,7 +944,7 @@ setHostnames (IPsToWriteToHostsFile outgoing_names) hosts kd@(KeyData topmp tops isName (NotationDataPacket True "hostname@" _) = True isName _ = False uids0 = fmap zapIfHasName uids - fstuid = head $ do + fstuid = UidString $ head $ do p <- map packet $ flattenAllUids "" True uids maybeToList $ isUserID p uids1 = Map.adjust addnames fstuid uids0 @@ -1069,14 +1067,14 @@ dbInsertPacket kd filename (n,(top,sub,ptt@(p,trustmap))) = update (Just kd) update (Just (KeyData key sigs uids subkeys)) | isKey p && is_subkey p = Just $ KeyData key sigs uids (Map.alter (mergeSubkey n p) (keykey p) subkeys) update (Just (KeyData key sigs uids subkeys)) | Just uid <- isUserID p - = Just $ KeyData key sigs (Map.alter (mergeUid n ptt) uid uids) + = Just $ KeyData key sigs (Map.alter (mergeUid n ptt) (UidString uid) uids) subkeys update (Just (KeyData key sigs uids subkeys)) = case sub of MarkerPacket -> Just $ KeyData key (mergeSig (first (flip (mappedPacketWithHint filename) n) ptt) sigs) uids subkeys UserIDPacket uid-> Just $ KeyData key sigs - (Map.alter (mergeUidSig n ptt) uid uids) + (Map.alter (mergeUidSig n ptt) (UidString uid) uids) subkeys _ | isKey sub -> Just $ KeyData key sigs -- cgit v1.2.3