fi
endmenu
+mainmenu_option next_comment
+comment 'Debugging (do not define this on production servers)'
+ bool 'Do you want to enable debugging output' DEBUGMODE
+ bool 'Do you want to enable asserts and memory allocation checking' CONFIG_NDEBUG
+ EXTRA_CPPFLAGS=""
+ if [ "$CONFIG_NDEBUG" = "n" ]; then
+ if [ -z "$EXTRA_CPPFLAGS" ]; then
+ EXTRA_CPPFLAGS="-DNDEBUG"
+ else
+ EXTRA_CPPFLAGS="-DNDEBUG $EXTRA_CPPFLAGS"
+ fi
+ fi
+ bool 'Are you testing on a host without DNS' NODNS
+endmenu
+
mainmenu_option next_comment
comment 'Compile stuff'
if [ "$prefix" = "NONE" ]; then
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
if [ "$IRCDLIBS" = "none" ]; then
IRCDLIBS=""
fi
- EXTRA_CPPFLAGS=""
if [ -n "$EXTRA_INCLUDEDIRS" ]; then
for i in $EXTRA_INCLUDEDIRS; do
if [ -z "$EXTRA_CPPFLAGS" ]; then
done
fi
if [ -z "$EXTRA_CPPFLAGS" ]; then
- CPPFLAGS=-I../include
+ CPPFLAGS="-I../include -I../config"
else
- CPPFLAGS="-I../include $EXTRA_CPPFLAGS"
+ CPPFLAGS="-I../include -I../config $EXTRA_CPPFLAGS"
fi
echo "EXTRA_CPPFLAGS=\"$EXTRA_CPPFLAGS\"" >>$CONFIG
echo "CPPFLAGS=\"$CPPFLAGS\"" >>$CONFIG
mainmenu_option next_comment
comment 'General defines'
- bool 'Change root ('/') after start of daemon' CHROOTDIR
- bool 'Do you want the daemon set its own uid/gid' CONFIG_SETUGID
+ bool 'Do you want the daemon set its own uid/gid (say yes for chroot!)' CONFIG_SETUGID
if [ "$CONFIG_SETUGID" = "y" ]; then
int ' UID of irc daemon' IRC_UID
int ' GID of irc daemon' IRC_GID
+ bool ' Change root ('/') after start of daemon' CHROOTDIR
else
+ define_bool CHROOTDIR n
define_int IRC_UID $IRC_UID
define_int IRC_GID $IRC_GID
bool 'Allow to specify configuration file on command line' CMDLINE_CONFIG
echo " SECURITY: Then don't install the daemon SUID or SGID !"
fi
fi
- bool 'Set up a Unix domain socket to connect clients/servers' UNIXPORT
bool 'Do you need virtual hosting' VIRTUAL_HOST
PREV_HUB=$HUB
bool 'Will you connect to more then one server at a time' HUB
fi
endmenu
-mainmenu_option next_comment
-comment 'Debugging (do not define this on production servers)'
- bool 'Do you want to enable debugging output' DEBUGMODE
- bool 'Do you want memory- allocation and/or leak checking' DEBUGMALLOC
- if [ "$DEBUGMALLOC" = "y" ]; then
- bool 'Do you want to have boundary checking' MEMMAGICNUMS
- bool 'Do you want memory leak testing (stats M)' MEMLEAKSTATS y
- if [ "$MEMLEAKSTATS" = "y" ]; then
- if [ "$MEMMAGICNUMS" = "y" ]; then
- echo "You will have extra info on allocated sizes too (MEMSIZESTATS)"
- define_bool MEMSIZESTATS $MEMSIZESTATS
- else
- bool 'Do you want extra info on allocated sizes' MEMSIZESTATS y
- fi
- bool 'Do you want support for a time interval with /stats M' MEMTIMESTATS y
- fi
- else
- define_bool MEMMAGICNUMS $MEMMAGICNUMS
- define_bool MEMLEAKSTATS $MEMLEAKSTATS
- define_bool MEMSIZESTATS $MEMSIZESTATS
- define_bool MEMTIMESTATS $MEMTIMESTATS
- fi
- bool 'Are you testing on a host without DNS' NODNS
-endmenu
mainmenu_option next_comment
comment 'Paths and files'
eval DPATH_DEFAULT="${prefix}/lib/ircd"
string 'Directory where all ircd stuff resides' DPATH $DPATH_DEFAULT
- define_string SPATH "$BINDIR/ircd"
+ if [ "$CHROOTDIR" = "y" ] ; then
+ define_string SPATH "/$SYMLINK"
+ else
+ define_string SPATH "$BINDIR/$SYMLINK"
+ fi
echo "The following filenames are either full paths or files within DPATH"
string 'Server configuration file' CPATH 'ircd.conf'
string 'Server MOTD file' MPATH 'ircd.motd'
string ' Give the path and(or) filename of this log file' WPATH 'whox.log'
fi
- comment 'Bad Channel G-Lines allow operators to add channel masks to a list which prohibits local clients from being able joining channels which match the mask. Remote BadChan Glines allow Uworld to add or remove channels from the servers internal list of badchans'
+comment 'Bad Channel G-Lines allow operators to add channel masks to a list which prohibits local clients from being able joining channels which match the mask. Remote BadChan Glines allow Uworld to add or remove channels from the servers internal list of badchans'
+ BADCHAN=y
bool 'Do you want to enable Bad Channel G-lines' BADCHAN y
if [ "$BADCHAN" = "y" ]; then
echo " "
if [ "$CONFIG_LOG_GLINES" = "y" ]; then
string ' Give the path and(or) filename of this log file' GPATH 'gline.log'
fi
+ bool 'Do you want to log JUPEs to a separate file' CONFIG_LOG_JUPES y
+ if [ "$CONFIG_LOG_JUPES" = "y" ]; then
+ string ' Give the path and(or) filename of this log file' JPATH 'jupe.log'
+ fi
+ bool 'Do you want to log OPMODEs and CLEARMODEs to a separate file' CONFIG_LOG_OPMODES y
+ if [ "$CONFIG_LOG_OPMODES" = "y" ]; then
+ string ' Give the path and(or) filename of this log file' OPATH 'opmode.log'
+ fi
bool 'Do you want to log connecting users to a separate file' CONFIG_LOG_USERS
if [ "$CONFIG_LOG_USERS" = "y" ]; then
- string ' Give the path and(or) filename of this log file' FNAME_USERLOG $DPATH/users
+ string ' Give the path and(or) filename of this log file' FNAME_USERLOG users.log
fi
bool 'Do you want to log Opers to a separate file' CONFIG_LOG_OPERS
if [ "$CONFIG_LOG_OPERS" = "y" ]; then
- string ' Give the path and(or) filename of this log file' FNAME_OPERLOG $DPATH/opers
+ string ' Give the path and(or) filename of this log file' FNAME_OPERLOG opers.log
fi
if [ "$ac_cv_header_syslog_h" = "yes" ]; then
bool 'Do you want to use syslog' USE_SYSLOG
mainmenu_option next_comment
comment 'Configuration'
- bool 'Use crypted passwords for N: lines' CRYPT_LINK_PASSWORD y
bool 'Use crypted passwords for operators' CRYPT_OPER_PASSWORD y
DUMMY=`echo "$BUFFERPOOL" | sed -e 's/[0-9]//g'`
if [ "$DUMMY" != "" ]; then
fi
int 'Max receive queue for clients (bytes)' CLIENT_FLOOD 1024
int 'Maximum number of network connections (23 - (FD_SETSIZE-4))' MAXCONNECTIONS 252
- int 'Default client listen port' PORTNUM 6667
+ 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
define_bool R_LINES_REHASH $R_LINES_REHASH
define_bool R_LINES_OFTEN $R_LINES_OFTEN
fi
- bool 'Do you want support for the old I:*:ONE:*:: construct (read help text!)' USEONE n
bool 'Send a short message instead of the MOTD to connecting clients' NODEFAULTMOTD y
+ bool 'Kill connecting clients when forward and reverse DNS mismatch' KILL_IPMISMATCH n
endmenu
mainmenu_option next_comment
bool 'Allow local/global opers to set modes on local channels' OPER_MODE_LCHAN y
bool 'Allow local/global opers to walk through local channels modes' OPER_WALK_THROUGH_LMODES n
bool 'Prevent local/global opers from being kicked or deoped on local channels' NO_OPER_DEOP_LCHAN n
+
endmenu
mainmenu_option next_comment
mainmenu_option next_comment
comment 'Mandatory defines (you should leave these untouched)'
int 'Max auto connects per class (1!)' MAXIMUM_LINKS 1
- echo '* Never define this on a production server:'
- bool 'Enable message logging' MSGLOG_ENABLED
- if [ "$MSGLOG_ENABLED" = "y" ]; then
- int 'Message log size' MSGLOG_SIZE 128
- fi
if [ "$OPER_KILL" = "y" ]; then
bool 'Only allow KILLs of local clients' LOCAL_KILL_ONLY
else
define_bool LOCAL_KILL_ONLY $LOCAL_KILL_ONLY
fi
int 'KILL nick chase time limit (30)' KILLCHASETIMELIMIT 30
- int 'Max number of channels per user (recommended: 5)' MAXCHANNELSPERUSER 10
+ int 'Max number of channels per user (recommended: 10)' MAXCHANNELSPERUSER 10
int 'Max number of silence masks (15!)' MAXSILES 15
int 'Expected average banmask length (40!)' AVBANLEN 40
eval define_macro MAXSILELENGTH \'\($AVBANLEN * MAXSILES\)\'
int 'Max send queue (40000)' DEFAULTMAXSENDQLENGTH 40000
endmenu
+mainmenu_option next_comment
+comment 'Experimental options (Do you know what you'\''re doing?)'
+ bool 'Use new MODE implementation' CONFIG_NEW_MODE y
+ bool 'Use new oper commands (JUPE, CLEARMODE, OPMODE, GLINE)' CONFIG_OPERCMDS y
+endmenu