1 #include <bindings.dsl.h>
2 #include <apr_random.h>
4 module Bindings.APR.Random where
7 import Bindings.APR.ErrNo
8 import Bindings.APR.Pools
9 import Bindings.APR.Thread.Proc
11 #opaque_t apr_crypto_hash_t
13 #callback apr_crypto_hash_init_t , Ptr <apr_crypto_hash_t> -> IO ()
14 #callback apr_crypto_hash_add_t , Ptr <apr_crypto_hash_t> -> Ptr () -> <apr_size_t> -> IO ()
15 #callback apr_crypto_hash_finish_t, Ptr <apr_crypto_hash_t> -> Ptr CUChar -> IO ()
17 #ccall apr_crypto_sha256_new, Ptr <apr_pool_t> -> IO (Ptr <apr_crypto_hash_t>)
19 #opaque_t apr_random_t
21 #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 ()
22 #ccall apr_random_standard_new , Ptr <apr_pool_t> -> IO (Ptr <apr_random_t>)
23 #ccall apr_random_add_entropy , Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO ()
24 #ccall apr_random_insecure_bytes, Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO <apr_status_t>
25 #ccall apr_random_secure_bytes , Ptr <apr_random_t> -> Ptr () -> <apr_size_t> -> IO <apr_status_t>
26 #ccall apr_random_barrier , Ptr <apr_random_t> -> IO ()
27 #ccall apr_random_secure_ready , Ptr <apr_random_t> -> IO <apr_status_t>
28 #ccall apr_random_insecure_ready, Ptr <apr_random_t> -> IO <apr_status_t>
29 #ccall apr_random_after_fork , Ptr <apr_proc_t> -> IO ()