@@ -10,11 +10,10 @@ import Data.Bifunctor (bimap)
1010import Data.ByteArray (ScrubbedBytes )
1111import qualified Data.ByteArray as BA
1212import Data.ByteString (ByteString )
13- import Foreign (nullPtr )
1413import Simplex.Messaging.Agent.Store.DB (FromField (.. ), ToField (.. ))
1514import Simplex.Messaging.Crypto.SNTRUP761.Bindings.Defines
1615import Simplex.Messaging.Crypto.SNTRUP761.Bindings.FFI
17- import Simplex.Messaging.Crypto.SNTRUP761.Bindings.RNG (withDRG )
16+ import Simplex.Messaging.Crypto.SNTRUP761.Bindings.RNG (rngFuncPtr , withDRG )
1817import Simplex.Messaging.Encoding
1918import Simplex.Messaging.Encoding.String
2019
@@ -43,7 +42,7 @@ sntrup761Keypair drg =
4342 c_SNTRUP761_SECRETKEY_SIZE
4443 ( \ skPtr ->
4544 BA. alloc c_SNTRUP761_PUBLICKEY_SIZE $ \ pkPtr ->
46- withDRG drg $ c_sntrup761_keypair pkPtr skPtr nullPtr
45+ withDRG drg $ \ cxtPtr -> c_sntrup761_keypair pkPtr skPtr cxtPtr rngFuncPtr
4746 )
4847
4948sntrup761Enc :: TVar ChaChaDRG -> KEMPublicKey -> IO (KEMCiphertext , KEMSharedKey )
@@ -54,7 +53,7 @@ sntrup761Enc drg (KEMPublicKey pk) =
5453 c_SNTRUP761_SIZE
5554 ( \ kPtr ->
5655 BA. alloc c_SNTRUP761_CIPHERTEXT_SIZE $ \ cPtr ->
57- withDRG drg $ c_sntrup761_enc cPtr kPtr pkPtr nullPtr
56+ withDRG drg $ \ cxtPtr -> c_sntrup761_enc cPtr kPtr pkPtr cxtPtr rngFuncPtr
5857 )
5958
6059sntrup761Dec :: KEMCiphertext -> KEMSecretKey -> IO KEMSharedKey
0 commit comments