diff options
author | Joe Crayne <joe@jerkface.net> | 2019-07-11 23:43:16 -0400 |
---|---|---|
committer | Joe Crayne <joe@jerkface.net> | 2019-07-11 23:43:16 -0400 |
commit | 352b340868f52d4749180c1ceb63e599170abada (patch) | |
tree | 34127970fff880afee59e55254433faf811e02ed /lib/KeyRing.hs | |
parent | 365bdcd8d9f4a08aaae35fc27722d268f4af9041 (diff) |
Promote KeyDB to a type.
Diffstat (limited to 'lib/KeyRing.hs')
-rw-r--r-- | lib/KeyRing.hs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/KeyRing.hs b/lib/KeyRing.hs index bc3af6a..c40eba7 100644 --- a/lib/KeyRing.hs +++ b/lib/KeyRing.hs | |||
@@ -437,10 +437,10 @@ selectPublicKeyAndSigs :: (KeySpec,Maybe String) -> KeyDB -> [(KeyKey,Packet,[Pa | |||
437 | selectPublicKeyAndSigs (spec,mtag) db = | 437 | selectPublicKeyAndSigs (spec,mtag) db = |
438 | case mtag of | 438 | case mtag of |
439 | Nothing -> do | 439 | Nothing -> do |
440 | (kk,r) <- Map.toList $ fmap (findbyspec spec) db | 440 | (kk,r) <- Map.toList $ fmap (findbyspec spec) (byKeyKey db) |
441 | (sub,sigs) <- r | 441 | (sub,sigs) <- r |
442 | return (kk,sub,sigs) | 442 | return (kk,sub,sigs) |
443 | Just tag -> Map.toList (Map.filter (matchSpec spec) db) >>= findsubs tag | 443 | Just tag -> Map.toList (Map.filter (matchSpec spec) (byKeyKey db)) >>= findsubs tag |
444 | where | 444 | where |
445 | topresult kd = (keyPacket kd, map (packet .fst) $ keySigAndTrusts kd) | 445 | topresult kd = (keyPacket kd, map (packet .fst) $ keySigAndTrusts kd) |
446 | 446 | ||
@@ -625,7 +625,7 @@ coinKeysOwnedBy :: KeyDB -> Maybe Packet -> [(CryptoCoins.CoinNetwork,MappedPack | |||
625 | coinKeysOwnedBy db wk = do | 625 | coinKeysOwnedBy db wk = do |
626 | wk <- maybeToList wk | 626 | wk <- maybeToList wk |
627 | let kk = keykey wk | 627 | let kk = keykey wk |
628 | KeyData top topsigs uids subs <- maybeToList $ Map.lookup kk db | 628 | KeyData top topsigs uids subs <- maybeToList $ Map.lookup kk (byKeyKey db) |
629 | (subkk,SubKey mp sigs) <- Map.toList subs | 629 | (subkk,SubKey mp sigs) <- Map.toList subs |
630 | let sub = packet mp | 630 | let sub = packet mp |
631 | guard $ isCryptoCoinKey sub | 631 | guard $ isCryptoCoinKey sub |
@@ -689,7 +689,7 @@ guardAuthentic rt keydata = guard (isauth rt keydata) | |||
689 | 689 | ||
690 | isauth :: KeyRingRuntime -> KeyData -> Bool | 690 | isauth :: KeyRingRuntime -> KeyData -> Bool |
691 | isauth rt keydata = dont_have keydata && maybe False (`has_good_sig` keydata) wk | 691 | isauth rt keydata = dont_have keydata && maybe False (`has_good_sig` keydata) wk |
692 | where wk = workingKey (rtGrip rt) (rtKeyDB rt) | 692 | where wk = workingKey (rtGrip rt) (byKeyKey $ rtKeyDB rt) |
693 | dont_have (KeyData p _ _ _) = not . Map.member (rtPubring rt) | 693 | dont_have (KeyData p _ _ _) = not . Map.member (rtPubring rt) |
694 | $ locations p | 694 | $ locations p |
695 | has_good_sig wk (KeyData k sigs uids subs) = any goodsig $ Map.toList uids | 695 | has_good_sig wk (KeyData k sigs uids subs) = any goodsig $ Map.toList uids |
@@ -756,7 +756,7 @@ writeRingKeys krd rt {- db wk secring pubring -} unspilled report_manips = do | |||
756 | (error $ f ++ ": write public or secret key to file?") | 756 | (error $ f ++ ": write public or secret key to file?") |
757 | importByExistingMaster kd@(KeyData p _ _ _) = | 757 | importByExistingMaster kd@(KeyData p _ _ _) = |
758 | fmap originallyPublic $ Map.lookup f $ locations p | 758 | fmap originallyPublic $ Map.lookup f $ locations p |
759 | d <- sortByHint f keyMappedPacket (Map.elems db') | 759 | d <- sortByHint f keyMappedPacket (Map.elems $ byKeyKey db') |
760 | acc <- maybeToList $ Map.lookup f0 (rtRingAccess rt) | 760 | acc <- maybeToList $ Map.lookup f0 (rtRingAccess rt) |
761 | only_public <- maybeToList $ wantedForFill acc (fill stream) d | 761 | only_public <- maybeToList $ wantedForFill acc (fill stream) d |
762 | guard $ only_public || isSecretKey (keyPacket d) | 762 | guard $ only_public || isSecretKey (keyPacket d) |
@@ -1021,7 +1021,7 @@ initializeMissingPEMFiles operation ctx grip mwk transcode db = do | |||
1021 | -- ms = map (keykey . fst) $ selectAll True (topspec,subspec) db | 1021 | -- ms = map (keykey . fst) $ selectAll True (topspec,subspec) db |
1022 | -- ms = filterMatches topspec $ Map.toList db | 1022 | -- ms = filterMatches topspec $ Map.toList db |
1023 | ns = do | 1023 | ns = do |
1024 | (kk,kd) <- filterMatches topspec $ Map.toList db | 1024 | (kk,kd) <- filterMatches topspec $ Map.toList $ byKeyKey db |
1025 | return (kk , subkeysForExport subspec kd) | 1025 | return (kk , subkeysForExport subspec kd) |
1026 | return (fname,subspec,ns,stream) | 1026 | return (fname,subspec,ns,stream) |
1027 | (exports0,ambiguous) = partition (\(_,_,ns,_)->null $ drop 1 $ (ns>>=snd)) | 1027 | (exports0,ambiguous) = partition (\(_,_,ns,_)->null $ drop 1 $ (ns>>=snd)) |
@@ -1069,7 +1069,7 @@ initializeMissingPEMFiles operation ctx grip mwk transcode db = do | |||
1069 | usage <- take 1 $ mapMaybe usageFromFilter [fill stream,spill stream] | 1069 | usage <- take 1 $ mapMaybe usageFromFilter [fill stream,spill stream] |
1070 | let (topspec,subspec) = parseSpec (fromMaybe "" grip) usage | 1070 | let (topspec,subspec) = parseSpec (fromMaybe "" grip) usage |
1071 | guard $ null $ do | 1071 | guard $ null $ do |
1072 | (kk,kd) <- filterMatches topspec $ Map.toList db | 1072 | (kk,kd) <- filterMatches topspec $ Map.toList $ byKeyKey db |
1073 | subkeysForExport subspec kd | 1073 | subkeysForExport subspec kd |
1074 | return (f,stream) | 1074 | return (f,stream) |
1075 | where | 1075 | where |