From 822ed11366a9c8bfee6e6c8aa0f1ec548de00181 Mon Sep 17 00:00:00 2001 From: James Crayne Date: Sat, 3 Nov 2018 06:36:55 -0400 Subject: sendLossless and sendOffline had final tokens swapped somehow --- src/Network/Tox/Crypto/Handlers.hs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/Network/Tox/Crypto/Handlers.hs b/src/Network/Tox/Crypto/Handlers.hs index 8975e4dc..fd04e1c5 100644 --- a/src/Network/Tox/Crypto/Handlers.hs +++ b/src/Network/Tox/Crypto/Handlers.hs @@ -467,6 +467,7 @@ ncToWire :: STM (State,Nonce24,U.RangeMap TArray Word8 TVar) -> XMessage -> STM (Maybe (CryptoPacket Encrypted,Word32{-next packet no-})) ncToWire getState seqno bufend pktno msg = do + dtrace XNetCrypto ("ncToWire TOP OF FUNCTION " ++ show msg) (return ()) let typ = getMessageType msg typ64 = toWord64 typ let lsness msg = @@ -681,6 +682,7 @@ createNetCryptoOutQueue :: NetCryptoSessions -> SecretKey -> PublicKey -> Packet createNetCryptoOutQueue sessions newsession theirSessionKey pktq ncMyPacketNonce0 ncOutgoingIdMap0 = do let crypto = transportCrypto sessions let toWireIO = do + dput XNetCrypto "=========== toWireIO TOP ===================" f <- lookupNonceFunction crypto newsession theirSessionKey atomically $ do n24 <- readTVar ncMyPacketNonce0 @@ -761,6 +763,7 @@ tryAppendQueueOutgoing :: STM (State, Nonce24, U.RangeMap TArray Word8 TVar) -> CryptoMessage -> STM (OutGoingResult (CryptoPacket Encrypted)) tryAppendQueueOutgoing getExtra outq msg = do + dtrace XNetCrypto ("tryAppendQueueOutgoing=========>DEBUG====?> " ++ show msg) (return ()) pktno <- readTVar (nqPacketNo outq) nextno <- PB.expectingSequenceNumber (nqPacketBuffer outq) be <- PB.nextToSendSequenceNumber (nqPacketBuffer outq) @@ -1252,7 +1255,7 @@ sendCrypto :: TransportCrypto -> NetCryptoSession -> (STM ()) -> CryptoMessage - sendCrypto crypto session updateLocal cm = do HaveHandshake outq <- atomically $ readTVar (ncOutgoingQueue session) -- XXX: potential race? if shared secret comes out of sync with cache? - dput XNetCrypto "sendCrypto: enter " + dput XNetCrypto ("sendCrypto: ENTER MESSAGE: " ++ show cm) getOutGoingParam <- nqToWireIO outq dput XNetCrypto "sendCrypto: got the io extra stuff" ncTime <- atomically $ readTVar (ncTimeOut session) @@ -1299,12 +1302,13 @@ sendOnlineHook crypto session cm = do sendOffline :: TransportCrypto -> NetCryptoSession -> IO (Either String (CryptoPacket Encrypted)) sendOffline crypto session = do let cm=OneByte OFFLINE - sendLossless crypto session cm + sendLossless crypto session (OneByte OFFLINE) + sendLossless :: TransportCrypto -> NetCryptoSession -> CryptoMessage -> IO (Either String (CryptoPacket Encrypted)) sendLossless crypto session cm = do addMsgToLastN False (cm ^. messageType) session (Out cm) - sendCrypto crypto session (return ()) (OneByte OFFLINE) + sendCrypto crypto session (return ()) cm sendLossy :: TransportCrypto -> NetCryptoSession -> CryptoMessage -> IO (Either String (CryptoPacket Encrypted)) sendLossy crypto session cm = sendCryptoLossy crypto session (return ()) cm -- cgit v1.2.3