diff --git a/Changes b/Changes index a9843cec0..eae1a4d96 100644 --- a/Changes +++ b/Changes @@ -575,3 +575,7 @@ [ this is 4.0 ] - Fixed /userhost showing "unknown" as username for a lot of people - Fixed ./update error +- Fixed a NO_FDLIST define problem in send.c and channel.c +- Added define PROPER_COREDUMP, will not launch s_segv when done and make + proper coredumps + diff --git a/src/ircd.c b/src/ircd.c index 3a233e1f5..ce62fe363 100644 --- a/src/ircd.c +++ b/src/ircd.c @@ -123,6 +123,8 @@ int noisy_htm = 1; TS check_fdlists(); #endif + + void server_reboot(char *); void restart PROTO((char *)); static void open_debugfile(), setup_signals(); @@ -1510,10 +1512,11 @@ static void setup_signals() (void)sigaddset(&act.sa_mask, SIGTERM); (void)sigaction(SIGTERM, &act, NULL); /* handling of SIGSEGV as well -sts */ +#ifndef PROPER_COREDUMP act.sa_handler = s_segv; (void)sigaddset(&act.sa_mask, SIGSEGV); (void)sigaction(SIGSEGV, &act, NULL); - +#endif #else # ifndef HAVE_RELIABLE_SIGNALS (void)signal(SIGPIPE, dummy); diff --git a/src/s_user.c b/src/s_user.c index 517b50030..10352a3b4 100644 --- a/src/s_user.c +++ b/src/s_user.c @@ -4429,9 +4429,10 @@ int m_umode(cptr, sptr, parc, parv) if ((setflags & UMODE_OPER) && !IsOper(sptr)) { IRCstats.operators--; +#ifndef NO_FDLIST if (MyConnect(sptr)) delfrom_fdlist(sptr->fd, &oper_fdlist); - +#endif } if (!(setflags & UMODE_INVISIBLE) && IsInvisible(sptr)) {