]> gitweb @ CieloNegro.org - bindings-apr.git/commitdiff
Bindings.APR.Random
authorPHO <pho@cielonegro.org>
Sat, 21 Aug 2010 04:54:54 +0000 (13:54 +0900)
committerPHO <pho@cielonegro.org>
Sat, 21 Aug 2010 04:54:54 +0000 (13:54 +0900)
Bindings/APR/Portable.hsc
Bindings/APR/Random.hsc [new file with mode: 0644]
bindings-apr.cabal

index 288b49f0038365d41298d082a7daad94ef4b69ac..498b17d51633c0a2787b9ae473957c44b5fa3f3e 100644 (file)
@@ -31,7 +31,7 @@ import Bindings.APR.Time
 
 #starttype struct apr_os_sock_info_t
 #  field os_sock , Ptr <apr_os_sock_t>
--- FIXME
+-- FIXME: sockaddr
 -- #  field local   , Ptr <sockaddr>
 -- #  field remote  , Ptr <sockaddr>
 #  field family  , CInt
diff --git a/Bindings/APR/Random.hsc b/Bindings/APR/Random.hsc
new file mode 100644 (file)
index 0000000..b20b9fa
--- /dev/null
@@ -0,0 +1,29 @@
+#include <bindings.dsl.h>
+#include <apr_random.h>
+
+module Bindings.APR.Random where
+#strict_import
+import Bindings.APR
+import Bindings.APR.ErrNo
+import Bindings.APR.Pools
+import Bindings.APR.Thread.Proc
+
+#opaque_t apr_crypto_hash_t
+
+#callback apr_crypto_hash_init_t  , Ptr <apr_crypto_hash_t> -> IO ()
+#callback apr_crypto_hash_add_t   , Ptr <apr_crypto_hash_t> -> Ptr () -> <apr_size_t> -> IO ()
+#callback apr_crypto_hash_finish_t, Ptr <apr_crypto_hash_t> -> Ptr CUChar -> IO ()
+
+#ccall apr_crypto_sha256_new, Ptr <apr_pool_t> -> IO (Ptr <apr_crypto_hash_t>)
+
+#opaque_t apr_random_t
+
+#ccall apr_random_init          , Ptr <apr_random_t> -> Ptr <apr_pool_t> -> Ptr <apr_crypto_hash_t> -> Ptr <apr_crypto_hash_t> -> Ptr <apr_crypto_hash_t> -> IO ()
+#ccall apr_random_standard_new  , Ptr <apr_pool_t> -> IO (Ptr <apr_random_t>)
+#ccall apr_random_add_entropy   , Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO ()
+#ccall apr_random_insecure_bytes, Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO <apr_status_t>
+#ccall apr_random_secure_bytes  , Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO <apr_status_t>
+#ccall apr_random_barrier       , Ptr <apr_random_t> -> IO ()
+#ccall apr_random_secure_ready  , Ptr <apr_random_t> -> IO <apr_status_t>
+#ccall apr_random_insecure_ready, Ptr <apr_random_t> -> IO <apr_status_t>
+#ccall apr_random_after_fork    , Ptr <apr_proc_t> -> IO ()
index 1e573ceafb6dea7a74659edcf02045a1ef954f2b..3d77c06fc23899f515f103fa93a2d89123556ad6 100644 (file)
@@ -51,6 +51,7 @@ Library
         Bindings.APR.Pools
         Bindings.APR.Portable
         Bindings.APR.Proc.Mutex
+        Bindings.APR.Random
         Bindings.APR.Shm
         Bindings.APR.Tables
         Bindings.APR.Thread.Mutex