-2000-04-30 Steven M. Doyle <grep@doyle.net>
- * config/config-sh.in: Fix for CHROOT
- * ircd/ircd.c: General Cleanup
+2000-04-30 Perry Lorier <isomer@coders.net>
+ * config/config-sh.in: Fix for CONNEXIT
+ * ircd/s_{user,misc}.c: Fix for CONNEXIT
+
+2000-04-30 Steven M. Doyle <steven@doyle.net>
+ * ircd/ircd.c
+ - general cleanups and readability enhancements
+ - rewrite of setuid/chroot code.
+ - server will no longer run as root
+ - -DPROFIL compile option removed
+
+ * config/config-sh.in
+ - Fixed up chroot compile options
+ - Added options for debug and profile compiles
+
+ * config/gen.ircd.Makefile
+ - Support for new debug/profile options
+
+ * ircd/Makefile.in
+ - Support for new debug/profile options
+
+ * ircd/ircd_signal.c
+ - Removed -DPROFIL
2000-04-30 Perry Lorier <isomer@coders.net>
* ircd/s_bsd.c: Sigh. :)
#
# ChangeLog for ircu2.10.11
#
-# $Id: ChangeLog,v 1.117 2000-04-30 06:44:27 isomer Exp $
+# $Id: ChangeLog,v 1.118 2000-04-30 10:22:14 isomer Exp $
#
# Insert new changes at beginning of the change list.
#
* Document undernet protocol as it is used in
doc/rfc1459.unet
* Finish tokenization.
-* Allow for /WHO by IP address. (for finding who's port scanning you
- for example). Suggested by Nuke
LIBS=none
fi
string 'Which extra libraries do you need [none]' IRCDLIBS "$LIBS"
+ bool 'Generate debug symbols?' DEBUGSYMBOLS "y"
+ bool 'Compile in profiling support (gcc and maybe SUNpro)?' IRCUPROFILE "n"
+ unset ZSTEMP
+ if [ "$DEBUGSYMBOLS" = "y" ] ; then
+ ZSTEMP="-g"
+ fi
+ if [ "$IRCUPROFILE" = "y" ] ; then
+ ZSTEMP="-pg $ZSTEMP"
+ fi
+ define_string DEBUGFLAGS "$ZSTEMP"
eval bindir="$bindir"
string 'In which directory should I install the ircd binary' BINDIR $bindir
if [ ! -d "$BINDIR" ]; then
int 'Maximum number of network connections (23 - (FD_SETSIZE-4))' MAXCONNECTIONS 252
int 'Default port for connections to other servers' SERVER_PORT 4400
int 'Nickname history length' NICKNAMEHISTORYLENGTH 800
- bool 'Allow Opers to see (dis)connects of local clients' ALLOW_SNO_CONNEXIT
- if [ "$ALLOW_SNO_CONNEXIT" = "y" ]; then
- bool 'Show IP address in client connection notices' SNO_CONNEXIT_IP
- fi
bool 'Do you want to use R: lines in your configuration file' R_LINES
if [ "$R_LINES" = "y" ]; then
bool 'Process R: lines every rehash' R_LINES_REHASH y
mv ../ircd/Makefile ../ircd/Makefile.tmp
sed -e "s:^CC=.*:CC=$CC:" \
-e "s:^CFLAGS=.*:CFLAGS=$CFLAGS:" \
+ -e "s:^DEBUGFLAGS=.*:DEBUGFLAGS=$DEBUGFLAGS:" \
-e "s:^CPPFLAGS=.*:CPPFLAGS=$CPPFLAGS:" \
-e "s:^LDFLAGS=.*:LDFLAGS=$LDFLAGS:" \
-e "s:^IRCDLIBS=.*:IRCDLIBS=$IRCDLIBS:" \
" KICKLEN=%i" \
" CHANTYPES=%s"
-#define FEATURESVALUES 15,MAXMODEPARAMS,MAXCHANNELSPERUSER,MAXBANS, \
+#define FEATURESVALUES MAXSILES,MAXMODEPARAMS,MAXCHANNELSPERUSER,MAXBANS, \
NICKLEN,TOPICLEN,TOPICLEN,"+#&"
#endif /* INCLUDED_supported_h */
CC=
CFLAGS=
CPPFLAGS=
+DEBUGFLAGS=
LDFLAGS=
IRCDLIBS=
#### End of system configuration section. ####
PURIFY =
+CFLAGS += $(DEBUGFLAGS)
+LDFLAGS += $(DEBUGFLAGS)
+
SRC = \
IPcheck.c \
channel.c \
*--------------------------------------------------------------------------*/
extern void init_counters(void);
-#ifdef PROFIL
-extern etext(void);
-#endif
-
-
/*----------------------------------------------------------------------------
* Constants / Enums
*--------------------------------------------------------------------------*/
* long and ugly control paths... -smd
*--------------------------------------------------------------------------*/
int main(int argc, char **argv) {
-#ifdef PROFIL
- monstartup(0, etext);
- moncontrol(1);
- signal(SIGUSR1, s_monitor);
-#endif
-
CurrentTime = time(NULL);
thisServer.argc = argc;
return 0;
}
+
unsigned int hup;
} SignalCounter;
-#ifdef PROFIL
-void s_monitor(int sig)
-{
- static int mon = 0;
-
- moncontrol(mon);
- mon = 1 - mon;
-}
-
-#endif
-
void sigalrm_handler(int sig)
{
++SignalCounter.alrm;
if (MyConnect(victim)) {
victim->flags |= FLAGS_CLOSING;
-#ifdef ALLOW_SNO_CONNEXIT
-#ifdef SNO_CONNEXIT_IP
- if (IsUser(victim)) {
- sendto_opmask_butone(0, SNO_CONNEXIT,
- "Client exiting: %s (%s@%s) [%s] [%s]",
- victim->name, victim->user->username,
- victim->user->host, comment,
- ircd_ntoa((const char *)&victim->ip));
- }
-#else /* SNO_CONNEXIT_IP */
- if (IsUser(victim)) {
- sendto_opmask_butone(0, SNO_CONNEXIT, "Client exiting: %s (%s@%s) [%s]",
- victim->name, victim->user->username,
- victim->user->host, comment);
- }
-#endif /* SNO_CONNEXIT_IP */
-#endif /* ALLOW_SNO_CONNEXIT */
update_load();
#ifdef FNAME_USERLOG
on_for = CurrentTime - victim->firsttime;
nextping = CurrentTime;
if (sptr->snomask & SNO_NOISY)
set_snomask(sptr, sptr->snomask & SNO_NOISY, SNO_ADD);
-#ifdef ALLOW_SNO_CONNEXIT
-#ifdef SNO_CONNEXIT_IP
- sendto_opmask_butone(0, SNO_CONNEXIT, "Client connecting: %s (%s@%s) "
- "[%s] {%d}", nick, user->username, user->host,
- cptr->sock_ip, get_client_class(sptr));
-#else /* SNO_CONNEXIT_IP */
- sendto_opmask_butone(0, SNO_CONEXIT, "Client connecting: %s (%s@%s)",
- nick, user->username, user->host);
-#endif /* SNO_CONNEXIT_IP */
-#endif /* ALLOW_SNO_CONNEXIT */
IPcheck_connect_succeeded(sptr);
}
else