git-annex/Utility/Base64.hs
Joey Hess cbb6e1fae4 tag xmpp pushes with jid
This fixes the issue mentioned in the last commit.

Turns out just collecting UUID of clients behind a XMPP remote is
insufficient (although I should probably still do it for other reasons),
because a single remote repo might be connected via both XMPP and local
pairing. So a way is needed to know when a push was received from any
client using a given XMPP remote over XMPP, as opposed to via ssh.
2013-03-06 16:29:19 -04:00

24 lines
529 B
Haskell

{- Simple Base64 access
-
- Copyright 2011 Joey Hess <joey@kitenet.net>
-
- Licensed under the GNU GPL version 3 or higher.
-}
module Utility.Base64 (toB64, fromB64Maybe, fromB64) where
import Codec.Binary.Base64
import Data.Bits.Utils
import Control.Applicative
import Data.Maybe
toB64 :: String -> String
toB64 = encode . s2w8
fromB64Maybe :: String -> Maybe String
fromB64Maybe s = w82s <$> decode s
fromB64 :: String -> String
fromB64 = fromMaybe bad . fromB64Maybe
where
bad = error "bad base64 encoded data"