From 5272ec45fe18e78456ee3e8827f8f9569a046e48 Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Tue, 21 Jun 2016 21:15:29 +0200 Subject: consistent hashing --- ymir/mlmmj-expose.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'ymir') diff --git a/ymir/mlmmj-expose.nix b/ymir/mlmmj-expose.nix index b3eab046..bcf3a872 100644 --- a/ymir/mlmmj-expose.nix +++ b/ymir/mlmmj-expose.nix @@ -41,7 +41,7 @@ let setCurrentDirectory listDir identities <- getIdentities subscribers <- getSubscribers - let hashes = filter ((==) extension . snd) [((ident, sub), take len $ hash' (ident, sub)) | ident <- identities, sub <- subscribers] + let hashes = filter ((==) extension . snd) [((ident, sub), hash' (ident, sub)) | ident <- identities, sub <- subscribers] case hashes of [(_, recipient)] -> do getContents >>= writeFile "queue/exposed" @@ -82,10 +82,10 @@ let readDir dir = concat <$> (mapM (fmap lines . readFile) . map (dir ) . filter (not . (`elem` [".", ".."]))=<< (getDirectoryContents dir)) hash' :: Show a => a -> String - hash' = map toLower . show . (hash :: BS.ByteString -> Digest SHA256) . CBS.pack . map toLower . show + hash' = take len . map toLower . show . (hash :: BS.ByteString -> Digest SHA256) . CBS.pack . map toLower . show len :: Int - len = 16 + len = 64 ''; buildCommand = '' mkdir -p $out/bin -- cgit v1.2.3