diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-09-14 16:42:26 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-09-14 16:59:20 -0400 |
commit | a41cbda751d515032859d72656fda3d219300ecb (patch) | |
tree | fdc5324c56e0b67b6e74826cd6b8cd742984ecf0 /Storage.hs | |
parent | a68caf8b54b9d37deeaeddc6a28394d1587f1dc5 (diff) | |
download | keysafe-a41cbda751d515032859d72656fda3d219300ecb.tar.gz |
Store information about backed up keys in ~/.keysafe/backup.log
This can be deleted by the user at any time, but it's useful in case a
server is known to be compromised, or a problem is found with keysafe's
implementation that makes a backup insecure.
This commit was sponsored by Nick Daly on Patreon.
Diffstat (limited to 'Storage.hs')
-rw-r--r-- | Storage.hs | 7 |
1 files changed, 4 insertions, 3 deletions
@@ -9,6 +9,7 @@ module Storage (module Storage, module Types.Storage) where import Types import Types.Storage +import Types.Server import Share import Storage.Local import Storage.Network @@ -45,11 +46,11 @@ type UpdateProgress = IO () -- -- TODO: Add shuffling and queueing/chaffing to prevent -- correlation of related shares. -storeShares :: StorageLocations -> ShareIdents -> [S.Set Share] -> UpdateProgress -> IO (StoreResult, Bool) +storeShares :: StorageLocations -> ShareIdents -> [S.Set Share] -> UpdateProgress -> IO (StoreResult, Bool, [Storage]) storeShares (StorageLocations locs) allsis shares updateprogress = do - (r, usedlocs) <- go allsis shares [] False + ((r, anyqueued), usedlocs) <- go allsis shares [] False _ <- mapM_ obscureShares usedlocs - return r + return (r, anyqueued, usedlocs) where go sis (s:rest) usedlocs anyqueued = do let (is, sis') = nextShareIdents sis |