aboutsummaryrefslogtreecommitdiff
path: root/src/BTLS/BoringSSL/HKDF.chs
diff options
context:
space:
mode:
authorGravatar Benjamin Barenblat <bbaren@google.com>2018-08-31 17:14:38 -0400
committerGravatar Benjamin Barenblat <bbaren@google.com>2018-08-31 17:14:38 -0400
commitb1639dda870f22a78136b26295f98585e503fa98 (patch)
treeff69c9cbf0e4bdcc0e98e005227bf955d30b1682 /src/BTLS/BoringSSL/HKDF.chs
parent80f2fb2e3be2c4074fbfb0adbc47746d2d88813b (diff)
Marshal `ByteString` input arguments to `fun`s
Diffstat (limited to 'src/BTLS/BoringSSL/HKDF.chs')
-rw-r--r--src/BTLS/BoringSSL/HKDF.chs11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/BTLS/BoringSSL/HKDF.chs b/src/BTLS/BoringSSL/HKDF.chs
index 87945d5..7a3181b 100644
--- a/src/BTLS/BoringSSL/HKDF.chs
+++ b/src/BTLS/BoringSSL/HKDF.chs
@@ -16,18 +16,21 @@ module BTLS.BoringSSL.HKDF
( hkdfExtract, hkdfExpand
) where
+import Data.ByteString (ByteString)
import Foreign (Ptr)
import Foreign.C.Types
{#import BTLS.BoringSSL.Base#}
+import BTLS.Buffer (unsafeUseAsCBuffer)
import BTLS.Result
#include <openssl/hkdf.h>
{#fun HKDF_extract as hkdfExtract
- { id `Ptr CUChar', id `Ptr CULong', `Ptr EVPMD', id `Ptr CUChar', id `CULong'
- , id `Ptr CUChar', id `CULong' } -> `()' requireSuccess*-#}
+ { id `Ptr CUChar', id `Ptr CULong', `Ptr EVPMD'
+ , unsafeUseAsCBuffer* `ByteString'&, unsafeUseAsCBuffer* `ByteString'& }
+ -> `()' requireSuccess*-#}
{#fun HKDF_expand as hkdfExpand
- { id `Ptr CUChar', id `CULong', `Ptr EVPMD', id `Ptr CUChar', id `CULong'
- , id `Ptr CUChar', id `CULong' } -> `()' requireSuccess*-#}
+ { id `Ptr CUChar', id `CULong', `Ptr EVPMD', unsafeUseAsCBuffer* `ByteString'&
+ , unsafeUseAsCBuffer* `ByteString'& } -> `()' requireSuccess*-#}