#ifndef APACHE_OS_H #define APACHE_OS_H #define PLATFORM "TPF" #ifdef errno #undef errno #endif /* * This file in included in all Apache source code. It contains definitions * of facilities available on _this_ operating system (HAVE_* macros), * and prototypes of OS specific functions defined in os.c or os-inline.c */ #include "ap_config.h" #if !defined(INLINE) && defined(USE_GNU_INLINE) /* Compiler supports inline, so include the inlineable functions as * part of the header */ #define INLINE extern ap_inline #include "os-inline.c" #endif #ifndef INLINE /* Compiler does not support inline, so prototype the inlineable functions * as normal */ extern int ap_os_is_path_absolute(const char *f); #endif /* Other ap_os_ routines not used by this platform */ #define ap_os_is_filename_valid(f) (1) #define ap_os_kill(pid, sig) kill(pid, sig) /* Sorry if this is ugly, but the include order doesn't allow me * to use request_rec here... */ struct request_rec; extern int ap_checkconv(struct request_rec *r); #include #ifndef __strings_h #define FD_SETSIZE 2048 typedef long fd_mask; #define NBBY 8 /* number of bits in a byte */ #define NFDBITS (sizeof(fd_mask) * NBBY) #define howmany(x, y) (((x)+((y)-1))/(y)) typedef struct fd_set { fd_mask fds_bits [howmany(FD_SETSIZE, NFDBITS)]; } fd_set; #define FD_CLR(n, p)((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS))) #define FD_ISSET(n, p)((p)->fds_bits[(n)/NFDBITS] & (1 <<((n) % NFDBITS))) #define FD_ZERO(p) memset((char *)(p), 0, sizeof(*(p))) #endif #ifdef FD_SET #undef FD_SET #define FD_SET(n, p) (0) #endif #define RESOURCE_KEY ((void*) 0xC1C2C1C3) /* TPF doesn't have, or need, tzset (it is used in mod_expires.c) */ #define tzset() #include struct apache_input { INETD_SERVER_INPUT inetd_server; void *scoreboard_heap; /* scoreboard system heap address */ int scoreboard_fd; /* scoreboard file descriptor */ int slot; /* child number */ int generation; /* server generation number */ int listeners[10]; time_t restart_time; }; typedef struct apache_input APACHE_TPF_INPUT; typedef struct tpf_fork_child { char *filename; enum { FORK_NAME = 1, FORK_FILE = 2 } prog_type; void *subprocess_env; }TPF_FORK_CHILD; int tpf_accept(int sockfd, struct sockaddr *peer, int *paddrlen); extern int tpf_child; struct server_rec; pid_t os_fork(struct server_rec *s, int slot); int os_check_server(char *server); char *getpass(const char *prompt); extern char *ap_server_argv0; extern int scoreboard_fd; #include #ifndef SIGPIPE #define SIGPIPE 14 #endif #ifdef NSIG #undef NSIG #endif #endif /*! APACHE_OS_H*/