summaryrefslogtreecommitdiff
path: root/src/Network/Tox/Onion/Transport.hs
diff options
context:
space:
mode:
authorjoe <joe@jerkface.net>2017-10-21 21:35:37 -0400
committerjoe <joe@jerkface.net>2017-10-21 21:35:37 -0400
commitcbdcc6500d6bda9948268312fc0bfb17955e53c5 (patch)
treec45cf7e0a9d362799a984d81ca502bba808c7046 /src/Network/Tox/Onion/Transport.hs
parente508e05ae839091a109f3c253dcfeadb6f40982d (diff)
Now searches using store command when we own the key.
This gives us a usable token for storing when the search is complete.
Diffstat (limited to 'src/Network/Tox/Onion/Transport.hs')
-rw-r--r--src/Network/Tox/Onion/Transport.hs12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/Network/Tox/Onion/Transport.hs b/src/Network/Tox/Onion/Transport.hs
index e52c8faa..82f2c8a7 100644
--- a/src/Network/Tox/Onion/Transport.hs
+++ b/src/Network/Tox/Onion/Transport.hs
@@ -101,8 +101,8 @@ msgNonce (OnionAnnounceResponse _ n24 _) = n24
101msgNonce (OnionToRoute _ a) = assymNonce a 101msgNonce (OnionToRoute _ a) = assymNonce a
102msgNonce (OnionToRouteResponse a) = assymNonce a 102msgNonce (OnionToRouteResponse a) = assymNonce a
103 103
104data AliasSelector = SearchingAlias | AnnouncingAlias NodeId 104data AliasSelector = SearchingAlias | AnnouncingAlias SecretKey PublicKey
105 deriving (Eq,Ord,Show) 105 deriving (Eq,Show)
106 106
107data OnionDestination r 107data OnionDestination r
108 = OnionToOwner 108 = OnionToOwner
@@ -611,12 +611,8 @@ instance Sized OnionData where
611 611
612 612
613selectKey :: TransportCrypto -> OnionMessage f -> OnionDestination r -> IO (SecretKey, PublicKey) 613selectKey :: TransportCrypto -> OnionMessage f -> OnionDestination r -> IO (SecretKey, PublicKey)
614selectKey crypto _ rpath@(OnionDestination (AnnouncingAlias pkey) _ _) 614selectKey crypto _ rpath@(OnionDestination (AnnouncingAlias skey pkey) _ _)
615 = atomically $ do ks <- filter (\(sk,pk) -> pk == id2key pkey) 615 = return (skey, pkey)
616 <$> readTVar (userKeys crypto)
617 maybe (return $ aliasKey crypto rpath)
618 return
619 (listToMaybe ks)
620selectKey crypto msg rpath = return $ aliasKey crypto rpath 616selectKey crypto msg rpath = return $ aliasKey crypto rpath
621 617
622encrypt :: TransportCrypto -> OnionMessage Identity -> OnionDestination r -> IO (OnionMessage Encrypted, OnionDestination r) 618encrypt :: TransportCrypto -> OnionMessage Identity -> OnionDestination r -> IO (OnionMessage Encrypted, OnionDestination r)