aboutsummaryrefslogtreecommitdiff
path: root/src/BTLS/BoringSSL
diff options
context:
space:
mode:
authorGravatar Benjamin Barenblat <bbaren@google.com>2018-09-25 18:13:26 -0400
committerGravatar Benjamin Barenblat <bbaren@google.com>2018-09-25 18:13:26 -0400
commit100fc7dc0c7ce85aad0e413b97a90b98185326ef (patch)
tree4a4fc7e8bc296b0069166fea55fe9456fa994cb0 /src/BTLS/BoringSSL
parenta643f96bd1b8048a08277f7992ca7d43ee2423c3 (diff)
Give `Algorithm` a `Show` instance
Diffstat (limited to 'src/BTLS/BoringSSL')
-rw-r--r--src/BTLS/BoringSSL/Digest.chs3
-rw-r--r--src/BTLS/BoringSSL/Obj.chs23
2 files changed, 26 insertions, 0 deletions
diff --git a/src/BTLS/BoringSSL/Digest.chs b/src/BTLS/BoringSSL/Digest.chs
index c919125..793cc68 100644
--- a/src/BTLS/BoringSSL/Digest.chs
+++ b/src/BTLS/BoringSSL/Digest.chs
@@ -19,6 +19,7 @@ module BTLS.BoringSSL.Digest
, mallocEVPMDCtx
, evpDigestInitEx, evpDigestUpdate, evpDigestFinalEx
, evpMaxMDSize
+ , evpMDType
) where
import Data.ByteString (ByteString)
@@ -63,6 +64,8 @@ foreign import ccall "&btlsFinalizeEVPMDCtx"
evpMaxMDSize :: Int
evpMaxMDSize = {#const EVP_MAX_MD_SIZE#}
+{#fun pure EVP_MD_type as evpMDType {`Ptr EVPMD'} -> `Int'#}
+
instance Storable EVPMDCtx where
sizeOf _ = {#sizeof EVP_MD_CTX#}
alignment _ = {#alignof EVP_MD_CTX#}
diff --git a/src/BTLS/BoringSSL/Obj.chs b/src/BTLS/BoringSSL/Obj.chs
new file mode 100644
index 0000000..a337ad5
--- /dev/null
+++ b/src/BTLS/BoringSSL/Obj.chs
@@ -0,0 +1,23 @@
+-- Copyright 2018 Google LLC
+--
+-- Licensed under the Apache License, Version 2.0 (the "License"); you may not
+-- use this file except in compliance with the License. You may obtain a copy of
+-- the License at
+--
+-- https://www.apache.org/licenses/LICENSE-2.0
+--
+-- Unless required by applicable law or agreed to in writing, software
+-- distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+-- WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+-- License for the specific language governing permissions and limitations under
+-- the License.
+
+module BTLS.BoringSSL.Obj
+ ( objNID2SN
+ ) where
+
+import Foreign.C (CString)
+
+#include <openssl/obj.h>
+
+{#fun pure OBJ_nid2sn as objNID2SN {`Int'} -> `CString'#}