diff options
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 |