diff options
author | joe <joe@jerkface.net> | 2017-11-22 20:12:07 -0500 |
---|---|---|
committer | joe <joe@jerkface.net> | 2017-11-22 20:12:07 -0500 |
commit | de34b6ec46a7136c249c95d97de3a569cd60b835 (patch) | |
tree | 45f9fd49484ea7bb8fec20bfdafb62edfde2f239 /src/Network/Tox/DHT/Transport.hs | |
parent | 27cb2cbe0338c19fd4f8a22b4453086288dae5c4 (diff) |
NoSpamId type to include nospam + checksum + public key.
Diffstat (limited to 'src/Network/Tox/DHT/Transport.hs')
-rw-r--r-- | src/Network/Tox/DHT/Transport.hs | 24 |
1 files changed, 0 insertions, 24 deletions
diff --git a/src/Network/Tox/DHT/Transport.hs b/src/Network/Tox/DHT/Transport.hs index 2e5649d3..51ec2e80 100644 --- a/src/Network/Tox/DHT/Transport.hs +++ b/src/Network/Tox/DHT/Transport.hs | |||
@@ -260,30 +260,6 @@ data FriendRequest = FriendRequest | |||
260 | } | 260 | } |
261 | deriving (Eq, Show) | 261 | deriving (Eq, Show) |
262 | 262 | ||
263 | data NoSpam = NoSpam !Word32 !(Maybe Word16) | ||
264 | |||
265 | instance Read NoSpam where | ||
266 | readsPrec d s = case break isSpace s of | ||
267 | (ws,rs) | (length ws == 8) -> base64decode rs (NoSpam <$> get <*> (Just <$> get)) ws | ||
268 | (ws,rs) | (length ws == 12) -> base16decode rs (NoSpam <$> get <*> (Just <$> get)) ws | ||
269 | _ -> [] | ||
270 | |||
271 | base64decode :: Monad m => t1 -> Get t -> String -> m (t, t1) | ||
272 | base64decode rs getter s = | ||
273 | either fail (\a -> return (a,rs)) | ||
274 | $ runGet getter | ||
275 | =<< Base64.decode (B8.pack s) | ||
276 | |||
277 | base16decode :: Monad m => t1 -> Get t -> String -> m (t, t1) | ||
278 | base16decode rs getter s = | ||
279 | either fail (\a -> return (a,rs)) | ||
280 | $ runGet getter | ||
281 | $ fst | ||
282 | $ Base16.decode (B8.pack s) | ||
283 | |||
284 | verifyChecksum :: PublicKey -> Word16 -> Either String () | ||
285 | verifyChecksum _ _ = return () -- TODO | ||
286 | |||
287 | 263 | ||
288 | -- When sent as a DHT request packet (this is the data sent in the DHT request | 264 | -- When sent as a DHT request packet (this is the data sent in the DHT request |
289 | -- packet): | 265 | -- packet): |