manoj 99/08/13 14:55:19
Modified: mpm/src/modules/mpm/dexter dexter.c mpm/src/modules/mpm/mpmt_pthread mpmt_pthread.c mpm/src/modules/mpm/prefork prefork.c mpm/src/os/unix unixd.c unixd.h Log: Move the ap_sys_siglist code from the Unix MPMs to unixd.[ch] Revision Changes Path 1.24 +1 -132 apache-2.0/mpm/src/modules/mpm/dexter/dexter.c Index: dexter.c =================================================================== RCS file: /home/cvs/apache-2.0/mpm/src/modules/mpm/dexter/dexter.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -u -r1.23 -r1.24 --- dexter.c 1999/08/13 19:47:01 1.23 +++ dexter.c 1999/08/13 21:49:57 1.24 @@ -424,137 +424,6 @@ return -1; } -#if defined(NSIG) -#define NumSIG NSIG -#elif defined(_NSIG) -#define NumSIG _NSIG -#elif defined(__NSIG) -#define NumSIG __NSIG -#else -#define NumSIG 32 /* for 1998's unixes, this is still a good assumption */ -#endif - -#ifdef SYS_SIGLIST /* platform has sys_siglist[] */ -#define INIT_SIGLIST() /*nothing*/ -#else /* platform has no sys_siglist[], define our own */ -#define SYS_SIGLIST ap_sys_siglist -#define INIT_SIGLIST() siglist_init(); - -const char *ap_sys_siglist[NumSIG]; - -static void siglist_init(void) -{ - int sig; - - ap_sys_siglist[0] = "Signal 0"; -#ifdef SIGHUP - ap_sys_siglist[SIGHUP] = "Hangup"; -#endif -#ifdef SIGINT - ap_sys_siglist[SIGINT] = "Interrupt"; -#endif -#ifdef SIGQUIT - ap_sys_siglist[SIGQUIT] = "Quit"; -#endif -#ifdef SIGILL - ap_sys_siglist[SIGILL] = "Illegal instruction"; -#endif -#ifdef SIGTRAP - ap_sys_siglist[SIGTRAP] = "Trace/BPT trap"; -#endif -#ifdef SIGIOT - ap_sys_siglist[SIGIOT] = "IOT instruction"; -#endif -#ifdef SIGABRT - ap_sys_siglist[SIGABRT] = "Abort"; -#endif -#ifdef SIGEMT - ap_sys_siglist[SIGEMT] = "Emulator trap"; -#endif -#ifdef SIGFPE - ap_sys_siglist[SIGFPE] = "Arithmetic exception"; -#endif -#ifdef SIGKILL - ap_sys_siglist[SIGKILL] = "Killed"; -#endif -#ifdef SIGBUS - ap_sys_siglist[SIGBUS] = "Bus error"; -#endif -#ifdef SIGSEGV - ap_sys_siglist[SIGSEGV] = "Segmentation fault"; -#endif -#ifdef SIGSYS - ap_sys_siglist[SIGSYS] = "Bad system call"; -#endif -#ifdef SIGPIPE - ap_sys_siglist[SIGPIPE] = "Broken pipe"; -#endif -#ifdef SIGALRM - ap_sys_siglist[SIGALRM] = "Alarm clock"; -#endif -#ifdef SIGTERM - ap_sys_siglist[SIGTERM] = "Terminated"; -#endif -#ifdef SIGUSR1 - ap_sys_siglist[SIGUSR1] = "User defined signal 1"; -#endif -#ifdef SIGUSR2 - ap_sys_siglist[SIGUSR2] = "User defined signal 2"; -#endif -#ifdef SIGCLD - ap_sys_siglist[SIGCLD] = "Child status change"; -#endif -#ifdef SIGCHLD - ap_sys_siglist[SIGCHLD] = "Child status change"; -#endif -#ifdef SIGPWR - ap_sys_siglist[SIGPWR] = "Power-fail restart"; -#endif -#ifdef SIGWINCH - ap_sys_siglist[SIGWINCH] = "Window changed"; -#endif -#ifdef SIGURG - ap_sys_siglist[SIGURG] = "urgent socket condition"; -#endif -#ifdef SIGPOLL - ap_sys_siglist[SIGPOLL] = "Pollable event occurred"; -#endif -#ifdef SIGIO - ap_sys_siglist[SIGIO] = "socket I/O possible"; -#endif -#ifdef SIGSTOP - ap_sys_siglist[SIGSTOP] = "Stopped (signal)"; -#endif -#ifdef SIGTSTP - ap_sys_siglist[SIGTSTP] = "Stopped"; -#endif -#ifdef SIGCONT - ap_sys_siglist[SIGCONT] = "Continued"; -#endif -#ifdef SIGTTIN - ap_sys_siglist[SIGTTIN] = "Stopped (tty input)"; -#endif -#ifdef SIGTTOU - ap_sys_siglist[SIGTTOU] = "Stopped (tty output)"; -#endif -#ifdef SIGVTALRM - ap_sys_siglist[SIGVTALRM] = "virtual timer expired"; -#endif -#ifdef SIGPROF - ap_sys_siglist[SIGPROF] = "profiling timer expired"; -#endif -#ifdef SIGXCPU - ap_sys_siglist[SIGXCPU] = "exceeded cpu limit"; -#endif -#ifdef SIGXFSZ - ap_sys_siglist[SIGXFSZ] = "exceeded file size limit"; -#endif - for (sig=0; sig < sizeof(ap_sys_siglist)/sizeof(ap_sys_siglist[0]); ++sig) - if (ap_sys_siglist[sig] == NULL) - ap_sys_siglist[sig] = ""; -} -#endif /* platform has sys_siglist[] */ - /* handle all varieties of core dumping signals */ static void sig_coredump(int sig) { @@ -794,7 +663,7 @@ } } } - + static int setup_listeners(pool *pconf, server_rec *s) { ap_listen_rec *lr; 1.27 +1 -132 apache-2.0/mpm/src/modules/mpm/mpmt_pthread/mpmt_pthread.c Index: mpmt_pthread.c =================================================================== RCS file: /home/cvs/apache-2.0/mpm/src/modules/mpm/mpmt_pthread/mpmt_pthread.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -u -r1.26 -r1.27 --- mpmt_pthread.c 1999/08/13 06:57:52 1.26 +++ mpmt_pthread.c 1999/08/13 21:50:55 1.27 @@ -432,137 +432,6 @@ return -1; } -#if defined(NSIG) -#define NumSIG NSIG -#elif defined(_NSIG) -#define NumSIG _NSIG -#elif defined(__NSIG) -#define NumSIG __NSIG -#else -#define NumSIG 32 /* for 1998's unixes, this is still a good assumption */ -#endif - -#ifdef SYS_SIGLIST /* platform has sys_siglist[] */ -#define INIT_SIGLIST() /*nothing*/ -#else /* platform has no sys_siglist[], define our own */ -#define SYS_SIGLIST ap_sys_siglist -#define INIT_SIGLIST() siglist_init(); - -const char *ap_sys_siglist[NumSIG]; - -static void siglist_init(void) -{ - int sig; - - ap_sys_siglist[0] = "Signal 0"; -#ifdef SIGHUP - ap_sys_siglist[SIGHUP] = "Hangup"; -#endif -#ifdef SIGINT - ap_sys_siglist[SIGINT] = "Interrupt"; -#endif -#ifdef SIGQUIT - ap_sys_siglist[SIGQUIT] = "Quit"; -#endif -#ifdef SIGILL - ap_sys_siglist[SIGILL] = "Illegal instruction"; -#endif -#ifdef SIGTRAP - ap_sys_siglist[SIGTRAP] = "Trace/BPT trap"; -#endif -#ifdef SIGIOT - ap_sys_siglist[SIGIOT] = "IOT instruction"; -#endif -#ifdef SIGABRT - ap_sys_siglist[SIGABRT] = "Abort"; -#endif -#ifdef SIGEMT - ap_sys_siglist[SIGEMT] = "Emulator trap"; -#endif -#ifdef SIGFPE - ap_sys_siglist[SIGFPE] = "Arithmetic exception"; -#endif -#ifdef SIGKILL - ap_sys_siglist[SIGKILL] = "Killed"; -#endif -#ifdef SIGBUS - ap_sys_siglist[SIGBUS] = "Bus error"; -#endif -#ifdef SIGSEGV - ap_sys_siglist[SIGSEGV] = "Segmentation fault"; -#endif -#ifdef SIGSYS - ap_sys_siglist[SIGSYS] = "Bad system call"; -#endif -#ifdef SIGPIPE - ap_sys_siglist[SIGPIPE] = "Broken pipe"; -#endif -#ifdef SIGALRM - ap_sys_siglist[SIGALRM] = "Alarm clock"; -#endif -#ifdef SIGTERM - ap_sys_siglist[SIGTERM] = "Terminated"; -#endif -#ifdef SIGUSR1 - ap_sys_siglist[SIGUSR1] = "User defined signal 1"; -#endif -#ifdef SIGUSR2 - ap_sys_siglist[SIGUSR2] = "User defined signal 2"; -#endif -#ifdef SIGCLD - ap_sys_siglist[SIGCLD] = "Child status change"; -#endif -#ifdef SIGCHLD - ap_sys_siglist[SIGCHLD] = "Child status change"; -#endif -#ifdef SIGPWR - ap_sys_siglist[SIGPWR] = "Power-fail restart"; -#endif -#ifdef SIGWINCH - ap_sys_siglist[SIGWINCH] = "Window changed"; -#endif -#ifdef SIGURG - ap_sys_siglist[SIGURG] = "urgent socket condition"; -#endif -#ifdef SIGPOLL - ap_sys_siglist[SIGPOLL] = "Pollable event occurred"; -#endif -#ifdef SIGIO - ap_sys_siglist[SIGIO] = "socket I/O possible"; -#endif -#ifdef SIGSTOP - ap_sys_siglist[SIGSTOP] = "Stopped (signal)"; -#endif -#ifdef SIGTSTP - ap_sys_siglist[SIGTSTP] = "Stopped"; -#endif -#ifdef SIGCONT - ap_sys_siglist[SIGCONT] = "Continued"; -#endif -#ifdef SIGTTIN - ap_sys_siglist[SIGTTIN] = "Stopped (tty input)"; -#endif -#ifdef SIGTTOU - ap_sys_siglist[SIGTTOU] = "Stopped (tty output)"; -#endif -#ifdef SIGVTALRM - ap_sys_siglist[SIGVTALRM] = "virtual timer expired"; -#endif -#ifdef SIGPROF - ap_sys_siglist[SIGPROF] = "profiling timer expired"; -#endif -#ifdef SIGXCPU - ap_sys_siglist[SIGXCPU] = "exceeded cpu limit"; -#endif -#ifdef SIGXFSZ - ap_sys_siglist[SIGXFSZ] = "exceeded file size limit"; -#endif - for (sig=0; sig < sizeof(ap_sys_siglist)/sizeof(ap_sys_siglist[0]); ++sig) - if (ap_sys_siglist[sig] == NULL) - ap_sys_siglist[sig] = ""; -} -#endif /* platform has sys_siglist[] */ - /* handle all varieties of core dumping signals */ static void sig_coredump(int sig) { @@ -803,7 +672,7 @@ } } } - + static int setup_listeners(pool *pconf, server_rec *s) { ap_listen_rec *lr; 1.27 +0 -133 apache-2.0/mpm/src/modules/mpm/prefork/prefork.c Index: prefork.c =================================================================== RCS file: /home/cvs/apache-2.0/mpm/src/modules/mpm/prefork/prefork.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -u -r1.26 -r1.27 --- prefork.c 1999/08/13 06:57:56 1.26 +++ prefork.c 1999/08/13 21:52:56 1.27 @@ -1704,139 +1704,6 @@ return -1; } - -#if defined(NSIG) -#define NumSIG NSIG -#elif defined(_NSIG) -#define NumSIG _NSIG -#elif defined(__NSIG) -#define NumSIG __NSIG -#else -#define NumSIG 32 /* for 1998's unixes, this is still a good assumption */ -#endif - -#ifdef SYS_SIGLIST /* platform has sys_siglist[] */ -#define INIT_SIGLIST() /*nothing*/ -#else /* platform has no sys_siglist[], define our own */ -#define SYS_SIGLIST ap_sys_siglist -#define INIT_SIGLIST() siglist_init(); - -const char *ap_sys_siglist[NumSIG]; - -static void siglist_init(void) -{ - int sig; - - ap_sys_siglist[0] = "Signal 0"; -#ifdef SIGHUP - ap_sys_siglist[SIGHUP] = "Hangup"; -#endif -#ifdef SIGINT - ap_sys_siglist[SIGINT] = "Interrupt"; -#endif -#ifdef SIGQUIT - ap_sys_siglist[SIGQUIT] = "Quit"; -#endif -#ifdef SIGILL - ap_sys_siglist[SIGILL] = "Illegal instruction"; -#endif -#ifdef SIGTRAP - ap_sys_siglist[SIGTRAP] = "Trace/BPT trap"; -#endif -#ifdef SIGIOT - ap_sys_siglist[SIGIOT] = "IOT instruction"; -#endif -#ifdef SIGABRT - ap_sys_siglist[SIGABRT] = "Abort"; -#endif -#ifdef SIGEMT - ap_sys_siglist[SIGEMT] = "Emulator trap"; -#endif -#ifdef SIGFPE - ap_sys_siglist[SIGFPE] = "Arithmetic exception"; -#endif -#ifdef SIGKILL - ap_sys_siglist[SIGKILL] = "Killed"; -#endif -#ifdef SIGBUS - ap_sys_siglist[SIGBUS] = "Bus error"; -#endif -#ifdef SIGSEGV - ap_sys_siglist[SIGSEGV] = "Segmentation fault"; -#endif -#ifdef SIGSYS - ap_sys_siglist[SIGSYS] = "Bad system call"; -#endif -#ifdef SIGPIPE - ap_sys_siglist[SIGPIPE] = "Broken pipe"; -#endif -#ifdef SIGALRM - ap_sys_siglist[SIGALRM] = "Alarm clock"; -#endif -#ifdef SIGTERM - ap_sys_siglist[SIGTERM] = "Terminated"; -#endif -#ifdef SIGUSR1 - ap_sys_siglist[SIGUSR1] = "User defined signal 1"; -#endif -#ifdef SIGUSR2 - ap_sys_siglist[SIGUSR2] = "User defined signal 2"; -#endif -#ifdef SIGCLD - ap_sys_siglist[SIGCLD] = "Child status change"; -#endif -#ifdef SIGCHLD - ap_sys_siglist[SIGCHLD] = "Child status change"; -#endif -#ifdef SIGPWR - ap_sys_siglist[SIGPWR] = "Power-fail restart"; -#endif -#ifdef SIGWINCH - ap_sys_siglist[SIGWINCH] = "Window changed"; -#endif -#ifdef SIGURG - ap_sys_siglist[SIGURG] = "urgent socket condition"; -#endif -#ifdef SIGPOLL - ap_sys_siglist[SIGPOLL] = "Pollable event occurred"; -#endif -#ifdef SIGIO - ap_sys_siglist[SIGIO] = "socket I/O possible"; -#endif -#ifdef SIGSTOP - ap_sys_siglist[SIGSTOP] = "Stopped (signal)"; -#endif -#ifdef SIGTSTP - ap_sys_siglist[SIGTSTP] = "Stopped"; -#endif -#ifdef SIGCONT - ap_sys_siglist[SIGCONT] = "Continued"; -#endif -#ifdef SIGTTIN - ap_sys_siglist[SIGTTIN] = "Stopped (tty input)"; -#endif -#ifdef SIGTTOU - ap_sys_siglist[SIGTTOU] = "Stopped (tty output)"; -#endif -#ifdef SIGVTALRM - ap_sys_siglist[SIGVTALRM] = "virtual timer expired"; -#endif -#ifdef SIGPROF - ap_sys_siglist[SIGPROF] = "profiling timer expired"; -#endif -#ifdef SIGXCPU - ap_sys_siglist[SIGXCPU] = "exceeded cpu limit"; -#endif -#ifdef SIGXFSZ - ap_sys_siglist[SIGXFSZ] = "exceeded file size limit"; -#endif - for (sig=0; sig < sizeof(ap_sys_siglist)/sizeof(ap_sys_siglist[0]); ++sig) - if (ap_sys_siglist[sig] == NULL) - ap_sys_siglist[sig] = ""; -} -#endif /* platform has sys_siglist[] */ - - /* handle all varieties of core dumping signals */ static void sig_coredump(int sig) { 1.3 +118 -0 apache-2.0/mpm/src/os/unix/unixd.c Index: unixd.c =================================================================== RCS file: /home/cvs/apache-2.0/mpm/src/os/unix/unixd.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -u -r1.2 -r1.3 --- unixd.c 1999/08/06 00:55:28 1.2 +++ unixd.c 1999/08/13 21:54:03 1.3 @@ -263,3 +263,121 @@ unixd_config.user_id = ap_uname2id(DEFAULT_USER); unixd_config.group_id = ap_gname2id(DEFAULT_GROUP); } + +#ifdef NEED_AP_SYS_SIGLIST + +const char *ap_sys_siglist[NumSIG]; + +void unixd_siglist_init(void) +{ + int sig; + + ap_sys_siglist[0] = "Signal 0"; +#ifdef SIGHUP + ap_sys_siglist[SIGHUP] = "Hangup"; +#endif +#ifdef SIGINT + ap_sys_siglist[SIGINT] = "Interrupt"; +#endif +#ifdef SIGQUIT + ap_sys_siglist[SIGQUIT] = "Quit"; +#endif +#ifdef SIGILL + ap_sys_siglist[SIGILL] = "Illegal instruction"; +#endif +#ifdef SIGTRAP + ap_sys_siglist[SIGTRAP] = "Trace/BPT trap"; +#endif +#ifdef SIGIOT + ap_sys_siglist[SIGIOT] = "IOT instruction"; +#endif +#ifdef SIGABRT + ap_sys_siglist[SIGABRT] = "Abort"; +#endif +#ifdef SIGEMT + ap_sys_siglist[SIGEMT] = "Emulator trap"; +#endif +#ifdef SIGFPE + ap_sys_siglist[SIGFPE] = "Arithmetic exception"; +#endif +#ifdef SIGKILL + ap_sys_siglist[SIGKILL] = "Killed"; +#endif +#ifdef SIGBUS + ap_sys_siglist[SIGBUS] = "Bus error"; +#endif +#ifdef SIGSEGV + ap_sys_siglist[SIGSEGV] = "Segmentation fault"; +#endif +#ifdef SIGSYS + ap_sys_siglist[SIGSYS] = "Bad system call"; +#endif +#ifdef SIGPIPE + ap_sys_siglist[SIGPIPE] = "Broken pipe"; +#endif +#ifdef SIGALRM + ap_sys_siglist[SIGALRM] = "Alarm clock"; +#endif +#ifdef SIGTERM + ap_sys_siglist[SIGTERM] = "Terminated"; +#endif +#ifdef SIGUSR1 + ap_sys_siglist[SIGUSR1] = "User defined signal 1"; +#endif +#ifdef SIGUSR2 + ap_sys_siglist[SIGUSR2] = "User defined signal 2"; +#endif +#ifdef SIGCLD + ap_sys_siglist[SIGCLD] = "Child status change"; +#endif +#ifdef SIGCHLD + ap_sys_siglist[SIGCHLD] = "Child status change"; +#endif +#ifdef SIGPWR + ap_sys_siglist[SIGPWR] = "Power-fail restart"; +#endif +#ifdef SIGWINCH + ap_sys_siglist[SIGWINCH] = "Window changed"; +#endif +#ifdef SIGURG + ap_sys_siglist[SIGURG] = "urgent socket condition"; +#endif +#ifdef SIGPOLL + ap_sys_siglist[SIGPOLL] = "Pollable event occurred"; +#endif +#ifdef SIGIO + ap_sys_siglist[SIGIO] = "socket I/O possible"; +#endif +#ifdef SIGSTOP + ap_sys_siglist[SIGSTOP] = "Stopped (signal)"; +#endif +#ifdef SIGTSTP + ap_sys_siglist[SIGTSTP] = "Stopped"; +#endif +#ifdef SIGCONT + ap_sys_siglist[SIGCONT] = "Continued"; +#endif +#ifdef SIGTTIN + ap_sys_siglist[SIGTTIN] = "Stopped (tty input)"; +#endif +#ifdef SIGTTOU + ap_sys_siglist[SIGTTOU] = "Stopped (tty output)"; +#endif +#ifdef SIGVTALRM + ap_sys_siglist[SIGVTALRM] = "virtual timer expired"; +#endif +#ifdef SIGPROF + ap_sys_siglist[SIGPROF] = "profiling timer expired"; +#endif +#ifdef SIGXCPU + ap_sys_siglist[SIGXCPU] = "exceeded cpu limit"; +#endif +#ifdef SIGXFSZ + ap_sys_siglist[SIGXFSZ] = "exceeded file size limit"; +#endif + for (sig=0; sig < sizeof(ap_sys_siglist)/sizeof(ap_sys_siglist[0]); ++sig) + if (ap_sys_siglist[sig] == NULL) + ap_sys_siglist[sig] = ""; +} +#endif /* NEED_AP_SYS_SIGLIST */ + 1.2 +24 -0 apache-2.0/mpm/src/os/unix/unixd.h Index: unixd.h =================================================================== RCS file: /home/cvs/apache-2.0/mpm/src/os/unix/unixd.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -u -r1.1 -r1.2 --- unixd.h 1999/06/20 22:59:52 1.1 +++ unixd.h 1999/08/13 21:54:06 1.2 @@ -58,6 +58,8 @@ #ifndef UNIXD_H #define UNIXD_H +#include "httpd.h" + /* common stuff that unix MPMs will want */ typedef struct { @@ -72,6 +74,28 @@ void unixd_pre_config(void); const char *unixd_set_user(cmd_parms *cmd, void *dummy, char *arg); const char *unixd_set_group(cmd_parms *cmd, void *dummy, char *arg); + +/* Information on signals for the various platforms */ + +#if defined(NSIG) +#define NumSIG NSIG +#elif defined(_NSIG) +#define NumSIG _NSIG +#elif defined(__NSIG) +#define NumSIG __NSIG +#else +#define NumSIG 32 /* for 1998's unixes, this is still a good assumption */ +#endif + +#ifdef SYS_SIGLIST /* platform has sys_siglist[] */ +#define INIT_SIGLIST() /* nothing */ +#else /* platform has no sys_siglist[], define our own */ +#define NEED_AP_SYS_SIGLIST +extern const char *ap_sys_siglist[NumSIG]; +#define SYS_SIGLIST ap_sys_siglist +void unixd_siglist_init(void); +#define INIT_SIGLIST() unixd_siglist_init(); +#endif /* platform has sys_siglist[] */ #define UNIX_DAEMON_COMMANDS \ { "User", unixd_set_user, NULL, RSRC_CONF, TAKE1, \