module Bindings.APR.Thread.Proc where
import Foreign.Ptr (Ptr,FunPtr,plusPtr)
import Foreign.Ptr (wordPtrToPtr,castPtrToFunPtr)
import Foreign.Storable
import Foreign.C.Types
import Foreign.C.String (CString,CStringLen,CWString,CWStringLen)
import Foreign.Marshal.Alloc (alloca)
import Foreign.Marshal.Array (peekArray,pokeArray)
import Data.Int
import Data.Word
import Bindings.APR
import Bindings.APR.ErrNo
import Bindings.APR.File.Types
import Bindings.APR.Pools
import System.Posix.Types
type C'apr_cmdtype_e = CUInt
c'APR_SHELLCMD = 0
c'APR_SHELLCMD :: (Num a) => a
c'APR_PROGRAM = 1
c'APR_PROGRAM :: (Num a) => a
c'APR_PROGRAM_ENV = 2
c'APR_PROGRAM_ENV :: (Num a) => a
c'APR_PROGRAM_PATH = 3
c'APR_PROGRAM_PATH :: (Num a) => a
c'APR_SHELLCMD_ENV = 4
c'APR_SHELLCMD_ENV :: (Num a) => a
type C'apr_wait_how_e = CUInt
c'APR_WAIT = 0
c'APR_WAIT :: (Num a) => a
c'APR_NOWAIT = 1
c'APR_NOWAIT :: (Num a) => a
type C'apr_exit_why_e = CUInt
c'APR_PROC_EXIT = 1
c'APR_PROC_EXIT :: (Num a) => a
c'APR_PROC_SIGNAL = 2
c'APR_PROC_SIGNAL :: (Num a) => a
c'APR_PROC_SIGNAL_CORE = 4
c'APR_PROC_SIGNAL_CORE :: (Num a) => a
foreign import ccall "inline_APR_PROC_CHECK_EXIT" c'APR_PROC_CHECK_EXIT
:: Ptr C'apr_exit_why_e -> IO CInt
foreign import ccall "inline_APR_PROC_CHECK_SIGNALED" c'APR_PROC_CHECK_SIGNALED
:: Ptr C'apr_exit_why_e -> IO CInt
foreign import ccall "inline_APR_PROC_CHECK_CORE_DUMP" c'APR_PROC_CHECK_CORE_DUMP
:: Ptr C'apr_exit_why_e -> IO CInt
c'APR_NO_PIPE = 0
c'APR_NO_PIPE :: (Num a) => a
c'APR_FULL_BLOCK = 1
c'APR_FULL_BLOCK :: (Num a) => a
c'APR_FULL_NONBLOCK = 2
c'APR_FULL_NONBLOCK :: (Num a) => a
c'APR_PARENT_BLOCK = 3
c'APR_PARENT_BLOCK :: (Num a) => a
c'APR_CHILD_BLOCK = 4
c'APR_CHILD_BLOCK :: (Num a) => a
c'APR_NO_FILE = 8
c'APR_NO_FILE :: (Num a) => a
c'APR_READ_BLOCK = 3
c'APR_READ_BLOCK :: (Num a) => a
c'APR_WRITE_BLOCK = 4
c'APR_WRITE_BLOCK :: (Num a) => a
c'APR_LIMIT_CPU = 0
c'APR_LIMIT_CPU :: (Num a) => a
c'APR_LIMIT_MEM = 1
c'APR_LIMIT_MEM :: (Num a) => a
c'APR_LIMIT_NPROC = 2
c'APR_LIMIT_NPROC :: (Num a) => a
c'APR_LIMIT_NOFILE = 3
c'APR_LIMIT_NOFILE :: (Num a) => a
c'APR_OC_REASON_DEATH = 0
c'APR_OC_REASON_DEATH :: (Num a) => a
c'APR_OC_REASON_UNWRITABLE = 1
c'APR_OC_REASON_UNWRITABLE :: (Num a) => a
c'APR_OC_REASON_RESTART = 2
c'APR_OC_REASON_RESTART :: (Num a) => a
c'APR_OC_REASON_UNREGISTER = 3
c'APR_OC_REASON_UNREGISTER :: (Num a) => a
c'APR_OC_REASON_LOST = 4
c'APR_OC_REASON_LOST :: (Num a) => a
c'APR_OC_REASON_RUNNING = 5
c'APR_OC_REASON_RUNNING :: (Num a) => a
data C'apr_proc_t = C'apr_proc_t{
c'apr_proc_t'pid :: CPid
,
c'apr_proc_t'in :: Ptr C'apr_file_t
,
c'apr_proc_t'out :: Ptr C'apr_file_t
,
c'apr_proc_t'err :: Ptr C'apr_file_t
} deriving (Eq,Show)
instance Storable C'apr_proc_t where
sizeOf _ = 16
alignment = sizeOf
peek p = do
v0 <- peekByteOff p 0
v1 <- peekByteOff p 4
v2 <- peekByteOff p 8
v3 <- peekByteOff p 12
return $ C'apr_proc_t v0 v1 v2 v3
poke p (C'apr_proc_t v0 v1 v2 v3) = do
pokeByteOff p 0 v0
pokeByteOff p 4 v1
pokeByteOff p 8 v2
pokeByteOff p 12 v3
return ()
type C'apr_child_errfn_t = FunPtr (Ptr C'apr_pool_t -> C'apr_status_t -> Ptr CChar -> IO ())
foreign import ccall "wrapper" mk'apr_child_errfn_t
:: (Ptr C'apr_pool_t -> C'apr_status_t -> Ptr CChar -> IO ()) -> IO C'apr_child_errfn_t
foreign import ccall "dynamic" mK'apr_child_errfn_t
:: C'apr_child_errfn_t -> (Ptr C'apr_pool_t -> C'apr_status_t -> Ptr CChar -> IO ())
data C'apr_thread_t = C'apr_thread_t
data C'apr_threadattr_t = C'apr_threadattr_t
data C'apr_procattr_t = C'apr_procattr_t
data C'apr_thread_once_t = C'apr_thread_once_t
data C'apr_threadkey_t = C'apr_threadkey_t
data C'apr_other_child_rec_t = C'apr_other_child_rec_t
type C'apr_thread_start_t = FunPtr (Ptr C'apr_thread_t -> Ptr () -> IO (Ptr ()))
foreign import ccall "wrapper" mk'apr_thread_start_t
:: (Ptr C'apr_thread_t -> Ptr () -> IO (Ptr ())) -> IO C'apr_thread_start_t
foreign import ccall "dynamic" mK'apr_thread_start_t
:: C'apr_thread_start_t -> (Ptr C'apr_thread_t -> Ptr () -> IO (Ptr ()))
type C'apr_kill_conditions_e = CUInt
c'APR_KILL_NEVER = 0
c'APR_KILL_NEVER :: (Num a) => a
c'APR_KILL_ALWAYS = 1
c'APR_KILL_ALWAYS :: (Num a) => a
c'APR_KILL_AFTER_TIMEOUT = 2
c'APR_KILL_AFTER_TIMEOUT :: (Num a) => a
c'APR_JUST_WAIT = 3
c'APR_JUST_WAIT :: (Num a) => a
c'APR_KILL_ONLY_ONCE = 4
c'APR_KILL_ONLY_ONCE :: (Num a) => a
foreign import ccall "apr_threadattr_create" c'apr_threadattr_create
:: Ptr (Ptr C'apr_threadattr_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_threadattr_create" p'apr_threadattr_create
:: FunPtr (Ptr (Ptr C'apr_threadattr_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_threadattr_detach_set" c'apr_threadattr_detach_set
:: Ptr C'apr_threadattr_t -> C'apr_int32_t -> IO C'apr_status_t
foreign import ccall "&apr_threadattr_detach_set" p'apr_threadattr_detach_set
:: FunPtr (Ptr C'apr_threadattr_t -> C'apr_int32_t -> IO C'apr_status_t)
foreign import ccall "apr_threadattr_detach_get" c'apr_threadattr_detach_get
:: Ptr C'apr_threadattr_t -> IO C'apr_status_t
foreign import ccall "&apr_threadattr_detach_get" p'apr_threadattr_detach_get
:: FunPtr (Ptr C'apr_threadattr_t -> IO C'apr_status_t)
foreign import ccall "apr_threadattr_stacksize_set" c'apr_threadattr_stacksize_set
:: Ptr C'apr_threadattr_t -> C'apr_size_t -> IO C'apr_status_t
foreign import ccall "&apr_threadattr_stacksize_set" p'apr_threadattr_stacksize_set
:: FunPtr (Ptr C'apr_threadattr_t -> C'apr_size_t -> IO C'apr_status_t)
foreign import ccall "apr_threadattr_guardsize_set" c'apr_threadattr_guardsize_set
:: Ptr C'apr_threadattr_t -> C'apr_size_t -> IO C'apr_status_t
foreign import ccall "&apr_threadattr_guardsize_set" p'apr_threadattr_guardsize_set
:: FunPtr (Ptr C'apr_threadattr_t -> C'apr_size_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_create" c'apr_thread_create
:: Ptr (Ptr C'apr_thread_t) -> Ptr C'apr_threadattr_t -> C'apr_thread_start_t -> Ptr () -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_create" p'apr_thread_create
:: FunPtr (Ptr (Ptr C'apr_thread_t) -> Ptr C'apr_threadattr_t -> C'apr_thread_start_t -> Ptr () -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_exit" c'apr_thread_exit
:: Ptr C'apr_thread_t -> C'apr_status_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_exit" p'apr_thread_exit
:: FunPtr (Ptr C'apr_thread_t -> C'apr_status_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_join" c'apr_thread_join
:: Ptr C'apr_status_t -> Ptr C'apr_thread_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_join" p'apr_thread_join
:: FunPtr (Ptr C'apr_status_t -> Ptr C'apr_thread_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_yield" c'apr_thread_yield
:: IO ()
foreign import ccall "&apr_thread_yield" p'apr_thread_yield
:: FunPtr (IO ())
foreign import ccall "apr_thread_once_init" c'apr_thread_once_init
:: Ptr (Ptr C'apr_thread_once_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_once_init" p'apr_thread_once_init
:: FunPtr (Ptr (Ptr C'apr_thread_once_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_once" c'apr_thread_once
:: Ptr C'apr_thread_once_t -> FunPtr (IO ()) -> IO C'apr_status_t
foreign import ccall "&apr_thread_once" p'apr_thread_once
:: FunPtr (Ptr C'apr_thread_once_t -> FunPtr (IO ()) -> IO C'apr_status_t)
foreign import ccall "apr_thread_detach" c'apr_thread_detach
:: Ptr C'apr_thread_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_detach" p'apr_thread_detach
:: FunPtr (Ptr C'apr_thread_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_data_get" c'apr_thread_data_get
:: Ptr (Ptr ()) -> Ptr CChar -> Ptr C'apr_thread_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_data_get" p'apr_thread_data_get
:: FunPtr (Ptr (Ptr ()) -> Ptr CChar -> Ptr C'apr_thread_t -> IO C'apr_status_t)
foreign import ccall "apr_thread_data_set" c'apr_thread_data_set
:: Ptr () -> Ptr CChar -> FunPtr (Ptr () -> IO C'apr_status_t) -> Ptr C'apr_thread_t -> IO C'apr_status_t
foreign import ccall "&apr_thread_data_set" p'apr_thread_data_set
:: FunPtr (Ptr () -> Ptr CChar -> FunPtr (Ptr () -> IO C'apr_status_t) -> Ptr C'apr_thread_t -> IO C'apr_status_t)
foreign import ccall "apr_threadkey_private_create" c'apr_threadkey_private_create
:: Ptr (Ptr C'apr_threadkey_t) -> FunPtr (Ptr () -> IO ()) -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_threadkey_private_create" p'apr_threadkey_private_create
:: FunPtr (Ptr (Ptr C'apr_threadkey_t) -> FunPtr (Ptr () -> IO ()) -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_threadkey_private_get" c'apr_threadkey_private_get
:: Ptr (Ptr ()) -> Ptr C'apr_threadkey_t -> IO C'apr_status_t
foreign import ccall "&apr_threadkey_private_get" p'apr_threadkey_private_get
:: FunPtr (Ptr (Ptr ()) -> Ptr C'apr_threadkey_t -> IO C'apr_status_t)
foreign import ccall "apr_threadkey_private_set" c'apr_threadkey_private_set
:: Ptr () -> Ptr C'apr_threadkey_t -> IO C'apr_status_t
foreign import ccall "&apr_threadkey_private_set" p'apr_threadkey_private_set
:: FunPtr (Ptr () -> Ptr C'apr_threadkey_t -> IO C'apr_status_t)
foreign import ccall "apr_threadkey_private_delete" c'apr_threadkey_private_delete
:: Ptr C'apr_threadkey_t -> Ptr C'apr_status_t
foreign import ccall "&apr_threadkey_private_delete" p'apr_threadkey_private_delete
:: FunPtr (Ptr C'apr_threadkey_t -> Ptr C'apr_status_t)
foreign import ccall "apr_threadkey_data_get" c'apr_threadkey_data_get
:: Ptr (Ptr ()) -> Ptr CChar -> Ptr C'apr_threadkey_t -> IO C'apr_status_t
foreign import ccall "&apr_threadkey_data_get" p'apr_threadkey_data_get
:: FunPtr (Ptr (Ptr ()) -> Ptr CChar -> Ptr C'apr_threadkey_t -> IO C'apr_status_t)
foreign import ccall "apr_threadkey_data_set" c'apr_threadkey_data_set
:: Ptr () -> Ptr CChar -> FunPtr (Ptr () -> IO C'apr_status_t) -> Ptr C'apr_threadkey_t -> IO C'apr_status_t
foreign import ccall "&apr_threadkey_data_set" p'apr_threadkey_data_set
:: FunPtr (Ptr () -> Ptr CChar -> FunPtr (Ptr () -> IO C'apr_status_t) -> Ptr C'apr_threadkey_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_create" c'apr_procattr_create
:: Ptr (Ptr C'apr_procattr_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_create" p'apr_procattr_create
:: FunPtr (Ptr (Ptr C'apr_procattr_t) -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_io_set" c'apr_procattr_io_set
:: Ptr C'apr_procattr_t -> C'apr_int32_t -> C'apr_int32_t -> C'apr_int32_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_io_set" p'apr_procattr_io_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_int32_t -> C'apr_int32_t -> C'apr_int32_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_child_in_set" c'apr_procattr_child_in_set
:: Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_child_in_set" p'apr_procattr_child_in_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_child_out_set" c'apr_procattr_child_out_set
:: Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_child_out_set" p'apr_procattr_child_out_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_child_err_set" c'apr_procattr_child_err_set
:: Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_child_err_set" p'apr_procattr_child_err_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr C'apr_file_t -> Ptr C'apr_file_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_dir_set" c'apr_procattr_dir_set
:: Ptr C'apr_procattr_t -> Ptr CChar -> IO C'apr_status_t
foreign import ccall "&apr_procattr_dir_set" p'apr_procattr_dir_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr CChar -> IO C'apr_status_t)
foreign import ccall "apr_procattr_cmdtype_set" c'apr_procattr_cmdtype_set
:: Ptr C'apr_procattr_t -> C'apr_cmdtype_e -> IO C'apr_status_t
foreign import ccall "&apr_procattr_cmdtype_set" p'apr_procattr_cmdtype_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_cmdtype_e -> IO C'apr_status_t)
foreign import ccall "apr_procattr_detach_set" c'apr_procattr_detach_set
:: Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_detach_set" p'apr_procattr_detach_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_child_errfn_set" c'apr_procattr_child_errfn_set
:: Ptr C'apr_procattr_t -> C'apr_child_errfn_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_child_errfn_set" p'apr_procattr_child_errfn_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_child_errfn_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_error_check_set" c'apr_procattr_error_check_set
:: Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_error_check_set" p'apr_procattr_error_check_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_addrspace_set" c'apr_procattr_addrspace_set
:: Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t
foreign import ccall "&apr_procattr_addrspace_set" p'apr_procattr_addrspace_set
:: FunPtr (Ptr C'apr_procattr_t -> C'apr_int32_t -> IO C'apr_status_t)
foreign import ccall "apr_procattr_user_set" c'apr_procattr_user_set
:: Ptr C'apr_procattr_t -> Ptr CChar -> Ptr CChar -> IO C'apr_status_t
foreign import ccall "&apr_procattr_user_set" p'apr_procattr_user_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr CChar -> Ptr CChar -> IO C'apr_status_t)
foreign import ccall "apr_procattr_group_set" c'apr_procattr_group_set
:: Ptr C'apr_procattr_t -> Ptr CChar -> Ptr C'apr_status_t
foreign import ccall "&apr_procattr_group_set" p'apr_procattr_group_set
:: FunPtr (Ptr C'apr_procattr_t -> Ptr CChar -> Ptr C'apr_status_t)
foreign import ccall "apr_proc_fork" c'apr_proc_fork
:: Ptr C'apr_proc_t -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_proc_fork" p'apr_proc_fork
:: FunPtr (Ptr C'apr_proc_t -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_proc_create" c'apr_proc_create
:: Ptr C'apr_proc_t -> Ptr CChar -> Ptr (Ptr CChar) -> Ptr (Ptr CChar) -> Ptr C'apr_procattr_t -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_proc_create" p'apr_proc_create
:: FunPtr (Ptr C'apr_proc_t -> Ptr CChar -> Ptr (Ptr CChar) -> Ptr (Ptr CChar) -> Ptr C'apr_procattr_t -> Ptr C'apr_pool_t -> IO C'apr_status_t)
foreign import ccall "apr_proc_wait" c'apr_proc_wait
:: Ptr C'apr_proc_t -> Ptr CInt -> Ptr C'apr_exit_why_e -> C'apr_wait_how_e -> IO C'apr_status_t
foreign import ccall "&apr_proc_wait" p'apr_proc_wait
:: FunPtr (Ptr C'apr_proc_t -> Ptr CInt -> Ptr C'apr_exit_why_e -> C'apr_wait_how_e -> IO C'apr_status_t)
foreign import ccall "apr_proc_wait_all_procs" c'apr_proc_wait_all_procs
:: Ptr C'apr_proc_t -> Ptr CInt -> Ptr C'apr_exit_why_e -> C'apr_wait_how_e -> Ptr C'apr_pool_t -> IO C'apr_status_t
foreign import ccall "&apr_proc_wait_all_procs" p'apr_proc_wait_all_procs
:: FunPtr (Ptr C'apr_proc_t -> Ptr CInt -> Ptr C'apr_exit_why_e -> C'apr_wait_how_e -> Ptr C'apr_pool_t -> IO C'apr_status_t)
c'APR_PROC_DETACH_FOREGROUND = 0
c'APR_PROC_DETACH_FOREGROUND :: (Num a) => a
c'APR_PROC_DETACH_DAEMONIZE = 1
c'APR_PROC_DETACH_DAEMONIZE :: (Num a) => a
foreign import ccall "apr_proc_detach" c'apr_proc_detach
:: CInt -> IO C'apr_status_t
foreign import ccall "&apr_proc_detach" p'apr_proc_detach
:: FunPtr (CInt -> IO C'apr_status_t)
foreign import ccall "apr_proc_other_child_register" c'apr_proc_other_child_register
:: Ptr C'apr_proc_t -> FunPtr (CInt -> Ptr () -> CInt -> IO ()) -> Ptr () -> Ptr C'apr_file_t -> Ptr C'apr_pool_t -> IO ()
foreign import ccall "&apr_proc_other_child_register" p'apr_proc_other_child_register
:: FunPtr (Ptr C'apr_proc_t -> FunPtr (CInt -> Ptr () -> CInt -> IO ()) -> Ptr () -> Ptr C'apr_file_t -> Ptr C'apr_pool_t -> IO ())
foreign import ccall "apr_proc_other_child_unregister" c'apr_proc_other_child_unregister
:: Ptr () -> IO ()
foreign import ccall "&apr_proc_other_child_unregister" p'apr_proc_other_child_unregister
:: FunPtr (Ptr () -> IO ())
foreign import ccall "apr_proc_other_child_alert" c'apr_proc_other_child_alert
:: Ptr C'apr_proc_t -> CInt -> CInt -> IO C'apr_status_t
foreign import ccall "&apr_proc_other_child_alert" p'apr_proc_other_child_alert
:: FunPtr (Ptr C'apr_proc_t -> CInt -> CInt -> IO C'apr_status_t)
foreign import ccall "apr_proc_other_child_refresh" c'apr_proc_other_child_refresh
:: Ptr C'apr_other_child_rec_t -> CInt -> IO ()
foreign import ccall "&apr_proc_other_child_refresh" p'apr_proc_other_child_refresh
:: FunPtr (Ptr C'apr_other_child_rec_t -> CInt -> IO ())
foreign import ccall "apr_proc_other_child_refresh_all" c'apr_proc_other_child_refresh_all
:: CInt -> IO ()
foreign import ccall "&apr_proc_other_child_refresh_all" p'apr_proc_other_child_refresh_all
:: FunPtr (CInt -> IO ())
foreign import ccall "apr_proc_kill" c'apr_proc_kill
:: Ptr C'apr_proc_t -> CInt -> IO C'apr_status_t
foreign import ccall "&apr_proc_kill" p'apr_proc_kill
:: FunPtr (Ptr C'apr_proc_t -> CInt -> IO C'apr_status_t)
foreign import ccall "apr_pool_note_subprocess" c'apr_pool_note_subprocess
:: Ptr C'apr_pool_t -> Ptr C'apr_pool_t -> C'apr_kill_conditions_e -> IO ()
foreign import ccall "&apr_pool_note_subprocess" p'apr_pool_note_subprocess
:: FunPtr (Ptr C'apr_pool_t -> Ptr C'apr_pool_t -> C'apr_kill_conditions_e -> IO ())
foreign import ccall "apr_setup_signal_thread" c'apr_setup_signal_thread
:: IO C'apr_status_t
foreign import ccall "&apr_setup_signal_thread" p'apr_setup_signal_thread
:: FunPtr (IO C'apr_status_t)
foreign import ccall "apr_signal_thread" c'apr_signal_thread
:: FunPtr (CInt -> IO CInt) -> IO C'apr_status_t
foreign import ccall "&apr_signal_thread" p'apr_signal_thread
:: FunPtr (FunPtr (CInt -> IO CInt) -> IO C'apr_status_t)
foreign import ccall "apr_thread_pool_get" c'apr_thread_pool_get
:: Ptr C'apr_thread_t -> IO (Ptr C'apr_pool_t)
foreign import ccall "&apr_thread_pool_get" p'apr_thread_pool_get
:: FunPtr (Ptr C'apr_thread_t -> IO (Ptr C'apr_pool_t))