diff options
Diffstat (limited to 'src/Network/Tox.hs')
-rw-r--r-- | src/Network/Tox.hs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/Network/Tox.hs b/src/Network/Tox.hs index 1567ef1a..4ce7c398 100644 --- a/src/Network/Tox.hs +++ b/src/Network/Tox.hs | |||
@@ -241,6 +241,18 @@ data Tox = Tox | |||
241 | , toxManager :: Connection.Manager ConnectionStatus ConnectionKey | 241 | , toxManager :: Connection.Manager ConnectionStatus ConnectionKey |
242 | } | 242 | } |
243 | 243 | ||
244 | -- | initiate a netcrypto session, blocking | ||
245 | netCrypto :: Tox -> SecretKey -> PublicKey -> IO NetCryptoSession | ||
246 | netCrypto tox myseckey theirpubkey = do | ||
247 | -- convert public key to NodeInfo check Roster | ||
248 | -- if no session: | ||
249 | -- 1) send dht key, actually maybe send dht-key regardless | ||
250 | -- 2) send handshakes to last seen ip's, if any | ||
251 | -- | ||
252 | -- if sessions found, is it using this private key? | ||
253 | -- if not, send handshake, this is separate session | ||
254 | error "todo" | ||
255 | |||
244 | getContactInfo :: Tox -> IO DHT.DHTPublicKey | 256 | getContactInfo :: Tox -> IO DHT.DHTPublicKey |
245 | getContactInfo Tox{toxCryptoKeys,toxRouting} = join $ atomically $ do | 257 | getContactInfo Tox{toxCryptoKeys,toxRouting} = join $ atomically $ do |
246 | r4 <- readTVar $ DHT.routing4 toxRouting | 258 | r4 <- readTVar $ DHT.routing4 toxRouting |