/* $Cambridge: hermes/src/prayer/accountd/os.h,v 1.2 2004/10/01 12:42:27 dpc22 Exp $ */
/************************************************
* Prayer - a Webmail Interface *
************************************************/
/* Copyright (c) University of Cambridge 2000 - 2002 */
/* See the file NOTICE for conditions of use and distribution. */
/* External Interfere Prototypes for os.c */
BOOL os_socketpair(int *sockfd);
int os_connect_unix_socket(char *name);
int os_connect_inet_socket(char *host, unsigned long port);
int os_bind_unix_socket(char *name);
int os_bind_inet_socket(unsigned long port);
int os_accept_unix(int sockfd);
int os_accept_inet(int sockfd, struct ipaddr *ipaddr);
BOOL os_run(char *cmdline, int *fdp, int *childpidp);
BOOL os_run_pty(char *cmdline, int *fdp, int *childpidp);
void os_child_reaper();
pid_t os_waitpid_nohang();
BOOL os_signal_child_init(void (*fn) ());
BOOL os_signal_child_clear(void);
BOOL os_signal_alarm_init(void (*fn) ());
BOOL os_signal_alarm_clear(void);
BOOL os_lock_exclusive(int fd);
BOOL os_lock_shared(int fd);
BOOL os_lock_release(int fd);
BOOL os_lock_exclusive_allow_break(int fd);
BOOL os_lock_shared_allow_break(int fd);
BOOL os_lock_release_allow_break(int fd);
BOOL os_random(struct config *config, void *buffer, unsigned long count);
syntax highlighted by Code2HTML, v. 0.9.1