Thread: [IRC-Dev CVS] [CVS] Module ircd-ircdev: Change committed
Brought to you by:
zolty
From: Toni G. <zo...@us...> - 2003-10-07 18:52:39
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-10-07 18:52:28 UTC Modified files: ChangeLog ChangeLog.es doc/en/ircd.conf.sample include/handlers.h include/hash.h include/ircd_features.h include/list.h include/msg.h include/numeric.h include/patchlevel.h include/struct.h include/supported.h ircd/Makefile.in ircd/hash.c ircd/ircd_features.c ircd/parse.c ircd/s_err.c ircd/s_misc.c ircd/s_user.c Added files: include/watch.h ircd/m_watch.c ircd/watch.c Log message: Author: zoltan <zoltan.irc-dev.net> Log message: Version 1.0.alpha1 * Limpieza en el 005. * Implementación del comando WATCH. * Raw del "No such Gline" cambiado del 512 al 521 por compatibilidad WATCH. ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.1.1.1 ircd-ircdev/ChangeLog:1.2 --- ircd-ircdev/ChangeLog:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/ChangeLog Tue Oct 7 11:52:17 2003 @@ -1,10 +1,16 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.1.1.1 2003/09/08 10:34:25 zolty Exp $ +# $Id: ChangeLog,v 1.2 2003/10/07 18:52:17 zolty Exp $ # # Insert new changes at beginning of the change list. # + +2003-10-07 Toni Garcia <zo...@ir...> 1.0.alpha1 + * Cleanup in the 005. + * Implementation of WATCH command. + * Raw of "No such Gline" changed from the 512 to the 521 by + WATCH compatibility. 2003-08-01 Toni Garcia <zo...@ir...> 1.0.alpha0 * Start IRC-Dev's irc daemon :). Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.1.1.1 ircd-ircdev/ChangeLog.es:1.2 --- ircd-ircdev/ChangeLog.es:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/ChangeLog.es Tue Oct 7 11:52:17 2003 @@ -1,10 +1,16 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.1.1.1 2003/09/08 10:34:25 zolty Exp $ +# $Id: ChangeLog.es,v 1.2 2003/10/07 18:52:17 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # + +2003-10-07 Toni Garcia <zo...@ir...> 1.0.alpha1 + * Limpieza en el 005. + * Implementación del comando WATCH. + * Raw del "No such Gline" cambiado del 512 al 521 por + compatibilidad WATCH. 2003-08-01 Toni Garcia <zo...@ir...> 1.0.alpha0 * Comienzo del IRCD de IRC-Dev :). Index: ircd-ircdev/doc/en/ircd.conf.sample diff -u ircd-ircdev/doc/en/ircd.conf.sample:1.1.1.1 ircd-ircdev/doc/en/ircd.conf.sample:1.2 --- ircd-ircdev/doc/en/ircd.conf.sample:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/doc/en/ircd.conf.sample Tue Oct 7 11:52:17 2003 @@ -465,6 +465,7 @@ #F:AVBANLEN:40 #F:MAXBANS:30 #F:MAXSILES:15 +#F:MAXWATCHS:128 #F:HANGONGOODLINK:300 #F:HANGONRETRYDELAY:10 #F:CONNECTTIMEOUT:90 Index: ircd-ircdev/include/handlers.h diff -u ircd-ircdev/include/handlers.h:1.1.1.1 ircd-ircdev/include/handlers.h:1.2 --- ircd-ircdev/include/handlers.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/handlers.h Tue Oct 7 11:52:17 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: handlers.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: handlers.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ #ifndef INCLUDED_handlers_h #define INCLUDED_handlers_h @@ -83,7 +83,9 @@ struct Client; - +/* + * User commands + */ extern int m_admin(struct Client*, struct Client*, int, char*[]); extern int m_away(struct Client*, struct Client*, int, char*[]); extern int m_cnotice(struct Client*, struct Client*, int, char*[]); @@ -112,7 +114,6 @@ extern int m_notice(struct Client*, struct Client*, int, char*[]); extern int m_oper(struct Client*, struct Client*, int, char*[]); extern int m_part(struct Client*, struct Client*, int, char*[]); -extern int mr_pass(struct Client*, struct Client*, int, char*[]); extern int m_ping(struct Client*, struct Client*, int, char*[]); extern int m_pong(struct Client*, struct Client*, int, char*[]); extern int m_private(struct Client*, struct Client*, int, char*[]); @@ -133,9 +134,14 @@ extern int m_version(struct Client*, struct Client*, int, char*[]); extern int m_wallchops(struct Client*, struct Client*, int, char*[]); extern int m_wallvoices(struct Client*, struct Client*, int, char*[]); +extern int m_watch(struct Client*, struct Client*, int, char*[]); extern int m_who(struct Client*, struct Client*, int, char*[]); extern int m_whois(struct Client*, struct Client*, int, char*[]); extern int m_whowas(struct Client*, struct Client*, int, char*[]); + +/* + * Privileged commands (Admins & Opers & Helpers) + */ extern int mo_admin(struct Client*, struct Client*, int, char*[]); extern int mo_asll(struct Client*, struct Client*, int, char*[]); extern int mo_clearmode(struct Client*, struct Client*, int, char*[]); @@ -166,10 +172,18 @@ extern int mo_version(struct Client*, struct Client*, int, char*[]); extern int mo_wallops(struct Client*, struct Client*, int, char*[]); extern int mo_wallusers(struct Client*, struct Client*, int, char*[]); + +/* + * Non-registered commands + */ extern int mr_error(struct Client*, struct Client*, int, char*[]); -extern int mr_error(struct Client*, struct Client*, int, char*[]); +extern int mr_pass(struct Client*, struct Client*, int, char*[]); extern int mr_pong(struct Client*, struct Client*, int, char*[]); extern int mr_server(struct Client*, struct Client*, int, char*[]); + +/* + * Server commands + */ extern int ms_account(struct Client*, struct Client*, int, char*[]); extern int ms_admin(struct Client*, struct Client*, int, char*[]); extern int ms_asll(struct Client*, struct Client*, int, char*[]); Index: ircd-ircdev/include/hash.h diff -u ircd-ircdev/include/hash.h:1.1.1.1 ircd-ircdev/include/hash.h:1.2 --- ircd-ircdev/include/hash.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/hash.h Tue Oct 7 11:52:17 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: hash.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: hash.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ #ifndef INCLUDED_hash_h @@ -24,6 +24,7 @@ struct Client; struct Channel; +struct Watch; /* * general defines @@ -49,6 +50,7 @@ #define SeekClient(name) hSeekClient((name), ~0) #define SeekUser(name) hSeekClient((name), (STAT_USER)) #define SeekServer(name) hSeekClient((name), (STAT_ME | STAT_SERVER)) +#define SeekWatch(name) hSeekWatch((name)) /* Safer macros with sanity check on name, WARNING: these are _macros_, no side effects allowed on <name> ! */ @@ -56,6 +58,7 @@ #define FindClient(name) (BadPtr((name)) ? 0 : SeekClient(name)) #define FindUser(name) (BadPtr((name)) ? 0 : SeekUser(name)) #define FindServer(name) (BadPtr((name)) ? 0 : SeekServer(name)) +#define FindWatch(name) (BadPtr((name)) ? 0 : SeekWatch(name)) /* * Proto types @@ -64,11 +67,14 @@ extern void init_hash(void); /* Call me on startup */ extern int hAddClient(struct Client *cptr); extern int hAddChannel(struct Channel *chptr); +extern int hAddWatch(struct Watch *wptr); extern int hRemClient(struct Client *cptr); extern int hChangeClient(struct Client *cptr, const char *newname); extern int hRemChannel(struct Channel *chptr); +extern int hRemWatch(struct Watch *wptr); extern struct Client *hSeekClient(const char *name, int TMask); extern struct Channel *hSeekChannel(const char *name); +extern struct Watch *hSeekWatch(const char *name); extern int m_hash(struct Client *cptr, struct Client *sptr, int parc, char *parv[]); Index: ircd-ircdev/include/ircd_features.h diff -u ircd-ircdev/include/ircd_features.h:1.1.1.1 ircd-ircdev/include/ircd_features.h:1.2 --- ircd-ircdev/include/ircd_features.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_features.h Tue Oct 7 11:52:17 2003 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: ircd_features.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: ircd_features.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ struct Client; @@ -56,6 +56,7 @@ FEAT_AVBANLEN, FEAT_MAXBANS, FEAT_MAXSILES, + FEAT_MAXWATCHS, FEAT_HANGONGOODLINK, FEAT_HANGONRETRYDELAY, FEAT_CONNECTTIMEOUT, Index: ircd-ircdev/include/list.h diff -u ircd-ircdev/include/list.h:1.1.1.1 ircd-ircdev/include/list.h:1.2 --- ircd-ircdev/include/list.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/list.h Tue Oct 7 11:52:17 2003 @@ -1,7 +1,7 @@ /* * list.h * - * $Id: list.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: list.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ #ifndef INCLUDED_list_h #define INCLUDED_list_h @@ -14,6 +14,7 @@ struct Connection; struct Channel; struct ConfItem; +struct Watch; /* * Structures @@ -25,6 +26,7 @@ struct Client *cptr; struct Channel *chptr; struct ConfItem *aconf; + struct Watch *wptr; char *cp; struct { char *banstr; Index: ircd-ircdev/include/msg.h diff -u ircd-ircdev/include/msg.h:1.1.1.1 ircd-ircdev/include/msg.h:1.2 --- ircd-ircdev/include/msg.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/msg.h Tue Oct 7 11:52:18 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: msg.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: msg.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ */ #ifndef INCLUDED_msg_h #define INCLUDED_msg_h @@ -352,6 +352,9 @@ #define MSG_PRIVS "PRIVS" /* PRIV */ #define TOK_PRIVS "PRIVS" + +#define MSG_WATCH "WATCH" /* WATC */ +#define TOK_WATCH "WATCH" /* * Constants Index: ircd-ircdev/include/numeric.h diff -u ircd-ircdev/include/numeric.h:1.1.1.1 ircd-ircdev/include/numeric.h:1.2 --- ircd-ircdev/include/numeric.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/numeric.h Tue Oct 7 11:52:18 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: numeric.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: numeric.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ */ #ifndef INCLUDED_numeric_h #define INCLUDED_numeric_h @@ -427,8 +427,8 @@ #define ERR_SILELISTFULL 511 /* Undernet extension */ /* ERR_NOTIFYFULL 512 aircd */ -/* ERR_TOOMANYWATCH 512 Numeric List: Dalnet */ -#define ERR_NOSUCHGLINE 512 /* Undernet extension */ +#define ERR_TOOMANYWATCH 512 /* Dalnet extension */ +/* ERR_NOSUCHGLINE 512 Undernet extension (old) */ #define ERR_BADPING 513 /* Undernet extension */ /* ERR_NEEDPONG 512 Numeric List: Dalnet */ #define ERR_NOSUCHJUPE 514 /* Undernet extension - jupe -Kev */ @@ -443,22 +443,25 @@ /* ERR_OPERONLY 520 unreal */ #define ERR_MASKTOOWIDE 520 /* Undernet extension -Kev */ /* ERR_WHOTRUNC 520 austnet */ +#define ERR_NOSUCHGLINE 521 /* Undernet extension (new) */ /* ERR_LISTSYNTAX 521 dalnet ERR_WHOSYNTAX 522 dalnet ERR_WHOLIMEXCEED 523 dalnet */ #define ERR_QUARANTINED 524 /* Undernet extension -Vampire */ -#define ERR_LASTERROR 525 -/* RPL_LOGON 600 dalnet,unreal - RPL_LOGOFF 601 dalnet,unreal - RPL_WATCHOFF 602 dalnet,unreal - RPL_WATCHSTAT 603 dalnet,unreal - RPL_NOWON 604 dalnet,unreal - RPL_NOWOFF 605 dalnet,unreal - RPL_WATCHLIST 606 dalnet,unreal - RPL_ENDOFWATCHLIST 607 dalnet,unreal +#define RPL_LOGON 600 /* Dalnet extension */ +#define RPL_LOGOFF 601 /* Dalnet extension */ +#define RPL_WATCHOFF 602 /* Dalnet extension */ +#define RPL_WATCHSTAT 603 /* Dalnet extension */ +#define RPL_NOWON 604 /* Dalnet extension */ +#define RPL_NOWOFF 605 /* Dalnet extension */ +#define RPL_WATCHLIST 606 /* Dalnet extension */ +#define RPL_ENDOFWATCHLIST 607 /* Dalnet extension */ +#define ERR_LASTERROR 608 + +/* RPL_MAPMORE 610 unreal RPL_MAPMORE 615 PTlink Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.1.1.1 ircd-ircdev/include/patchlevel.h:1.2 --- ircd-ircdev/include/patchlevel.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/patchlevel.h Tue Oct 7 11:52:18 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: patchlevel.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ * */ -#define PATCHLEVEL ".alpha0" +#define PATCHLEVEL ".alpha1" #define RELEASE "1.0" Index: ircd-ircdev/include/struct.h diff -u ircd-ircdev/include/struct.h:1.1.1.1 ircd-ircdev/include/struct.h:1.2 --- ircd-ircdev/include/struct.h:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/include/struct.h Tue Oct 7 11:52:18 2003 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: struct.h,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: struct.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ */ #ifndef INCLUDED_struct_h #define INCLUDED_struct_h @@ -67,11 +67,13 @@ struct Membership* channel; /* chain of channel pointer blocks */ struct SLink* invited; /* chain of invite pointer blocks */ struct SLink* silence; /* chain of silence pointer blocks */ + struct SLink* watch; /* chain of watch pointer blocks */ char* away; /* pointer to away message */ time_t last; unsigned int refcnt; /* Number of times this block is referenced */ unsigned int joined; /* number of channels joined */ unsigned int invites; /* Number of channels we've been invited to */ + unsigned int watches; /* Number of entrances in the watch list */ char username[USERLEN + 1]; char host[HOSTLEN + 1]; char realhost[HOSTLEN + 1]; Index: ircd-ircdev/include/supported.h diff -u ircd-ircdev/include/supported.h:1.1.1.1 ircd-ircdev/include/supported.h:1.2 --- ircd-ircdev/include/supported.h:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/include/supported.h Tue Oct 7 11:52:18 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: supported.h,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: supported.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ * * Description: This file has the featureset that ircu announces on connecting * a client. It's in this .h because it's likely to be appended @@ -32,34 +32,49 @@ * 'Features' supported by this ircd */ #define FEATURES1 \ - "WHOX"\ - " WALLCHOPS"\ - " WALLVOICES"\ - " USERIP"\ - " CPRIVMSG"\ - " CNOTICE"\ - " SILENCE=%i" \ + "AWAYLEN=%i"\ + " CHANNELLEN=%i"\ + " NICKLEN=%i"\ + " TOPICLEN=%i" + +#define FEATURES2 \ + "CHANMODES=%s" \ + " CHANTYPES=%s" \ + " PREFIX=%s" + +#define FEATURES3 \ + "MAXCHANNELS=%i" \ + " MAXBANS=%i" \ + " MAXTARGETS=%i" \ " MODES=%i" \ - " MAXCHANNELS=%i" \ - " MAXBANS=%i" \ - " NICKLEN=%i" \ - " TOPICLEN=%i" \ - " AWAYLEN=%i" \ - " KICKLEN=%i" - -#define FEATURES2 "CHANTYPES=%s" \ - " PREFIX=%s" \ - " CHANMODES=%s" \ - " CASEMAPPING=%s" \ - " NETWORK=%s" - -#define FEATURESVALUES1 feature_int(FEAT_MAXSILES), MAXMODEPARAMS, \ - feature_int(FEAT_MAXCHANNELSPERUSER), \ - feature_int(FEAT_MAXBANS), NICKLEN, TOPICLEN, \ - AWAYLEN, TOPICLEN + " SILENCE=%i" \ + " WATCH=%i" + +#define FEATURES4 \ + "CNOTICE" \ + " CPRIVMSG" \ + " MAP" \ + " USERIP" \ + " WALLCHOPS" \ + " WALLVOICES" \ + " WHOX" + +#define FEATURES5 "CHARMAPPING=%s" \ + " NETWORK=%s" \ + " FNC" \ + " SAFELIST" + + +#define FEATURESVALUES1 AWAYLEN, CHANNELLEN, NICKLEN, TOPICLEN + +#define FEATURESVALUES2 "b,k,l,imnpstr", "#&", "(ov)@+" + +#define FEATURESVALUES3 feature_int(FEAT_MAXCHANNELSPERUSER), feature_int(FEAT_MAXBANS), \ + MAXTARGETS, MAXMODEPARAMS, feature_int(FEAT_MAXSILES), \ + feature_int(FEAT_MAXWATCHS) + +#define FEATURESVALUES5 "rfc1459", feature_str(FEAT_NETWORK) -#define FEATURESVALUES2 "#&", "(ov)@+", "b,k,l,imnpstr", "rfc1459", \ - feature_str(FEAT_NETWORK) #endif /* INCLUDED_supported_h */ Index: ircd-ircdev/include/watch.h diff -u /dev/null ircd-ircdev/include/watch.h:1.1 --- /dev/null Tue Oct 7 11:52:28 2003 +++ ircd-ircdev/include/watch.h Tue Oct 7 11:52:18 2003 @@ -0,0 +1,66 @@ +/* + * IRC - Internet Relay Chat, include/watch.h + * Copyright (C) 2003 IRC-Dev - zoltan <zo...@ir...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + * $Id: watch.h,v 1.1 2003/10/07 18:52:18 zolty Exp $ + */ +#ifndef INCLUDED_watch_h +#define INCLUDED_watch_h +#ifndef INCLUDED_config_h +#include "config.h" +#endif +#ifndef INCLUDED_sys_types_h +#include <sys/types.h> +#define INCLUDED_sys_types_h +#endif + + +struct Client; + +/* + * Structures + */ + +struct Watch { + struct Watch *wt_next; + struct SLink *wt_watch; /* Pointer to watch list */ + char *wt_nick; /* Nick */ + time_t wt_lasttime; /* last time status change */ +}; + + +/* + * Macros + */ + +#define wt_next(wt) ((wt)->wt_next) +#define wt_watch(wt) ((wt)->wt_watch) +#define wt_nick(wt) ((wt)->wt_nick) +#define wt_lasttime(wt) ((wt)->wt_lasttime) + + +/* + * Proto types + */ +extern void check_status_watch(struct Client *sptr, int raw); +extern void show_status_watch(struct Client *sptr, char *nick, int raw1, int raw2); +extern int add_nick_watch(struct Client *sptr, char *nick); +extern int del_nick_watch(struct Client *sptr, char *nick); +extern int del_list_watch(struct Client *sptr); +extern int watch_memory_count(size_t *wt_size); + +#endif /* INCLUDED_watch_h */ Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.1.1.1 ircd-ircdev/ircd/Makefile.in:1.2 --- ircd-ircdev/ircd/Makefile.in:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/ircd/Makefile.in Tue Oct 7 11:52:18 2003 @@ -169,6 +169,7 @@ m_wallvoices.c \ m_wallops.c \ m_wallusers.c \ + m_watch.c \ m_who.c \ m_whois.c \ m_whowas.c \ @@ -196,6 +197,7 @@ support.c \ uping.c \ userload.c \ + watch.c \ whocmds.c \ whowas.c @@ -345,917 +347,960 @@ # DO NOT DELETE THIS LINE -- make depend depends on it. -IPcheck.o: IPcheck.c ../config.h ../include/IPcheck.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/msg.h ../include/numnicks.h \ - ../include/ircd_alloc.h ../include/s_debug.h ../include/s_user.h \ - ../include/send.h +IPcheck.o: IPcheck.c ../config.h ../include/IPcheck.h \ + ../include/client.h ../include/ircd_defs.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/ircd.h ../include/struct.h ../include/msg.h \ + ../include/numnicks.h ../include/ircd_alloc.h ../include/s_debug.h \ + ../include/s_user.h ../include/send.h channel.o: channel.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_alloc.h ../include/ircd_chattr.h \ - ../include/ircd_features.h ../include/ircd_log.h \ - ../include/ircd_reply.h ../include/ircd_snprintf.h \ - ../include/ircd_string.h ../include/list.h ../include/match.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/querycmds.h ../include/s_bsd.h ../include/s_conf.h \ - ../include/s_debug.h ../include/s_misc.h ../include/s_user.h \ - ../include/send.h ../include/support.h ../include/sys.h \ - ../include/whowas.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_alloc.h ../include/ircd_chattr.h \ + ../include/ircd_features.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_snprintf.h \ + ../include/ircd_string.h ../include/list.h ../include/match.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/querycmds.h ../include/s_bsd.h ../include/s_conf.h \ + ../include/s_debug.h ../include/s_misc.h ../include/s_user.h \ + ../include/send.h ../include/support.h ../include/sys.h \ + ../include/whowas.h class.o: class.c ../config.h ../include/class.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_alloc.h ../include/ircd_features.h \ - ../include/ircd_reply.h ../include/list.h ../include/numeric.h \ - ../include/s_conf.h ../include/s_debug.h ../include/send.h -client.o: client.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/class.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_features.h ../include/ircd_reply.h \ - ../include/list.h ../include/numeric.h ../include/s_conf.h \ - ../include/s_debug.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_features.h ../include/ircd_reply.h ../include/list.h \ + ../include/numeric.h ../include/s_conf.h ../include/s_debug.h \ + ../include/send.h +client.o: client.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/class.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ + ../include/ircd_reply.h ../include/list.h ../include/numeric.h \ + ../include/s_conf.h ../include/s_debug.h ../include/send.h crule.o: crule.c ../config.h ../include/crule.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_alloc.h ../include/ircd_chattr.h \ - ../include/ircd_string.h ../include/match.h ../include/s_bsd.h \ - ../include/s_debug.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h ../include/ircd_chattr.h \ + ../include/ircd_string.h ../include/match.h ../include/s_bsd.h \ + ../include/s_debug.h dbuf.o: dbuf.c ../config.h ../include/dbuf.h ../include/ircd_alloc.h \ - ../include/ircd_chattr.h ../include/ircd_features.h ../include/send.h \ - ../include/sys.h + ../include/ircd_chattr.h ../include/ircd_features.h ../include/send.h \ + ../include/sys.h fda.o: fda.c ../config.h fileio.o: fileio.c ../config.h ../include/fileio.h \ - ../include/ircd_alloc.h + ../include/ircd_alloc.h gline.o: gline.c ../config.h ../include/gline.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_alloc.h ../include/ircd_features.h \ - ../include/ircd_log.h ../include/ircd_reply.h \ - ../include/ircd_snprintf.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/match.h ../include/numeric.h \ - ../include/s_bsd.h ../include/s_debug.h ../include/s_misc.h \ - ../include/s_stats.h ../include/send.h ../include/support.h \ - ../include/msg.h ../include/numnicks.h ../include/sys.h \ - ../include/whocmds.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_features.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_snprintf.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \ + ../include/numeric.h ../include/s_bsd.h ../include/s_debug.h \ + ../include/s_misc.h ../include/s_stats.h ../include/send.h \ + ../include/support.h ../include/msg.h ../include/numnicks.h \ + ../include/sys.h ../include/whocmds.h hash.o: hash.c ../config.h ../include/hash.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/channel.h \ - ../include/ircd_chattr.h ../include/ircd_string.h ../include/ircd.h \ - ../include/struct.h ../include/msg.h ../include/send.h \ - ../include/support.h ../include/sys.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/channel.h ../include/ircd_chattr.h \ + ../include/ircd_string.h ../include/ircd.h ../include/struct.h \ + ../include/msg.h ../include/send.h ../include/support.h \ + ../include/sys.h ../include/watch.h ircd.o: ircd.c ../config.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_defs.h ../include/IPcheck.h ../include/class.h \ - ../include/client.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/crule.h \ - ../include/hash.h ../include/ircd_alloc.h ../include/ircd_features.h \ - ../include/ircd_log.h ../include/ircd_reply.h ../include/ircd_signal.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/jupe.h \ - ../include/list.h ../include/match.h ../include/motd.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/opercmds.h \ - ../include/parse.h ../include/res.h ../include/s_auth.h \ - ../include/s_bsd.h ../include/s_conf.h ../include/s_debug.h \ - ../include/s_misc.h ../include/s_stats.h ../include/send.h \ - ../include/sys.h ../include/uping.h ../include/userload.h \ - ../include/version.h ../include/whowas.h + ../include/ircd_defs.h ../include/IPcheck.h ../include/class.h \ + ../include/client.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/crule.h \ + ../include/hash.h ../include/ircd_alloc.h ../include/ircd_features.h \ + ../include/ircd_log.h ../include/ircd_reply.h \ + ../include/ircd_signal.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/jupe.h ../include/list.h \ + ../include/match.h ../include/motd.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/opercmds.h \ + ../include/parse.h ../include/res.h ../include/s_auth.h \ + ../include/s_bsd.h ../include/s_conf.h ../include/s_debug.h \ + ../include/s_misc.h ../include/s_stats.h ../include/send.h \ + ../include/sys.h ../include/uping.h ../include/userload.h \ + ../include/version.h ../include/whowas.h ircd_alloc.o: ircd_alloc.c ../config.h ../include/ircd_alloc.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/s_debug.h \ - ../include/ircd_defs.h + ../include/ircd_string.h ../include/ircd_chattr.h \ + ../include/s_debug.h ../include/ircd_defs.h ircd_events.o: ircd_events.c ../config.h ../include/ircd_events.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_defs.h \ - ../include/ircd_alloc.h ../include/ircd_log.h \ - ../include/ircd_snprintf.h ../include/s_debug.h -ircd_features.o: ircd_features.c ../config.h ../include/ircd_features.h \ - ../include/channel.h ../include/ircd_defs.h ../include/class.h \ - ../include/client.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ - ../include/ircd_log.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/match.h ../include/motd.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/random.h ../include/s_bsd.h ../include/s_debug.h \ - ../include/s_misc.h ../include/s_stats.h ../include/send.h \ - ../include/support.h ../include/sys.h ../include/whowas.h + ../include/ircd.h ../include/struct.h ../include/ircd_defs.h \ + ../include/ircd_alloc.h ../include/ircd_log.h \ + ../include/ircd_snprintf.h ../include/s_debug.h +ircd_features.o: ircd_features.c ../config.h \ + ../include/ircd_features.h ../include/channel.h \ + ../include/ircd_defs.h ../include/class.h ../include/client.h \ + ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ + ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/match.h ../include/motd.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/random.h ../include/s_bsd.h ../include/s_debug.h \ + ../include/s_misc.h ../include/s_stats.h ../include/send.h \ + ../include/support.h ../include/sys.h ../include/whowas.h ircd_log.o: ircd_log.c ../config.h ../include/ircd_log.h \ - ../include/client.h ../include/ircd_defs.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/ircd_alloc.h ../include/ircd_reply.h \ - ../include/ircd_snprintf.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/ircd.h ../include/struct.h \ - ../include/numeric.h ../include/s_debug.h ../include/send.h + ../include/client.h ../include/ircd_defs.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/ircd_alloc.h ../include/ircd_reply.h \ + ../include/ircd_snprintf.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/ircd.h ../include/struct.h \ + ../include/numeric.h ../include/s_debug.h ../include/send.h ircd_relay.o: ircd_relay.c ../config.h ../include/ircd_relay.h \ - ../include/channel.h ../include/ircd_defs.h ../include/client.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_chattr.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/match.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_debug.h \ - ../include/s_misc.h ../include/s_user.h ../include/send.h + ../include/channel.h ../include/ircd_defs.h ../include/client.h \ + ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ + ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_chattr.h \ + ../include/ircd_features.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/match.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_debug.h \ + ../include/s_misc.h ../include/s_user.h ../include/send.h ircd_reply.o: ircd_reply.c ../config.h ../include/ircd_reply.h \ - ../include/client.h ../include/ircd_defs.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_snprintf.h \ - ../include/msg.h ../include/numeric.h ../include/s_conf.h \ - ../include/s_debug.h ../include/send.h + ../include/client.h ../include/ircd_defs.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_snprintf.h \ + ../include/msg.h ../include/numeric.h ../include/s_conf.h \ + ../include/s_debug.h ../include/send.h ircd_signal.o: ircd_signal.c ../config.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_defs.h ../include/ircd_events.h \ - ../include/ircd_signal.h ../include/s_conf.h + ../include/struct.h ../include/ircd_defs.h ../include/ircd_events.h \ + ../include/ircd_signal.h ../include/s_conf.h ircd_snprintf.o: ircd_snprintf.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/channel.h \ - ../include/ircd_snprintf.h ../include/struct.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/channel.h ../include/ircd_snprintf.h ../include/struct.h ircd_string.o: ircd_string.c ../config.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/ircd_defs.h ../include/ircd_log.h \ - chattr.tab.c + ../include/ircd_chattr.h ../include/ircd_defs.h ../include/ircd_log.h \ + chattr.tab.c ircd_xopen.o: ircd_xopen.c ../config.h ../include/ircd_xopen.h jupe.o: jupe.c ../config.h ../include/jupe.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ - ../include/ircd_features.h ../include/ircd_log.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/match.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_bsd.h \ - ../include/s_misc.h ../include/send.h ../include/support.h \ - ../include/sys.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_features.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/match.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_bsd.h \ + ../include/s_misc.h ../include/send.h ../include/support.h \ + ../include/sys.h list.o: list.c ../config.h ../include/list.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_alloc.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/listener.h \ - ../include/match.h ../include/numeric.h ../include/res.h \ - ../include/s_auth.h ../include/s_bsd.h ../include/s_conf.h \ - ../include/s_debug.h ../include/s_misc.h ../include/s_user.h \ - ../include/send.h ../include/support.h ../include/whowas.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h \ + ../include/listener.h ../include/match.h ../include/numeric.h \ + ../include/res.h ../include/s_auth.h ../include/s_bsd.h \ + ../include/s_conf.h ../include/s_debug.h ../include/s_misc.h \ + ../include/s_user.h ../include/send.h ../include/support.h \ + ../include/whowas.h listener.o: listener.c ../config.h ../include/listener.h \ - ../include/ircd_defs.h ../include/ircd_events.h ../include/client.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_handler.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ - ../include/ircd_features.h ../include/ircd_osdep.h \ - ../include/ircd_reply.h ../include/ircd_snprintf.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/numeric.h \ - ../include/s_bsd.h ../include/s_conf.h ../include/s_misc.h \ - ../include/s_stats.h ../include/send.h ../include/sys.h + ../include/ircd_defs.h ../include/ircd_events.h ../include/client.h \ + ../include/dbuf.h ../include/msgq.h ../include/ircd_handler.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_features.h ../include/ircd_osdep.h \ + ../include/ircd_reply.h ../include/ircd_snprintf.h \ + ../include/ircd_string.h ../include/ircd_chattr.h \ + ../include/numeric.h ../include/s_bsd.h ../include/s_conf.h \ + ../include/s_misc.h ../include/s_stats.h ../include/send.h \ + ../include/sys.h m_account.o: m_account.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numnicks.h \ - ../include/s_user.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numnicks.h \ + ../include/s_user.h ../include/send.h m_admin.o: m_admin.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ - ../include/ircd_reply.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/s_conf.h ../include/s_user.h -m_asll.o: m_asll.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/numeric.h ../include/numnicks.h \ - ../include/match.h ../include/msg.h ../include/send.h \ - ../include/s_bsd.h ../include/s_user.h -m_away.o: m_away.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_alloc.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_user.h \ - ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ + ../include/ircd_reply.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_conf.h ../include/s_user.h +m_asll.o: m_asll.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h \ + ../include/numeric.h ../include/numnicks.h ../include/match.h \ + ../include/msg.h ../include/send.h ../include/s_bsd.h \ + ../include/s_user.h +m_away.o: m_away.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_user.h \ + ../include/send.h m_burst.o: m_burst.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_alloc.h ../include/ircd_features.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/list.h ../include/match.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/s_conf.h ../include/s_misc.h ../include/send.h \ - ../include/support.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_alloc.h ../include/ircd_features.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/list.h ../include/match.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/s_conf.h ../include/s_misc.h ../include/send.h \ + ../include/support.h m_clearmode.o: m_clearmode.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/channel.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_alloc.h ../include/ircd_features.h \ - ../include/ircd_log.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/list.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_conf.h \ - ../include/send.h ../include/support.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/channel.h ../include/hash.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_features.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/list.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_conf.h \ + ../include/send.h ../include/support.h m_close.o: m_close.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/numeric.h \ - ../include/s_bsd.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_reply.h ../include/numeric.h \ + ../include/s_bsd.h ../include/send.h m_connect.o: m_connect.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/crule.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_features.h ../include/ircd_log.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/jupe.h ../include/match.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/s_bsd.h ../include/s_conf.h ../include/s_user.h \ - ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/crule.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_features.h ../include/ircd_log.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/jupe.h ../include/match.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/s_bsd.h ../include/s_conf.h ../include/s_user.h \ + ../include/send.h m_cprivmsg.o: m_cprivmsg.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/s_user.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/s_user.h m_create.o: m_create.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/s_debug.h ../include/s_misc.h \ - ../include/s_user.h ../include/send.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_debug.h ../include/s_misc.h \ + ../include/s_user.h ../include/send.h m_defaults.o: m_defaults.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/numeric.h \ - ../include/numnicks.h ../include/send.h ../include/supported.h \ - ../include/channel.h ../include/version.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_reply.h ../include/numeric.h \ + ../include/numnicks.h ../include/send.h ../include/supported.h \ + ../include/channel.h ../include/version.h m_destruct.o: m_destruct.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/send.h m_desynch.o: m_desynch.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_bsd.h \ - ../include/send.h -m_die.o: m_die.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/s_bsd.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_bsd.h \ + ../include/send.h +m_die.o: m_die.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_bsd.h ../include/send.h m_endburst.o: m_endburst.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/send.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/send.h m_error.o: m_error.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/numeric.h ../include/numnicks.h \ - ../include/s_debug.h ../include/s_misc.h ../include/send.h -m_get.o: m_get.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_features.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/numeric.h \ - ../include/numnicks.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_alloc.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/numeric.h ../include/numnicks.h \ + ../include/s_debug.h ../include/s_misc.h ../include/send.h +m_get.o: m_get.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/numeric.h ../include/numnicks.h \ + ../include/send.h m_gline.o: m_gline.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/gline.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_features.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/s_conf.h ../include/s_misc.h ../include/send.h \ - ../include/support.h -m_help.o: m_help.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/send.h -m_info.o: m_info.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/s_misc.h ../include/s_user.h \ - ../include/s_conf.h ../include/send.h ../include/version.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/gline.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_features.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/s_conf.h ../include/s_misc.h ../include/send.h \ + ../include/support.h +m_help.o: m_help.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/send.h +m_info.o: m_info.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_misc.h ../include/s_user.h \ + ../include/s_conf.h ../include/send.h ../include/version.h m_invite.o: m_invite.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/list.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_user.h \ - ../include/send.h -m_ison.o: m_ison.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/numeric.h ../include/send.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/list.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_user.h \ + ../include/send.h +m_ison.o: m_ison.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h \ + ../include/numeric.h ../include/send.h m_join.o: m_join.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/gline.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_chattr.h ../include/ircd_features.h \ - ../include/ircd_reply.h ../include/ircd_string.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_debug.h \ - ../include/s_user.h ../include/send.h -m_jupe.o: m_jupe.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/jupe.h ../include/hash.h \ - ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/match.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_conf.h \ - ../include/s_misc.h ../include/send.h ../include/support.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/gline.h ../include/hash.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_chattr.h \ + ../include/ircd_features.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_debug.h ../include/s_user.h \ + ../include/send.h +m_jupe.o: m_jupe.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/jupe.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_features.h ../include/ircd_reply.h \ + ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \ + ../include/msg.h ../include/numeric.h ../include/numnicks.h \ + ../include/s_conf.h ../include/s_misc.h ../include/send.h \ + ../include/support.h m_kick.o: m_kick.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ - ../include/hash.h ../include/ircd.h ../include/struct.h \ - ../include/ircd_reply.h ../include/ircd_string.h \ - ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ - ../include/numnicks.h ../include/send.h -m_kill.o: m_kill.c ../config.h ../include/client.h ../include/ircd_defs.h \ - ../include/dbuf.h ../include/msgq.h ../include/ircd_events.h \ - ../include/ircd_handler.h ../include/hash.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_features.h ../include/ircd_log.h \ - ../include/ircd_reply.h ../include/ircd_snprintf.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/msg.h \ - ../include/numeric.h ../include/numnicks.h ../include/s_misc.h \ - ../include/send.h ../include/whowas.h + ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ + ../include/msgq.h ../include/ircd_events.h ../include/ircd_handler.h \ + ../include/hash.h ../include/ircd.h ../include/struct.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/send.h +m_kill.o: m_kill.c ../config.h ../include/client.h \ + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/hash.h \ + ../include/ircd.h ../include/struct.h ../include/ircd_features.h \ + ../include/ircd_log.h ../include/ircd_reply.h \ + ../include/ircd_snprintf.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/msg.h ../include/numeric.h \ + ../include/numnicks.h ../include/s_misc.h ../include/send.h \ + ../include/whowas.h m_links.o: m_links.c ../config.h ../include/client.h \ - ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ - ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ - ../include/struct.h ../include/ircd_features.h ../include/ircd_reply.h \ - ../include/ircd_string.h ../include/ircd_chattr.h ../include/match.h \ - ../include/msg.h ../include/numeric.h ../include/numnicks.h \ - ../include/s_user.h ../include/send.h + ../include/ircd_defs.h ../include/dbuf.h ../include/msgq.h \ + ../include/ircd_events.h ../include/ircd_handler.h ../include/ircd.h \ + ../include/struct.h ../include/ircd_features.h \ + ../include/ircd_reply.h ../include/ircd_string.h \ + ../include/ircd_chattr.h ../include/match.h ../include/msg.h \ + ../include/numeric.h ../include/numnicks.h ../include/s_user.h \ + ../include/send.h m_list.o: m_list.c ../config.h ../include/channel.h \ - ../include/ircd_defs.h ../include/client.h ../include/dbuf.h \ - ../includ... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-01 15:27:06
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-01 15:26:56 UTC Modified files: ChangeLog ChangeLog.es configure configure.in include/class.h include/ircd_features.h include/motd.h include/patchlevel.h include/s_conf.h include/supported.h ircd/Makefile.in ircd/class.c ircd/ircd.c ircd/ircd_features.c ircd/m_clearmode.c ircd/m_join.c ircd/m_trace.c ircd/m_whois.c ircd/motd.c ircd/s_conf.c ircd/s_err.c Added files: doc/ircd.sample-en.conf ircd/ircd_lexer.l ircd/ircd_parser.y Removed files: doc/en/ircd.conf.sample Log message: Author: zoltan <zo...@ir...> Log message: 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha2 * Nuevo formato del ircd.conf ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.2 ircd-ircdev/ChangeLog:1.3 --- ircd-ircdev/ChangeLog:1.2 Tue Oct 7 11:52:17 2003 +++ ircd-ircdev/ChangeLog Sat Nov 1 07:26:45 2003 @@ -1,10 +1,12 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.2 2003/10/07 18:52:17 zolty Exp $ +# $Id: ChangeLog,v 1.3 2003/11/01 15:26:45 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha2 + * New format ircd.conf. 2003-10-07 Toni Garcia <zo...@ir...> 1.0.alpha1 * Cleanup in the 005. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.2 ircd-ircdev/ChangeLog.es:1.3 --- ircd-ircdev/ChangeLog.es:1.2 Tue Oct 7 11:52:17 2003 +++ ircd-ircdev/ChangeLog.es Sat Nov 1 07:26:45 2003 @@ -1,10 +1,12 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.2 2003/10/07 18:52:17 zolty Exp $ +# $Id: ChangeLog.es,v 1.3 2003/11/01 15:26:45 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha2 + * Nuevo formato del ircd.conf 2003-10-07 Toni Garcia <zo...@ir...> 1.0.alpha1 * Limpieza en el 005. Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.1.1.1 ircd-ircdev/configure:1.2 --- ircd-ircdev/configure:1.1.1.1 Mon Sep 8 03:34:26 2003 +++ ircd-ircdev/configure Sat Nov 1 07:26:45 2003 @@ -1,71 +1,325 @@ #! /bin/sh - # Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.13 -# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. +# Generated by GNU Autoconf 2.57. # +# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 +# Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. +## --------------------- ## +## M4sh Initialization. ## +## --------------------- ## + +# Be Bourne compatible +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' +elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then + set -o posix +fi + +# Support unset when possible. +if (FOO=FOO; unset FOO) >/dev/null 2>&1; then + as_unset=unset +else + as_unset=false +fi + + +# Work around bugs in pre-3.0 UWIN ksh. +$as_unset ENV MAIL MAILPATH +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +for as_var in \ + LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ + LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ + LC_TELEPHONE LC_TIME +do + if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + eval $as_var=C; export $as_var + else + $as_unset $as_var + fi +done + +# Required to use basename. +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + + +# Name of the executable. +as_me=`$as_basename "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)$' \| \ + . : '\(.\)' 2>/dev/null || +echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } + /^X\/\(\/\/\)$/{ s//\1/; q; } + /^X\/\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` + + +# PATH needs CR, and LINENO needs CR and PATH. +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi + + + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" || { + # Find who we are. Look in the path if we contain no path at all + # relative or not. + case $0 in + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break +done + + ;; + esac + # We did not find ourselves, most probably we were run as `sh COMMAND' + # in which case we are not to be found in the path. + if test "x$as_myself" = x; then + as_myself=$0 + fi + if test ! -f "$as_myself"; then + { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 + { (exit 1); exit 1; }; } + fi + case $CONFIG_SHELL in + '') + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for as_base in sh bash ksh sh5; do + case $as_dir in + /*) + if ("$as_dir/$as_base" -c ' + as_lineno_1=$LINENO + as_lineno_2=$LINENO + as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` + test "x$as_lineno_1" != "x$as_lineno_2" && + test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then + $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } + $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } + CONFIG_SHELL=$as_dir/$as_base + export CONFIG_SHELL + exec "$CONFIG_SHELL" "$0" ${1+"$@"} + fi;; + esac + done +done +;; + esac + + # Create $as_me.lineno as a copy of $as_myself, but with $LINENO + # uniformly replaced by the line number. The first 'sed' inserts a + # line-number line before each line; the second 'sed' does the real + # work. The second script uses 'N' to pair each line-number line + # with the numbered line, and appends trailing '-' during + # substitution so that $LINENO is not a special case at line end. + # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the + # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) + sed '=' <$as_myself | + sed ' + N + s,$,-, + : loop + s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, + t loop + s,-$,, + s,^['$as_cr_digits']*\n,, + ' >$as_me.lineno && + chmod +x $as_me.lineno || + { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 + { (exit 1); exit 1; }; } + + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensible to this). + . ./$as_me.lineno + # Exit status is that of the last command. + exit +} + + +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ECHO_C=' +' ECHO_T=' ' ;; + *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; + *) ECHO_N= ECHO_C='\c' ECHO_T= ;; +esac + +if expr a : '\(a\)' >/dev/null 2>&1; then + as_expr=expr +else + as_expr=false +fi + +rm -f conf$$ conf$$.exe conf$$.file +echo >conf$$.file +if ln -s conf$$.file conf$$ 2>/dev/null; then + # We could just check for DJGPP; but this test a) works b) is more generic + # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). + if test -f conf$$.exe; then + # Don't use ln at all; we don't have any links + as_ln_s='cp -p' + else + as_ln_s='ln -s' + fi +elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln +else + as_ln_s='cp -p' +fi +rm -f conf$$ conf$$.exe conf$$.file + +if mkdir -p . 2>/dev/null; then + as_mkdir_p=: +else + as_mkdir_p=false +fi + +as_executable_p="test -f" + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" + -# Defaults: -ac_help= +# IFS +# We need space, tab and new line, in precisely that order. +as_nl=' +' +IFS=" $as_nl" + +# CDPATH. +$as_unset CDPATH + + +# Name of the host. +# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +exec 6>&1 + +# +# Initializations. +# ac_default_prefix=/usr/local -# Any additions from configure.in: +ac_config_libobj_dir=. +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} + +# Maximum number of lines to put in a shell here document. +# This variable seems obsolete. It should probably be removed, and +# only ac_max_sed_lines should be used. +: ${ac_max_here_lines=38} + +# Identity of this package. +PACKAGE_NAME= +PACKAGE_TARNAME= +PACKAGE_VERSION= +PACKAGE_STRING= +PACKAGE_BUGREPORT= + +ac_unique_file="ircd/ircd.c" ac_default_prefix=$HOME -ac_help="$ac_help - --enable-poll Force poll to be used regardless of whether or not - it is a system call" -ac_help="$ac_help - --enable-debug Turn on debugging mode" -ac_help="$ac_help - --disable-asserts Disable assertion checking" -ac_help="$ac_help - --disable-symbols Disable debugging symbols (remove -g from CFLAGS)" -ac_help="$ac_help - --enable-profile Enable profiling support (add -pg to CFLAGS)" -ac_help="$ac_help - --enable-pedantic Enable pedantic warnings (add -pedantic to CFLAGS)" -ac_help="$ac_help - --enable-warnings Enable warnings (add -Wall to CFLAGS)" -ac_help="$ac_help - --disable-inlines Disable inlining for a few critical functions" -ac_help="$ac_help - --disable-devpoll Disable the /dev/poll-based engine" -ac_help="$ac_help - --disable-kqueue Disable the kqueue-based engine" -ac_help="$ac_help - --with-symlink=name Name to give the symlink; if name is "no," no - symlink will be created." -ac_help="$ac_help - --with-mode=mode Permissions (in octal) to give the binary" -ac_help="$ac_help - --with-owner=owner Specify owner of the installed binary" -ac_help="$ac_help - --with-group=group Specify group owner of the installed binary" -ac_help="$ac_help - --with-domain=domain Domain name to use in local statistics gathering" -ac_help="$ac_help - --with-chroot=dir Specify that the server will be operated under - a different root directory given by dir. See - doc/readme.chroot for more information." -ac_help="$ac_help - --with-dpath=dir Directory for all server data files" -ac_help="$ac_help - --with-cpath=file Set server configuration file" -ac_help="$ac_help - --with-lpath=file Set the debugging log file" -ac_help="$ac_help - --with-maxcon=maxcon Maximum number of connections server will accept" +# Factoring default headers for most tests. +ac_includes_default="\ +#include <stdio.h> +#if HAVE_SYS_TYPES_H +# include <sys/types.h> +#endif +#if HAVE_SYS_STAT_H +# include <sys/stat.h> +#endif +#if STDC_HEADERS +# include <stdlib.h> +# include <stddef.h> +#else +# if HAVE_STDLIB_H +# include <stdlib.h> +# endif +#endif +#if HAVE_STRING_H +# if !STDC_HEADERS && HAVE_MEMORY_H +# include <memory.h> +# endif +# include <string.h> +#endif +#if HAVE_STRINGS_H +# include <strings.h> +#endif +#if HAVE_INTTYPES_H +# include <inttypes.h> +#else +# if HAVE_STDINT_H +# include <stdint.h> +# endif +#endif +#if HAVE_UNISTD_H +# include <unistd.h> +#endif" + +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S RMPROG SHPROG OSDEP_C ENGINE_C INSTALL_RULE SYMLINK IRCDMODE IRCDOWN IRCDGRP DPATH LIBOBJS LTLIBOBJS' +ac_subst_files='' # Initialize some variables set by options. +ac_init_help= +ac_init_version=false # The variables have the same names as the options, with # dashes changed to underlines. -build=NONE -cache_file=./config.cache +cache_file=/dev/null exec_prefix=NONE -host=NONE no_create= -nonopt=NONE no_recursion= prefix=NONE program_prefix=NONE @@ -74,10 +328,15 @@ silent= site= srcdir= -target=NONE verbose= x_includes=NONE x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' @@ -91,17 +350,9 @@ infodir='${prefix}/info' mandir='${prefix}/man' -# Initialize some other variables. -subdirs= -MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} -# Maximum number of lines to put in a shell here document. -ac_max_here_lines=12 - ac_prev= for ac_option do - # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval "$ac_prev=\$ac_option" @@ -109,59 +360,59 @@ continue fi - case "$ac_option" in - -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; - *) ac_optarg= ;; - esac + ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` # Accept the important Cygnus configure options, so we can diagnose typos. - case "$ac_option" in + case $ac_option in -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir="$ac_optarg" ;; + bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) - ac_prev=build ;; + ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build="$ac_optarg" ;; + build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file="$ac_optarg" ;; + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | --da=*) - datadir="$ac_optarg" ;; + datadir=$ac_optarg ;; -disable-* | --disable-*) - ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - eval "enable_${ac_feature}=no" ;; + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/-/_/g'` + eval "enable_$ac_feature=no" ;; -enable-* | --enable-*) - ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; + expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid feature name: $ac_feature" >&2 + { (exit 1); exit 1; }; } + ac_feature=`echo $ac_feature | sed 's/-/_/g'` + case $ac_option in + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac - eval "enable_${ac_feature}='$ac_optarg'" ;; + eval "enable_$ac_feature='$ac_optarg'" ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ @@ -170,95 +421,47 @@ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) - exec_prefix="$ac_optarg" ;; + exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; - -help | --help | --hel | --he) - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat << EOF -Usage: configure [options] [host] -Options: [defaults in brackets after descriptions] -Configuration: - --cache-file=FILE cache test results in FILE - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages - --version print the version of autoconf that created configure -Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [same as prefix] - --bindir=DIR user executables in DIR [EPREFIX/bin] - --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] - --libexecdir=DIR program executables in DIR [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data in DIR - [PREFIX/share] - --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data in DIR - [PREFIX/com] - --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] - --libdir=DIR object code libraries in DIR [EPREFIX/lib] - --includedir=DIR C header files in DIR [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] - --infodir=DIR info documentation in DIR [PREFIX/info] - --mandir=DIR man documentation in DIR [PREFIX/man] - --srcdir=DIR find the sources in DIR [configure dir or ..] - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM - run sed PROGRAM on installed program names -EOF - cat << EOF -Host type: - --build=BUILD configure for building on BUILD [BUILD=HOST] - --host=HOST configure for HOST [guessed] - --target=TARGET configure for TARGET [TARGET=HOST] -Features and packages: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR -EOF - if test -n "$ac_help"; then - echo "--enable and --with options recognized:$ac_help" - fi - exit 0 ;; + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; -host | --host | --hos | --ho) - ac_prev=host ;; + ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) - host="$ac_optarg" ;; + host_alias=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir="$ac_optarg" ;; + includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir="$ac_optarg" ;; + infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir="$ac_optarg" ;; + libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) - libexecdir="$ac_optarg" ;; + libexecdir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst \ @@ -267,19 +470,19 @@ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir="$ac_optarg" ;; + localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir="$ac_optarg" ;; + mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) + | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ @@ -293,26 +496,26 @@ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir="$ac_optarg" ;; + oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix="$ac_optarg" ;; + prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix="$ac_optarg" ;; + program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix="$ac_optarg" ;; + program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ @@ -329,7 +532,7 @@ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name="$ac_optarg" ;; + program_transform_name=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) @@ -339,7 +542,7 @@ ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) - sbindir="$ac_optarg" ;; + sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ @@ -350,58 +553,57 @@ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) - sharedstatedir="$ac_optarg" ;; + sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; + site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir="$ac_optarg" ;; + srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir="$ac_optarg" ;; + sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target ;; + ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target="$ac_optarg" ;; + target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; - -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.13" - exit 0 ;; + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; -with-* | --with-*) - ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; + case $ac_option in + *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac - eval "with_${ac_package}='$ac_optarg'" ;; + eval "with_$ac_package='$ac_optarg'" ;; -without-* | --without-*) - ac_package=`echo $ac_option|sed -e 's/-*without-//'` + ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - eval "with_${ac_package}=no" ;; + expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid package name: $ac_package" >&2 + { (exit 1); exit 1; }; } + ac_package=`echo $ac_package | sed 's/-/_/g'` + eval "with_$ac_package=no" ;; --x) # Obsolete; use --with-x. @@ -412,99 +614,110 @@ ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes="$ac_optarg" ;; + x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries="$ac_optarg" ;; + x_libraries=$ac_optarg ;; - -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + -*) { echo "$as_me: error: unrecognized option: $ac_option +Try \`$0 --help' for more information." >&2 + { (exit 1); exit 1; }; } ;; + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && + { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 + { (exit 1); exit 1; }; } + ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` + eval "$ac_envvar='$ac_optarg'" + export $ac_envvar ;; + *) - if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 - fi - if test "x$nonopt" != xNONE; then - { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } - fi - nonopt="$ac_option" + # FIXME: should be removed in autoconf 3.0. + echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then - { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } -fi - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 6 checking for... messages and results -# 5 compiler messages saved in config.log -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + { echo "$as_me: error: missing argument to $ac_option" >&2 + { (exit 1); exit 1; }; } fi -exec 5>./config.log -echo "\ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -" 1>&5 +# Be sure to have absolute paths. +for ac_var in exec_prefix prefix +do + eval ac_val=$`echo $ac_var` + case $ac_val in + [\\/$]* | ?:[\\/]* | NONE | '' ) ;; + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; };; + esac +done -# Strip out --no-create and --no-recursion so they do not pile up. -# Also quote any args containing shell metacharacters. -ac_configure_args= -for ac_arg +# Be sure to have absolute paths. +for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ + localstatedir libdir includedir oldincludedir infodir mandir do - case "$ac_arg" in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ac_configure_args="$ac_configure_args '$ac_arg'" ;; - *) ac_configure_args="$ac_configure_args $ac_arg" ;; + eval ac_val=$`echo $ac_var` + case $ac_val in + [\\/$]* | ?:[\\/]* ) ;; + *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 + { (exit 1); exit 1; }; };; esac done -# NLS nuisances. -# Only set these to C if already set. These must not be set unconditionally -# because not all systems understand e.g. LANG=C (notably SCO). -# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! -# Non-C LC_CTYPE values break the ctype check. -if test "${LANG+set}" = set; then LANG=C; export LANG; fi -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi -if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. + If a cross compiler is detected then cross compile mode will be used." >&2 + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=ircd/ircd.c # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. + ac_confdir=`(dirname "$0") 2>/dev/null || +$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || +echo X"$0" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } + /^X\(\/\/\)[^/].*/{ s//\1/; q; } + /^X\(\/\/\)$/{ s//\1/; q; } + /^X\(\/\).*/{ s//\1/; q; } + s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. @@ -514,13 +727,458 @@ fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 + { (exit 1); exit 1; }; } else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } + { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 + { (exit 1); exit 1; }; } fi fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` +(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || + { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 + { (exit 1); exit 1; }; } +srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` +ac_env_build_alias_set=${build_alias+set} +ac_env_build_alias_value=$build_alias +ac_cv_env_build_alias_set=${build_alias+set} +ac_cv_env_build_alias_value=$build_alias +ac_env_host_alias_set=${host_alias+set} +ac_env_host_alias_value=$host_alias +ac_cv_env_host_alias_set=${host_alias+set} +ac_cv_env_host_alias_value=$host_alias +ac_env_target_alias_set=${target_alias+set} +ac_env_target_alias_value=$target_alias +ac_cv_env_target_alias_set=${target_alias+set} +ac_cv_env_target_alias_value=$target_alias +ac_env_CC_set=${CC+set} +ac_env_CC_value=$CC +ac_cv_env_CC_set=${CC+set} +ac_cv_env_CC_value=$CC +ac_env_CFLAGS_set=${CFLAGS+set} +ac_env_CFLAGS_value=$CFLAGS +ac_cv_env_CFLAGS_set=${CFLAGS+set} +ac_cv_env_CFLAGS_value=$CFLAGS +ac_env_LDFLAGS_set=${LDFLAGS+set} +ac_env_LDFLAGS_value=$LDFLAGS +ac_cv_env_LDFLAGS_set=${LDFLAGS+set} +ac_cv_env_LDFLAGS_value=$LDFLAGS +ac_env_CPPFLAGS_set=${CPPFLAGS+set} +ac_env_CPPFLAGS_value=$CPPFLAGS +ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} +ac_cv_env_CPPFLAGS_value=$CPPFLAGS +ac_env_CPP_set=${CPP+set} +ac_env_CPP_value=$CPP +ac_cv_env_CPP_set=${CPP+set} +ac_cv_env_CPP_value=$CPP + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures this package to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +_ACEOF + + cat <<_ACEOF +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data [PREFIX/share] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --infodir=DIR info documentation [PREFIX/info] + --mandir=DIR man documentation [PREFIX/man] +_ACEOF + + cat <<\_ACEOF + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] +_ACEOF +fi + +if test -n "$ac_init_help"; then + + cat <<\_ACEOF + +Optional Features: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-poll Force poll to be used regardless of whether or not + it is a system call + --enable-debug Turn on debugging mode + --disable-asserts Disable assertion checking + --disable-symbols Disable debugging symbols (remove -g from CFLAGS) + --enable-profile Enable profiling support (add -pg to CFLAGS) + --enable-pedantic Enable pedantic warnings (add -pedantic to CFLAGS) + --enable-warnings Enable warnings (add -Wall to CFLAGS) + --disable-inlines Disable inlining for a few critical functions + --disable-devpoll Disable the /dev/poll-based engine + --disable-kqueue Disable the kqueue-based engine + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-symlink=name Name to give the symlink; if name is "no," no + symlink will be created. + --with-mode=mode Permissions (in octal) to give the binary + --with-owner=owner Specify owner of the installed binary + --with-group=group Specify group owner of the installed binary + --with-domain=domain Domain name to use in local statistics gathering + --with-chroot=dir Specify that the server will be operated under + a different root directory given by dir. See + doc/readme.chroot for more information. + --with-dpath=dir Directory for all server data files + --with-cpath=file Set server configuration file + --with-lpath=file Set the debugging log file + --with-maxcon=maxcon Maximum number of connections server will accept + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a + nonstandard directory <lib dir> + CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have + headers in a nonstandard directory <include dir> + CPP C preprocessor + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +_ACEOF +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + ac_popdir=`pwd` + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d $ac_dir || continue + ac_builddir=. + +if test "$ac_dir" != .; then + ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` + # A "../" for each directory in $ac_dir_suffix. + ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` +else + ac_dir_suffix= ac_top_builddir= +fi + +case $srcdir in + .) # No --srcdir option. We are building in place. + ac_srcdir=. + if test -z "$ac_top_builddir"; then + ac_top_srcdir=. + else + ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` + fi ;; + [\\/]* | ?:[\\/]* ) # Absolute path. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir ;; + *) # Relative path. + ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_builddir$srcdir ;; +esac +# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be +# absolute. +ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` +ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` +ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` +ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + + cd $ac_dir + # Check for guested configure; otherwise get Cygnus style configure. + if test -f $ac_srcdir/configure.gnu; then + echo + $SHELL $ac_srcdir/configure.gnu --help=recursive + elif test -f $ac_srcdir/configure; then + echo + $SHELL $ac_srcdir/configure --help=recursive + elif test -f $ac_srcdir/configure.ac || + test -f $ac_srcdir/configure.in; then + echo + $ac_configure --help + else + echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi + cd "$ac_popdir" + done +fi + +test -n "$ac_init_help" && exit 0 +if $ac_init_version; then + cat <<\_ACEOF + +Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 +Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit 0 +fi +exec 5>config.log +cat >&5 <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by $as_me, which was +generated by GNU Autoconf 2.57. Invocation command line was + + $ $0 $@ + +_ACEOF +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +hostinfo = `(hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + echo "PATH: $as_dir" +done + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_sep= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 2) + ac_configure_args1="$ac_configure_args1 '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" + # Get rid of the leading space. + ac_sep=" " + ;; + esac + done +done +$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } +$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Be sure not to use single quotes in there, as some shells, +# such as our DU 5.0 friend, will then `close' the trap. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + cat <<\_ASBOX +## ---------------- ## +## Cache variables. ## +## ---------------- ## +_ASBOX + echo + # The following way of writing the cache mishandles newlines in values, +{ + (set) 2>&1 | + case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in + *ac_space=\ *) + sed -n \ + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + ;; + *) + sed -n \ + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + ;; + esac; +} + echo + + cat <<\_ASBOX +## ----------------- ## +## Output variables. ## +## ----------------- ## +_ASBOX + echo + for ac_var in $ac_subst_vars + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + + if test -n "$ac_subst_files"; then + cat <<\_ASBOX +## ------------- ## +## Output files. ## +## ------------- ## +_ASBOX + echo + for ac_var in $ac_subst_files + do + eval ac_val=$`echo $ac_var` + echo "$ac_var='"'"'$ac_val'"'"'" + done | sort + echo + fi + + if test -s confdefs.h; then + cat <<\_ASBOX +## ----------- ## +## confdefs.h. ## +## ----------- ## +_ASBOX + echo + sed "/^$/d" confdefs.h | sort + echo + fi + test "$ac_signal" != 0 && + echo "$as_me: caught signal $ac_signal" + echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core && + rm -rf conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status + ' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -rf conftest* confdefs.h +# AIX cpp loses on an empty file, so make sure it contains at least a newline. +echo >confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then if test "x$prefix" != xNONE; then @@ -531,47 +1189,111 @@ fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" + { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 +echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file + # Some versions of bash will fail to source /dev/null (special + # files actually), so we avoid doing that. + if test -f "$cache_file"; then + { echo "$as_me:$LINENO: loading cache $cache_file" >&5 +echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . $cache_file;; + *) . ./$cache_file;; + esac + fi else - echo "creating cache $cache_file" - > $cache_file + { echo "$as_me:$LINENO: creating cache $cache_file" >&5 +echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in `(set) 2>&1 | + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val="\$ac_cv_env_${ac_var}_value" + eval ac_new_val="\$ac_env_${ac_var}_value" + case $ac_old_set,$ac_new_set in + set,) + { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 +echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 +echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 +echo "$as_me: former value: $ac_old_val" >&2;} + { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 +echo "$as_me: current value: $ac_new_val" >&2;} + ac_cache_corrupted=: + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) + ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 +echo "$as_me: error: changes in the environment can compromise the build" >&2;} + { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 +echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} + { (exit 1); exit 1; }; } fi ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + + + + + + + + + + + -ac_exeext= -ac_objext=o -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says gh...@ca.... - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi -echo $ac_n "checking for installation prefix""... $ac_c" 1>&6 -echo "configure:573: checking for installation prefix" >&5 -if eval "test \"`echo '$''{'unet_cv_prefix'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 + +echo "$as_me:$LINENO: checking for installation prefix" >&5 +echo $ECHO_N "checking for installation prefix... $ECHO_C" >&6 +if test "${unet_cv_prefix+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 else unet_cv_prefix=$HOME fi @@ -579,9 +1301,11 @@ if test x"$prefix" != xNONE; then unet_cv_prefix=$prefix fi -echo "$ac_t""$unet_cv_prefix" 1>&6 +echo "$as_me:$LINENO: result: $unet_cv_prefix" >&5 +echo "${ECHO_T}$unet_cv_prefix" >&6 ac_default_prefix=$unet_cv_prefix + ac_config_headers="$ac_config_headers config.h" @@ -596,251 +1320,713 @@ ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break + elif test -f $ac_dir/shtool; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break fi done if test -z "$ac_aux_dir"; then - { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; } -fi -ac_config_guess=$ac_aux_dir/config.guess -ac_config_sub=$ac_aux_dir/config.sub -ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - + { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5 +echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;} + { (exit 1); exit 1; }; } +fi +ac_config_guess="$SHELL $ac_aux_dir/config.guess" +ac_config_sub="$SHELL $ac_aux_dir/config.sub" +ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. # Make sure we can run config.sub. -if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : -else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } -fi - -echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:616: checking host system type" >&5 - -host_alias=$host -case "$host_alias" in -NONE) - case $nonopt in - NONE) - if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : - else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } - fi ;; - *) host_alias=$nonopt ;; - esac ;; -esac +$ac_config_sub sun4 >/dev/null 2>&1 || + { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 +echo "$as_me: error: cannot run $ac_config_sub" >&2;} + { (exit 1); exit 1; }; } + +echo "$as_me:$LINENO: checking build system type" >&5 +echo $ECHO_N "checking build system type... $ECHO_C" >&6 +if test "${ac_cv_build+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_build_alias=$build_alias +test -z "$ac_cv_build_alias" && + ac_cv_build_alias=`$ac_config_guess` +test -z "$ac_cv_build_alias" && + { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 +echo "$as_me: error: cannot guess build type; you must specify one" >&2;} + { (exit 1); exit 1; }; } +ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || + { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 +echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} + { (exit 1); exit 1; }; } + +fi +echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +echo "${ECHO_T}$ac_cv_build" >&6 +build=$ac_cv_build +build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` + + +echo "$as_me:$LINENO: checking host system type" >&5 +echo $ECHO_N "checking host system type... $ECHO_C" >&6 +if test "${ac_cv_host+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_cv_host_alias=$host_alias +test -z "$ac_cv_host_alias" && + ac_cv_host_alias=$ac_cv_build_alias +ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || + { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 +echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} + { (exit 1); exit 1; }; } + +fi +echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +echo "${ECHO_T}$ac_cv_host" >&6 +host=$ac_cv_host +host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` +host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` +host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$host" 1>&6 -# Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:640: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the fi... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-01 17:19:48
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-01 17:19:46 UTC Modified files: .cvsignore ChangeLog ChangeLog.es aclocal.m4 config.h.in configure configure.in include/channel.h include/patchlevel.h ircd/IPcheck.c ircd/Makefile.in ircd/channel.c ircd/gline.c ircd/ircd_events.c ircd/m_whois.c Added files: TODO TODO.es ircd/.cvsignore ircd/engine_epoll.c Log message: Author: zoltan <zo...@ir...> Log message: 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha3 * Implementacion del engine de epoll(). * Actualizacion al u2.10.11.05 de Undernet. ---------------------- diff included ---------------------- Index: ircd-ircdev/.cvsignore diff -u ircd-ircdev/.cvsignore:1.1.1.1 ircd-ircdev/.cvsignore:1.2 --- ircd-ircdev/.cvsignore:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/.cvsignore Sat Nov 1 09:19:35 2003 @@ -5,3 +5,4 @@ stamp-h config.status config.cache +autom4te.cache Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.3 ircd-ircdev/ChangeLog:1.4 --- ircd-ircdev/ChangeLog:1.3 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/ChangeLog Sat Nov 1 09:19:35 2003 @@ -1,10 +1,14 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.3 2003/11/01 15:26:45 zolty Exp $ +# $Id: ChangeLog,v 1.4 2003/11/01 17:19:35 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha3 + * Implementation epoll() engine. + * Upgrade to Undernet u2.10.11.05. + 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha2 * New format ircd.conf. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.3 ircd-ircdev/ChangeLog.es:1.4 --- ircd-ircdev/ChangeLog.es:1.3 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/ChangeLog.es Sat Nov 1 09:19:35 2003 @@ -1,12 +1,16 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.3 2003/11/01 15:26:45 zolty Exp $ +# $Id: ChangeLog.es,v 1.4 2003/11/01 17:19:35 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha3 + * Implementacion del engine de epoll(). + * Actualizacion al u2.10.11.05 de Undernet. + 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha2 - * Nuevo formato del ircd.conf + * Nuevo formato del ircd.conf. 2003-10-07 Toni Garcia <zo...@ir...> 1.0.alpha1 * Limpieza en el 005. Index: ircd-ircdev/TODO diff -u /dev/null ircd-ircdev/TODO:1.1 --- /dev/null Sat Nov 1 09:19:46 2003 +++ ircd-ircdev/TODO Sat Nov 1 09:19:35 2003 @@ -0,0 +1,8 @@ +# +# TODO for ircd-ircdev +# +# $Id: TODO,v 1.1 2003/11/01 17:19:35 zolty Exp $ +# +# Insert new entraces at beginning of the TODO list. +# + Index: ircd-ircdev/TODO.es diff -u /dev/null ircd-ircdev/TODO.es:1.1 --- /dev/null Sat Nov 1 09:19:46 2003 +++ ircd-ircdev/TODO.es Sat Nov 1 09:19:35 2003 @@ -0,0 +1,12 @@ +# +# TODO para ircd-ircdev +# +# $Id: TODO.es,v 1.1 2003/11/01 17:19:35 zolty Exp $ +# +# Insertar las nuevas entradas al principio de la lista TODO. +# + +1/Nov/2003 +Bug en el configure al elegir entre poll() y epoll() en linux que tienen fuentes pero no estan activados. + +Bug en las U-lines (uworld y jupes) Index: ircd-ircdev/aclocal.m4 diff -u ircd-ircdev/aclocal.m4:1.1.1.1 ircd-ircdev/aclocal.m4:1.2 --- ircd-ircdev/aclocal.m4:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/aclocal.m4 Sat Nov 1 09:19:35 2003 @@ -1,4 +1,4 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4 +dnl aclocal.m4 generated automatically by aclocal 1.4-p4 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation @@ -225,6 +225,825 @@ AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket, , AC_CHECK_LIB(socket, socket, LIBS="-lsocket -lnsl $LIBS", , -lnsl))) ]) + +# lib-prefix.m4 serial 3 (gettext-0.12.2) +dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +dnl From Bruno Haible. + +dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and +dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't +dnl require excessive bracketing. +ifdef([AC_HELP_STRING], +[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], +[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) + +dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed +dnl to access previously installed libraries. The basic assumption is that +dnl a user will want packages to use other packages he previously installed +dnl with the same --prefix option. +dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate +dnl libraries, but is otherwise very convenient. +AC_DEFUN([AC_LIB_PREFIX], +[ + AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) + AC_REQUIRE([AC_PROG_CC]) + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) + dnl By default, look in $includedir and $libdir. + use_additional=yes + AC_LIB_WITH_FINAL_PREFIX([ + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + ]) + AC_LIB_ARG_WITH([lib-prefix], +[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib + --without-lib-prefix don't search for libraries in includedir and libdir], +[ + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + AC_LIB_WITH_FINAL_PREFIX([ + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + ]) + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi +]) + if test $use_additional = yes; then + dnl Potentially add $additional_includedir to $CPPFLAGS. + dnl But don't add it + dnl 1. if it's the standard /usr/include, + dnl 2. if it's already present in $CPPFLAGS, + dnl 3. if it's /usr/local/include and we are using GCC on Linux, + dnl 4. if it doesn't exist as a directory. + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + for x in $CPPFLAGS; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + dnl Really add $additional_includedir to $CPPFLAGS. + CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" + fi + fi + fi + fi + dnl Potentially add $additional_libdir to $LDFLAGS. + dnl But don't add it + dnl 1. if it's the standard /usr/lib, + dnl 2. if it's already present in $LDFLAGS, + dnl 3. if it's /usr/local/lib and we are using GCC on Linux, + dnl 4. if it doesn't exist as a directory. + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + for x in $LDFLAGS; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + dnl Really add $additional_libdir to $LDFLAGS. + LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" + fi + fi + fi + fi + fi +]) + +dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, +dnl acl_final_exec_prefix, containing the values to which $prefix and +dnl $exec_prefix will expand at the end of the configure script. +AC_DEFUN([AC_LIB_PREPARE_PREFIX], +[ + dnl Unfortunately, prefix and exec_prefix get only finally determined + dnl at the end of configure. + if test "X$prefix" = "XNONE"; then + acl_final_prefix="$ac_default_prefix" + else + acl_final_prefix="$prefix" + fi + if test "X$exec_prefix" = "XNONE"; then + acl_final_exec_prefix='${prefix}' + else + acl_final_exec_prefix="$exec_prefix" + fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" + prefix="$acl_save_prefix" +]) + +dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the +dnl variables prefix and exec_prefix bound to the values they will have +dnl at the end of the configure script. +AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], +[ + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + acl_save_exec_prefix="$exec_prefix" + exec_prefix="$acl_final_exec_prefix" + $1 + exec_prefix="$acl_save_exec_prefix" + prefix="$acl_save_prefix" +]) + +# lib-link.m4 serial 4 (gettext-0.12) +dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +dnl From Bruno Haible. + +dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and +dnl the libraries corresponding to explicit and implicit dependencies. +dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and +dnl augments the CPPFLAGS variable. +AC_DEFUN([AC_LIB_LINKFLAGS], +[ + AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) + AC_REQUIRE([AC_LIB_RPATH]) + define([Name],[translit([$1],[./-], [___])]) + define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ + AC_LIB_LINKFLAGS_BODY([$1], [$2]) + ac_cv_lib[]Name[]_libs="$LIB[]NAME" + ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" + ac_cv_lib[]Name[]_cppflags="$INC[]NAME" + ]) + LIB[]NAME="$ac_cv_lib[]Name[]_libs" + LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" + INC[]NAME="$ac_cv_lib[]Name[]_cppflags" + AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) + AC_SUBST([LIB]NAME) + AC_SUBST([LTLIB]NAME) + dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the + dnl results of this search when this library appears as a dependency. + HAVE_LIB[]NAME=yes + undefine([Name]) + undefine([NAME]) +]) + +dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) +dnl searches for libname and the libraries corresponding to explicit and +dnl implicit dependencies, together with the specified include files and +dnl the ability to compile and link the specified testcode. If found, it +dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and +dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and +dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs +dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. +AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], +[ + AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) + AC_REQUIRE([AC_LIB_RPATH]) + define([Name],[translit([$1],[./-], [___])]) + define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + + dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME + dnl accordingly. + AC_LIB_LINKFLAGS_BODY([$1], [$2]) + + dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, + dnl because if the user has installed lib[]Name and not disabled its use + dnl via --without-lib[]Name-prefix, he wants to use it. + ac_save_CPPFLAGS="$CPPFLAGS" + AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) + + AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ + ac_save_LIBS="$LIBS" + LIBS="$LIBS $LIB[]NAME" + AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) + LIBS="$ac_save_LIBS" + ]) + if test "$ac_cv_lib[]Name" = yes; then + HAVE_LIB[]NAME=yes + AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) + AC_MSG_CHECKING([how to link with lib[]$1]) + AC_MSG_RESULT([$LIB[]NAME]) + else + HAVE_LIB[]NAME=no + dnl If $LIB[]NAME didn't lead to a usable library, we don't need + dnl $INC[]NAME either. + CPPFLAGS="$ac_save_CPPFLAGS" + LIB[]NAME= + LTLIB[]NAME= + fi + AC_SUBST([HAVE_LIB]NAME) + AC_SUBST([LIB]NAME) + AC_SUBST([LTLIB]NAME) + undefine([Name]) + undefine([NAME]) +]) + +dnl Determine the platform dependent parameters needed to use rpath: +dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, +dnl hardcode_direct, hardcode_minus_L. +AC_DEFUN([AC_LIB_RPATH], +[ + AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS + AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld + AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host + AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir + AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ + CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ + ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh + . ./conftest.sh + rm -f ./conftest.sh + acl_cv_rpath=done + ]) + wl="$acl_cv_wl" + libext="$acl_cv_libext" + shlibext="$acl_cv_shlibext" + hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + hardcode_direct="$acl_cv_hardcode_direct" + hardcode_minus_L="$acl_cv_hardcode_minus_L" + dnl Determine whether the user wants rpath handling at all. + AC_ARG_ENABLE(rpath, + [ --disable-rpath do not hardcode runtime library paths], + :, enable_rpath=yes) +]) + +dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and +dnl the libraries corresponding to explicit and implicit dependencies. +dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. +AC_DEFUN([AC_LIB_LINKFLAGS_BODY], +[ + define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) + dnl By default, look in $includedir and $libdir. + use_additional=yes + AC_LIB_WITH_FINAL_PREFIX([ + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + ]) + AC_LIB_ARG_WITH([lib$1-prefix], +[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib + --without-lib$1-prefix don't search for lib$1 in includedir and libdir], +[ + if test "X$withval" = "Xno"; then + use_additional=no + else + if test "X$withval" = "X"; then + AC_LIB_WITH_FINAL_PREFIX([ + eval additional_includedir=\"$includedir\" + eval additional_libdir=\"$libdir\" + ]) + else + additional_includedir="$withval/include" + additional_libdir="$withval/lib" + fi + fi +]) + dnl Search the library and its dependencies in $additional_libdir and + dnl $LDFLAGS. Using breadth-first-seach. + LIB[]NAME= + LTLIB[]NAME= + INC[]NAME= + rpathdirs= + ltrpathdirs= + names_already_handled= + names_next_round='$1 $2' + while test -n "$names_next_round"; do + names_this_round="$names_next_round" + names_next_round= + for name in $names_this_round; do + already_handled= + for n in $names_already_handled; do + if test "$n" = "$name"; then + already_handled=yes + break + fi + done + if test -z "$already_handled"; then + names_already_handled="$names_already_handled $name" + dnl See if it was already located by an earlier AC_LIB_LINKFLAGS + dnl or AC_LIB_HAVE_LINKFLAGS call. + uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` + eval value=\"\$HAVE_LIB$uppername\" + if test -n "$value"; then + if test "$value" = yes; then + eval value=\"\$LIB$uppername\" + test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" + eval value=\"\$LTLIB$uppername\" + test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" + else + dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined + dnl that this library doesn't exist. So just drop it. + : + fi + else + dnl Search the library lib$name in $additional_libdir and $LDFLAGS + dnl and the already constructed $LIBNAME/$LTLIBNAME. + found_dir= + found_la= + found_so= + found_a= + if test $use_additional = yes; then + if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" + found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + else + if test -f "$additional_libdir/lib$name.$libext"; then + found_dir="$additional_libdir" + found_a="$additional_libdir/lib$name.$libext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi + fi + fi + fi + if test "X$found_dir" = "X"; then + for x in $LDFLAGS $LTLIB[]NAME; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` + if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" + found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + else + if test -f "$dir/lib$name.$libext"; then + found_dir="$dir" + found_a="$dir/lib$name.$libext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi + fi + fi + ;; + esac + if test "X$found_dir" != "X"; then + break + fi + done + fi + if test "X$found_dir" != "X"; then + dnl Found the library. + LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" + if test "X$found_so" != "X"; then + dnl Linking with a shared library. We attempt to hardcode its + dnl directory into the executable's runpath, unless it's the + dnl standard /usr/lib. + if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then + dnl No hardcoding is needed. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" + else + dnl Use an explicit option to hardcode DIR into the resulting + dnl binary. + dnl Potentially add DIR to ltrpathdirs. + dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $found_dir" + fi + dnl The hardcoding into $LIBNAME is system dependent. + if test "$hardcode_direct" = yes; then + dnl Using DIR/libNAME.so during linking hardcodes DIR into the + dnl resulting binary. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" + else + if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then + dnl Use an explicit option to hardcode DIR into the resulting + dnl binary. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" + dnl Potentially add DIR to rpathdirs. + dnl The rpathdirs will be appended to $LIBNAME at the end. + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $found_dir" + fi + else + dnl Rely on "-L$found_dir". + dnl But don't add it if it's already contained in the LDFLAGS + dnl or the already constructed $LIBNAME + haveit= + for x in $LDFLAGS $LIB[]NAME; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-L$found_dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" + fi + if test "$hardcode_minus_L" != no; then + dnl FIXME: Not sure whether we should use + dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" + dnl here. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" + else + dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH + dnl here, because this doesn't fit in flags passed to the + dnl compiler. So give up. No hardcoding. This affects only + dnl very old systems. + dnl FIXME: Not sure whether we should use + dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" + dnl here. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" + fi + fi + fi + fi + else + if test "X$found_a" != "X"; then + dnl Linking with a static library. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" + else + dnl We shouldn't come here, but anyway it's good to have a + dnl fallback. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" + fi + fi + dnl Assume the include files are nearby. + additional_includedir= + case "$found_dir" in + */lib | */lib/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` + additional_includedir="$basedir/include" + ;; + esac + if test "X$additional_includedir" != "X"; then + dnl Potentially add $additional_includedir to $INCNAME. + dnl But don't add it + dnl 1. if it's the standard /usr/include, + dnl 2. if it's /usr/local/include and we are using GCC on Linux, + dnl 3. if it's already present in $CPPFLAGS or the already + dnl constructed $INCNAME, + dnl 4. if it doesn't exist as a directory. + if test "X$additional_includedir" != "X/usr/include"; then + haveit= + if test "X$additional_includedir" = "X/usr/local/include"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + for x in $CPPFLAGS $INC[]NAME; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-I$additional_includedir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_includedir"; then + dnl Really add $additional_includedir to $INCNAME. + INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" + fi + fi + fi + fi + fi + dnl Look for dependencies. + if test -n "$found_la"; then + dnl Read the .la file. It defines the variables + dnl dlname, library_names, old_library, dependency_libs, current, + dnl age, revision, installed, dlopen, dlpreopen, libdir. + save_libdir="$libdir" + case "$found_la" in + */* | *\\*) . "$found_la" ;; + *) . "./$found_la" ;; + esac + libdir="$save_libdir" + dnl We use only dependency_libs. + for dep in $dependency_libs; do + case "$dep" in + -L*) + additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` + dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. + dnl But don't add it + dnl 1. if it's the standard /usr/lib, + dnl 2. if it's /usr/local/lib and we are using GCC on Linux, + dnl 3. if it's already present in $LDFLAGS or the already + dnl constructed $LIBNAME, + dnl 4. if it doesn't exist as a directory. + if test "X$additional_libdir" != "X/usr/lib"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/lib"; then + if test -n "$GCC"; then + case $host_os in + linux*) haveit=yes;; + esac + fi + fi + if test -z "$haveit"; then + haveit= + for x in $LDFLAGS $LIB[]NAME; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + dnl Really add $additional_libdir to $LIBNAME. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" + fi + fi + haveit= + for x in $LDFLAGS $LTLIB[]NAME; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X-L$additional_libdir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + if test -d "$additional_libdir"; then + dnl Really add $additional_libdir to $LTLIBNAME. + LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" + fi + fi + fi + fi + ;; + -R*) + dir=`echo "X$dep" | sed -e 's/^X-R//'` + if test "$enable_rpath" != no; then + dnl Potentially add DIR to rpathdirs. + dnl The rpathdirs will be appended to $LIBNAME at the end. + haveit= + for x in $rpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + rpathdirs="$rpathdirs $dir" + fi + dnl Potentially add DIR to ltrpathdirs. + dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. + haveit= + for x in $ltrpathdirs; do + if test "X$x" = "X$dir"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + ltrpathdirs="$ltrpathdirs $dir" + fi + fi + ;; + -l*) + dnl Handle this in the next round. + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` + ;; + *.la) + dnl Handle this in the next round. Throw away the .la's + dnl directory; it is already contained in a preceding -L + dnl option. + names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` + ;; + *) + dnl Most likely an immediate library name. + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" + LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" + ;; + esac + done + fi + else + dnl Didn't find the library; assume it is in the system directories + dnl known to the linker and runtime loader. (All the system + dnl directories known to the linker should also be known to the + dnl runtime loader, otherwise the system is severely misconfigured.) + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" + LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" + fi + fi + fi + done + done + if test "X$rpathdirs" != "X"; then + if test -n "$hardcode_libdir_separator"; then + dnl Weird platform: only the last -rpath option counts, the user must + dnl pass all path elements in one option. We can arrange that for a + dnl single library, but not when more than one $LIBNAMEs are used. + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" + done + dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" + else + dnl The -rpath options are cumulative. + for found_dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$found_dir" + eval flag=\"$hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" + done + fi + fi + if test "X$ltrpathdirs" != "X"; then + dnl When using libtool, the option that works for both libraries and + dnl executables is -R. The -R options are cumulative. + for found_dir in $ltrpathdirs; do + LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" + done + fi +]) + +dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, +dnl unless already present in VAR. +dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes +dnl contains two or three consecutive elements that belong together. +AC_DEFUN([AC_LIB_APPENDTOVAR], +[ + for element in [$2]; do + haveit= + for x in $[$1]; do + AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) + if test "X$x" = "X$element"; then + haveit=yes + break + fi + done + if test -z "$haveit"; then + [$1]="${[$1]}${[$1]:+ }$element" + fi + done +]) + +# lib-ld.m4 serial 2 (gettext-0.12) +dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. +dnl This file is free software, distributed under the terms of the GNU +dnl General Public License. As a special exception to the GNU General +dnl Public License, this file may be distributed as part of a program +dnl that contains a configuration script generated by Autoconf, under +dnl the same distribution terms as the rest of that program. + +dnl Subroutines of libtool.m4, +dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision +dnl with libtool.m4. + +dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. +AC_DEFUN([AC_LIB_PROG_LD_GNU], +[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, +[# I'd rather use --version here, but apparently some GNU ld's only accept -v. +if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then + acl_cv_prog_gnu_ld=yes +else + acl_cv_prog_gnu_ld=no +fi]) +with_gnu_ld=$acl_cv_prog_gnu_ld +]) + +dnl From libtool-1.4. Sets the variable LD. +AC_DEFUN([AC_LIB_PROG_LD], +[AC_ARG_WITH(gnu-ld, +[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], +test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + echo "#! /bin/sh" >conf$$.sh + echo "exit 0" >>conf$$.sh + chmod +x conf$$.sh + if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then + PATH_SEPARATOR=';' + else + PATH_SEPARATOR=: + fi + rm -f conf$$.sh +fi +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by GCC]) + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [[\\/]* | [A-Za-z]:[\\/]*)] + [re_direlt='/[^/][^/]*/\.\./'] + # Canonicalize the path of ld + ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` + while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do + ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` + done + test -z "$LD" && LD="$ac_prog" + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test "$with_gnu_ld" = yes; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(acl_cv_path_LD, +[if test -z "$LD"; then + IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" + for ac_dir in $PATH; do + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + acl_cv_path_LD="$ac_dir/$ac_prog" + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some GNU ld's only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then + test "$with_gnu_ld" != no && break + else + test "$with_gnu_ld" != yes && break + fi + fi + done + IFS="$ac_save_ifs" +else + acl_cv_path_LD="$LD" # Let the user override the test with a path. +fi]) +LD="$acl_cv_path_LD" +if test -n "$LD"; then + AC_MSG_RESULT($LD) +else + AC_MSG_RESULT(no) +fi +test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) +AC_LIB_PROG_LD_GNU +]) # serial 1 Index: ircd-ircdev/config.h.in diff -u ircd-ircdev/config.h.in:1.1.1.1 ircd-ircdev/config.h.in:1.2 --- ircd-ircdev/config.h.in:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/config.h.in Sat Nov 1 09:19:35 2003 @@ -1,4 +1,4 @@ -/* config.h.in. Generated automatically from configure.in by autoheader. */ +/* config.h.in. Generated from configure.in by autoheader. */ #ifndef INCLUDED_config_h #define INCLUDED_config_h /* @@ -19,34 +19,11 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: config.h.in,v 1.1.1.1 2003/09/08 10:34:25 zolty Exp $ + * $Id: config.h.in,v 1.2 2003/11/01 17:19:35 zolty Exp $ */ -/* Define to `int' if <sys/types.h> doesn't define. */ -#undef gid_t - -/* Define if system calls automatically restart after interruption - by a signal. */ -#undef HAVE_RESTARTABLE_SYSCALLS - -/* Define to `unsigned' if <sys/types.h> doesn't define. */ -#undef size_t - -/* Define if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Define if you can safely include both <sys/time.h> and <time.h>. */ -#undef TIME_WITH_SYS_TIME - -/* Define if your <sys/time.h> declares struct tm. */ -#undef TM_IN_SYS_TIME - -/* Define to `int' if <sys/types.h> doesn't define. */ -#undef uid_t - -/* Define if your processor stores words with the most significant - byte first (like Motorola and SPARC, unlike Intel and VAX). */ -#undef WORDS_BIGENDIAN +/* Define if you have the setrlimit function */ +#undef HAVE_SETRLIMIT /* Define one of these, depending on wether you have * POSIX, BSD or SYSV non-blocking stuff @@ -69,79 +46,207 @@ #undef u_int16_t #undef u_int32_t -/* The number of bytes in a int. */ -#undef SIZEOF_INT +/* Define to force the poll() function to be used */ +#undef USE_POLL +/* Define to enable the /dev/poll engine */ +#undef USE_DEVPOLL +/* Define to enable the kqueue engine */ +#undef USE_KQUEUE -/* The number of bytes in a long. */ -#undef SIZEOF_LONG +/* Define to enable various debugging code in the server; DO NOT USE + * THIS ON PRODUCTION SERVERS ON PAIN OF DELINKING! + */ +#undef DEBUGMODE -/* The number of bytes in a short. */ -#undef SIZEOF_SHORT +/* Define this to DISable various assertion checking statements */ +#undef NDEBUG -/* The number of bytes in a void *. */ -#undef SIZEOF_VOID_P +/* Define to force certain critical functions to be inlined */ +#undef FORCEINLINE + +/* Define to be the local domain name for some statics gathering */ +#undef DOMAINNAME + +/* Define to be the name of the executable to be executed on /restart */ +#undef SPATH -/* Define if you have the getrusage function. */ +/* Define to be the path to the data directory */ +#undef DPATH + +/* Define to be the name of the configuration file */ +#undef CPATH + +/* Define to be the name of the debugging log file */ +#undef LPATH + +/* Define to be the maximum number of network connections */ +#undef MAXCONNECTIONS + + +/* Configuration file name */ +#undef CPATH + +/* Enable debugging code */ +#undef DEBUGMODE + +/* Domain name to be used for some statistics gathering */ +#undef DOMAINNAME + +/* Path to data directory */ +#undef DPATH + +/* Force inlining for a few critical functions */ +#undef FORCEINLINE + +/* Define to 1 if you have the `getrusage' function. */ #undef HAVE_GETRUSAGE -/* Define if you have the kqueue function. */ +/* Define to 1 if you have the <inttypes.h> header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the `kqueue' function. */ #undef HAVE_KQUEUE -/* Define if you have the setrlimit function. */ -#undef HAVE_SETRLIMIT +/* Define to 1 if you have the `nsl' library (-lnsl). */ +#undef HAVE_LIBNSL -/* Define if you have the times function. */ -#undef HAVE_TIMES +/* Define to 1 if you have the `resolv' library (-lresolv). */ +#undef HAVE_LIBRESOLV + +/* Define to 1 if you have the `socket' library (-lsocket). */ +#undef HAVE_LIBSOCKET -/* Define if you have the <poll.h> header file. */ +/* Define to 1 if you have the <memory.h> header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the <poll.h> header file. */ #undef HAVE_POLL_H -/* Define if you have the <sys/devpoll.h> header file. */ +/* Define to 1 if system calls automatically restart after interruption by a + signal. */ +#undef HAVE_RESTARTABLE_SYSCALLS + +/* Define to 1 if you have the `setrlimit' function. */ +#undef HAVE_SETRLIMIT + +/* Define to 1 if you have the <stdint.h> header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the <stdlib.h> header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the <strings.h> header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the <string.h> header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the <sys/devpoll.h> header file. */ #undef HAVE_SYS_DEVPOLL_H -/* Define if you have the <sys/event.h> header file. */ +/* Define to 1 if you have the <sys/epoll.h> header file. */ +#undef HAVE_SYS_EPOLL_H + +/* Define to 1 if you have the <sys/event.h> header file. */ #undef HAVE_SYS_EVENT_H -/* Define if you have the nsl library (-lnsl). */ -#undef HAVE_LIBNSL +/* Define to 1 if you have the <sys/stat.h> header file. */ +#undef HAVE_SYS_STAT_H -/* Define if you have the socket library (-lsocket). */ -#undef HAVE_LIBSOCKET +/* Define to 1 if you have the <sys/types.h> header file. */ +#undef HAVE_SYS_TYPES_H -/* Specify whether or not to use poll() */ -#undef USE_POLL +/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ +#undef HAVE_SYS_WAIT_H -/* Enable debugging code */ -#undef DEBUGMODE +/* Define to 1 if you have the `times' function. */ +#undef HAVE_TIMES + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Path to debugging log file */ +#undef LPATH + +/* Maximum number of network connections */ +#undef MAXCONNECTIONS /* Disable assertions */ #undef NDEBUG -/* Force inlining for a few critical functions */ -#undef FORCEINLINE +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* The size of a `int', as computed by sizeof. */ +#undef SIZEOF_INT + +/* The size of a `long', as computed by sizeof. */ +#undef SIZEOF_LONG + +/* The size of a `short', as computed by sizeof. */ +#undef SIZEOF_SHORT + +/* The size of a `void *', as computed by sizeof. */ +#undef SIZEOF_VOID_P + +/* Path to executable for restarts */ +#undef SPATH + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ +#undef TIME_WITH_SYS_TIME + +/* Define to 1 if your <sys/time.h> declares `struct tm'. */ +#undef TM_IN_SYS_TIME /* Define to enable the /dev/poll engine */ #undef USE_DEVPOLL +/* Define to enable the epoll engine */ +#undef USE_EPOLL + /* Define to enable the kqueue engine */ #undef USE_KQUEUE -/* Domain name to be used for some statistics gathering */ -#undef DOMAINNAME +/* Specify whether or not to use poll() */ +#undef USE_POLL -/* Path to executable for restarts */ -#undef SPATH +/* Define to 1 if your processor stores words with the most significant byte + first (like Motorola and SPARC, unlike Intel and VAX). */ +#undef WORDS_BIGENDIAN -/* Path to data directory */ -#undef DPATH +/* Define to `int' if <sys/types.h> doesn't define. */ +#undef gid_t -/* Configuration file name */ -#undef CPATH +/* Define to `short' if <sys/types.h> does not define. */ +#undef int16_t -/* Path to debugging log file */ -#undef LPATH +/* Define to `long' if <sys/types.h> does not define. */ +#undef int32_t -/* Maximum number of network connections */ -#undef MAXCONNECTIONS +/* Define to `unsigned' if <sys/types.h> does not define. */ +#undef size_t + +/* Define to `unsigned short' if <sys/types.h> does not define. */ +#undef u_int16_t + +/* Define to `unsigned long' if <sys/types.h> does not define. */ +#undef u_int32_t +/* Define to `int' if <sys/types.h> doesn't define. */ +#undef uid_t #endif /* INCLUDED_config_h */ Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.2 ircd-ircdev/configure:1.3 --- ircd-ircdev/configure:1.2 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/configure Sat Nov 1 09:19:35 2003 @@ -855,6 +855,7 @@ --disable-inlines Disable inlining for a few critical functions --disable-devpoll Disable the /dev/poll-based engine --disable-kqueue Disable the kqueue-based engine + --disable-epoll Disable the epoll-based engine Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -3641,7 +3642,8 @@ -for ac_header in poll.h sys/devpoll.h sys/event.h + +for ac_header in poll.h sys/devpoll.h sys/event.h sys/epoll.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then @@ -7201,6 +7203,11 @@ echo "$as_me:$LINENO: result: Linux ($host) found." >&5 echo "${ECHO_T}Linux ($host) found." >&6 unet_poll_syscall=yes +# if test x"$ac_cv_header_sys_epoll_h" = xyes; then +# unet_poll_syscall=no +# else +# unet_poll_syscall=yes +# fi OSDEP_C=os_linux.c ;; @@ -7518,6 +7525,37 @@ ENGINE_C="engine_kqueue.c $ENGINE_C" fi +echo "$as_me:$LINENO: checking whether to enable the epoll event engine" >&5 +echo $ECHO_N "checking whether to enable the epoll event engine... $ECHO_C" >&6 +# Check whether --enable-epoll or --disable-epoll was given. +if test "${enable_epoll+set}" = set; then + enableval="$enable_epoll" + unet_cv_enable_epoll=$enable_epoll +else + if test "${unet_cv_enable_epoll+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + unet_cv_enable_epoll=yes +fi + +fi; + +if test x"$ac_cv_header_sys_epoll_h" = xno -o x"$ac_cv_func_epoll" = xno; then + unet_cv_enable_epoll=no +fi + +echo "$as_me:$LINENO: result: $unet_cv_enable_epoll" >&5 +echo "${ECHO_T}$unet_cv_enable_epoll" >&6 + +if test x"$unet_cv_enable_epoll" != no; then + +cat >>confdefs.h <<\_ACEOF +#define USE_EPOLL +_ACEOF + + ENGINE_C="engine_epoll.c $ENGINE_C" + fi + echo "$as_me:$LINENO: checking what name to give the symlink" >&5 echo $ECHO_N "checking what name to give the symlink... $ECHO_C" >&6 @@ -9115,5 +9153,6 @@ echo " Maximum connections: $unet_cv_with_maxcon" echo "" echo " poll() engine: $unet_cv_enable_poll" +echo " epoll() engine: $unet_cv_enable_epoll" echo " kqueue() engine: $unet_cv_enable_kqueue" echo " /dev/poll engine: $unet_cv_enable_devpoll" Index: ircd-ircdev/configure.in diff -u ircd-ircdev/configure.in:1.2 ircd-ircdev/configure.in:1.3 --- ircd-ircdev/configure.in:1.2 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/configure.in Sat Nov 1 09:19:35 2003 @@ -19,7 +19,7 @@ dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. dnl -dnl $Id: configure.in,v 1.2 2003/11/01 15:26:45 zolty Exp $ +dnl $Id: configure.in,v 1.3 2003/11/01 17:19:35 zolty Exp $ dnl Make sure we are in the correct directory (someone could have run dnl 'configure' with a wrong '--srcdir'). @@ -113,7 +113,7 @@ dnl Checks for header files. AC_HEADER_STDC -AC_CHECK_HEADERS(poll.h sys/devpoll.h sys/event.h) +AC_CHECK_HEADERS(poll.h sys/devpoll.h sys/event.h sys/epoll.h) dnl Checks for typedefs, structures, and compiler characteristics dnl AC_C_CONST @@ -154,6 +154,11 @@ *-linux*) AC_MSG_RESULT([Linux ($host) found.]) unet_poll_syscall=yes +# if test x"$ac_cv_header_sys_epoll_h" = xyes; then +# unet_poll_syscall=no +# else +# unet_poll_syscall=yes +# fi OSDEP_C=os_linux.c ;; @@ -362,6 +367,25 @@ ENGINE_C="engine_kqueue.c $ENGINE_C" fi +dnl --disable-epoll check +AC_MSG_CHECKING([whether to enable the epoll event engine]) +AC_ARG_ENABLE([epoll], +[ --disable-epoll Disable the epoll-based engine], +[unet_cv_enable_epoll=$enable_epoll], +[AC_CACHE_VAL(unet_cv_enable_epoll, +[unet_cv_enable_epoll=yes])]) + +if test x"$ac_cv_header_sys_epoll_h" = xno -o x"$ac_cv_func_epoll" = xno; then + unet_cv_enable_epoll=no +fi + +AC_MSG_RESULT([$unet_cv_enable_epoll]) + +if test x"$unet_cv_enable_epoll" != no; then + AC_DEFINE([USE_EPOLL], , [Define to enable the epoll engine]) + ENGINE_C="engine_epoll.c $ENGINE_C" + fi + dnl --with-symlink lets us set the name of the symlink; defaults to "ircd" AC_MSG_CHECKING([what name to give the symlink]) AC_ARG_WITH([symlink], @@ -683,5 +707,6 @@ echo " Maximum connections: $unet_cv_with_maxcon" echo "" echo " poll() engine: $unet_cv_enable_poll" +echo " epoll() engine: $unet_cv_enable_epoll" echo " kqueue() engine: $unet_cv_enable_kqueue" echo " /dev/poll engine: $unet_cv_enable_devpoll" Index: ircd-ircdev/include/channel.h diff -u ircd-ircdev/include/channel.h:1.1.1.1 ircd-ircdev/include/channel.h:1.2 --- ircd-ircdev/include/channel.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/channel.h Sat Nov 1 09:19:35 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: channel.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: channel.h,v 1.2 2003/11/01 17:19:35 zolty Exp $ */ #ifndef INCLUDED_channel_h #define INCLUDED_channel_h @@ -66,6 +66,7 @@ #define CHFL_BANVALID 0x0800 /* CHFL_BANNED bit is valid */ #define CHFL_BANNED 0x1000 /* Channel member is banned */ #define CHFL_SILENCE_IPMASK 0x2000 /* silence mask is an IP-number mask */ +#define CHFL_USER_PARTING 0x4000 /* User is already parting that channel */ #define CHFL_OVERLAP (CHFL_CHANOP | CHFL_VOICE) #define CHFL_BANVALIDMASK (CHFL_BANVALID | CHFL_BANNED) @@ -180,6 +181,7 @@ #define IsServOpOk(x) ((x)->status & CHFL_SERVOPOK) #define IsBurstJoined(x) ((x)->status & CHFL_BURST_JOINED) #define IsVoicedOrOpped(x) ((x)->status & CHFL_VOICED_OR_OPPED) +#define IsUserParting(x) ((x)->status & CHFL_USER_PARTING) #define SetBanned(x) ((x)->status |= CHFL_BANNED) #define SetBanValid(x) ((x)->status |= CHFL_BANVALID) @@ -187,6 +189,7 @@ #define SetServOpOk(x) ((x)->status |= CHFL_SERVOPOK) #define SetBurstJoined(x) ((x)->status |= CHFL_BURST_JOINED) #define SetZombie(x) ((x)->status |= CHFL_ZOMBIE) +#define SetUserParting(x) ((x)->status |= CHFL_USER_PARTING) #define ClearBanned(x) ((x)->status &= ~CHFL_BANNED) #define ClearBanValid(x) ((x)->status &= ~CHFL_BANVALID) Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.3 ircd-ircdev/include/patchlevel.h:1.4 --- ircd-ircdev/include/patchlevel.h:1.3 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/include/patchlevel.h Sat Nov 1 09:19:35 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.3 2003/11/01 15:26:45 zolty Exp $ + * $Id: patchlevel.h,v 1.4 2003/11/01 17:19:35 zolty Exp $ * */ -#define PATCHLEVEL ".alpha2" +#define PATCHLEVEL ".alpha3" #define RELEASE "1.0" Index: ircd-ircdev/ircd/.cvsignore diff -u /dev/null ircd-ircdev/ircd/.cvsignore:1.1 --- /dev/null Sat Nov 1 09:19:46 2003 +++ ircd-ircdev/ircd/.cvsignore Sat Nov 1 09:19:36 2003 @@ -0,0 +1,6 @@ + chkconf + table_gen + chattr.tab.c +lex.yy.c +y.tab.c +y.tab.h Index: ircd-ircdev/ircd/IPcheck.c diff -u ircd-ircdev/ircd/IPcheck.c:1.1.1.1 ircd-ircdev/ircd/IPcheck.c:1.2 --- ircd-ircdev/ircd/IPcheck.c:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/ircd/IPcheck.c Sat Nov 1 09:19:36 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: IPcheck.c,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: IPcheck.c,v 1.2 2003/11/01 17:19:36 zolty Exp $ * * * This file should be edited in a window with a width of 141 characters @@ -397,7 +397,7 @@ /* * If this was the last one, set `last_connect' to disconnect time (used for expiration) */ - assert(entry->connected>0); + /* assert(entry->connected>0); */ if (0 == --entry->connected) { if (CONNECTED_SINCE(entry->last_connect) > IPCHECK_CLONE_LIMIT * IPCHECK_CLONE_PERIOD) { /* Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.3 ircd-ircdev/ircd/Makefile.in:1.4 --- ircd-ircdev/ircd/Makefile.in:1.3 Sat Nov 1 07:26:46 2003 +++ ircd-ircdev/ircd/Makefile.in Sat Nov 1 09:19:36 2003 @@ -75,6 +75,7 @@ ENGINE_SRC = \ engine_devpoll.c \ + engine_epoll.c \ engine_poll.c \ engine_kqueue.c \ engine_select.c Index: ircd-ircdev/ircd/channel.c diff -u ircd-ircdev/ircd/channel.c:1.1.1.1 ircd-ircdev/ircd/channel.c:1.2 --- ircd-ircdev/ircd/channel.c:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/ircd/channel.c Sat Nov 1 09:19:36 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: channel.c,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: channel.c,v 1.2 2003/11/01 17:19:36 zolty Exp $ */ #include "config.h" @@ -2024,7 +2024,7 @@ /* clean up the key string */ s = t_str; while (*++s > ' ' && *s != ':' && --t_len) - ; + s++; *s = '\0'; if (!*t_str) { /* warn if empty */ @@ -2685,6 +2685,11 @@ if (jbuf->jb_type == JOINBUF_TYPE_PART || jbuf->jb_type == JOINBUF_TYPE_PARTALL) { + struct Membership *member = find_member_link(chan, jbuf->jb_source); + if (IsUserParting(member)) + return; + SetUserParting(member); + /* Send notification to channel */ if (!(flags & CHFL_ZOMBIE)) sendcmdto_channel_butserv_butone(jbuf->jb_source, CMD_PART, chan, NULL, Index: ircd-ircdev/ircd/engine_epoll.c diff -u /dev/null ircd-ircdev/ircd/engine_epoll.c:1.1 --- /dev/null Sat Nov 1 09:19:46 2003 +++ ircd-ircdev/ircd/engine_epoll.c Sat Nov 1 09:19:36 2003 @@ -0,0 +1,285 @@ +/* + * IRC - Internet Relay Chat, ircd/engine_epoll.c + * Copyright (C) 2003 Michael Poole <md...@tr...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 1, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + * $Id: engine_epoll.c,v 1.1 2003/11/01 17:19:36 zolty Exp $ + */ +#include "config.h" + +#include "ircd.h" +#include "ircd_events.h" +#include "ircd_alloc.h" +#include "ircd_features.h" +#include "ircd_log.h" +#include "s_debug.h" + +#include <assert.h> +#include <errno.h> +#include <sys/epoll.h> +#include <sys/socket.h> +#include <time.h> +#include <linux/unistd.h> + +/* The GNU C library may have a valid header but stub implementations + * of the epoll system calls. If so, provide our own. */ +#if defined(__stub_epoll_create) || defined(__stub___epoll_create) + +/* Oh, did we mention that some glibc releases do not even define the + * syscall numbers? */ +#if !defined(__NR_epoll_create) +#if defined(__i386__) +#define __NR_epoll_create 254 +#define __NR_epoll_ctl 255 +#define __NR_epoll_wait 256 +#elif defined(__ia64__) +#define __NR_epoll_create 1243 +#define __NR_epoll_ctl 1244 +#define __NR_epoll_wait 1245 +#elif defined(__x86_64__) +#define __NR_epoll_create 214 +#define __NR_epoll_ctl 233 +#define __NR_epoll_wait 232 +#else /* cpu types */ +#error No system call numbers defined for epoll family. +#endif /* cpu types */ +#endif /* !defined(__NR_epoll_create) */ + +_syscall1(int, epoll_create, int, size) +_syscall4(int, epoll_ctl, int, epfd, int, op, int, fd, struct epoll_event *, event) +_syscall4(int, epoll_wait, int, epfd, struct epoll_event *, pevents, int, maxevents, int, timeout) + +#endif /* epoll_create defined as stub */ + +#define EPOLL_ERROR_THRESHOLD 20 /* after 20 epoll errors, restart */ +#define ERROR_EXPIRE_TIME 3600 /* expire errors after an hour */ + +static int epoll_fd; +static int errors; +static struct Timer clear_error; + +/* decrements the error count once per hour */ +static void +error_clear(struct Event *ev) +{ + if (!--errors) + timer_del(ev_timer(ev)); +} + +/* initialize the epoll engine */ +static int +engine_init(int max_sockets) +{ + if ((epoll_fd = epoll_create(max_sockets)) < 0) { + log_write(LS_SYSTEM, L_WARNING, 0, + "epoll() engine cannot initialize: %m"); + return 0; + } + return 1; +} + +static void +set_events(struct Socket *sock, enum SocketState state, unsigned int events, struct epoll_event *evt) +{ + assert(0 != sock); + assert(0 <= s_fd(sock)); + + evt->data.ptr = sock; + + switch (state) { + case SS_CONNECTING: + evt->events = EPOLLOUT; + break; + + case SS_LISTENING: + case SS_NOTSOCK: + evt->events = EPOLLIN; + break; + + case SS_CONNECTED: + case SS_DATAGRAM: + case SS_CONNECTDG: + switch (events & SOCK_EVENT_MASK) { + case 0: + evt->events = 0; + break; + case SOCK_EVENT_READABLE: + evt->events = EPOLLIN; + break; + case SOCK_EVENT_WRITABLE: + evt->events = EPOLLOUT; + break; + case SOCK_EVENT_READABLE|SOCK_EVENT_WRITABLE: + evt->events = EPOLLIN|EPOLLOUT; + break; + } + break; + } +} + +static int +engine_add(struct Socket *sock) +{ + struct epoll_event evt; + + assert(0 != sock); + Debug((DEBUG_ENGINE, "epoll: Adding socket %d [%p], state %s, to engine", + s_fd(sock), sock, state_to_name(s_state(sock)))); + set_events(sock, s_state(sock), s_events(sock), &evt); + if (epoll_ctl(epoll_fd, EPOLL_CTL_ADD, s_fd(sock), &evt) < 0) { + event_generate(ET_ERROR, sock, errno); + return 0; + } + return 1; +} + +static void +engine_set_state(struct Socket *sock, enum SocketState new_state) +{ + struct epoll_event evt; + + assert(0 != sock); + Debug((DEBUG_ENGINE, "epoll: Changing state for socket %p to %s", + sock, state_to_name(new_state))); + set_events(sock, new_state, s_events(sock), &evt); + if (epoll_ctl(epoll_fd, EPOLL_CTL_MOD, s_fd(sock), &evt) < 0) + event_generate(ET_ERROR, sock, errno); +} + +static void +engine_set_events(struct Socket *sock, unsigned new_events) +{ + struct epoll_event evt; + + assert(0 != sock); + Debug((DEBUG_ENGINE, "epoll: Changing event mask for socket %p to [%s]", + sock, sock_flags(new_events))); + set_events(sock, s_state(sock), new_events, &evt); + if (epoll_ctl(epoll_fd, EPOLL_CTL_MOD, s_fd(sock), &evt) < 0) + event_generate(ET_ERROR, sock, errno); +} + +static void +engine_delete(struct Socket *sock) +{ + assert(0 != sock); + Debug((DEBUG_ENGINE, "epoll: Deleting socket %d [%p], state %s", + s_fd(sock), sock, state_to_name(s_state(sock)))); + if (epoll_ctl(epoll_fd, EPOLL_CTL_DEL, s_fd(sock), NULL) < 0) + ... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-01 17:28:29
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-01 17:28:22 UTC Added files: libs/adns/.cvsignore libs/adns/COPYING libs/adns/Makefile libs/adns/Makefile.in libs/adns/README libs/adns/README.html libs/adns/README.ircu libs/adns/aclocal.m4 libs/adns/configure libs/adns/configure.in libs/adns/settings.make.in libs/adns/src/.cvsignore libs/adns/src/Makefile.in libs/adns/src/adns.h libs/adns/src/adns.make libs/adns/src/check.c libs/adns/src/config.h libs/adns/src/config.h.in libs/adns/src/dlist.h libs/adns/src/event.c libs/adns/src/general.c libs/adns/src/internal.h libs/adns/src/parse.c libs/adns/src/poll.c libs/adns/src/query.c libs/adns/src/reply.c libs/adns/src/setup.c libs/adns/src/transmit.c libs/adns/src/tvarith.h libs/adns/src/types.c Log message: Incluimos la libreria de resolucion DNS "adns". ---------------------- diff included ---------------------- Index: ircd-ircdev/libs/adns/.cvsignore diff -u /dev/null ircd-ircdev/libs/adns/.cvsignore:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/.cvsignore Sat Nov 1 09:28:12 2003 @@ -0,0 +1,3 @@ +config.log +config.status +settings.make Index: ircd-ircdev/libs/adns/COPYING diff -u /dev/null ircd-ircdev/libs/adns/COPYING:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/COPYING Sat Nov 1 09:28:12 2003 @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) 19yy <name of author> + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + <signature of Ty Coon>, 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. Index: ircd-ircdev/libs/adns/Makefile diff -u /dev/null ircd-ircdev/libs/adns/Makefile:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/Makefile Sat Nov 1 09:28:12 2003 @@ -0,0 +1,69 @@ +# Generated automatically from Makefile.in by configure. +# Makefile - top-level Makefile +# +# This file is +# Copyright (C) 1997-2000 Ian Jackson <ia...@da...> +# +# It is part of adns, which is +# Copyright (C) 1997-2000 Ian Jackson <ia...@da...> +# Copyright (C) 1999-2000 Tony Finch <do...@do...> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Remember to change ADNS_VERSION_STRING in client/client.h too, and +# possibly library soname (MAJOR and MINOR in settings.make.in). +DISTVERSION= 1.0 + +srcdir= . + +SUBDIRS= src + +build: all + +all install uninstall clean distclean mostlyclean maintainer-clean distprep: + set -e; for d in $(SUBDIRS); do $(MAKE) -C $$d $@; done + $(MAKE) $@-here + +all-here install-here uninstall-here distprep-here: README + +clean-here mostlyclean-here: + rm -f *~ ./#*# core *.orig *.rej adns-*.tar.gz + rm -rf dist_tmp + +distclean-here maintainer-clean-here: clean-here + rm -f settings.make config.h config.cache config.log config.status + +install-strip: + $(MAKE) INSTALL_PROGRAM_FLAGS=-s + +dist_tmp=dist_tmp/adns-$(DISTVERSION) +dist: distprep + rm -rf dist_tmp* + mkdir dist_tmp $(dist_tmp) + find \( -name CVS -o -name dist_tmp* \) -prune -o -type d -print | \ + sed -e 's#.*#mkdir -p $(dist_tmp)/&#' | sh + find \( -name CVS -o -name dist_tmp* \) -prune -o -type f -print | \ + sed -e 's#.*#ln & $(dist_tmp)/&#' | sh + $(MAKE) -C dist_tmp/adns-$(DISTVERSION) distclean + cd dist_tmp && tar cf ../$(dist_tmp).tar `basename $(dist_tmp)` + gzip -9 $(dist_tmp).tar + mv $(dist_tmp).tar.gz . + +README: README.html + lynx -dump -number_links -cfg=/dev/null $(srcdir)/README.html >README.tmp + mv -f README.tmp README + +TAGS info dvi: + # do nothing Index: ircd-ircdev/libs/adns/Makefile.in diff -u /dev/null ircd-ircdev/libs/adns/Makefile.in:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/Makefile.in Sat Nov 1 09:28:12 2003 @@ -0,0 +1,69 @@ +# Makefile - top-level Makefile +# +# This file is +# Copyright (C) 1997-2000 Ian Jackson <ia...@da...> +# +# It is part of adns, which is +# Copyright (C) 1997-2000 Ian Jackson <ia...@da...> +# Copyright (C) 1999-2000 Tony Finch <do...@do...> +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# Remember to change ADNS_VERSION_STRING in client/client.h too, and +# possibly library soname (MAJOR and MINOR in settings.make.in). +DISTVERSION= 1.0 + +srcdir= @srcdir@ +VPATH= @srcdir@ + +SUBDIRS= src + +build: all + +all install uninstall clean distclean mostlyclean maintainer-clean distprep: + set -e; for d in $(SUBDIRS); do $(MAKE) -C $$d $@; done + $(MAKE) $@-here + +all-here install-here uninstall-here distprep-here: README + +clean-here mostlyclean-here: + rm -f *~ ./#*# core *.orig *.rej adns-*.tar.gz + rm -rf dist_tmp + +distclean-here maintainer-clean-here: clean-here + rm -f settings.make config.h config.cache config.log config.status + +install-strip: + $(MAKE) INSTALL_PROGRAM_FLAGS=-s + +dist_tmp=dist_tmp/adns-$(DISTVERSION) +dist: distprep + rm -rf dist_tmp* + mkdir dist_tmp $(dist_tmp) + find \( -name CVS -o -name dist_tmp* \) -prune -o -type d -print | \ + sed -e 's#.*#mkdir -p $(dist_tmp)/&#' | sh + find \( -name CVS -o -name dist_tmp* \) -prune -o -type f -print | \ + sed -e 's#.*#ln & $(dist_tmp)/&#' | sh + $(MAKE) -C dist_tmp/adns-$(DISTVERSION) distclean + cd dist_tmp && tar cf ../$(dist_tmp).tar `basename $(dist_tmp)` + gzip -9 $(dist_tmp).tar + mv $(dist_tmp).tar.gz . + +README: README.html + lynx -dump -number_links -cfg=/dev/null $(srcdir)/README.html >README.tmp + mv -f README.tmp README + +TAGS info dvi: + # do nothing Index: ircd-ircdev/libs/adns/README diff -u /dev/null ircd-ircdev/libs/adns/README:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/README Sat Nov 1 09:28:12 2003 @@ -0,0 +1,167 @@ + + GNU adns + + Advanced, easy to use, asynchronous-capable DNS client library and + utilities. + + adns is a resolver library for C (and C++) programs, and a collection + of useful DNS resolver utilities. + +C library + + In contrast with the standard interfaces, gethostbyname et al and + libresolv, it has the following features: + * It is reasonably easy to use for simple programs which just want + to translate names to addresses, look up MX records, etc. + * It can be used in an asynchronous, non-blocking, manner. Many + queries can be handled simultaneously. + * Responses are decoded automatically into a natural representation + for a C program - there is no need to deal with DNS packet + formats. + * Sanity checking (eg, name syntax checking, reverse/forward + correspondence, CNAME pointing to CNAME) is performed + automatically. + * Time-to-live, CNAME and other similar information is returned in + an easy-to-use form, without getting in the way. + * There is no global state in the library; resolver state is an + opaque data structure which the client creates explicitly. A + program can have several instances of the resolver. + * Errors are reported to the application in a way that distinguishes + the various causes of failure properly. + * Understands conventional resolv.conf, but this can overridden by + environment variables. + * Flexibility. For example, the application can tell adns to: ignore + environment variables (for setuid programs), disable hostname + syntax sanity checks to return arbitrary data, override or ignore + resolv.conf in favour of supplied configuration, etc. + * Believed to be correct ! For example, will correctly back off to + TCP in case of long replies or queries, or to other nameservers if + several are available. It has sensible handling of bad responses + etc. + +DNS utility programs + + adns also comes with a number of utility programs for use from the + command line and in scripts: + * adnslogres is a much faster version of Apache's logresolv program. + * adnsresfilter is a filter which copies its input to its output, + replacing IP addresses by the corresponding names, without unduly + delaying the output. For example, you can usefully pipe the output + of netstat -n, tcpdump -ln, and the like, into it. + * adnshost is a general-purpose DNS lookup utility which can be used + easily in from the command line and from shell scripts to do + simple lookups. In a more advanced mode it can be used as a + general-purpose DNS helper program for scripting languages which + can invoke and communicate with subprocesses. See the [1]adnshost + usage message for a summary of its capabilities. + +Documentation + + I'm afraid there is no manual yet. However, competent C programmers + should be able to use the library based on the [2]commented adns.h + header file, and the usage messages for the programs should be + sufficient. + +Feedback + + I'd be pleased if you would let me know if you're using my library in + your project, and what you think of it. + + If you are subscribed to adns-discuss please send feedback, including + bug reports, there; otherwise send mail to + adn...@ch.... If you'd prefer that your + message wasn't forwarded to the adns-bugreports list, send it to + adn...@ch.... + +Mailinglists + + I have set up mailinglists adns-announce and adns-discuss. The + announcements list is moderated and will contain only announcements of + important bugs, new versions, etc. The bug reports address mentioned + above is also a mailing list; feel free to subscribe to it. + + There are [3]archives and subscription web pages, or you can subscribe + by sending mail containing the word `subscribe' to + adn...@ch... or + adn...@ch.... + +Download + + Available for download from [4]chiark.greenend.org.uk are: + * The [5]current release as a gzipped tarfile. + * [6]adns.h API header file with comments, and [7]usage message for + adnshost (currently there is no manual, sorry). + * All versions released so far are also available via [8]anonymous + FTP and [9]HTTP, + * A mirror of my CVS repository is available via rsync from + rsync.chiark.greenend.org.uk::ftp/users/ian/cvs-pub/adns (use FTP + first to find your way around), or via [10]cvsweb. + + adns is also available from the [11]GNU Project FTP servers and their + [12]mirrors. + +Technical note + + adns requires a real nameserver like [13]BIND or [14]Dents running on + the same system or a nearby one, which must be willing to provide + `recursive service'. I.e., adns is a `stub resolver'. All properly + configured UN*X and GNU systems will already have such nameserver(s); + they are usually listed in /etc/resolv.conf. + +Copyright and licensing + + adns is Copyright 1997-2000 Ian Jackson, Copyright 1999-2000 Tony + Finch, and Copyright (C) 1991 Massachusetts Institute of Technology. + + adns is free software; you can redistribute it and/or modify it under + the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your + option) any later version. + + This program and documentation is distributed in the hope that it will + be useful, but without any warranty; without even the implied warranty + of merchantability or fitness for a particular purpose. See the + [15]GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with adns, or one should be available above; if not, write to + the [16]Free Software Foundation, 59 Temple Place - Suite 330, Boston, + MA 02111-1307, USA, or email adn...@ch.... + _________________________________________________________________ + + [17]Ian Jackson / [18]adn...@ch...; more [19]free + software by me. + + [20]GNU home page; [21]chiark home page; [22]site or mirror home page + + This web page is Copyright (C)1996-2000 Ian Jackson. See the + [23]Copyright/acknowledgements. + + Use any browser - [24]Campaign for a non-browser-specific WWW + +References + + 1. http://www.chiark.greenend.org.uk/~ian/adns/adnshost.txt + 2. http://www.chiark.greenend.org.uk/~ian/adns/adns.h.txt + 3. http://www.chiark.greenend.org.uk/mailman/listinfo + 4. http://www.chiark.greenend.org.uk/~ian/adns/ + 5. http://www.chiark.greenend.org.uk/~ian/adns/adns.tar.gz + 6. http://www.chiark.greenend.org.uk/~ian/adns/adns.h.txt + 7. http://www.chiark.greenend.org.uk/~ian/adns/adnshost.txt + 8. ftp://ftp.chiark.greenend.org.uk/users/ian/adns/ + 9. http://www.chiark.greenend.org.uk/~ian/adns/ftp/ + 10. http://www.chiark.greenend.org.uk/ucgi/~ijackson/cvsweb/adns/ + 11. http://www.gnu.org/ + 12. http://www.gnu.org/order/ftp.html + 13. http://www.isc.org/view.cgi?/products/BIND/index.phtml + 14. http://www.dents.org/ + 15. http://www.chiark.greenend.org.uk/~ian/COPYING.txt + 16. http://www.fsf.org/ + 17. http://www.chiark.greenend.org.uk/ + 18. mailto:adn...@ch... + 19. http://www.chiark.greenend.org.uk/~ian/software/ + 20. http://www.gnu.org/ + 21. http://www.chiark.greenend.org.uk/ + 22. file://localhost/ + 23. http://www.chiark.greenend.org.uk/~ian/sw-www-copy.html + 24. http://www.anybrowser.org/campaign/ Index: ircd-ircdev/libs/adns/README.html diff -u /dev/null ircd-ircdev/libs/adns/README.html:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/README.html Sat Nov 1 09:28:12 2003 @@ -0,0 +1,222 @@ +<html> +<head> +<title>adns - advanced, alternative, asynchronous resolver</title> +<link rev="made" href="mailto:adn...@ch..."> +</head> +<body> +<h1>GNU adns</h1> + +<strong>Advanced, easy to use, asynchronous-capable DNS client +library and utilities.</strong> + +<!-- Note: this file is maintained in Ian Jackson's private CVS. --> +<!-- --> +<!-- It is served on the GNU site and also from my own system, --> +<!-- under the URL http://www.chiark.greenend.org.uk/adns/ --> +<!-- Please ensure that all links continine to be correct --> +<!-- both for www.gnu.org and chiark. --> +<!-- --> +<!-- $Id: README.html,v 1.1 2003/11/01 17:28:12 zolty Exp $ --> + +<p> + +adns is a resolver library for C (and C++) programs, and a collection +of useful DNS resolver utilities. + + +<h2>C library</h2> + +In contrast with the standard interfaces, gethostbyname et al and +libresolv, it has the following features: + +<ul> + +<li>It is reasonably easy to use for simple programs which just want +to translate names to addresses, look up MX records, etc. + +<li>It can be used in an asynchronous, non-blocking, manner. Many +queries can be handled simultaneously. + +<li>Responses are decoded automatically into a natural representation +for a C program - there is no need to deal with DNS packet formats. + +<li>Sanity checking (eg, name syntax checking, reverse/forward +correspondence, CNAME pointing to CNAME) is performed automatically. + +<li>Time-to-live, CNAME and other similar information is returned in +an easy-to-use form, without getting in the way. + +<li>There is no global state in the library; resolver state is an +opaque data structure which the client creates explicitly. A program +can have several instances of the resolver. + +<li>Errors are reported to the application in a way that distinguishes +the various causes of failure properly. + +<li>Understands conventional resolv.conf, but this can overridden by +environment variables. + +<li>Flexibility. For example, the application can tell adns to: +ignore environment variables (for setuid programs), disable hostname +syntax sanity checks to return arbitrary data, override or ignore +resolv.conf in favour of supplied configuration, etc. + +<li>Believed to be correct ! For example, will correctly back off to +TCP in case of long replies or queries, or to other nameservers if +several are available. It has sensible handling of bad responses etc. + +</ul> + +<h2>DNS utility programs</h2> + +adns also comes with a number of utility programs for use from the +command line and in scripts: + +<ul> + +<li><code>adnslogres</code> is a much faster version of Apache's +logresolv program. + +<li><code>adnsresfilter</code> is a filter which copies its input to +its output, replacing IP addresses by the corresponding names, without +unduly delaying the output. For example, you can usefully pipe the +output of netstat -n, tcpdump -ln, and the like, into it. + +<li><code>adnshost</code> is a general-purpose DNS lookup utility +which can be used easily in from the command line and from shell +scripts to do simple lookups. In a more advanced mode it can be used +as a general-purpose DNS helper program for scripting languages which +can invoke and communicate with subprocesses. See the +<A href="http://www.chiark.greenend.org.uk/~ian/adns/adnshost.txt">adnshost +usage message</A> for a summary of its capabilities. + +</ul> + +<h2>Documentation</h2> + +I'm afraid there is no manual yet. However, competent C programmers +should be able to use the library based on the +<A href="http://www.chiark.greenend.org.uk/~ian/adns/adns.h.txt">commented +adns.h header file</A>, and the usage messages for the programs should +be sufficient. + +<h2>Feedback</h2> + +I'd be pleased if you would let me know if you're using my library in +your project, and what you think of it. + +<p> + +If you are subscribed to <code>adns-discuss</code> please send +feedback, including bug reports, there; otherwise send mail to +<code>adn...@ch...</code>. If you'd prefer +that your message wasn't forwarded to the <code>adns-bugreports</code> +list, send it to <code>adn...@ch...</code>. + +<h2>Mailinglists</h2> + +I have set up mailinglists <code>adns-announce</code> and +<code>adns-discuss</code>. The announcements list is moderated and +will contain only announcements of important bugs, new versions, etc. +The bug reports address mentioned above is also a mailing list; feel +free to subscribe to it. + +<p> + +There are +<A href="http://www.chiark.greenend.org.uk/mailman/listinfo">archives +and subscription web pages</A>, or you can subscribe by sending mail +containing the word `subscribe' to +<code>adn...@ch...</code> or +<code>adn...@ch...</code>. + +<h2>Download</h2> + +Available for download from +<A href="http://www.chiark.greenend.org.uk/~ian/adns/">chiark.greenend.org.uk</A> +are: +<ul> +<li>The <A href="http://www.chiark.greenend.org.uk/~ian/adns/adns.tar.gz">current + release</A> as a gzipped tarfile. +<li><A href="http://www.chiark.greenend.org.uk/~ian/adns/adns.h.txt">adns.h</A> + API header file with comments, and + <A href="http://www.chiark.greenend.org.uk/~ian/adns/adnshost.txt">usage + message for adnshost</A> (currently there is no manual, sorry). +<li>All versions released so far are also available via + <A href="ftp://ftp.chiark.greenend.org.uk/users/ian/adns/">anonymous + FTP</A> and <A href="http://www.chiark.greenend.org.uk/~ian/adns/ftp/">HTTP</A>, +<li>A mirror of my CVS repository is available via rsync from + <code>rsync.chiark.greenend.org.uk::ftp/users/ian/cvs-pub/adns</code> + (use FTP first to find your way around), or via + <A href="http://www.chiark.greenend.org.uk/ucgi/~ijackson/cvsweb/adns/">cvsweb</A>. +</ul> + +adns is also available from the +<A href="http://www.gnu.org/">GNU Project</A> FTP servers and their +<A href="http://www.gnu.org/order/ftp.html">mirrors</A>. + +<h2>Technical note</h2> + +adns requires a real nameserver like +<A href="http://www.isc.org/view.cgi?/products/BIND/index.phtml">BIND</A> +or +<A href="http://www.dents.org/">Dents</A> running on +the same system or a nearby one, which must be willing to provide +`recursive service'. I.e., adns is a `stub resolver'. All properly +configured UN*X and GNU systems will already have such nameserver(s); +they are usually listed in /etc/resolv.conf. + +<h2>Copyright and licensing</h2> + +<kbd>adns</kbd> is Copyright 1997-2000 Ian Jackson, Copyright +1999-2000 Tony Finch, and Copyright (C) 1991 Massachusetts Institute +of Technology. + +<p> + +<kbd>adns</kbd> is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or (at +your option) any later version. + +<p> + +This program and documentation is distributed in the hope that it will +be useful, but <em>without any warranty</em>; without even the implied +warranty of <em>merchantability</em> or <em>fitness for a particular +purpose</em>. See the +<A href="http://www.chiark.greenend.org.uk/~ian/COPYING.txt">GNU +General Public License</A> for more details. + +<p> + +You should have received a copy of the GNU General Public License +along with <kbd>adns</kbd>, or one should be available above; if not, +write to the +<A href="http://www.fsf.org/">Free Software Foundation</A>, +59 Temple Place - Suite 330, Boston, MA 02111-1307, USA, +or email <code>adn...@ch...</code>. + +<p> + +<hr> +<A href="http://www.chiark.greenend.org.uk/">Ian Jackson</A> / +<A href="mailto:adn...@ch..."><tt>adn...@ch...</tt></A>; +more <A href="http://www.chiark.greenend.org.uk/~ian/software/">free +software</A> by me. +<p> + +<A href="http://www.gnu.org/">GNU home page</A>; +<A href="http://www.chiark.greenend.org.uk/">chiark home page</A>; +<A href="/">site or mirror home page</A> +<p> + +This web page is Copyright (C)1996-2000 Ian Jackson. See the +<A href="http://www.chiark.greenend.org.uk/~ian/sw-www-copy.html">Copyright/acknowledgements</A>. +<p> + +Use any browser - +<A href="http://www.anybrowser.org/campaign/">Campaign for a non-browser-specific WWW</A> + +</body> +</html> Index: ircd-ircdev/libs/adns/README.ircu diff -u /dev/null ircd-ircdev/libs/adns/README.ircu:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/README.ircu Sat Nov 1 09:28:12 2003 @@ -0,0 +1,3 @@ +The files in adns/ were borrowed from the ADNS library and slightly +modified to work with ircu's event loop. The original code's copyright +notices are in the README file. Index: ircd-ircdev/libs/adns/aclocal.m4 diff -u /dev/null ircd-ircdev/libs/adns/aclocal.m4:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/aclocal.m4 Sat Nov 1 09:28:12 2003 @@ -0,0 +1,70 @@ +# aclocal.m4 - package-specific macros for autoconf +# +# This file is +# Copyright (C) 1997-1999 Ian Jackson <ia...@da...> +# +# It is part of adns, which is +# Copyright (C) 1997-1999 Ian Jackson <ia...@da...> +# Copyright (C) 1999-2000 Tony Finch <do...@do...> +# +# This file is part of adns, which is Copyright (C) 1997-1999 Ian Jackson +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +dnl DPKG_CACHED_TRY_COMPILE(<description>,<cachevar>,<include>,<program>,<ifyes>,<ifno>) +define(DPKG_CACHED_TRY_COMPILE,[ + AC_MSG_CHECKING($1) + AC_CACHE_VAL($2,[ + AC_TRY_COMPILE([$3],[$4],[$2=yes],[$2=no]) + ]) + if test "x$$2" = xyes; then + true + $5 + else + true + $6 + fi +]) + +define(ADNS_C_GCCATTRIB,[ + DPKG_CACHED_TRY_COMPILE(__attribute__((,,)),adns_cv_c_attribute_supported,, + [extern int testfunction(int x) __attribute__((,,))], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_GNUC25_ATTRIB) + DPKG_CACHED_TRY_COMPILE(__attribute__((noreturn)),adns_cv_c_attribute_noreturn,, + [extern int testfunction(int x) __attribute__((noreturn))], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_GNUC25_NORETURN), + AC_MSG_RESULT(no)) + DPKG_CACHED_TRY_COMPILE(__attribute__((const)),adns_cv_c_attribute_const,, + [extern int testfunction(int x) __attribute__((const))], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_GNUC25_CONST), + AC_MSG_RESULT(no)) + DPKG_CACHED_TRY_COMPILE(__attribute__((format...)),adns_cv_attribute_format,, + [extern int testfunction(char *y, ...) __attribute__((format(printf,1,2)))], + AC_MSG_RESULT(yes) + AC_DEFINE(HAVE_GNUC25_PRINTFFORMAT), + AC_MSG_RESULT(no)), + AC_MSG_RESULT(no)) +]) + +define(ADNS_C_GETFUNC,[ + AC_CHECK_FUNC([$1],,[ + AC_CHECK_LIB([$2],[$1],[$3],[ + AC_MSG_ERROR([cannot find library function $1]) + ]) + ]) +]) Index: ircd-ircdev/libs/adns/configure diff -u /dev/null ircd-ircdev/libs/adns/configure:1.1 --- /dev/null Sat Nov 1 09:28:22 2003 +++ ircd-ircdev/libs/adns/configure Sat Nov 1 09:28:12 2003 @@ -0,0 +1,1994 @@ +#! /bin/sh + +# Guess values for system-dependent variables and create Makefiles. +# Generated automatically using autoconf version 2.13 +# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc. +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. + +# Defaults: +ac_help= +ac_default_prefix=/usr/local +# Any additions from configure.in: + +# Initialize some variables set by options. +# The variables have the same names as the options, with +# dashes changed to underlines. +build=NONE +cache_file=./config.cache +exec_prefix=NONE +host=NONE +no_create= +nonopt=NONE +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +target=NONE +verbose= +x_includes=NONE +x_libraries=NONE +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datadir='${prefix}/share' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +libdir='${exec_prefix}/lib' +includedir='${prefix}/include' +oldincludedir='/usr/include' +infodir='${prefix}/info' +mandir='${prefix}/man' + +# Initialize some other variables. +subdirs= +MFLAGS= MAKEFLAGS= +SHELL=${CONFIG_SHELL-/bin/sh} +# Maximum number of lines to put in a shell here document. +ac_max_here_lines=12 + +ac_prev= +for ac_option +do + + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval "$ac_prev=\$ac_option" + ac_prev= + continue + fi + + case "$ac_option" in + -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;; + *) ac_optarg= ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case "$ac_option" in + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir="$ac_optarg" ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build="$ac_optarg" ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file="$ac_optarg" ;; + + -datadir | --datadir | --datadi | --datad | --data | --dat | --da) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ + | --da=*) + datadir="$ac_optarg" ;; + + -disable-* | --disable-*) + ac_feature=`echo $ac_option|sed -e 's/-*disable-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + eval "enable_${ac_feature}=no" ;; + + -enable-* | --enable-*) + ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } + fi + ac_feature=`echo $ac_feature| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "enable_${ac_feature}='$ac_optarg'" ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix="$ac_optarg" ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he) + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat << EOF +Usage: configure [options] [host] +Options: [defaults in brackets after descriptions] +Configuration: + --cache-file=FILE cache test results in FILE + --help print this message + --no-create do not create output files + --quiet, --silent do not print \`checking...' messages + --version print the version of autoconf that created configure +Directory and file names: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [same as prefix] + --bindir=DIR user executables in DIR [EPREFIX/bin] + --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] + --libexecdir=DIR program executables in DIR [EPREFIX/libexec] + --datadir=DIR read-only architecture-independent data in DIR + [PREFIX/share] + --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data in DIR + [PREFIX/com] + --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] + --libdir=DIR object code libraries in DIR [EPREFIX/lib] + --includedir=DIR C header files in DIR [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] + --infodir=DIR info documentation in DIR [PREFIX/info] + --mandir=DIR man documentation in DIR [PREFIX/man] + --srcdir=DIR find the sources in DIR [configure dir or ..] + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM + run sed PROGRAM on installed program names +EOF + cat << EOF +Host type: + --build=BUILD configure for building on BUILD [BUILD=HOST] + --host=HOST configure for HOST [guessed] + --target=TARGET configure for TARGET [TARGET=HOST] +Features and packages: + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --x-includes=DIR X include files are in DIR + --x-libraries=DIR X library files are in DIR +EOF + if test -n "$ac_help"; then + echo "--enable and --with options recognized:$ac_help" + fi + exit 0 ;; + + -host | --host | --hos | --ho) + ac_prev=host ;; + -host=* | --host=* | --hos=* | --ho=*) + host="$ac_optarg" ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir="$ac_optarg" ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir="$ac_optarg" ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir="$ac_optarg" ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir="$ac_optarg" ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst \ + | --locals | --local | --loca | --loc | --lo) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* \ + | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) + localstatedir="$ac_optarg" ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir="$ac_optarg" ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir="$ac_optarg" ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix="$ac_optarg" ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix="$ac_optarg" ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix="$ac_optarg" ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name="$ac_optarg" ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir="$ac_optarg" ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir="$ac_optarg" ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site="$ac_optarg" ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir="$ac_optarg" ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir="$ac_optarg" ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target="$ac_optarg" ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers) + echo "configure generated by autoconf version 2.13" + exit 0 ;; + + -with-* | --with-*) + ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + case "$ac_option" in + *=*) ;; + *) ac_optarg=yes ;; + esac + eval "with_${ac_package}='$ac_optarg'" ;; + + -without-* | --without-*) + ac_package=`echo $ac_option|sed -e 's/-*without-//'` + # Reject names that are not valid shell variable names. + if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then + { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } + fi + ac_package=`echo $ac_package| sed 's/-/_/g'` + eval "with_${ac_package}=no" ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes="$ac_optarg" ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries="$ac_optarg" ;; + + -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } + ;; + + *) + if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then + echo "configure: warning: $ac_option: invalid host type" 1>&2 + fi + if test "x$nonopt" != xNONE; then + { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } + fi + nonopt="$ac_option" + ;; + + esac +done + +if test -n "$ac_prev"; then + { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } +fi + +trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 + +# File descriptor usage: +# 0 standard input +# 1 file creation +# 2 errors and warnings +# 3 some systems may open it to /dev/tty +# 4 used on the Kubota Titan +# 6 checking for... messages and results +# 5 compiler messages saved in config.l... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-02 00:47:48
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-02 00:47:44 UTC Modified files: ChangeLog ChangeLog.es Makefile.in TODO.es configure configure.in include/client.h include/patchlevel.h include/res.h include/s_bsd.h include/s_conf.h ircd/.cvsignore ircd/Makefile.in ircd/client.c ircd/ircd.c ircd/ircd_lexer.l ircd/ircd_parser.y ircd/list.c ircd/m_connect.c ircd/m_oper.c ircd/s_auth.c ircd/s_bsd.c ircd/s_conf.c ircd/s_user.c libs/adns/README Added files: ircd/res_adns.c ircd/res_libresolv.c Removed files: ircd/res.c Log message: Author: zoltan <zo...@ir...> Log message: 2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha4 * Implementacion de Privilegios. * Cambios en la resolucion DNS. * Se incluye el source de la libreria adns. ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.4 ircd-ircdev/ChangeLog:1.5 --- ircd-ircdev/ChangeLog:1.4 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/ChangeLog Sat Nov 1 16:47:33 2003 @@ -1,10 +1,15 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.4 2003/11/01 17:19:35 zolty Exp $ +# $Id: ChangeLog,v 1.5 2003/11/02 00:47:33 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha4 + * Privilegies user feature. + * Changed DNS resolution. + * Incluyed adns library source. + 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha3 * Implementation epoll() engine. * Upgrade to Undernet u2.10.11.05. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.4 ircd-ircdev/ChangeLog.es:1.5 --- ircd-ircdev/ChangeLog.es:1.4 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/ChangeLog.es Sat Nov 1 16:47:33 2003 @@ -1,10 +1,15 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.4 2003/11/01 17:19:35 zolty Exp $ +# $Id: ChangeLog.es,v 1.5 2003/11/02 00:47:33 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha4 + * Implementacion de Privilegios. + * Cambios en la resolucion DNS. + * Se incluye el source de la libreria adns. + 2003-11-01 Toni Garcia <zo...@ir...> 1.0.alpha3 * Implementacion del engine de epoll(). * Actualizacion al u2.10.11.05 de Undernet. Index: ircd-ircdev/Makefile.in diff -u ircd-ircdev/Makefile.in:1.1.1.1 ircd-ircdev/Makefile.in:1.2 --- ircd-ircdev/Makefile.in:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/Makefile.in Sat Nov 1 16:47:33 2003 @@ -26,11 +26,12 @@ SHELL = @SHPROG@ RM = @RMPROG@ AWK = @AWK@ +adns_subdir = @ADNS_SUBDIR@ @SET_MAKE@ #### End of system configuration section. #### -SUBDIRS = doc ircd -IRCD_MAKEFILES = Makefile doc/Makefile ircd/Makefile +SUBDIRS = doc ${adns_subdir} ircd +IRCD_MAKEFILES = Makefile doc/Makefile libs/adns/Makefile ircd/Makefile all: build Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.1 ircd-ircdev/TODO.es:1.2 --- ircd-ircdev/TODO.es:1.1 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/TODO.es Sat Nov 1 16:47:33 2003 @@ -1,12 +1,13 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.1 2003/11/01 17:19:35 zolty Exp $ +# $Id: TODO.es,v 1.2 2003/11/02 00:47:33 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # 1/Nov/2003 +Bug al conectar sale umode -Oo. +Enlazar la libreria de adns al ircd. Bug en el configure al elegir entre poll() y epoll() en linux que tienen fuentes pero no estan activados. - -Bug en las U-lines (uworld y jupes) +Bug en las U-lines (uworld y jupes). Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.3 ircd-ircdev/configure:1.4 --- ircd-ircdev/configure:1.3 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/configure Sat Nov 1 16:47:33 2003 @@ -309,7 +309,7 @@ # include <unistd.h> #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S RMPROG SHPROG OSDEP_C ENGINE_C INSTALL_RULE SYMLINK IRCDMODE IRCDOWN IRCDGRP DPATH LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S RMPROG SHPROG OSDEP_C ENGINE_C RES_C ADNS_SUBDIR INSTALL_RULE SYMLINK IRCDMODE IRCDOWN IRCDGRP DPATH LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -7556,6 +7556,139 @@ ENGINE_C="engine_epoll.c $ENGINE_C" fi +#AC_MSG_CHECKING([whether to enable the adns resolver engine]) +#AC_ARG_ENABLE([adns], +#[ --disable-adns Disable adns resolver], +#[unet_cv_enable_adns=$enable_adns], +#[AC_CACHE_VAL(unet_cv_enable_adns, +#[unet_cv_enable_adns=yes])]) + +#AC_MSG_RESULT([$unet_cv_enable_adns]) + +#if test x"$unet_cv_enable_adns" != xno; then +# AC_DEFINE([USE_ADNS], , [Define to enable the adns resolver]) +# AC_CONFIG_SUBDIRS([libs/adns]) +# RES_C="res_adns.c" +# LIBS="../libs/adns/src/libadns.a $LIBS" +# ADNS_SUBDIR="libs/adns" +#else + RES_C="res_libresolv.c" + ADNS_SUBDIR="" + + echo "$as_me:$LINENO: checking for library containing res_mkquery" >&5 +echo $ECHO_N "checking for library containing res_mkquery... $ECHO_C" >&6 +if test "${ac_cv_search_res_mkquery+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_func_search_save_LIBS=$LIBS +ac_cv_search_res_mkquery=no +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char res_mkquery (); +int +main () +{ +res_mkquery (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_search_res_mkquery="none required" +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +if test "$ac_cv_search_res_mkquery" = no; then + for ac_lib in resolv; do + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char res_mkquery (); +int +main () +{ +res_mkquery (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_search_res_mkquery="-l$ac_lib" +break +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext + done +fi +LIBS=$ac_func_search_save_LIBS +fi +echo "$as_me:$LINENO: result: $ac_cv_search_res_mkquery" >&5 +echo "${ECHO_T}$ac_cv_search_res_mkquery" >&6 +if test "$ac_cv_search_res_mkquery" != no; then + test "$ac_cv_search_res_mkquery" = "none required" || LIBS="$ac_cv_search_res_mkquery $LIBS" + +else + { { echo "$as_me:$LINENO: error: Unable to find library containing res_mkquery()" >&5 +echo "$as_me: error: Unable to find library containing res_mkquery()" >&2;} + { (exit 1); exit 1; }; } +fi + +#fi + + + echo "$as_me:$LINENO: checking what name to give the symlink" >&5 echo $ECHO_N "checking what name to give the symlink... $ECHO_C" >&6 @@ -8606,6 +8739,8 @@ s,@SHPROG@,$SHPROG,;t t s,@OSDEP_C@,$OSDEP_C,;t t s,@ENGINE_C@,$ENGINE_C,;t t +s,@RES_C@,$RES_C,;t t +s,@ADNS_SUBDIR@,$ADNS_SUBDIR,;t t s,@INSTALL_RULE@,$INSTALL_RULE,;t t s,@SYMLINK@,$SYMLINK,;t t s,@IRCDMODE@,$IRCDMODE,;t t @@ -9141,6 +9276,7 @@ echo " Debug: $unet_cv_enable_debug" echo " Profile: $unet_cv_enable_profile" echo " Pedantic: $unet_cv_enable_pedantic" +echo " ADNS: $unet_cv_enable_adns" echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" echo " Chroot: $unet_cv_with_chroot" echo "" Index: ircd-ircdev/configure.in diff -u ircd-ircdev/configure.in:1.3 ircd-ircdev/configure.in:1.4 --- ircd-ircdev/configure.in:1.3 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/configure.in Sat Nov 1 16:47:33 2003 @@ -19,7 +19,7 @@ dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. dnl -dnl $Id: configure.in,v 1.3 2003/11/01 17:19:35 zolty Exp $ +dnl $Id: configure.in,v 1.4 2003/11/02 00:47:33 zolty Exp $ dnl Make sure we are in the correct directory (someone could have run dnl 'configure' with a wrong '--srcdir'). @@ -386,6 +386,34 @@ ENGINE_C="engine_epoll.c $ENGINE_C" fi +dnl --disable-adns check... +#AC_MSG_CHECKING([whether to enable the adns resolver engine]) +#AC_ARG_ENABLE([adns], +#[ --disable-adns Disable adns resolver], +#[unet_cv_enable_adns=$enable_adns], +#[AC_CACHE_VAL(unet_cv_enable_adns, +#[unet_cv_enable_adns=yes])]) + +#AC_MSG_RESULT([$unet_cv_enable_adns]) + +#if test x"$unet_cv_enable_adns" != xno; then +# AC_DEFINE([USE_ADNS], , [Define to enable the adns resolver]) +# AC_CONFIG_SUBDIRS([libs/adns]) +# RES_C="res_adns.c" +# LIBS="../libs/adns/src/libadns.a $LIBS" +# ADNS_SUBDIR="libs/adns" +#else + RES_C="res_libresolv.c" + ADNS_SUBDIR="" + + dnl Look for res_mkquery. Done after AC_LIBRARY_NET in case res_mkquery + dnl is in one of those libraries somewhere. + AC_SEARCH_LIBS(res_mkquery, resolv, , + [AC_MSG_ERROR([Unable to find library containing res_mkquery()])]) +#fi +AC_SUBST(RES_C) +AC_SUBST(ADNS_SUBDIR) + dnl --with-symlink lets us set the name of the symlink; defaults to "ircd" AC_MSG_CHECKING([what name to give the symlink]) AC_ARG_WITH([symlink], @@ -695,6 +723,7 @@ echo " Debug: $unet_cv_enable_debug" echo " Profile: $unet_cv_enable_profile" echo " Pedantic: $unet_cv_enable_pedantic" +echo " ADNS: $unet_cv_enable_adns" echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" echo " Chroot: $unet_cv_with_chroot" echo "" Index: ircd-ircdev/include/client.h diff -u ircd-ircdev/include/client.h:1.1.1.1 ircd-ircdev/include/client.h:1.2 --- ircd-ircdev/include/client.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/client.h Sat Nov 1 16:47:33 2003 @@ -18,7 +18,7 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * - * $Id: client.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: client.h,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ #ifndef INCLUDED_client_h #define INCLUDED_client_h @@ -53,7 +53,6 @@ struct Server; struct User; struct Whowas; -struct DNSReply; struct hostent; struct Privs; struct AuthRequest; @@ -66,6 +65,22 @@ * source file, or in the source file itself (when only used in that file). */ +typedef unsigned long flagpage_t; + +#define FLAGSET_NBITS (8 * sizeof(flagpage_t)) +#define FLAGSET_INDEX(flag) (flag / FLAGSET_NBITS) +#define FLAGSET_MASK(flag) (1<<(flag % FLAGSET_NBITS)) + +#define DECLARE_FLAGSET(name,max) \ + struct name \ + { \ + unsigned long bits[((max + FLAGSET_NBITS - 1) / FLAGSET_NBITS)]; \ + }; + +#define FLAGSET_ISSET(set,flag) ((set).bits[FLAGSET_INDEX(flag)] & FLAGSET_MASK(flag)) +#define FLAGSET_SET(set, flag) (set).bits[FLAGSET_INDEX(flag)] |= FLAGSET_MASK(flag) +#define FLAGSET_CLEAR(set, flag) (set).bits[FLAGSET_INDEX(flag)] &= ~FLAGSET_MASK(flag) + enum Priv { PRIV_CHAN_LIMIT, /* no channel limit on oper */ PRIV_MODE_LCHAN, /* oper can mode local chans */ @@ -91,28 +106,15 @@ PRIV_BADCHAN, /* oper can BADCHAN */ PRIV_LOCAL_BADCHAN, /* oper can local BADCHAN */ PRIV_SEE_CHAN, /* oper can see in secret chans */ - PRIV_PROPAGATE, /* propagate oper status */ PRIV_DISPLAY, /* "Is an oper" displayed */ PRIV_SEE_OPERS, /* display hidden opers */ - PRIV_WIDE_GLINE, /* oper can set wider G-lines */ - PRIV_FORCE_OPMODE, /* oper can override a Q-line */ PRIV_FORCE_LOCAL_OPMODE,/* oper can override a local channel Q-line */ - PRIV_LAST_PRIV /* must be the same as the last priv */ }; -#define _PRIV_NBITS (8 * sizeof(unsigned long)) - -#define _PRIV_IDX(priv) ((priv) / _PRIV_NBITS) -#define _PRIV_BIT(priv) (1 << ((priv) % _PRIV_NBITS)) - -struct Privs { - unsigned long priv_mask[(PRIV_LAST_PRIV + _PRIV_NBITS - 1) / _PRIV_NBITS]; -}; - enum Flag { FLAG_PINGSENT, /* Unreplied ping sent */ FLAG_DEADSOCKET, /* Local socket is dead--Exiting soon */ @@ -136,6 +138,7 @@ FLAG_LOCOP, /* Local operator -- SRB */ FLAG_SERVNOTICE, /* server notices such as kill */ + FLAG_OPER, /* Operator */ FLAG_INVISIBLE, /* makes user invisible */ FLAG_WALLOP, /* send wallops to them */ @@ -145,15 +148,13 @@ FLAG_DEBUG, /* send global debug/anti-hack info */ FLAG_ACCOUNT, /* account name has been set */ FLAG_HIDDENHOST, /* user's host is hidden */ - - _FLAG_COUNT, + FLAG_LAST_FLAG, FLAG_LOCAL_UMODES = FLAG_LOCOP, /* First local mode flag */ FLAG_GLOBAL_UMODES = FLAG_OPER /* First global mode flag */ }; -struct Flags { - unsigned long flag_bits[((_FLAG_COUNT + _PRIV_NBITS - 1) / _PRIV_NBITS)]; -}; +DECLARE_FLAGSET(Privs, PRIV_LAST_PRIV); +DECLARE_FLAGSET(Flags, FLAG_LAST_FLAG); struct Connection { /* @@ -188,7 +189,7 @@ struct SLink* con_confs; /* Configuration record associated */ HandlerType con_handler; /* message index into command table for parsing */ - struct DNSReply* con_dns_reply; /* DNS reply used during client + struct hostent* con_dns_reply; /* DNS reply used during client registration */ struct ListingArgs* con_listing; unsigned int con_max_sendq; /* cached max send queue for client */ @@ -393,12 +394,9 @@ /* * flags macros. */ -#define FlagSet(fset, flag) ((fset)->flag_bits[_PRIV_IDX(flag)] |= \ - _PRIV_BIT(flag)) -#define FlagClr(fset, flag) ((fset)->flag_bits[_PRIV_IDX(flag)] &= \ - ~(_PRIV_BIT(flag))) -#define FlagHas(fset, flag) ((fset)->flag_bits[_PRIV_IDX(flag)] & \ - _PRIV_BIT(flag)) +#define FlagSet(fset, flag) FLAGSET_SET(*fset, flag) +#define FlagClr(fset, flag) FLAGSET_CLEAR(*fset, flag) +#define FlagHas(fset, flag) FLAGSET_ISSET(*fset, flag) #define SetFlag(cli, flag) FlagSet(&cli_flags(cli), flag) #define ClrFlag(cli, flag) FlagClr(&cli_flags(cli), flag) #define HasFlag(cli, flag) FlagHas(&cli_flags(cli), flag) @@ -428,9 +426,10 @@ #define IsService(x) HasFlag(x, FLAG_SERVICE) #define IsAccount(x) HasFlag(x, FLAG_ACCOUNT) #define IsHiddenHost(x) HasFlag(x, FLAG_HIDDENHOST) -#define HasHiddenHost(x) (IsAccount(x) && IsHiddenHost(x)) +#define IsPingSent(x) HasFlag(x, FLAG_PINGSENT) #define IsPrivileged(x) (IsAnOper(x) || IsServer(x)) +#define HasHiddenHost(x) (IsAccount(x) && IsHiddenHost(x)) #define SetAccess(x) SetFlag(x, FLAG_CHKACCESS) #define SetBurst(x) SetFlag(x, FLAG_BURST) @@ -451,6 +450,7 @@ #define SetService(x) SetFlag(x, FLAG_SERVICE) #define SetAccount(x) SetFlag(x, FLAG_ACCOUNT) #define SetHiddenHost(x) SetFlag(x, FLAG_HIDDENHOST) +#define SetPingSent(x) SetFlag(x, FLAG_PINGSENT) #define ClearAccess(x) ClrFlag(x, FLAG_CHKACCESS) #define ClearBurst(x) ClrFlag(x, FLAG_BURST) @@ -466,6 +466,7 @@ #define ClearWallops(x) ClrFlag(x, FLAG_WALLOP) #define ClearServNotice(x) ClrFlag(x, FLAG_SERVNOTICE) #define ClearHiddenHost(x) ClrFlag(x, FLAG_HIDDENHOST) +#define ClearPingSent(x) ClrFlag(x, FLAG_PINGSENT) /* free flags */ #define FREEFLAG_SOCKET 0x0001 /* socket needs to be freed */ @@ -510,12 +511,9 @@ #define SNO_OPER (SNO_CONNEXIT|SNO_OLDREALOP) #define SNO_NOISY (SNO_SERVKILL|SNO_UNAUTH) -#define PrivSet(pset, priv) ((pset)->priv_mask[_PRIV_IDX(priv)] |= \ - _PRIV_BIT(priv)) -#define PrivClr(pset, priv) ((pset)->priv_mask[_PRIV_IDX(priv)] &= \ - ~(_PRIV_BIT(priv))) -#define PrivHas(pset, priv) ((pset)->priv_mask[_PRIV_IDX(priv)] & \ - _PRIV_BIT(priv)) +#define PrivSet(fset, flag) FLAGSET_SET(*fset, flag) +#define PrivClr(fset, flag) FLAGSET_CLEAR(*fset, flag) +#define PrivHas(fset, flag) FLAGSET_ISSET(*fset, flag) #define GrantPriv(cli, priv) (PrivSet(&(cli_privs(cli)), priv)) #define RevokePriv(cli, priv) (PrivClr(&(cli_privs(cli)), priv)) @@ -532,7 +530,7 @@ extern void client_drop_sendq(struct Connection* con); extern void client_add_sendq(struct Connection* con, struct Connection** con_p); -extern void client_set_privs(struct Client* client); +extern void client_set_privs(struct Client* client, struct ConfItem *oper); extern int client_report_privs(struct Client* to, struct Client* client); #endif /* INCLUDED_client_h */ Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.4 ircd-ircdev/include/patchlevel.h:1.5 --- ircd-ircdev/include/patchlevel.h:1.4 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/include/patchlevel.h Sat Nov 1 16:47:33 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.4 2003/11/01 17:19:35 zolty Exp $ + * $Id: patchlevel.h,v 1.5 2003/11/02 00:47:33 zolty Exp $ * */ -#define PATCHLEVEL ".alpha3" +#define PATCHLEVEL ".alpha4" #define RELEASE "1.0" Index: ircd-ircdev/include/res.h diff -u ircd-ircdev/include/res.h:1.1.1.1 ircd-ircdev/include/res.h:1.2 --- ircd-ircdev/include/res.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/res.h Sat Nov 1 16:47:33 2003 @@ -1,7 +1,7 @@ /* * irc2.7.2/ircd/res.h (C)opyright 1992 Darren Reed. * - * $Id: res.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: res.h,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ #ifndef INCLUDED_res_h #define INCLUDED_res_h @@ -14,26 +14,20 @@ struct Client; struct hostent; -struct DNSReply { - struct hostent* hp; /* hostent struct */ - int ref_count; /* reference count */ -}; - struct DNSQuery { void* vptr; /* pointer used by callback to identify request */ - void (*callback)(void* vptr, struct DNSReply* reply); /* callback to call */ + void (*callback)(void* vptr, struct hostent* reply); /* callback to call */ }; extern int ResolverFileDescriptor; /* GLOBAL - file descriptor (s_bsd.c) */ extern void get_res(void); -extern struct DNSReply* gethost_byname(const char* name, - const struct DNSQuery* req); -extern struct DNSReply* gethost_byaddr(const char* name, - const struct DNSQuery* req); +extern void gethost_byname(const char* name, const struct DNSQuery* req); +extern void gethost_byaddr(const char* name, const struct DNSQuery* req); extern int init_resolver(void); extern void restart_resolver(void); extern time_t timeout_resolver(time_t now); + /* * delete_resolver_queries - delete all outstanding queries for the * pointer arg, DO NOT call this from a resolver callback function the Index: ircd-ircdev/include/s_bsd.h diff -u ircd-ircdev/include/s_bsd.h:1.1.1.1 ircd-ircdev/include/s_bsd.h:1.2 --- ircd-ircdev/include/s_bsd.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/s_bsd.h Sat Nov 1 16:47:33 2003 @@ -1,7 +1,7 @@ /* * s_bsd.h * - * $Id: s_bsd.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: s_bsd.h,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ #ifndef INCLUDED_s_bsd_h #define INCLUDED_s_bsd_h @@ -17,7 +17,6 @@ struct Client; struct ConfItem; struct Listener; -struct DNSReply; struct MsgQ; /* @@ -79,8 +78,7 @@ * Proto types */ extern unsigned int deliver_it(struct Client *cptr, struct MsgQ *buf); -extern int connect_server(struct ConfItem* aconf, struct Client* by, - struct DNSReply* reply); +extern int connect_server(struct ConfItem* aconf, struct Client* by); extern void release_dns_reply(struct Client* cptr); extern int net_close_unregistered_connections(struct Client* source); extern void close_connection(struct Client *cptr); Index: ircd-ircdev/include/s_conf.h diff -u ircd-ircdev/include/s_conf.h:1.2 ircd-ircdev/include/s_conf.h:1.3 --- ircd-ircdev/include/s_conf.h:1.2 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/include/s_conf.h Sat Nov 1 16:47:33 2003 @@ -1,7 +1,7 @@ /* * s_conf.h * - * $Id: s_conf.h,v 1.2 2003/11/01 15:26:45 zolty Exp $ + * $Id: s_conf.h,v 1.3 2003/11/02 00:47:33 zolty Exp $ */ #ifndef INCLUDED_s_conf_h #define INCLUDED_s_conf_h @@ -64,6 +64,9 @@ int dns_pending; /* a dns request is pending */ unsigned short port; char bits; /* Number of bits for ipkills */ + struct Privs privs; /* Priviledges for opers. */ + /* Used to detect if a privilege has been touched. */ + struct Privs privs_dirty; }; struct ServerConf { Index: ircd-ircdev/ircd/.cvsignore diff -u ircd-ircdev/ircd/.cvsignore:1.1 ircd-ircdev/ircd/.cvsignore:1.2 --- ircd-ircdev/ircd/.cvsignore:1.1 Sat Nov 1 09:19:36 2003 +++ ircd-ircdev/ircd/.cvsignore Sat Nov 1 16:47:33 2003 @@ -1,6 +1,10 @@ - chkconf - table_gen - chattr.tab.c +Makefile +stamp-m +version.c +ircd +chkconf +table_gen +chattr.tab.c lex.yy.c y.tab.c y.tab.h Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.4 ircd-ircdev/ircd/Makefile.in:1.5 --- ircd-ircdev/ircd/Makefile.in:1.4 Sat Nov 1 09:19:36 2003 +++ ircd-ircdev/ircd/Makefile.in Sat Nov 1 16:47:33 2003 @@ -44,6 +44,7 @@ GREP = grep OSDEP_C = @OSDEP_C@ ENGINE_C = @ENGINE_C@ +RES_C = @RES_C@ @SET_MAKE@ BINDIR = @bindir@ @@ -58,7 +59,7 @@ CC = @CC@ CFLAGS = @CFLAGS@ -CPPFLAGS = -I. -I.. -I${top_srcdir}/include @CPPFLAGS@ +CPPFLAGS = -I. -I.. -I${top_srcdir}/include -I${top_srcdir}/libs/adns/src @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ @@ -80,6 +81,10 @@ engine_kqueue.c \ engine_select.c +RES_SRC = \ + res_adns.c \ + res_libresolv.c + IRCD_SRC = \ IPcheck.c \ channel.c \ @@ -187,7 +192,6 @@ parse.c \ querycmds.c \ random.c \ - res.c \ s_auth.c \ s_bsd.c \ s_conf.c \ @@ -209,7 +213,7 @@ CHKCONF_SRC = chkconf.c -SRC = ${IRCD_SRC} ${OSDEP_C} ${ENGINE_C} +SRC = ${IRCD_SRC} ${OSDEP_C} ${ENGINE_C} ${RES_C} OBJS = ${SRC:%.c=%.o} Index: ircd-ircdev/ircd/client.c diff -u ircd-ircdev/ircd/client.c:1.1.1.1 ircd-ircdev/ircd/client.c:1.2 --- ircd-ircdev/ircd/client.c:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/ircd/client.c Sat Nov 1 16:47:33 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: client.c,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: client.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ #include "config.h" @@ -101,16 +101,21 @@ } } -static struct { +enum FeatureFlag +{ + FEATFLAG_NULL, + FEATFLAG_DISABLES_PRIV, + FEATFLAG_ENABLES_PRIV, + FEATFLAG_GLOBAL_OPERS, + FEATFLAG_LOCAL_OPERS, + FEATFLAG_ALL_OPERS +}; + +static struct +{ enum Priv priv; enum Feature feat; - enum { - FEATFLAG_DISABLES_PRIV, - FEATFLAG_ENABLES_PRIV, - FEATFLAG_GLOBAL_OPERS, - FEATFLAG_LOCAL_OPERS, - FEATFLAG_ALL_OPERS - } flag; + enum FeatureFlag flag; } feattab[] = { { PRIV_WHOX, FEAT_LAST_F, FEATFLAG_ALL_OPERS }, { PRIV_DISPLAY, FEAT_LAST_F, FEATFLAG_ALL_OPERS }, @@ -163,7 +168,7 @@ { PRIV_SEE_CHAN, FEAT_LOCOP_SEE_IN_SECRET_CHANNELS, FEATFLAG_LOCAL_OPERS }, { PRIV_WIDE_GLINE, FEAT_LOCOP_WIDE_GLINE, FEATFLAG_LOCAL_OPERS }, - { PRIV_LAST_PRIV, FEAT_LAST_F, 0 } + { PRIV_LAST_PRIV, FEAT_LAST_F, FEATFLAG_NULL } }; /* client_set_privs(struct Client* client) @@ -171,62 +176,75 @@ * Sets the privileges for opers. */ void -client_set_privs(struct Client* client) +client_set_privs(struct Client *client, struct ConfItem *oper) { - struct Privs privs; - struct Privs antiprivs; int i; - memset(&privs, 0, sizeof(struct Privs)); - memset(&antiprivs, 0, sizeof(struct Privs)); + memset(&(cli_privs(client)), 0, sizeof(struct Privs)); - if (!IsAnOper(client)) { /* clear privilege mask */ - memset(&(cli_privs(client)), 0, sizeof(struct Privs)); + if (!IsAnOper(client)) return; - } else if (!MyConnect(client)) { + else if (!MyConnect(client)) + { memset(&(cli_privs(client)), 255, sizeof(struct Privs)); PrivClr(&(cli_privs(client)), PRIV_SET); return; } + else if (oper == NULL) + return; - /* This sequence is temporary until the .conf is carefully rewritten */ + /* Copy across privs from the config. */ + cli_privs(client) = oper->privs; - for (i = 0; feattab[i].priv != PRIV_LAST_PRIV; i++) { - if (feattab[i].flag == FEATFLAG_ENABLES_PRIV) { + /* Now go through the features and set the non-dirty flags to their feature + * determined defaults... + */ + for (i = 0; feattab[i].priv != PRIV_LAST_PRIV; i++) + { + if (PrivHas(&oper->privs_dirty, feattab[i].priv)) + continue; + if (feattab[i].feat != FEAT_LAST_F && !feature_bool(feattab[i].feat)) + continue; + switch (feattab[i].flag) + { + case FEATFLAG_ENABLES_PRIV: if (!feature_bool(feattab[i].feat)) - PrivSet(&antiprivs, feattab[i].priv); - } else if (feattab[i].feat == FEAT_LAST_F || feature_bool(feattab[i].feat)) { - if (feattab[i].flag == FEATFLAG_DISABLES_PRIV) { - PrivSet(&antiprivs, feattab[i].priv); - } else if (feattab[i].flag == FEATFLAG_ALL_OPERS) { - if (IsAnOper(client)) - PrivSet(&privs, feattab[i].priv); - } else if (feattab[i].flag == FEATFLAG_GLOBAL_OPERS) { - if (IsOper(client)) - PrivSet(&privs, feattab[i].priv); - } else if (feattab[i].flag == FEATFLAG_LOCAL_OPERS) { - if (IsLocOp(client)) - PrivSet(&privs, feattab[i].priv); - } + continue; + PrivSet(&cli_privs(client), feattab[i].priv); + continue; + case FEATFLAG_DISABLES_PRIV: + PrivClr(&cli_privs(client), feattab[i].priv); + continue; + case FEATFLAG_ALL_OPERS: + if (IsAnOper(client)) + PrivSet(&cli_privs(client), feattab[i].priv); + continue; + case FEATFLAG_GLOBAL_OPERS: + if (IsOper(client)) + PrivSet(&cli_privs(client), feattab[i].priv); + continue; + case FEATFLAG_LOCAL_OPERS: + if (IsLocOp(client)) + PrivSet(&cli_privs(client), feattab[i].priv); + continue; + default: + continue; /* ?? */ } } - - /* This is the end of the gross section */ - if (PrivHas(&privs, PRIV_PROPAGATE)) - PrivSet(&privs, PRIV_DISPLAY); /* force propagating opers to display */ - else { /* if they don't propagate oper status, prevent desyncs */ - PrivSet(&antiprivs, PRIV_KILL); - PrivSet(&antiprivs, PRIV_GLINE); - PrivSet(&antiprivs, PRIV_JUPE); - PrivSet(&antiprivs, PRIV_OPMODE); - PrivSet(&antiprivs, PRIV_BADCHAN); + /* This should be handled in the config, but lets be sure... */ + if (PrivHas(&cli_privs(client), PRIV_PROPAGATE)) + /* force propagating opers to display */ + PrivSet(&cli_privs(client), PRIV_DISPLAY); + else + { + /* if they don't propagate oper status, prevent desyncs */ + PrivClr(&cli_privs(client), PRIV_KILL); + PrivClr(&cli_privs(client), PRIV_GLINE); + PrivClr(&cli_privs(client), PRIV_JUPE); + PrivClr(&cli_privs(client), PRIV_OPMODE); + PrivClr(&cli_privs(client), PRIV_BADCHAN); } - - for (i = 0; i <= _PRIV_IDX(PRIV_LAST_PRIV); i++) - privs.priv_mask[i] &= ~antiprivs.priv_mask[i]; - - cli_privs(client) = privs; } static struct { @@ -240,8 +258,8 @@ P(GLINE), P(LOCAL_GLINE), P(JUPE), P(LOCAL_JUPE), P(OPMODE), P(LOCAL_OPMODE), P(SET), P(WHOX), P(BADCHAN), P(LOCAL_BADCHAN), P(SEE_CHAN), P(PROPAGATE), - P(DISPLAY), P(SEE_OPERS), P(WIDE_GLINE), P(FORCE_OPMODE), - P(FORCE_LOCAL_OPMODE), + P(DISPLAY), P(SEE_OPERS), P(FORCE_OPMODE), P(FORCE_LOCAL_OPMODE), + P(WIDE_GLINE), #undef P { 0, 0 } }; Index: ircd-ircdev/ircd/ircd.c diff -u ircd-ircdev/ircd/ircd.c:1.2 ircd-ircdev/ircd/ircd.c:1.3 --- ircd-ircdev/ircd/ircd.c:1.2 Sat Nov 1 07:26:46 2003 +++ ircd-ircdev/ircd/ircd.c Sat Nov 1 16:47:33 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: ircd.c,v 1.2 2003/11/01 15:26:46 zolty Exp $ + * $Id: ircd.c,v 1.3 2003/11/02 00:47:33 zolty Exp $ */ #include "config.h" @@ -302,7 +302,7 @@ (*pconf = con_conf)->next = 0; } - if (connect_server(con_conf, 0, 0)) + if (connect_server(con_conf, 0)) sendto_opmask_butone(0, SNO_OLDSNO, "Connection to %s activated.", con_conf->name); } @@ -355,7 +355,7 @@ Debug((DEBUG_DEBUG, "check_pings(%s)=status:%s limit: %d current: %d", cli_name(cptr), - HasFlag(cptr, FLAG_PINGSENT) ? "[Ping Sent]" : "[]", + IsPingSent(cptr) ? "[Ping Sent]" : "[]", max_ping, (int)(CurrentTime - cli_lasttime(cptr)))); /* Ok, the thing that will happen most frequently, is that someone will @@ -416,11 +416,11 @@ continue; } - if (!HasFlag(cptr, FLAG_PINGSENT)) { + if (!IsPingSent(cptr)) { /* If we havent PINGed the connection and we havent heard from it in a * while, PING it to make sure it is still alive. */ - SetFlag(cptr, FLAG_PINGSENT); + SetPingSent(cptr); /* If we're late in noticing don't hold it against them :) */ cli_lasttime(cptr) = CurrentTime - max_ping; Index: ircd-ircdev/ircd/ircd_lexer.l diff -u ircd-ircdev/ircd/ircd_lexer.l:1.1 ircd-ircdev/ircd/ircd_lexer.l:1.2 --- ircd-ircdev/ircd/ircd_lexer.l:1.1 Sat Nov 1 07:26:46 2003 +++ ircd-ircdev/ircd/ircd_lexer.l Sat Nov 1 16:47:33 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. - * $Id: ircd_lexer.l,v 1.1 2003/11/01 15:26:46 zolty Exp $ + * $Id: ircd_lexer.l,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ %{ @@ -123,5 +123,31 @@ quarantine return QUARANTINE; features return FEATURES; channel return CHANNEL; +bypass_local_channel_limits return TPRIV_CHAN_LIMIT; +set_local_channel_modes return TPRIV_MODE_LCHAN; +protected_local_channel return TPRIV_DEOP_LCHAN; +bypass_join_local_channels return TPRIV_WALK_LCHAN; +global_kill return TPRIV_KILL; +local_kill return TPRIV_LOCAL_KILL; +rehash return TPRIV_REHASH; +restart return TPRIV_RESTART; +die return TPRIV_DIE; +gline return TPRIV_GLINE; +local_gline return TPRIV_LOCAL_GLINE; +jupe_server return TPRIV_JUPE; +local_jupe_server return TPRIV_LOCAL_JUPE; +hack_channel_modes return TPRIV_OPMODE; +change_settings return TPRIV_SET; +extended_who_information return TPRIV_WHOX; +gline_channels return TPRIV_BADCHAN; +local_gline_channels return TPRIV_LOCAL_BADCHAN; +see_private_channels return TPRIV_SEE_CHAN; +see_invisible_users return TPRIV_SHOW_INVIS; +list_all_invisible_users return TPRIV_SHOW_ALL_INVIS; +globally_opered return TPRIV_PROPAGATE; +unlimited_who_queries return TPRIV_UNLIMIT_QUERY; +oper_status_display return TPRIV_DISPLAY; +see_other_opers return TPRIV_SEE_OPERS; +wide_glines return TPRIV_WIDE_GLINE; \n lineno++; . return yytext[0]; Index: ircd-ircdev/ircd/ircd_parser.y diff -u ircd-ircdev/ircd/ircd_parser.y:1.1 ircd-ircdev/ircd/ircd_parser.y:1.2 --- ircd-ircdev/ircd/ircd_parser.y:1.1 Sat Nov 1 07:26:46 2003 +++ ircd-ircdev/ircd/ircd_parser.y Sat Nov 1 16:47:33 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. - * $Id: ircd_parser.y,v 1.1 2003/11/01 15:26:46 zolty Exp $ + * $Id: ircd_parser.y,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ %{ @@ -141,7 +141,6 @@ %token FEATURES %token QUARANTINE /* and now a lot of priviledges... */ -/* %token TPRIV_CHAN_LIMIT, TPRIV_MODE_LCHAN, TPRIV_DEOP_LCHAN, TPRIV_WALK_LCHAN %token TPRIV_KILL, TPRIV_LOCAL_KILL, TPRIV_REHASH, TPRIV_RESTART, TPRIV_DIE %token TPRIV_GLINE, TPRIV_LOCAL_GLINE, TPRIV_JUPE, TPRIV_LOCAL_JUPE @@ -149,14 +148,10 @@ %token TPRIV_LOCAL_BADCHAN %token TPRIV_SEE_CHAN, TPRIV_SHOW_INVIS, TPRIV_SHOW_ALL_INVIS, TPRIV_PROPAGATE %token TPRIV_UNLIMIT_QUERY, TPRIV_DISPLAY, TPRIV_SEE_OPERS, TPRIV_WIDE_GLINE -*/ /* and some types... */ %type <num> sizespec %type <num> timespec, timefactor, factoredtimes, factoredtime -/* %type <num> expr, yesorno, privtype -*/ -%type <num> expr, yesorno %left '+' '-' %left '*' '/' @@ -499,10 +494,7 @@ } }; operitems: operitem | operitems operitem; -/* operitem: opername | operpass | operlocal | operhost | operclass | operpriv; -*/ -operitem: opername | operpass | operlocal | operhost | operclass; opername: NAME '=' QSTRING ';' { @@ -546,7 +538,6 @@ aconf->conn_class = find_class(yylval.text); }; -/* operpriv: privtype '=' yesorno ';' { if ($3 == 1) @@ -588,7 +579,7 @@ TPRIV_DISPLAY { $$ = PRIV_DISPLAY; } | TPRIV_SEE_OPERS { $$ = PRIV_SEE_OPERS; } | TPRIV_WIDE_GLINE { $$ = PRIV_WIDE_GLINE; }; -*/ + yesorno: YES { $$ = 1; } | NO { $$ = 0; }; /* The port block... */ Index: ircd-ircdev/ircd/list.c diff -u ircd-ircdev/ircd/list.c:1.1.1.1 ircd-ircdev/ircd/list.c:1.2 --- ircd-ircdev/ircd/list.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/list.c Sat Nov 1 16:47:33 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: list.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ + * $Id: list.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ #include "config.h" @@ -154,8 +154,10 @@ Debug((DEBUG_LIST, "Deallocating connection %p", con)); - if (con_dns_reply(con)) - --(con_dns_reply(con)->ref_count); + if (con_dns_reply(con)) { + MyFree(con_dns_reply(con)); + con_dns_reply(con) = 0; + } if (-1 < con_fd(con)) close(con_fd(con)); MsgQClear(&(con_sendQ(con))); @@ -314,9 +316,9 @@ assert(!cli_next(cptr) || cli_verify(cli_next(cptr))); assert(!IsMe(cptr)); - /* Only remove from the list if it actually IS in the list. - * cli_next(cptr) cannot be NULL here if cptr is in the list, - * only &me is at the end, and we never try to remove &me -GW + /* Only try remove cptr from the list if it IS in the list. + * cli_next(cptr) cannot be NULL here, as &me is always the end + * the list, and we never remove &me. -GW */ if(cli_next(cptr)) { Index: ircd-ircdev/ircd/m_connect.c diff -u ircd-ircdev/ircd/m_connect.c:1.1.1.1 ircd-ircdev/ircd/m_connect.c:1.2 --- ircd-ircdev/ircd/m_connect.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_connect.c Sat Nov 1 16:47:33 2003 @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: m_connect.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ + * $Id: m_connect.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ /* @@ -202,7 +202,7 @@ log_write(LS_NETWORK, L_INFO, 0, "CONNECT From %C : %s %s", sptr, parv[1], parv[2] ? parv[2] : ""); - if (connect_server(aconf, sptr, 0)) { + if (connect_server(aconf, sptr)) { sendcmdto_one(&me, CMD_NOTICE, sptr, "%C :*** Connecting to %s.", sptr, aconf->name); } @@ -332,7 +332,7 @@ tmpport = aconf->port; aconf->port = port; - if (connect_server(aconf, sptr, 0)) { + if (connect_server(aconf, sptr)) { sendcmdto_one(&me, CMD_NOTICE, sptr, "%C :*** Connecting to %s.", sptr, aconf->name); } Index: ircd-ircdev/ircd/m_oper.c diff -u ircd-ircdev/ircd/m_oper.c:1.1.1.1 ircd-ircdev/ircd/m_oper.c:1.2 --- ircd-ircdev/ircd/m_oper.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_oper.c Sat Nov 1 16:47:33 2003 @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: m_oper.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ + * $Id: m_oper.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ /* @@ -180,7 +180,7 @@ SetFlag(sptr, FLAG_DEBUG); set_snomask(sptr, SNO_OPERDEFAULT, SNO_ADD); - client_set_privs(sptr); + client_set_privs(sptr, aconf); cli_max_sendq(sptr) = 0; /* Get the sendq from the oper's class */ send_umode_out(cptr, sptr, &old_mode, HasPriv(sptr, PRIV_PROPAGATE)); send_reply(sptr, RPL_YOUREOPER); Index: ircd-ircdev/ircd/res.c diff -u ircd-ircdev/ircd/res.c:1.1.1.1 ircd-ircdev/ircd/res.c:removed --- ircd-ircdev/ircd/res.c:1.1.1.1 Mon Sep 8 03:34:30 2003 +++ ircd-ircdev/ircd/res.c Sat Nov 1 16:47:44 2003 @@ -1,1824 +0,0 @@ -/* - * src/res.c (C)opyright 1992 Darren Reed. All rights reserved. - * This file may not be distributed without the author's permission in any - * shape or form. The author takes no responsibility for any damage or loss - * of property which results from the use of this software. - * - * $Id: res.c,v 1.1.1.1 2003/09/08 10:34:30 zolty Exp $ - * - * July 1999 - Rewrote a bunch of stuff here. Change hostent builder code, - * added callbacks and reference counting of returned hostents. - * --Bleep (Thomas Helvey <to...@in...>) - */ -#include "config.h" - -#include "res.h" -#include "client.h" -#include "ircd.h" -#include "ircd_alloc.h" -#include "ircd_events.h" -#include "ircd_log.h" -#include "ircd_osdep.h" -#include "ircd_reply.h" -#include "ircd_snprintf.h" -#include "ircd_string.h" -#include "msg.h" -#include "numeric.h" -#include "s_bsd.h" -#include "s_debug.h" -#include "s_misc.h" -#include "send.h" -#include "struct.h" -#include "support.h" -#include "sys.h" - -#include <assert.h> -#include <errno.h> -#include <string.h> -#include <stdlib.h> -#include <sys/time.h> -#include <sys/socket.h> -#include <fcntl.h> -#include <unistd.h> -#include <regex.h> - -#include <arpa/nameser.h> -#include <resolv.h> -#include <netdb.h> -#include <arpa/inet.h> - -#include <limits.h> -#if (CHAR_BIT != 8) -#error this code needs to be able to address individual octets -#endif - -/* - * Some systems do not define INADDR_NONE (255.255.255.255) - * INADDR_NONE is actually a valid address, but it should never - * be returned from any nameserver. - * NOTE: The bit pattern for INADDR_NONE and INADDR_ANY (0.0.0.0) should be - * the same on all hosts so we shouldn't need to use htonl or ntohl to - * compare or set the values. - */ -#ifndef INADDR_NONE -#define INADDR_NONE ((unsigned int) 0xffffffff) -#endif - -#define MAXPACKET 1024 /* rfc sez 512 but we expand names so ... */ -#define RES_MAXALIASES 35 /* maximum aliases allowed */ -#define RES_MAXADDRS 35 /* maximum addresses allowed */ -/* - * OSF1 doesn't have RES_NOALIASES - */ -#ifndef RES_NOALIASES -#define RES_NOALIASES 0 -#endif - -/* - * macros used to calulate offsets into fixed query buffer - */ -#define ALIAS_BLEN ((RES_MAXALIASES + 1) * sizeof(char*)) -#define ADDRS_BLEN ((RES_MAXADDRS + 1) * sizeof(struct in_addr*)) - -#define ADDRS_OFFSET (ALIAS_BLEN + ADDRS_BLEN) -#define ADDRS_DLEN (RES_MAXADDRS * sizeof(struct in_addr)) -#define NAMES_OFFSET (ADDRS_OFFSET + ADDRS_DLEN) -#define MAXGETHOSTLEN (NAMES_OFFSET + MAXPACKET) - -#define AR_TTL 600 /* TTL in seconds for dns cache entries */ - -/* - * the following values should be prime - */ -#define ARES_CACSIZE 307 -#define MAXCACHED 281 - -/* - * RFC 1104/1105 wasn't very helpful about what these fields - * should be named, so for now, we'll just name them this way. - * we probably should look at what named calls them or something. - */ -#define TYPE_SIZE 2 -#define CLASS_SIZE 2 -#define TTL_SIZE 4 -#define RDLENGTH_SIZE 2 -#define ANSWER_FIXED_SIZE (TYPE_SIZE + CLASS_SIZE + TTL_SIZE + RDLENGTH_SIZE) - -/* - * Building the Hostent - * The Hostent struct is arranged like this: - * +-------------------------------+ - * Hostent: | struct hostent h | - * |-------------------------------| - * | char *buf | - * +-------------------------------+ - * - * allocated: - * - * +-------------------------------+ - * buf: | h_aliases pointer array | Max size: ALIAS_BLEN; - * | NULL | contains `char *'s - * |-------------------------------| - * | h_addr_list pointer array | Max size: ADDRS_BLEN; - * | NULL | contains `struct in_addr *'s - * |-------------------------------| - * | h_addr_list addresses | Max size: ADDRS_DLEN; - * | | contains `struct in_addr's - * |-------------------------------| - * | storage for hostname strings | Max size: ALIAS_DLEN; - * +-------------------------------+ contains `char's - * - * For requests the size of the h_aliases, and h_addr_list pointer - * array sizes are set to MAXALISES and MAXADDRS respectively, and - * buf is a fixed size with enough space to hold the largest expected - * reply from a nameserver, see RFC 1034 and RFC 1035. - * For cached entries the sizes are dependent on the actual number - * of aliases and addresses. If new aliases and addresses are found - * for cached entries, the buffer is grown and the new entries are added. - * The hostent struct is filled in with the addresses of the entries in - * the Hostent buf as follows: - * h_name - contains a pointer to the start of the hostname string area, - * or NULL if none is set. The h_name is followed by the - * aliases, in the storage for hostname strings area. - * h_aliases - contains a pointer to the start of h_aliases pointer array. - * This array contains pointers to the storage for hostname - * strings area and is terminated with a NULL. The first alias - * is stored directly after the h_name. - * h_addr_list - contains a pointer to the start of h_addr_list pointer array. - * This array contains pointers to in_addr structures in the - * h_addr_list addresses area and is terminated with a NULL. - * - * Filling the buffer this way allows for proper alignment of the h_addr_list - * addresses. - * - * This arrangement allows us to alias a Hostent struct pointer as a - * real struct hostent* without lying. It also allows us to change the - * values contained in the cached entries and requests without changing - * the actual hostent pointer, which is saved in a client struct and can't - * be changed without blowing things up or a lot more fiddling around. - * It also allows for defered allocation of the fixed size buffers until - * they are really needed. - * Nov. 17, 1997 --Bleep - */ - -struct Hostent { - struct hostent h; /* the hostent struct we are passing around */ - char* buf; /* buffer for data pointed to from hostent */ -}; - -struct ResRequest { - struct ResRequest* next; - int id; - int sent; /* number of requests sent */ - time_t ttl; - char type; - char retries; /* retry counter */ - char sends; /* number of sends (>1 means resent) */ - char resend; /* send flag. 0 == dont resend */ - time_t sentat; - time_t timeout; - struct in_addr addr; - char* name; - struct DNSQuery query; /* query callback for this request */ - struct Hostent he; -}; - -struct CacheEntry { - struct CacheEntry* hname_next; - struct CacheEntry* hnum_next; - struct CacheEntry* list_next; - time_t expireat; - time_t ttl; - struct Hostent he; - struct DNSReply reply; -}; - -struct CacheTable { - struct CacheEntry* num_list; - struct CacheEntry* name_list; -}; - - -int ResolverFileDescriptor = -1; /* GLOBAL - used in s_bsd.c */ - -static struct Socket resSock; /* Socket describing resolver */ -static struct Timer resExpireDNS; /* Timer for DNS expiration */ -static struct Timer resExpireCache; /* Timer for cache expiration */ - -static time_t nextDNSCheck = 0; -static time_t nextCacheExpire = 1; - -/* - * Keep a spare file descriptor open. res_init calls fopen to read the - * resolv.conf file. If ircd is hogging all the file descriptors below 256, - * on systems with crippled FILE structures this will cause wierd bugs. - * This is definitely needed for Solaris which uses an unsigned char to - * hold the file descriptor. --Dianora - */ -static int spare_fd = -1; - -static int cachedCount = 0; -static struct CacheTable hashtable[ARES_CACSIZE]; -static struct CacheEntry* cacheTop; -static struct ResRequest* requestListHead; /* head of resolver request list */ -static struct ResRequest* requestListTail; /* tail of resolver request list */ - - -static void add_request(struct ResRequest* request); -static void rem_request(struct ResRequest* request); -static struct ResRequest* make_request(const struct DNSQuery* query); -static time_t timeout_query_list(time_t now); -static time_t expire_cache(time_t now); -static void rem_cache(struct CacheEntry*); -static void do_query_name(const struct DNSQuery* query, - const char* name, - struct ResRequest* request); -static void do_query_number(const struct DNSQuery* query, - const struct in_addr*, - struct ResRequest* request); -static void query_name(const char* name, - int query_class, - int query_type, - struct ResRequest* request); -static void resend_query(struct ResRequest* request); -static struct CacheEntry* make_cache(struct ResRequest* request); -static struct CacheEntry* find_cache_name(const char* name); -static struct CacheEntry* find_cache_number(struct ResRequest* request, - const char* addr); -static struct ResRequest* find_id(int); - -static struct cacheinfo { - int ca_adds; - int ca_dels; - int ca_expires; - int ca_lookups; - int ca_na_hits; - int ca_nu_hits; - int ca_updates; -} cainfo; - -static struct resinfo { - int re_errors; - int re_nu_look; - int re_na_look; - int re_replies; - int re_requests; - int re_resends; - int re_sent; - int re_timeouts; - int re_shortttl; - int re_unkrep; -} reinfo; - - -/* - * From bind 8.3, these aren't declared in earlier versions of bind - */ -extern u_short _getshort(const u_char *); -extern u_int _getlong(const u_char *); -/* - * int - * res_isourserver(ina) - * looks up "ina" in _res.ns_addr_list[] - * returns: - * 0 : not found - * >0 : found - * author: - * paul vixie, 29may94 - */ -static int -res_ourserver(const struct __res_state* statp, const struct sockaddr_in* inp) -{ - struct sockaddr_in ina; - int ns; - - ina = *inp; - for (ns = 0; ns < statp->nscount; ns++) { - const struct sockaddr_in *srv = &statp->nsaddr_list[ns]; - - if (srv->sin_family == ina.sin_family && - srv->sin_port == ina.sin_port && - (srv->sin_addr.s_addr == INADDR_ANY || - srv->sin_addr.s_addr == ina.sin_addr.s_addr)) - return (1); - } - return (0); -} - -/* Socket callback for resolver */ -static void res_callback(struct Event* ev) -{ - assert(ev_type(ev) == ET_READ || ev_type(ev) == ET_ERROR); - - resolver_read(); -} - -/* - * start_resolver - do everything we need to read the resolv.conf file - * and initialize the resolver file descriptor if needed - */ -static void start_resolver(void) -{ - Debug((DEBUG_DNS, "Resolver: start_resolver")); - /* - * close the spare file descriptor so res_init can read resolv.conf - * successfully. Needed on Solaris - */ - if (spare_fd > -1) - close(spare_fd); - - res_init(); /* res_init always returns 0 */ - /* - * make sure we have a valid file descriptor below 256 so we can - * do this again. Needed on Solaris - */ - spare_fd = open("/dev/null",O_RDONLY,0); - if ((spare_fd < 0) || (spare_fd > 255)) { - char sparemsg[80]; - ircd_snprintf(0, sparemsg, sizeof(sparemsg), "invalid spare_fd %d", - spare_fd); - server_restart(sparemsg); - } - - if (!_res.nscount) { - _res.nscount = 1; - _res.nsaddr_list[0].sin_addr.s_addr = inet_addr("127.0.0.1"); - } - _res.options |= RES_NOALIASES; - - if (ResolverFileDescriptor < 0) { - ResolverFileDescriptor = socket(AF_INET, SOCK_DGRAM, 0); - if (-1 == ResolverFileDescriptor) { - report_error("Resolver: error creating socket for %s: %s", - cli_name(&me), errno); - return; - } - if (!os_set_nonblocking(ResolverFileDescriptor)) - report_error("Resolver: error setting non-blocking for %s: %s", - cli_name(&me), errno); - if (!socket_add(&resSock, res_callback, 0, SS_DATAGRAM, - SOCK_EVENT_READABLE, ResolverFileDescriptor)) - report_error("Resolver: unable to queue resolver file descriptor for %s", - cli_name(&me), ENFILE); - } -} - -/* Call the query timeout function */ -static void expire_DNS_callback(struct Event* ev) -{ - time_t next; - - next = timeout_query_list(CurrentTime); - - timer_add(&resExpireDNS, expire_DNS_callback, 0, TT_ABSOLUTE, next); -} - -/* Call the cache expire function */ -static void expire_cache_callback(struct Event* ev) -{ - time_t next; - - next = expire_cache(CurrentTime); - - timer_add(&resExpireCache, expire_cache_callback, 0, TT_ABSOLUTE, next); -} - -/* - * init_resolver - initialize resolver and resolver library - */ -int init_resolver(void) -{ - Debug((DEBUG_DNS, "Resolver: init_resolver")); -#ifdef LRAND48 - srand48(CurrentTime); -#endif - memset(&cainfo, 0, sizeof(cainfo)); - memset(hashtable, 0, sizeof(hashtable)); - memset(&reinfo, 0, sizeof(reinfo)); - - requestListHead = requestListTail = 0; - - /* initiate the resolver timers */ - timer_add(timer_init(&resExpireDNS), expire_DNS_callback, 0, - TT_RELATIVE, 1); - timer_add(timer_init(&resExpireCache), expire_cache_callback, 0, - TT_RELATIVE, 1); - - errno = h_errno = 0; - - start_resolver(); - Debug((DEBUG_DNS, "Resolver: fd %d errno: %d h_errno: %d: %s", - ResolverFileDescriptor, errno, h_errno, - (strerror(errno)) ? strerror(errno) : "Unknown")); - return ResolverFileDescriptor; -} - -/* - * restart_resolver - flush the cache, reread resolv.conf, reopen socket - */ -void restart_resolver(void) -{ - /* flush_cache(); flush the dns cache */ - start_resolver(); -} - -static int validate_hostent(const struct hostent* hp) -{ - const char* name; - int i = 0; - assert(0 != hp); - for (name = hp->h_name; name; name = hp->h_aliases[i++]) { - if (!string_is_hostname(name)) - return 0; - } - return 1; -} - -/* - * add_request - place a new request in the request list - */ -static void add_request(struct ResRequest* request) -{ - assert(0 != request); - if (!requestListHead) - requestListHead = requestListTail = request; - else { - requestListTail->next = request; - requestListTail = request; - } - request->next = NULL; - ++reinfo.re_requests; -} - -/* - * rem_request - remove a request from the list. - * This must also free any memory that has been allocated for - * temporary storage of DNS results. - */ -static void rem_request(struct ResRequest* request) -{ - struct ResRequest** current; - struct ResRequest* prev = NULL; - - assert(0 != request); - for (current = &requestListHead; *current; ) { - if (*current == request) { - *current = request->next; - if (requestListTail == request) - requestListTail = prev; - break; - } - prev = *current; - current = &(*current)->next; - } - MyFree(request->he.buf); - MyFree(request->name); - MyFree(request); -} - -/* - * make_request - Create a DNS request record for the server. - */ -static struct ResRequest* make_request(const struct DNSQuery* query) -{ - struct ResRequest* request; - assert(0 != query); - request = (struct ResRequest*) MyMalloc(sizeof(struct ResRequest)); - memset(request, 0, sizeof(struct ResRequest)); - - request->sentat = CurrentTime; - request->retries = 3; - request->resend = 1; - request->timeout = 5; /* start at 5 per RFC1123 */ - request->addr.s_addr = INADDR_NONE; - request->he.h.h_addrtype = AF_INET; - request->he.h.h_length = sizeof(struct in_addr); - request->query.vptr = query->vptr; - request->query.callback = query->callback; - -#if defined(NULL_POINTER_NOT_ZERO) - request->next = NULL; - request->he.buf = NULL; - request->he.h.h_name = NULL; - request->he.h.h_aliases = NULL; - request->he.h.h_addr_list = NULL; -#endif - add_request(request); - return request; -} - -/* - * timeout_query_list - Remove queries from the list which have been - * there too long without being resolved. - */ -static time_t timeout_query_list(time_t now) -{ - struct ResRequest* request; - struct ResRequest* next_request = 0; - time_t next_time = 0; - time_t timeout = 0; - - Debug((DEBUG_DNS, "Resolver: timeout_query_list at %s", myctime(now))); - for (request = requestListHead; request; request = next_request) { - next_request = request->next; - timeout = request->sentat + request->timeout; - if (timeout < now) { - if (--request->retries <= 0) { - ++reinfo.re_timeouts; - (*request->query.callback)(request->query.vptr, 0); - rem_request(request); - continue; - } - else { - request->sentat = now; - request->timeout += request->timeout; - resend_query(request); - } - } - if (!next_time || timeout < next_time) { - next_time = timeout; - } - } - return (next_time > now) ? next_time : (now + AR_TTL); -} - -/* - * expire_cache - removes entries from the cache which are older - * than their expiry times. returns the time at which the server - * should next poll the cache. - */ -static time_t expire_cache(time_t now) -{ - struct CacheEntry* cp; - struct CacheEntry* cp_next; - time_t expire = 0; - - Debug((DEBUG_DNS, "Resolver: expire_cache at %s", myctime(now))); - for (cp = cacheTop; cp; cp = cp_next) { - cp_next = cp->list_next; - if (cp->expireat < now) { - ++cainfo.ca_expires; - rem_cache(cp); - } - else if (!expire || expire > cp->expireat) - expire = cp->expireat; - } - return (expire > now) ? expire : (now + AR_TTL); -} - -/* - * timeout_resolver - check request list and cache for expired entries - */ -time_t timeout_resolver(time_t now) -{ - if (nextDNSCheck < now) - nextDNSCheck = timeout_query_list(now); - if (nextCacheExpire < now) - nextCacheExpire = expire_cache(now); - return IRCD_MIN(nextDNSCheck, nextCacheExpire); -} - - -/* - * delete_resolver_queries - cleanup outstanding queries - * for which there no longer exist clients or conf lines. - */ -void delete_resolver_queries(const void* vptr) -{ - struct ResRequest* request; - struct ResRequest* next_request; - - for (request = requestListHead; request; request = next_request) { - next_request = request->next; - if (vptr == request->query.vptr) - rem_request(request); - } -} - -/* - * send_res_msg - sends msg to all nameservers found in the "_res" structure. - * This should reflect /etc/resolv.conf. We will get responses - * which arent needed but is easier than checking to see if nameserver - * isnt present. Returns number of messages successfully sent to - * nameservers or -1 if no successful sends. - */ -static int send_res_msg(const u_char* msg, int len, int rcount) -{ - int i; - int sent = 0; - int max_queries = IRCD_MIN(_res.nscount, rcount); - - assert(0 != msg); - /* - * RES_PRIMARY option is not implemented - * if (_res.options & RES_PRIMARY || 0 == max_queries) - */ - if (0 == max_queries) - max_queries = 1; - - Debug((DEBUG_DNS, "Resolver: sendto %d", max_queries)); - - for (i = 0; i < max_queries; i++) { - if (sendto(ResolverFileDescriptor, msg, len, 0, - (struct sockaddr*) &(_res.nsaddr_list[i]), - sizeof(struct sockaddr_in)) == len) { - ++reinfo.re_sent; - ++sent; - } - else - log_write(LS_RESOLVER, L_ERROR, 0, "Resolver: send failed %m"); - } - return sent; -} - -/* - * find_id - find a dns request id (id is determined by dn_mkquery) - */ -static struct ResRequest* find_id(int id) -{ - struct ResRequest* request; - - for (request = requestListHead; request; request = request->next) { - if (request->id == id) - return request; - } - return NULL; -} - -/* - * gethost_byname - get host address from name - */ -struct DNSReply* gethost_byname(const char* name, - const struct DNSQuery* query) -{ - struct CacheEntry* cp; - assert(0 != name); - - Debug((DEBUG_DNS, "Resolver: gethost_byname %s", name)); - ++reinfo.re_na_look; - if ((cp = find_cache_name(name))) - return &(cp->reply); - - do_query_name(query, name, NULL); - nextDNSCheck = 1; - return NULL; -} - -/* - * gethost_byaddr - get host name from address - */ -struct DNSReply* gethost_byaddr(const char* addr, - const struct DNSQuery* query) -{ - struct CacheEntry *cp; - - assert(0 != addr); - - Debug((DEBUG_DNS, "Resolver: gethost_byaddr %s", ircd_ntoa(addr))); - - ++reinfo.re_nu_look; - if ((cp = find_cache_number(NULL, addr))) - return &(cp->reply); - - do_query_number(query, (const struct in_addr*) addr, NULL); - nextDNSCheck = 1; - return NULL; -} - -/* - * do_query_name - nameserver lookup name - */ -static void do_query_name(const struct DNSQuery* query, - const char* name, struct ResRequest* request) -{ - ... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-02 18:34:58
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-02 18:34:57 UTC Modified files: ChangeLog ChangeLog.es config.h.in configure configure.in include/patchlevel.h ircd/Makefile.in ircd/ircd_parser.y Log message: Author: Log message: ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.5 ircd-ircdev/ChangeLog:1.6 --- ircd-ircdev/ChangeLog:1.5 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ChangeLog Sun Nov 2 10:34:46 2003 @@ -1,10 +1,14 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.5 2003/11/02 00:47:33 zolty Exp $ +# $Id: ChangeLog,v 1.6 2003/11/02 18:34:46 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha5 + * Check lex and yacc (configure.in). + * Fix bison bug (ircd_parser.y). + 2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha4 * Privilegies user feature. * Changed DNS resolution. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.5 ircd-ircdev/ChangeLog.es:1.6 --- ircd-ircdev/ChangeLog.es:1.5 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ChangeLog.es Sun Nov 2 10:34:46 2003 @@ -1,10 +1,14 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.5 2003/11/02 00:47:33 zolty Exp $ +# $Id: ChangeLog.es,v 1.6 2003/11/02 18:34:46 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha5 + * Chequeo de lex y yacc en el configure.in. + * Fix de un bug de bison (ircd_parser.y). + 2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha4 * Implementacion de Privilegios. * Cambios en la resolucion DNS. Index: ircd-ircdev/config.h.in diff -u ircd-ircdev/config.h.in:1.2 ircd-ircdev/config.h.in:1.3 --- ircd-ircdev/config.h.in:1.2 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/config.h.in Sun Nov 2 10:34:46 2003 @@ -19,7 +19,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: config.h.in,v 1.2 2003/11/01 17:19:35 zolty Exp $ + * $Id: config.h.in,v 1.3 2003/11/02 18:34:46 zolty Exp $ */ /* Define if you have the setrlimit function */ @@ -228,6 +228,10 @@ /* Define to 1 if your processor stores words with the most significant byte first (like Motorola and SPARC, unlike Intel and VAX). */ #undef WORDS_BIGENDIAN + +/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a + `char[]'. */ +#undef YYTEXT_POINTER /* Define to `int' if <sys/types.h> doesn't define. */ #undef gid_t Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.4 ircd-ircdev/configure:1.5 --- ircd-ircdev/configure:1.4 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/configure Sun Nov 2 10:34:47 2003 @@ -309,7 +309,7 @@ # include <unistd.h> #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S RMPROG SHPROG OSDEP_C ENGINE_C RES_C ADNS_SUBDIR INSTALL_RULE SYMLINK IRCDMODE IRCDOWN IRCDGRP DPATH LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S LEX LEXLIB LEX_OUTPUT_ROOT YACC RMPROG SHPROG OSDEP_C ENGINE_C RES_C ADNS_SUBDIR INSTALL_RULE SYMLINK IRCDMODE IRCDOWN IRCDGRP DPATH LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -6775,6 +6775,290 @@ echo "${ECHO_T}no, using $LN_S" >&6 fi +for ac_prog in flex lex +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_LEX+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$LEX"; then + ac_cv_prog_LEX="$LEX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_LEX="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +LEX=$ac_cv_prog_LEX +if test -n "$LEX"; then + echo "$as_me:$LINENO: result: $LEX" >&5 +echo "${ECHO_T}$LEX" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + test -n "$LEX" && break +done +test -n "$LEX" || LEX=":" + +if test -z "$LEXLIB" +then + echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5 +echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6 +if test "${ac_cv_lib_fl_yywrap+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lfl $LIBS" +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char yywrap (); +int +main () +{ +yywrap (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_fl_yywrap=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_lib_fl_yywrap=no +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5 +echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6 +if test $ac_cv_lib_fl_yywrap = yes; then + LEXLIB="-lfl" +else + echo "$as_me:$LINENO: checking for yywrap in -ll" >&5 +echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6 +if test "${ac_cv_lib_l_yywrap+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ll $LIBS" +cat >conftest.$ac_ext <<_ACEOF +#line $LINENO "configure" +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any gcc2 internal prototype to avoid an error. */ +#ifdef __cplusplus +extern "C" +#endif +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char yywrap (); +int +main () +{ +yywrap (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_lib_l_yywrap=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +ac_cv_lib_l_yywrap=no +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5 +echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6 +if test $ac_cv_lib_l_yywrap = yes; then + LEXLIB="-ll" +fi + +fi + +fi + +if test "x$LEX" != "x:"; then + echo "$as_me:$LINENO: checking lex output file root" >&5 +echo $ECHO_N "checking lex output file root... $ECHO_C" >&6 +if test "${ac_cv_prog_lex_root+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # The minimal lex program is just a single line: %%. But some broken lexes +# (Solaris, I think it was) want two %% lines, so accommodate them. +cat >conftest.l <<_ACEOF +%% +%% +_ACEOF +{ (eval echo "$as_me:$LINENO: \"$LEX conftest.l\"") >&5 + (eval $LEX conftest.l) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } +if test -f lex.yy.c; then + ac_cv_prog_lex_root=lex.yy +elif test -f lexyy.c; then + ac_cv_prog_lex_root=lexyy +else + { { echo "$as_me:$LINENO: error: cannot find output from $LEX; giving up" >&5 +echo "$as_me: error: cannot find output from $LEX; giving up" >&2;} + { (exit 1); exit 1; }; } +fi +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5 +echo "${ECHO_T}$ac_cv_prog_lex_root" >&6 +rm -f conftest.l +LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root + +echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5 +echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6 +if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + # POSIX says lex can declare yytext either as a pointer or an array; the +# default is implementation-dependent. Figure out which it is, since +# not all implementations provide the %pointer and %array declarations. +ac_cv_prog_lex_yytext_pointer=no +echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c +ac_save_LIBS=$LIBS +LIBS="$LIBS $LEXLIB" +cat >conftest.$ac_ext <<_ACEOF +`cat $LEX_OUTPUT_ROOT.c` +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && + { ac_try='test -s conftest$ac_exeext' + { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; }; then + ac_cv_prog_lex_yytext_pointer=yes +else + echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +fi +rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_save_LIBS +rm -f "${LEX_OUTPUT_ROOT}.c" + +fi +echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5 +echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6 +if test $ac_cv_prog_lex_yytext_pointer = yes; then + +cat >>confdefs.h <<\_ACEOF +#define YYTEXT_POINTER 1 +_ACEOF + +fi + +fi +for ac_prog in 'bison -y' byacc +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +echo "$as_me:$LINENO: checking for $ac_word" >&5 +echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 +if test "${ac_cv_prog_YACC+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +else + if test -n "$YACC"; then + ac_cv_prog_YACC="$YACC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_YACC="$ac_prog" + echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done + +fi +fi +YACC=$ac_cv_prog_YACC +if test -n "$YACC"; then + echo "$as_me:$LINENO: result: $YACC" >&5 +echo "${ECHO_T}$YACC" >&6 +else + echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6 +fi + + test -n "$YACC" && break +done +test -n "$YACC" || YACC="yacc" + for ac_prog in rm do # Extract the first word of "$ac_prog", so it can be a program name with args. @@ -8735,6 +9019,10 @@ s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t s,@LN_S@,$LN_S,;t t +s,@LEX@,$LEX,;t t +s,@LEXLIB@,$LEXLIB,;t t +s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t +s,@YACC@,$YACC,;t t s,@RMPROG@,$RMPROG,;t t s,@SHPROG@,$SHPROG,;t t s,@OSDEP_C@,$OSDEP_C,;t t Index: ircd-ircdev/configure.in diff -u ircd-ircdev/configure.in:1.4 ircd-ircdev/configure.in:1.5 --- ircd-ircdev/configure.in:1.4 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/configure.in Sun Nov 2 10:34:47 2003 @@ -19,7 +19,7 @@ dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. dnl -dnl $Id: configure.in,v 1.4 2003/11/02 00:47:33 zolty Exp $ +dnl $Id: configure.in,v 1.5 2003/11/02 18:34:47 zolty Exp $ dnl Make sure we are in the correct directory (someone could have run dnl 'configure' with a wrong '--srcdir'). @@ -139,6 +139,8 @@ AC_PROG_MAKE_SET AC_PROG_INSTALL AC_PROG_LN_S +AC_PROG_LEX +AC_PROG_YACC AC_PATH_PROGS(RMPROG, rm, /bin/rm) AC_PATH_PROGS(SHPROG, sh, /bin/sh) Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.5 ircd-ircdev/include/patchlevel.h:1.6 --- ircd-ircdev/include/patchlevel.h:1.5 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/include/patchlevel.h Sun Nov 2 10:34:47 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.5 2003/11/02 00:47:33 zolty Exp $ + * $Id: patchlevel.h,v 1.6 2003/11/02 18:34:47 zolty Exp $ * */ -#define PATCHLEVEL ".alpha4" +#define PATCHLEVEL ".alpha5" #define RELEASE "1.0" Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.5 ircd-ircdev/ircd/Makefile.in:1.6 --- ircd-ircdev/ircd/Makefile.in:1.5 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ircd/Makefile.in Sun Nov 2 10:34:47 2003 @@ -32,15 +32,14 @@ RM = @RMPROG@ AWK = @AWK@ LN_S = @LN_S@ +LEX = @LEX@ +YACC = @YACC@ MV = mv CHMOD = chmod CHOWN = chown CHGRP = chgrp MKDIR = mkdir TOUCH = touch -LEX = flex -#YACC = bison -y -YACC = bison-1.35 -y GREP = grep OSDEP_C = @OSDEP_C@ ENGINE_C = @ENGINE_C@ Index: ircd-ircdev/ircd/ircd_parser.y diff -u ircd-ircdev/ircd/ircd_parser.y:1.2 ircd-ircdev/ircd/ircd_parser.y:1.3 --- ircd-ircdev/ircd/ircd_parser.y:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ircd/ircd_parser.y Sun Nov 2 10:34:47 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, * USA. - * $Id: ircd_parser.y,v 1.2 2003/11/02 00:47:33 zolty Exp $ + * $Id: ircd_parser.y,v 1.3 2003/11/02 18:34:47 zolty Exp $ */ %{ @@ -141,17 +141,42 @@ %token FEATURES %token QUARANTINE /* and now a lot of priviledges... */ -%token TPRIV_CHAN_LIMIT, TPRIV_MODE_LCHAN, TPRIV_DEOP_LCHAN, TPRIV_WALK_LCHAN -%token TPRIV_KILL, TPRIV_LOCAL_KILL, TPRIV_REHASH, TPRIV_RESTART, TPRIV_DIE -%token TPRIV_GLINE, TPRIV_LOCAL_GLINE, TPRIV_JUPE, TPRIV_LOCAL_JUPE -%token TPRIV_LOCAL_OPMODE, TPRIV_OPMODE, TPRIV_SET, TPRIV_WHOX, TPRIV_BADCHAN +%token TPRIV_CHAN_LIMIT +%token TPRIV_MODE_LCHAN +%token TPRIV_DEOP_LCHAN +%token TPRIV_WALK_LCHAN +%token TPRIV_KILL +%token TPRIV_LOCAL_KILL +%token TPRIV_REHASH +%token TPRIV_RESTART +%token TPRIV_DIE +%token TPRIV_GLINE +%token TPRIV_LOCAL_GLINE +%token TPRIV_JUPE +%token TPRIV_LOCAL_JUPE +%token TPRIV_LOCAL_OPMODE +%token TPRIV_OPMODE +%token TPRIV_SET +%token TPRIV_WHOX +%token TPRIV_BADCHAN %token TPRIV_LOCAL_BADCHAN -%token TPRIV_SEE_CHAN, TPRIV_SHOW_INVIS, TPRIV_SHOW_ALL_INVIS, TPRIV_PROPAGATE -%token TPRIV_UNLIMIT_QUERY, TPRIV_DISPLAY, TPRIV_SEE_OPERS, TPRIV_WIDE_GLINE +%token TPRIV_SEE_CHAN +%token TPRIV_SHOW_INVIS +%token TPRIV_SHOW_ALL_INVIS +%token TPRIV_PROPAGATE +%token TPRIV_UNLIMIT_QUERY +%token TPRIV_DISPLAY +%token TPRIV_SEE_OPERS +%token TPRIV_WIDE_GLINE /* and some types... */ %type <num> sizespec -%type <num> timespec, timefactor, factoredtimes, factoredtime -%type <num> expr, yesorno, privtype +%type <num> timespec +%type <num> timefactor +%type <num> factoredtimes +%type <num> factoredtime +%type <num> expr +%type <num> yesorno +%type <num> privtype %left '+' '-' %left '*' '/' @@ -192,59 +217,59 @@ sizespec: expr - = { + { $$ = $1; } | expr BYTES - = { + { $$ = $1; } | expr KBYTES - = { + { $$ = $1 * 1024; } | expr MBYTES - = { + { $$ = $1 * 1024 * 1024; } | expr GBYTES - = { + { $$ = $1 * 1024 * 1024 * 1024; } | expr TBYTES - = { + { $$ = $1 * 1024 * 1024 * 1024; } ; /* this is an arithmatic expression */ expr: NUMBER - = { + { $$ = $1; } | expr '+' expr - = { + { $$ = $1 + $3; } | expr '-' expr - = { + { $$ = $1 - $3; } | expr '*' expr - = { + { $$ = $1 * $3; } | expr '/' expr - = { + { $$ = $1 / $3; } /* leave this out until we find why it makes BSD yacc dump core -larne | '-' expr %prec NEG - = { + { $$ = -$2; } */ | '(' expr ')' - = { + { $$ = $2; } ; ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2003-11-09 01:43:25
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-09 00:54:39 UTC Modified files: TODO.es Log message: Mas todo ---------------------- diff included ---------------------- Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.2 ircd-ircdev/TODO.es:1.3 --- ircd-ircdev/TODO.es:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/TODO.es Sat Nov 8 16:54:29 2003 @@ -1,13 +1,73 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.2 2003/11/02 00:47:33 zolty Exp $ +# $Id: TODO.es,v 1.3 2003/11/09 00:54:29 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # +Bugs Conocidos: +-------------------------------------------------------------------------------------- 1/Nov/2003 -Bug al conectar sale umode -Oo. -Enlazar la libreria de adns al ircd. -Bug en el configure al elegir entre poll() y epoll() en linux que tienen fuentes pero no estan activados. -Bug en las U-lines (uworld y jupes). +- Bug al conectar sale umode -Oo. +- Enlazar la libreria de adns al ircd. +- Bug en el configure al elegir entre poll() y epoll() en linux que tienen fuentes pero + no estan activados. +- Bug en las U-lines (uworld y jupes). + + + +Features para General: +-------------------------------------------------------------------------------------- +- Caracter '~' en los nicks. +- Mostrar @+#canal en NAMES, WHOIS y WHO. +- Los clientes con +k han de poder "hablar" en canales. +- Mostrar tiempo en formato humano en las G-lines. +- Soporte de E-lines (excepciones a K-lines). +- Modo +X de ver ips. +- Modo +R de usuarios. +- ¿Modo +M de canales?. +- Enviar un Closing Link en los QUIT. +- ¿Ampliacion comando OPER para elegir clase? +- Comando USERS. +- No permitir invitar a canales desde fuera. +- Poner uuna Feature para elegir entre salir o no el nombre del servidor en los notices + de auth y dnslookup al conectar. +- Cuando nos silencian, que salga un numerico. +- Completar el MAP, salir numeric, nº de usuarios, porcentajes. +- Estudiar sobre la conveniencia de mandar privmsg globales al nick en vez de a la mascara. +- Si un global lo manda un ircop, que salga el prefijo de Mensaje global con la mascara o + avisar mediante wallops global. +- Estudiar sobre la conveniencia de mezclar numericos (3 y 5). Puede romper la estandarizacion + del protocolo P10. +- Posibilidad de BURST de topics. +- Modo de canal +D para conferencias. Mirar Asuka o Universal ircu de Run. +- Implementar la libreria libevent cuando este terminado (Da soporte IPv6). + + +Features para Undernet: +-------------------------------------------------------------------------------------- +- Soporte de modos de canal +A y +u y todo lo relacionado con el. +- S-lines (Spoof Lines). + + + + +Features Services (ex Terraircu): +-------------------------------------------------------------------------------------- +- Buscar una forma para cifrar IPs con un cambio de clave de cifrado incluido. +- Comando SVSNICK. +- Comando SVSMODE. +- Comando SVSVHOST para cambiar la virtualhost. Estudiar alguna forma de propagarse en + el burst. +- Comando /IDENTIFY y autentificacion NICK nick clave. +- Comprobar el comando OPMODE haga lo que hacia el SAMODE. + + + +Features Distributed DataBase (Similar a BDD): +-------------------------------------------------------------------------------------- +- Estudiar un protocolo para DDB. +- Comando de consulta de DDB. +- Nicks registrados y protegidos. +- Comando GHOST ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2003-11-12 05:07:25
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-11 21:37:18 UTC Modified files: TODO.es Log message: menos todo ---------------------- diff included ---------------------- Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.3 ircd-ircdev/TODO.es:1.4 --- ircd-ircdev/TODO.es:1.3 Sat Nov 8 16:54:29 2003 +++ ircd-ircdev/TODO.es Tue Nov 11 13:37:08 2003 @@ -1,7 +1,7 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.3 2003/11/09 00:54:29 zolty Exp $ +# $Id: TODO.es,v 1.4 2003/11/11 21:37:08 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # @@ -11,8 +11,6 @@ 1/Nov/2003 - Bug al conectar sale umode -Oo. - Enlazar la libreria de adns al ircd. -- Bug en el configure al elegir entre poll() y epoll() en linux que tienen fuentes pero - no estan activados. - Bug en las U-lines (uworld y jupes). ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2003-11-12 05:39:45
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-11 21:36:31 UTC Modified files: ChangeLog ChangeLog.es configure configure.in include/channel.h include/client.h include/handlers.h include/ircd_features.h include/numeric.h include/patchlevel.h include/res.h include/s_user.h include/struct.h include/whocmds.h ircd/Makefile.in ircd/channel.c ircd/gline.c ircd/ircd.c ircd/ircd_features.c ircd/ircd_log.c ircd/ircd_relay.c ircd/ircd_snprintf.c ircd/jupe.c ircd/listener.c ircd/m_account.c ircd/m_burst.c ircd/m_destruct.c ircd/m_join.c ircd/m_kick.c ircd/m_links.c ircd/m_map.c ircd/m_mode.c ircd/m_names.c ircd/m_nick.c ircd/m_opmode.c ircd/m_part.c ircd/m_ping.c ircd/m_userhost.c ircd/m_userip.c ircd/m_who.c ircd/m_whois.c ircd/parse.c ircd/s_auth.c ircd/s_bsd.c ircd/s_debug.c ircd/s_err.c ircd/s_misc.c ircd/s_serv.c ircd/s_stats.c ircd/s_user.c ircd/uping.c ircd/whocmds.c Added files: include/destruct_event.h include/ircd_tea.h ircd/destruct_event.c ircd/ircd_tea.c Log message: Author: zoltan <zo...@ir...> Log message: 2003-11-11 Toni Garcia <zo...@ir...> 1.0.alpha6 * Se incluye la encriptacion TEA en el ircd. * Se separa el codigo especial de Undernet con defines. * Sincronizacion con algunos parches del u2.10.12. * Sincronizacion con u2.10.11.06. ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.6 ircd-ircdev/ChangeLog:1.7 --- ircd-ircdev/ChangeLog:1.6 Sun Nov 2 10:34:46 2003 +++ ircd-ircdev/ChangeLog Tue Nov 11 13:36:21 2003 @@ -1,10 +1,16 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.6 2003/11/02 18:34:46 zolty Exp $ +# $Id: ChangeLog,v 1.7 2003/11/11 21:36:21 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-11 Toni Garcia <zo...@ir...> 1.0.alpha6 + * Includes TEA encryptation. + * Separates Undernet special code with defines. + * Synchronization with some patches of u2.10.12. + * Synchronization with u2.10.11.06. + 2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha5 * Check lex and yacc (configure.in). * Fix bison bug (ircd_parser.y). Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.6 ircd-ircdev/ChangeLog.es:1.7 --- ircd-ircdev/ChangeLog.es:1.6 Sun Nov 2 10:34:46 2003 +++ ircd-ircdev/ChangeLog.es Tue Nov 11 13:36:21 2003 @@ -1,10 +1,16 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.6 2003/11/02 18:34:46 zolty Exp $ +# $Id: ChangeLog.es,v 1.7 2003/11/11 21:36:21 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-11 Toni Garcia <zo...@ir...> 1.0.alpha6 + * Se incluye la encriptacion TEA en el ircd. + * Se separa el codigo especial de Undernet con defines. + * Sincronizacion con algunos parches del u2.10.12. + * Sincronizacion con u2.10.11.06. + 2003-11-02 Toni Garcia <zo...@ir...> 1.0.alpha5 * Chequeo de lex y yacc en el configure.in. * Fix de un bug de bison (ircd_parser.y). Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.5 ircd-ircdev/configure:1.6 --- ircd-ircdev/configure:1.5 Sun Nov 2 10:34:47 2003 +++ ircd-ircdev/configure Tue Nov 11 13:36:21 2003 @@ -3055,117 +3055,6 @@ -echo "$as_me:$LINENO: checking for library containing res_mkquery" >&5 -echo $ECHO_N "checking for library containing res_mkquery... $ECHO_C" >&6 -if test "${ac_cv_search_res_mkquery+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_func_search_save_LIBS=$LIBS -ac_cv_search_res_mkquery=no -cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char res_mkquery (); -int -main () -{ -res_mkquery (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_search_res_mkquery="none required" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext -if test "$ac_cv_search_res_mkquery" = no; then - for ac_lib in resolv; do - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - cat >conftest.$ac_ext <<_ACEOF -#line $LINENO "configure" -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any gcc2 internal prototype to avoid an error. */ -#ifdef __cplusplus -extern "C" -#endif -/* We use char because int might match the return type of a gcc2 - builtin and then its argument prototype would still apply. */ -char res_mkquery (); -int -main () -{ -res_mkquery (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && - { ac_try='test -s conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - ac_cv_search_res_mkquery="-l$ac_lib" -break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -fi -rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext - done -fi -LIBS=$ac_func_search_save_LIBS -fi -echo "$as_me:$LINENO: result: $ac_cv_search_res_mkquery" >&5 -echo "${ECHO_T}$ac_cv_search_res_mkquery" >&6 -if test "$ac_cv_search_res_mkquery" != no; then - test "$ac_cv_search_res_mkquery" = "none required" || LIBS="$ac_cv_search_res_mkquery $LIBS" - -else - { { echo "$as_me:$LINENO: error: Unable to find library containing res_mkquery()" >&5 -echo "$as_me: error: Unable to find library containing res_mkquery()" >&2;} - { (exit 1); exit 1; }; } -fi - - ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -7487,11 +7376,6 @@ echo "$as_me:$LINENO: result: Linux ($host) found." >&5 echo "${ECHO_T}Linux ($host) found." >&6 unet_poll_syscall=yes -# if test x"$ac_cv_header_sys_epoll_h" = xyes; then -# unet_poll_syscall=no -# else -# unet_poll_syscall=yes -# fi OSDEP_C=os_linux.c ;; @@ -9558,25 +9442,45 @@ echo "IRC-Dev ircd is now hopefully configured for your system." echo "" echo " Host system: $host_os" -echo " Prefix: $prefix" +echo " Engines supported:" +if test x"$unet_cv_enable_epoll" = xyes; then +echo " epoll()" +fi +if test x"$unet_cv_enable_kqueue" = xyes; then +echo " kqueue()" +fi +if test x"$unet_cv_enable_devpoll" = xyes; then +echo " /dev/poll" +fi +if test x"$unet_cv_enable_poll" = xyes; then +echo " poll()" +fi +echo "" echo " Asserts: $unet_cv_enable_asserts" echo " Warnings: $unet_cv_enable_warnings" echo " Debug: $unet_cv_enable_debug" echo " Profile: $unet_cv_enable_profile" echo " Pedantic: $unet_cv_enable_pedantic" +echo " Inlines: $unet_cv_enable_inlines" +echo " Debugging symbols: $unet_cv_enable_symbols" echo " ADNS: $unet_cv_enable_adns" -echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" -echo " Chroot: $unet_cv_with_chroot" echo "" -echo " Domain: $unet_cv_with_domain" -echo " Binaries path: $prefix/bin" +echo " Prefix: $prefix" +echo " Binaries path: $unet_bindir" echo " IRCD Binary: $unet_spath" +echo " Lib path: $unet_libdir" echo " Data path: $unet_cv_with_dpath" -echo " Config path: $unet_cv_with_cpath" -echo " Log path: $unet_cv_with_lpath" +echo " Config file: $unet_cpath" +echo " Debug log file: $unet_lpath" +echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" +echo " Chroot: $unet_cv_with_chroot" +echo "" echo " Maximum connections: $unet_cv_with_maxcon" +echo " Domain: $unet_cv_with_domain" +#echo " IRC Environment: DDB (Distributed DataBase)" +#echo " IRC Environment: Services (Ex TerraIRCU)" +#echo " IRC Environment: Undernet" +#echo " IRC Environment: None (BUG, mail to zo...@ir...)" echo "" -echo " poll() engine: $unet_cv_enable_poll" -echo " epoll() engine: $unet_cv_enable_epoll" -echo " kqueue() engine: $unet_cv_enable_kqueue" -echo " /dev/poll engine: $unet_cv_enable_devpoll" + + Index: ircd-ircdev/configure.in diff -u ircd-ircdev/configure.in:1.5 ircd-ircdev/configure.in:1.6 --- ircd-ircdev/configure.in:1.5 Sun Nov 2 10:34:47 2003 +++ ircd-ircdev/configure.in Tue Nov 11 13:36:21 2003 @@ -19,7 +19,7 @@ dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. dnl -dnl $Id: configure.in,v 1.5 2003/11/02 18:34:47 zolty Exp $ +dnl $Id: configure.in,v 1.6 2003/11/11 21:36:21 zolty Exp $ dnl Make sure we are in the correct directory (someone could have run dnl 'configure' with a wrong '--srcdir'). @@ -106,11 +106,6 @@ dnl Do all the checks necessary to figure out -lnsl / -lsocket stuff AC_LIBRARY_NET -dnl Look for res_mkquery. Done after AC_LIBRARY_NET in case res_mkquery -dnl is in one of those libraries somewhere. -AC_SEARCH_LIBS(res_mkquery, resolv, , -[AC_MSG_ERROR([Unable to find library containing res_mkquery()])]) - dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(poll.h sys/devpoll.h sys/event.h sys/epoll.h) @@ -156,11 +151,6 @@ *-linux*) AC_MSG_RESULT([Linux ($host) found.]) unet_poll_syscall=yes -# if test x"$ac_cv_header_sys_epoll_h" = xyes; then -# unet_poll_syscall=no -# else -# unet_poll_syscall=yes -# fi OSDEP_C=os_linux.c ;; @@ -719,25 +709,45 @@ echo "IRC-Dev ircd is now hopefully configured for your system." echo "" echo " Host system: $host_os" -echo " Prefix: $prefix" +echo " Engines supported:" +if test x"$unet_cv_enable_epoll" = xyes; then +echo " epoll()" +fi +if test x"$unet_cv_enable_kqueue" = xyes; then +echo " kqueue()" +fi +if test x"$unet_cv_enable_devpoll" = xyes; then +echo " /dev/poll" +fi +if test x"$unet_cv_enable_poll" = xyes; then +echo " poll()" +fi +echo "" echo " Asserts: $unet_cv_enable_asserts" echo " Warnings: $unet_cv_enable_warnings" echo " Debug: $unet_cv_enable_debug" echo " Profile: $unet_cv_enable_profile" echo " Pedantic: $unet_cv_enable_pedantic" +echo " Inlines: $unet_cv_enable_inlines" +echo " Debugging symbols: $unet_cv_enable_symbols" echo " ADNS: $unet_cv_enable_adns" -echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" -echo " Chroot: $unet_cv_with_chroot" echo "" -echo " Domain: $unet_cv_with_domain" -echo " Binaries path: $prefix/bin" +echo " Prefix: $prefix" +echo " Binaries path: $unet_bindir" echo " IRCD Binary: $unet_spath" +echo " Lib path: $unet_libdir" echo " Data path: $unet_cv_with_dpath" -echo " Config path: $unet_cv_with_cpath" -echo " Log path: $unet_cv_with_lpath" +echo " Config file: $unet_cpath" +echo " Debug log file: $unet_lpath" +echo " Owner/mode: $unet_cv_with_owner.$unet_cv_with_group ($unet_cv_with_mode)" +echo " Chroot: $unet_cv_with_chroot" +echo "" echo " Maximum connections: $unet_cv_with_maxcon" +echo " Domain: $unet_cv_with_domain" +#echo " IRC Environment: DDB (Distributed DataBase)" +#echo " IRC Environment: Services (Ex TerraIRCU)" +#echo " IRC Environment: Undernet" +#echo " IRC Environment: None (BUG, mail to zo...@ir...)" echo "" -echo " poll() engine: $unet_cv_enable_poll" -echo " epoll() engine: $unet_cv_enable_epoll" -echo " kqueue() engine: $unet_cv_enable_kqueue" -echo " /dev/poll engine: $unet_cv_enable_devpoll" + + Index: ircd-ircdev/include/channel.h diff -u ircd-ircdev/include/channel.h:1.2 ircd-ircdev/include/channel.h:1.3 --- ircd-ircdev/include/channel.h:1.2 Sat Nov 1 09:19:35 2003 +++ ircd-ircdev/include/channel.h Tue Nov 11 13:36:21 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: channel.h,v 1.2 2003/11/01 17:19:35 zolty Exp $ + * $Id: channel.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_channel_h #define INCLUDED_channel_h @@ -40,6 +40,9 @@ #define MODEBUFLEN 200 #define KEYLEN 23 +#if defined(UNDERNET) +#define PASSLEN 23 +#endif #define CHANNELLEN 200 #define MAXJOINARGS 15 /* number of slots for join buffer */ @@ -67,6 +70,11 @@ #define CHFL_BANNED 0x1000 /* Channel member is banned */ #define CHFL_SILENCE_IPMASK 0x2000 /* silence mask is an IP-number mask */ #define CHFL_USER_PARTING 0x4000 /* User is already parting that channel */ +#if defined(UNDERNET) +#define CHFL_BURST_ALREADY_OPPED 0x08000 /* In oob BURST, but was already joined and opped */ +#define CHFL_BURST_ALREADY_VOICED 0x10000 /* In oob BURST, but was already joined and voiced */ +#define CHFL_CHANNEL_MANAGER 0x20000 /* Set when creating channel or using Apass */ +#endif #define CHFL_OVERLAP (CHFL_CHANOP | CHFL_VOICE) #define CHFL_BANVALIDMASK (CHFL_BANVALID | CHFL_BANNED) @@ -90,18 +98,31 @@ #define MODE_SAVE 0x20000 /* save this mode-with-arg 'til later */ #define MODE_FREE 0x40000 /* string needs to be passed to MyFree() */ #define MODE_BURSTADDED 0x80000 /* channel was created by a BURST */ +#if defined(UNDERNET) +#define MODE_UPASS 0x100000 +#define MODE_APASS 0x200000 +#endif /* * mode flags which take another parameter (With PARAmeterS) */ #define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT) +#if defined(UNDERNET) +#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "Abiklmnopstuvr" : "biklmnopstvr" +#define infochanmodeswithparams feature_bool(FEAT_OPLEVELS) ? "Abklouv" : "bklov" +#else +#define infochanmodes "biklmnopstvr" +#define infochanmodeswithparams "bklov" +#endif + #define HoldChannel(x) (!(x)) /* name invisible */ #define SecretChannel(x) ((x) && ((x)->mode.mode & MODE_SECRET)) /* channel not shown but names are */ #define HiddenChannel(x) ((x) && ((x)->mode.mode & MODE_PRIVATE)) /* channel visible */ -#define ShowChannel(v,c) (PubChannel(c) || find_channel_member((v),(c))) +#define ShowChannel(v,c) (PubChannel(c) || find_channel_member((v),(c)) || \ + (IsAnOper(v) && HasPriv(v, PRIV_LIST_CHAN))) #define PubChannel(x) ((!x) || ((x)->mode.mode & \ (MODE_PRIVATE | MODE_SECRET)) == 0) #define is_listed(x) ((x)->mode.mode & MODE_LISTED) @@ -170,18 +191,32 @@ struct Membership* next_channel; struct Membership* prev_channel; unsigned int status; +#if defined(UNDERNET) + unsigned short oplevel; +#endif }; +#if defined(UNDERNET) +#define MAXOPLEVELDIGITS 3 +#define MAXOPLEVEL 999 +#endif + #define IsZombie(x) ((x)->status & CHFL_ZOMBIE) #define IsDeopped(x) ((x)->status & CHFL_DEOPPED) #define IsBanned(x) ((x)->status & CHFL_BANNED) #define IsBanValid(x) ((x)->status & CHFL_BANVALID) #define IsChanOp(x) ((x)->status & CHFL_CHANOP) +#if defined(UNDERNET) +#define OpLevel(x) ((x)->oplevel) +#endif #define HasVoice(x) ((x)->status & CHFL_VOICE) #define IsServOpOk(x) ((x)->status & CHFL_SERVOPOK) #define IsBurstJoined(x) ((x)->status & CHFL_BURST_JOINED) #define IsVoicedOrOpped(x) ((x)->status & CHFL_VOICED_OR_OPPED) #define IsUserParting(x) ((x)->status & CHFL_USER_PARTING) +#if defined(UNDERNET) +#define IsChannelManager(x) ((x)->status & CHFL_CHANNEL_MANAGER) +#endif #define SetBanned(x) ((x)->status |= CHFL_BANNED) #define SetBanValid(x) ((x)->status |= CHFL_BANVALID) @@ -190,6 +225,10 @@ #define SetBurstJoined(x) ((x)->status |= CHFL_BURST_JOINED) #define SetZombie(x) ((x)->status |= CHFL_ZOMBIE) #define SetUserParting(x) ((x)->status |= CHFL_USER_PARTING) +#if defined(UNDERNET) +#define SetChannelManager(x) ((x)->status |= CHFL_CHANNEL_MANAGER) +#define SetOpLevel(x, v) (void)((x)->oplevel = (v)) +#endif #define ClearBanned(x) ((x)->status &= ~CHFL_BANNED) #define ClearBanValid(x) ((x)->status &= ~CHFL_BANVALID) @@ -202,12 +241,17 @@ unsigned int mode; unsigned int limit; char key[KEYLEN + 1]; +#if defined(UNDERNET) + char upass[PASSLEN + 1]; + char apass[PASSLEN + 1]; +#endif }; struct Channel { struct Channel* next; struct Channel* prev; struct Channel* hnext; + struct DestructEvent* destruct_event; time_t creationtime; time_t topic_time; unsigned int users; @@ -294,7 +338,7 @@ */ extern void clean_channelname(char* name); extern void channel_modes(struct Client *cptr, char *mbuf, char *pbuf, - int buflen, struct Channel *chptr); + int buflen, struct Channel *chptr, struct Membership *member); extern int set_mode(struct Client* cptr, struct Client* sptr, struct Channel* chptr, int parc, char* parv[], char* mbuf, char* pbuf, char* npbuf, int* badop); @@ -305,9 +349,10 @@ extern struct Membership* find_member_link(struct Channel * chptr, const struct Client* cptr); extern int sub1_from_channel(struct Channel* chptr); +extern int destruct_channel(struct Channel* chptr); extern int can_join(struct Client *sptr, struct Channel *chptr, char *key); extern void add_user_to_channel(struct Channel* chptr, struct Client* who, - unsigned int flags); + unsigned int flags, int oplevel); extern void cancel_mode(struct Client *sptr, struct Channel *chptr, char m, const char *param, int *count); extern void add_token_to_sendbuf(char *token, size_t *sblenp, int *firstp, @@ -336,7 +381,12 @@ extern int is_chan_op(struct Client *cptr, struct Channel *chptr); extern int is_zombie(struct Client *cptr, struct Channel *chptr); extern int has_voice(struct Client *cptr, struct Channel *chptr); -extern int IsInvited(struct Client* cptr, struct Channel* chptr); +/* + NOTE: pointer is compared, and not dereferenced, called by + add_target with a void*, since targets could be anything, + this function can't make any assumptions that it has a channel +*/ +extern int IsInvited(struct Client* cptr, const void* chptr); extern void send_channel_modes(struct Client *cptr, struct Channel *chptr); extern char *pretty_mask(char *mask); extern void del_invite(struct Client *cptr, struct Channel *chptr); @@ -361,7 +411,8 @@ extern int mode_parse(struct ModeBuf *mbuf, struct Client *cptr, struct Client *sptr, struct Channel *chptr, - int parc, char *parv[], unsigned int flags); + int parc, char *parv[], unsigned int flags, + struct Membership* member); #define MODE_PARSE_SET 0x01 /* actually set channel modes */ #define MODE_PARSE_STRICT 0x02 /* +m +n +t style not supported */ Index: ircd-ircdev/include/client.h diff -u ircd-ircdev/include/client.h:1.2 ircd-ircdev/include/client.h:1.3 --- ircd-ircdev/include/client.h:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/include/client.h Tue Nov 11 13:36:21 2003 @@ -18,7 +18,7 @@ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * - * $Id: client.h,v 1.2 2003/11/02 00:47:33 zolty Exp $ + * $Id: client.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_client_h #define INCLUDED_client_h @@ -81,6 +81,8 @@ #define FLAGSET_SET(set, flag) (set).bits[FLAGSET_INDEX(flag)] |= FLAGSET_MASK(flag) #define FLAGSET_CLEAR(set, flag) (set).bits[FLAGSET_INDEX(flag)] &= ~FLAGSET_MASK(flag) +#define infousermodes "dioswkgx" + enum Priv { PRIV_CHAN_LIMIT, /* no channel limit on oper */ PRIV_MODE_LCHAN, /* oper can mode local chans */ @@ -110,6 +112,7 @@ PRIV_DISPLAY, /* "Is an oper" displayed */ PRIV_SEE_OPERS, /* display hidden opers */ PRIV_WIDE_GLINE, /* oper can set wider G-lines */ + PRIV_LIST_CHAN, /* oper can list secret channels */ PRIV_FORCE_OPMODE, /* oper can override a Q-line */ PRIV_FORCE_LOCAL_OPMODE,/* oper can override a local channel Q-line */ PRIV_LAST_PRIV /* must be the same as the last priv */ @@ -146,7 +149,9 @@ FLAG_CHSERV, /* Disallow KICK or MODE -o on the user; don't display channels in /whois */ FLAG_DEBUG, /* send global debug/anti-hack info */ +#if defined(UNDERNET) FLAG_ACCOUNT, /* account name has been set */ +#endif FLAG_HIDDENHOST, /* user's host is hidden */ FLAG_LAST_FLAG, FLAG_LOCAL_UMODES = FLAG_LOCOP, /* First local mode flag */ @@ -424,12 +429,18 @@ #define SendWallops(x) HasFlag(x, FLAG_WALLOP) #define IsHub(x) HasFlag(x, FLAG_HUB) #define IsService(x) HasFlag(x, FLAG_SERVICE) +#if defined(UNDERNET) #define IsAccount(x) HasFlag(x, FLAG_ACCOUNT) +#endif #define IsHiddenHost(x) HasFlag(x, FLAG_HIDDENHOST) #define IsPingSent(x) HasFlag(x, FLAG_PINGSENT) #define IsPrivileged(x) (IsAnOper(x) || IsServer(x)) +#if !defined(UNDERNET) +#define HasHiddenHost(x) (IsHiddenHost(x)) +#else #define HasHiddenHost(x) (IsAccount(x) && IsHiddenHost(x)) +#endif #define SetAccess(x) SetFlag(x, FLAG_CHKACCESS) #define SetBurst(x) SetFlag(x, FLAG_BURST) @@ -448,9 +459,14 @@ #define SetServNotice(x) SetFlag(x, FLAG_SERVNOTICE) #define SetHub(x) SetFlag(x, FLAG_HUB) #define SetService(x) SetFlag(x, FLAG_SERVICE) +#if defined(UNDERNET) #define SetAccount(x) SetFlag(x, FLAG_ACCOUNT) +#endif #define SetHiddenHost(x) SetFlag(x, FLAG_HIDDENHOST) #define SetPingSent(x) SetFlag(x, FLAG_PINGSENT) + +#define SeeOper(sptr,acptr) (IsAnOper(acptr) && (HasPriv(acptr, PRIV_DISPLAY) \ + || HasPriv(sptr, PRIV_SEE_OPERS))) #define ClearAccess(x) ClrFlag(x, FLAG_CHKACCESS) #define ClearBurst(x) ClrFlag(x, FLAG_BURST) Index: ircd-ircdev/include/destruct_event.h diff -u /dev/null ircd-ircdev/include/destruct_event.h:1.1 --- /dev/null Tue Nov 11 13:36:32 2003 +++ ircd-ircdev/include/destruct_event.h Tue Nov 11 13:36:21 2003 @@ -0,0 +1,36 @@ +#ifndef INCLUDED_destruct_event_h +#define INCLUDED_destruct_event_h +/* + * IRC - Internet Relay Chat, include/destruct_event.h + * Copyright (C) 2002 Carlo Wood <ca...@al...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + * $Id: destruct_event.h,v 1.1 2003/11/11 21:36:21 zolty Exp $ + */ + +#ifndef INCLUDED_config_h +#include "config.h" +#endif +#ifndef INCLUDED_channel_h +#include "channel.h" +#endif + +extern void schedule_destruct_event_1m(struct Channel* chptr); +extern void schedule_destruct_event_48h(struct Channel* chptr); +extern void remove_destruct_event(struct Channel* chptr); +extern void exec_expired_destruct_events(struct Event* ev); + +#endif /* INCLUDED_destruct_event_h */ Index: ircd-ircdev/include/handlers.h diff -u ircd-ircdev/include/handlers.h:1.2 ircd-ircdev/include/handlers.h:1.3 --- ircd-ircdev/include/handlers.h:1.2 Tue Oct 7 11:52:17 2003 +++ ircd-ircdev/include/handlers.h Tue Nov 11 13:36:21 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: handlers.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ + * $Id: handlers.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_handlers_h #define INCLUDED_handlers_h @@ -184,7 +184,9 @@ /* * Server commands */ +#if defined(UNDERNET) extern int ms_account(struct Client*, struct Client*, int, char*[]); +#endif extern int ms_admin(struct Client*, struct Client*, int, char*[]); extern int ms_asll(struct Client*, struct Client*, int, char*[]); extern int ms_away(struct Client*, struct Client*, int, char*[]); Index: ircd-ircdev/include/ircd_features.h diff -u ircd-ircdev/include/ircd_features.h:1.3 ircd-ircdev/include/ircd_features.h:1.4 --- ircd-ircdev/include/ircd_features.h:1.3 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/include/ircd_features.h Tue Nov 11 13:36:21 2003 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: ircd_features.h,v 1.3 2003/11/01 15:26:45 zolty Exp $ + * $Id: ircd_features.h,v 1.4 2003/11/11 21:36:21 zolty Exp $ */ struct Client; @@ -49,6 +49,9 @@ FEAT_HIDDEN_IP, FEAT_AUTOHIDE, FEAT_CONNEXIT_NOTICES, +#if defined(UNDERNET) + FEAT_OPLEVELS, +#endif FEAT_LOCAL_CHANNELS, /* features that probably should not be touched */ @@ -92,6 +95,7 @@ FEAT_UNLIMIT_OPER_QUERY, FEAT_LOCAL_KILL_ONLY, FEAT_CONFIG_OPERCMDS, + FEAT_LIST_CHAN, /* features that affect global opers on this server */ FEAT_OPER_KILL, @@ -111,6 +115,7 @@ FEAT_OPER_SET, FEAT_OPERS_SEE_IN_SECRET_CHANNELS, FEAT_OPER_WIDE_GLINE, + FEAT_OPER_LIST_CHAN, /* features that affect local opers on this server */ FEAT_LOCOP_KILL, @@ -125,6 +130,7 @@ FEAT_LOCOP_SET, FEAT_LOCOP_SEE_IN_SECRET_CHANNELS, FEAT_LOCOP_WIDE_GLINE, + FEAT_LOCOP_LIST_CHAN, /* HEAD_IN_SAND Features */ FEAT_HIS_SNOTICES, Index: ircd-ircdev/include/ircd_tea.h diff -u /dev/null ircd-ircdev/include/ircd_tea.h:1.1 --- /dev/null Tue Nov 11 13:36:32 2003 +++ ircd-ircdev/include/ircd_tea.h Tue Nov 11 13:36:21 2003 @@ -0,0 +1,30 @@ +/* + * IRC - Internet Relay Chat, ircd/ircd_tea.h + * + * See file AUTHORS in IRC package for additional names of + * the programmers. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 1, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + * $Id: ircd_tea.h,v 1.1 2003/11/11 21:36:21 zolty Exp $ + */ +#ifndef INCLUDED_ircd_tea_h +#define INCLUDED_ircd_tea_h + +extern void ircd_tea(unsigned int v[], unsigned int k[], unsigned int x[]); +extern void ircd_untea(unsigned int v[], unsigned int k[], unsigned int x[]); + +#endif /* INCLUDED_ircd_tea_h */ + Index: ircd-ircdev/include/numeric.h diff -u ircd-ircdev/include/numeric.h:1.2 ircd-ircdev/include/numeric.h:1.3 --- ircd-ircdev/include/numeric.h:1.2 Tue Oct 7 11:52:18 2003 +++ ircd-ircdev/include/numeric.h Tue Nov 11 13:36:21 2003 @@ -16,7 +16,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: numeric.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ + * $Id: numeric.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_numeric_h #define INCLUDED_numeric_h @@ -63,6 +63,9 @@ #define RPL_MAP 15 /* Undernet extension */ #define RPL_MAPMORE 16 /* Undernet extension */ #define RPL_MAPEND 17 /* Undernet extension */ +#if defined(UNDERNET) +#define RPL_APASSWARN 30 /* Undernet extension */ +#endif /* RPL_YOURID 42 IRCnet extension */ /* RPL_ATTEMPTINGJUNC 50 aircd extension */ /* RPL_ATTEMPTINGREROUTE 51 aircd extension */ @@ -449,6 +452,13 @@ ERR_WHOLIMEXCEED 523 dalnet */ #define ERR_QUARANTINED 524 /* Undernet extension -Vampire */ +#if defined(UNDERNET) +#define ERR_NOTLOWEROPLEVEL 550 /* Undernet extension */ +#define ERR_NOTMANAGER 551 /* Undernet extension */ +#define ERR_CHANSECURED 552 /* Undernet extension */ +#define ERR_UPASSSET 553 /* Undernet extension */ +#define ERR_UPASSNOTSET 554 /* Undernet extension */ +#endif #define RPL_LOGON 600 /* Dalnet extension */ #define RPL_LOGOFF 601 /* Dalnet extension */ Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.6 ircd-ircdev/include/patchlevel.h:1.7 --- ircd-ircdev/include/patchlevel.h:1.6 Sun Nov 2 10:34:47 2003 +++ ircd-ircdev/include/patchlevel.h Tue Nov 11 13:36:21 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.6 2003/11/02 18:34:47 zolty Exp $ + * $Id: patchlevel.h,v 1.7 2003/11/11 21:36:21 zolty Exp $ * */ -#define PATCHLEVEL ".alpha5" +#define PATCHLEVEL ".alpha6" #define RELEASE "1.0" Index: ircd-ircdev/include/res.h diff -u ircd-ircdev/include/res.h:1.2 ircd-ircdev/include/res.h:1.3 --- ircd-ircdev/include/res.h:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/include/res.h Tue Nov 11 13:36:21 2003 @@ -1,7 +1,7 @@ /* * irc2.7.2/ircd/res.h (C)opyright 1992 Darren Reed. * - * $Id: res.h,v 1.2 2003/11/02 00:47:33 zolty Exp $ + * $Id: res.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_res_h #define INCLUDED_res_h @@ -16,7 +16,7 @@ struct DNSQuery { void* vptr; /* pointer used by callback to identify request */ - void (*callback)(void* vptr, struct hostent* reply); /* callback to call */ + void (*callback)(void* vptr, struct hostent* he); /* callback to call */ }; extern int ResolverFileDescriptor; /* GLOBAL - file descriptor (s_bsd.c) */ Index: ircd-ircdev/include/s_user.h diff -u ircd-ircdev/include/s_user.h:1.1.1.1 ircd-ircdev/include/s_user.h:1.2 --- ircd-ircdev/include/s_user.h:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/include/s_user.h Tue Nov 11 13:36:21 2003 @@ -1,7 +1,7 @@ /* * s_user.h * - * $Id: s_user.h,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: s_user.h,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_s_user_h #define INCLUDED_s_user_h @@ -77,7 +77,7 @@ InfoFormatter fmt); extern int add_silence(struct Client* sptr, const char* mask); -extern int hide_hostmask(struct Client *cptr, unsigned int flag); +extern int hide_hostmask(struct Client *cptr, unsigned int flags); extern int set_user_mode(struct Client *cptr, struct Client *sptr, int parc, char *parv[]); extern int is_silenced(struct Client *sptr, struct Client *acptr); Index: ircd-ircdev/include/struct.h diff -u ircd-ircdev/include/struct.h:1.2 ircd-ircdev/include/struct.h:1.3 --- ircd-ircdev/include/struct.h:1.2 Tue Oct 7 11:52:18 2003 +++ ircd-ircdev/include/struct.h Tue Nov 11 13:36:21 2003 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: struct.h,v 1.2 2003/10/07 18:52:18 zolty Exp $ + * $Id: struct.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_struct_h #define INCLUDED_struct_h @@ -77,7 +77,9 @@ char username[USERLEN + 1]; char host[HOSTLEN + 1]; char realhost[HOSTLEN + 1]; +#if defined(UNDERNET) char account[ACCOUNTLEN + 1]; +#endif }; #endif /* INCLUDED_struct_h */ Index: ircd-ircdev/include/whocmds.h diff -u ircd-ircdev/include/whocmds.h:1.1.1.1 ircd-ircdev/include/whocmds.h:1.2 --- ircd-ircdev/include/whocmds.h:1.1.1.1 Mon Sep 8 03:34:28 2003 +++ ircd-ircdev/include/whocmds.h Tue Nov 11 13:36:21 2003 @@ -1,7 +1,7 @@ /* * whocmds.h * - * $Id: whocmds.h,v 1.1.1.1 2003/09/08 10:34:28 zolty Exp $ + * $Id: whocmds.h,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_whocmds_h #define INCLUDED_whocmds_h @@ -36,15 +36,22 @@ #define WHO_FIELD_DIS 256 #define WHO_FIELD_REN 512 #define WHO_FIELD_IDL 1024 +#if defined(UNDERNET) #define WHO_FIELD_ACC 2048 +#endif #define WHO_FIELD_DEF ( WHO_FIELD_NIC | WHO_FIELD_UID | WHO_FIELD_HOS | WHO_FIELD_SER ) #define IS_VISIBLE_USER(s,ac) ((s==ac) || (!IsInvisible(ac))) -#define SEE_LUSER(s, ac, b) (IS_VISIBLE_USER(s, ac) || ((b & WHOSELECT_EXTRA) && MyConnect(ac) && (HasPriv((s), PRIV_SHOW_INVIS) || HasPriv((s), PRIV_SHOW_ALL_INVIS)))) - -#define SEE_USER(s, ac, b) (SEE_LUSER(s, ac, b) || ((b & WHOSELECT_EXTRA) && HasPriv((s), PRIV_SHOW_ALL_INVIS))) +#define SEE_LUSER(s, ac, b) (IS_VISIBLE_USER(s, ac) || \ + ((b & WHOSELECT_EXTRA) && MyConnect(ac) && \ + (HasPriv((s), PRIV_SHOW_INVIS) || \ + HasPriv((s), PRIV_SHOW_ALL_INVIS)))) + +#define SEE_USER(s, ac, b) (SEE_LUSER(s, ac, b) || \ + ((b & WHOSELECT_EXTRA) && \ + HasPriv((s), PRIV_SHOW_ALL_INVIS))) #define SHOW_MORE(sptr, counter) (HasPriv(sptr, PRIV_UNLIMIT_QUERY) || (!(counter-- < 0)) ) Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.6 ircd-ircdev/ircd/Makefile.in:1.7 --- ircd-ircdev/ircd/Makefile.in:1.6 Sun Nov 2 10:34:47 2003 +++ ircd-ircdev/ircd/Makefile.in Tue Nov 11 13:36:21 2003 @@ -58,7 +58,8 @@ CC = @CC@ CFLAGS = @CFLAGS@ -CPPFLAGS = -I. -I.. -I${top_srcdir}/include -I${top_srcdir}/libs/adns/src @CPPFLAGS@ +CPPFLAGS = -I. -I.. -I${top_srcdir}/include @CPPFLAGS@ +#CPPFLAGS = -I. -I.. -I${top_srcdir}/include -I${top_srcdir}/libs/adns/src @CPPFLAGS@ LDFLAGS = @LDFLAGS@ LIBS = @LIBS@ @@ -91,6 +92,7 @@ client.c \ crule.c \ dbuf.c \ + destruct_event.c \ fda.c \ fileio.c \ gline.c \ @@ -105,6 +107,7 @@ ircd_signal.c \ ircd_snprintf.c \ ircd_string.c \ + ircd_tea.c \ ircd_xopen.c \ jupe.c \ lex.yy.c \ Index: ircd-ircdev/ircd/channel.c diff -u ircd-ircdev/ircd/channel.c:1.2 ircd-ircdev/ircd/channel.c:1.3 --- ircd-ircdev/ircd/channel.c:1.2 Sat Nov 1 09:19:36 2003 +++ ircd-ircdev/ircd/channel.c Tue Nov 11 13:36:21 2003 @@ -17,12 +17,13 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: channel.c,v 1.2 2003/11/01 17:19:36 zolty Exp $ + * $Id: channel.c,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #include "config.h" #include "channel.h" #include "client.h" +#include "destruct_event.h" #include "hash.h" #include "ircd.h" #include "ircd_alloc.h" @@ -185,14 +186,17 @@ /* * Subtract one user from channel i (and free channel * block, if channel became empty). + * + * defined(UNDERNET) + * Returns: true (1) if channel still has members. + * false (0) if the channel is now empty. + * !defined(UNDERNET) * Returns: true (1) if channel still exists * false (0) if the channel was destroyed + * !defined(UNDERNET) */ int sub1_from_channel(struct Channel* chptr) { - struct SLink *tmp; - struct SLink *obtmp; - if (chptr->users > 1) /* Can be 0, called for an empty channel too */ { assert(0 != chptr->members); @@ -200,6 +204,46 @@ return 1; } +#if defined(UNDERNET) + chptr->users = 0; + + /* + * Also channels without Apass set need to be kept alive, + * otherwise Bad Guys(tm) would be able to takeover + * existing channels too easily, and then set an Apass! + * However, if a channel without Apass becomes empty + * then we try to be kind to them and remove possible + * limiting modes. + */ + chptr->mode.mode &= ~MODE_INVITEONLY; + chptr->mode.limit = 0; + /* + * We do NOT reset a possible key or bans because when + * the 'channel owners' can't get in because of a key + * or ban then apparently there was a fight/takeover + * on the channel and we want them to contact IRC opers + * who then will educate them on the use of Apass/upass. + */ + + if (feature_bool(FEAT_OPLEVELS)) { + if (TStime() - chptr->creationtime < 172800) /* Channel younger than 48 hours? */ + schedule_destruct_event_1m(chptr); /* Get rid of it in approximately 4-5 minutes */ + else + schedule_destruct_event_48h(chptr); /* Get rid of it in approximately 48 hours */ + } else + destruct_channel(chptr); +#else + destruct_channel(chptr); +#endif + + return 0; +} + +int destruct_channel(struct Channel* chptr) +{ + struct SLink *tmp; + struct SLink *obtmp; + assert(0 == chptr->members); /* Channel became (or was) empty: Remove channel */ @@ -425,6 +469,7 @@ s = make_nick_user_host(nu_host, cli_name(cptr), (cli_user(cptr))->username, (cli_user(cptr))->host); +#if defined(UNDERNET) if (IsAccount(cptr)) { if (HasHiddenHost(cptr)) sr = make_nick_user_host(nu_realhost, cli_name(cptr), @@ -438,6 +483,7 @@ tmphost); } } +#endif /* defined(UNDERNET) */ for (tmp = chptr->banlist; tmp; tmp = tmp->next) { if ((tmp->flags & CHFL_BAN_IPMASK)) { @@ -473,7 +519,7 @@ * chain. */ void add_user_to_channel(struct Channel* chptr, struct Client* who, - unsigned int flags) + unsigned int flags, int oplevel) { assert(0 != chptr); assert(0 != who); @@ -492,6 +538,9 @@ member->user = who; member->channel = chptr; member->status = flags; +#if defined(UNDERNET) + member->oplevel = oplevel; +#endif member->next_member = chptr->members; if (member->next_member) @@ -505,6 +554,8 @@ member->prev_channel = 0; (cli_user(who))->channel = member; + if (chptr->destruct_event) + remove_destruct_event(chptr); ++chptr->users; ++((cli_user(who))->joined); } @@ -621,6 +672,12 @@ { assert(0 != member); +#if defined(UNDERNET) + /* Discourage using the Apass to get op. They should use the upass. */ + if (IsChannelManager(member) && *member->channel->mode.upass) + return 0; +#endif + if (IsVoicedOrOpped(member)) return 1; /* @@ -651,10 +708,16 @@ member = find_channel_member(cptr, chptr); - /* You can't speak if your off channel and +n (no external messages) or +m (moderated). */ + /* + * You can't speak if you're off channel, and it is +n (no external messages) + * or +m (moderated). + */ if (!member) { - if ((chptr->mode.mode & (MODE_NOPRIVMSGS|MODE_MODERATED)) || - ((chptr->mode.mode & MODE_REGONLY) && !IsAccount(cptr))) + if ((chptr->mode.mode & (MODE_NOPRIVMSGS|MODE_MODERATED)) +#if defined(UNDERNET) + || ((chptr->mode.mode & MODE_REGONLY) && !IsAccount(cptr)) +#endif + ) return 0; else return !is_banned(cptr, chptr, NULL); @@ -686,8 +749,10 @@ * with the parameters in pbuf. */ void channel_modes(struct Client *cptr, char *mbuf, char *pbuf, int buflen, - struct Channel *chptr) + struct Channel *chptr, struct Membership *member) { + int previous_parameter = 0; + assert(0 != mbuf); assert(0 != pbuf); assert(0 != chptr); @@ -710,6 +775,7 @@ if (chptr->mode.limit) { *mbuf++ = 'l'; ircd_snprintf(0, pbuf, buflen, "%u", chptr->mode.limit); + previous_parameter = 1; } if (*chptr->mode.key) { @@ -720,17 +786,51 @@ strcat(pbuf, chptr->mode.key); } else strcat(pbuf, "*"); + previous_parameter = 1; + } +#if defined(UNDERNET) + if (*chptr->mode.apass) { + *mbuf++ = 'A'; + if (previous_parameter) + strcat(pbuf, " "); + if (IsServer(cptr)) { + strcat(pbuf, chptr->mode.apass); + } else + strcat(pbuf, "*"); + previous_parameter = 1; + } + if (*chptr->mode.upass) { + *mbuf++ = 'u'; + if (previous_parameter) + strcat(pbuf, " "); + if (IsServer(cptr) || (member && IsChanOp(member) && OpLevel(member) == 0)) { + strcat(pbuf, chptr->mode.upass); + } else + strcat(pbuf, "*"); } +#endif /* UNDERNET */ *mbuf = '\0'; } +#if defined(UNDERNET) +int compare_member_oplevel(const void *mp1, const void *mp2) +{ + struct Membership const* member1 = *(struct Membership const**)mp1; + struct Membership const* member2 = *(struct Membership const**)mp2; + if (member1->oplevel == member2->oplevel) + return 0; + return (member1->oplevel < member2->oplevel) ? -1 : 1; +} +#endif /* UNDERNET */ + /* * send "cptr" a full list of the modes for channel chptr. */ void send_channel_modes(struct Client *cptr, struct Channel *chptr) { + /* The order in which modes are generated is now mandatory */ static unsigned int current_flags[4] = - { 0, CHFL_CHANOP | CHFL_VOICE, CHFL_VOICE, CHFL_CHANOP }; + { 0, CHFL_VOICE, CHFL_CHANOP, CHFL_CHANOP | CHFL_VOICE }; int first = 1; int full = 1; int flag_cnt = 0; @@ -741,6 +841,12 @@ char modebuf[MODEBUFLEN]; char parabuf[MODEBUFLEN]; struct MsgBuf *mb; +#if defined(UNDERNET) + int number_of_ops = 0; + int opped_members_index = 0; + struct Membership** opped_members = NULL; + int last_oplevel = 0; +#endif assert(0 != cptr); assert(0 != chptr); @@ -752,7 +858,7 @@ lp2 = chptr->banlist; *modebuf = *parabuf = '\0'; - channel_modes(cptr, modebuf, parabuf, sizeof(parabuf), chptr); + channel_modes(cptr, modebuf, parabuf, sizeof(parabuf), chptr, 0); for (first = 1; full; first = 0) /* Loop for multiple messages */ { @@ -764,7 +870,7 @@ mb = msgq_make(&me, "%C " TOK_BURST " %H %Tu", &me, chptr, chptr->creationtime); - if (first && modebuf[1]) /* Add simple modes (iklmnpst) + if (first && modebuf[1]) /* Add simple modes (Aiklmnpstu) if first message */ { /* prefix: "<Y> B <channel> <TS>[ <modes>[ <params>]]" */ @@ -777,14 +883,134 @@ /* * Attach nicks, comma seperated " nick[:modes],nick[:modes],..." * + * First find all opless members. + * + * defined(UNDERNET) + * Run 2 times over all members, to group the members with + * and without voice together. + * Then run 2 times over all opped members (which are ordered + * by op-level) to also group voice and non-voice together. + * + * !defined(UNDERNET) * Run 4 times over all members, to group the members with the * same mode together */ - for (first = 1; flag_cnt < 4; - member = chptr->members, new_mode = 1, flag_cnt++) +#if defined(UNDERNET) + for (first = 1; flag_cnt < 4; new_mode = 1, flag_cnt++) { + while(member) + { + if (flag_cnt < 2 && IsChanOp(member)) + { + /* + * The first loop (to find all non-voice/op), we count the ops. + * The second loop (to find all voiced non-ops), store the ops + * in a dynamic array. + */ + if (flag_cnt == 0) + ++number_of_ops; + else + opped_members[opped_members_index++] = member; + } + /* Only handle the members with the flags that we are interested in. */ + if ((member->status & CHFL_VOICED_OR_OPPED) == current_flags[flag_cnt]) + { + if (msgq_bufleft(mb) < NUMNICKLEN + 3 + MAXOPLEVELDIGITS) + /* The 3 + MAXOPLEVELDIGITS is a possible ",:v999". */ + { + full = 1; /* Make sure we continue after + sending it so far */ + /* Ensure the new BURST line contains the current + * ":mode", except when there is no mode yet. */ + new_mode = (flag_cnt > 0) ? 1 : 0; + break; /* Do not add this member to this message */ + } + msgq_append(&me, mb, "%c%C", first ? ' ' : ',', member->user); + first = 0; /* From now on, use commas to add new nicks */ + + /* + * Do we have a nick with a new mode ? + * Or are we starting a new BURST line? + */ + if (new_mode) + { + /* + * This means we are at the _first_ member that has only + * voice, or the first member that has only ops, or the + * first member that has voice and ops (so we get here + * at most three times, plus once for every start of + * a continued BURST line where only these modes is current. + * In the two cases where the current mode includes ops, + * we need to add the _absolute_ value of the oplevel to the mode. + */ + char tbuf[3 + MAXOPLEVELDIGITS] = ":"; + int loc = 1; + + if (HasVoice(member)) /* flag_cnt == 1 or 3 */ + tbuf[loc++] = 'v'; + if (IsChanOp(member)) /* flag_cnt == 2 or 3 */ + { + /* append the absolute value of the oplevel */ + loc += ircd_snprintf(0, tbuf + loc, sizeof(tbuf) - loc, "%u", member->oplevel); + last_oplevel = member->oplevel; + } + tbuf[loc] = '\0'; + msgq_append(&me, mb, tbuf); + new_mode = 0; + } + else if (flag_cnt > 1 && last_oplevel != member->oplevel) + { + /* + * This can't be the first member of a (continued) BURST + * message because then either flag_cnt == 0 or new_mode == 1 + * Now we need to append the incremental value of the oplevel. + */ + char tbuf[2 + MAXOPLEVELDIGITS]; + ircd_snprintf(0, tbuf, sizeof(tbuf), ":%u", member->oplevel - last_oplevel); + last_oplevel = member->oplevel; + msgq_append(&me, mb, tbuf); + } + } + /* Go to the next `member'. */ + if (flag_cnt < 2) + member = member->next_member; + else + member = opped_members[++opped_members_index]; + } + if (full) + break; + + /* Point `member' at the start of the list again. */ + if (flag_cnt == 0) + { + member = chptr->members; + /* Now, after one loop, we know the number of ops and can + * allocate the dynamic array with pointer to the ops. */ + opped_members = (struct Membership**) + MyMalloc((number_of_ops + 1) * sizeof(struct Membership*)); + opped_members[number_of_ops] = NULL; /* Needed for loop termination */ + } + else + { + /* At the end of the second loop, sort the opped members with + * increasing op-level, so that we will output them in the + * correct order (and all op-level increments stay positive) */ + if (flag_cnt == 1) + qsort(opped_members, number_of_ops, + sizeof(struct Membership*), compare_member_oplevel); + /* The third and fourth loop run only over the opped members. */ + member = opped_members[(opped_members_index = 0)]; + } + + } /* loop over 0,+v,+o,+ov */ + +#else /* !UNDERNET */ + for (first = 1; flag_cnt < 4; + member = chptr->members, new_mode = 1, flag_cnt++) + { for (; member; member = member->next_member) { + if ((member->status & CHFL_VOICED_OR_OPPED) != current_flags[flag_cnt]) continue; /* Skip members with different flags */ @@ -819,10 +1045,12 @@ msgq_append(&me, mb, tbuf); } } + member = member->next_member; } if (full) break; } +#endif /* UNDERNET */ if (!full) { @@ -848,6 +1076,12 @@ msgq_clean(mb); } /* Continue when there was something that didn't fit (full==1) */ + +#if defined(UNDERNET) + if (opped_members) + MyFree(opped_members); +#endif + } /* @@ -1024,8 +1258,10 @@ if (chptr->mode.limit && chptr->users >= chptr->mode.limit) return overrideJoin + ERR_CHANNELISFULL; +#if defined(UNDERNET) if ((chptr->mode.mode & MODE_REGONLY) && !IsAccount(sptr)) return overrideJoin + ERR_NEEDREGGEDNICK; +#endif if (is_banned(sptr, chptr, NULL)) return overrideJoin + ERR_BANNEDFROMCHAN; @@ -1172,7 +1408,8 @@ { for (; chptr; chptr = chptr->next) { - if (!cli_user(cptr)) + if (!cli_user(cptr) || (!(HasPriv(cptr, PRIV_LIST_CHAN) && IsAnOper(cptr)) && + SecretChannel(chptr) && !find_channel_member(cptr, chptr))) continue; if (chptr->users > args->min_users && chptr->users < args->max_users && chptr->creationtime > args->min_time && @@ -1220,7 +1457,7 @@ * via 'a', or on server 'B' via either 'b' or 'c', or on server D via 'd'. * * a) On server A : set CHFL_ZOMBIE for `who' (lp) and pass on the KICK. - * Remove the user immedeately when no users are left on the channel. + * Remove the user immediately when no users are left on the channel. * b) On server B : remove the user (who/lp) from the channel, send a * PART upstream (to A) and pass on the KICK. * c) KICKed by `client'; On server B : remove the user (who/lp) from the @@ -1309,7 +1546,7 @@ * of course, str2 is not NULL) */ static void -build_string(char *strptr, int *strptr_i, char *str1, char *str2, char c) +build_string(char *strptr, int *strptr_i, const char *str1, const char *str2, char c) { if (c) strptr[(*strptr_i)++] = c; @@ -1345,6 +1582,10 @@ /* MODE_KEY, 'k', */ /* MODE_BAN, 'b', */ /* MODE_LIMIT, 'l', */ +#if defined(UNDERNET) +/* MODE_APASS, 'A', */ +/* MODE_UPASS, 'u', */ +#endif 0x0, 0x0 }; int i; @@ -1419,13 +1660,34 @@ bufptr[(*bufptr_i)++] = MB_TYPE(mbuf, i) & MODE_CHANOP ? 'o' : 'v'; totalbuflen -= IRCD_MAX(5, tmp) + 1; } +#if defined(UNDERNET) + } else if (MB_TYPE(mbuf, i) & (MODE_BAN | MODE_APASS | MODE_UPASS)) { +#else } else if (MB_TYPE(mbuf, i) & MODE_BAN) { +#endif tmp = strlen(MB_STRING(mbuf, i)); if ((totalbuflen - tmp) <= 0) /* don't overflow buffer */ MB_TYPE(mbuf, i) |= MODE_SAVE; /* save for later */ else { +#if defined(UNDERNET) + char mode_char; + switch(MB_TYPE(mbuf, i) & (MODE_BAN | MODE_APASS | MODE_UPASS)) + { + case MODE_APASS: + mode_char = 'A'; + break; + case MODE_UPASS: + mode_char = 'u'; + break; + default: + mode_char = 'b'; + break; + } + bufptr[(*bufptr_i)++] = mode_char; +#else bufptr[(*bufptr_i)++] = 'b'; +#endif totalbuflen -= tmp + 1; } } else if (MB_TYPE(mbuf, i) & MODE_KEY) { @@ -1492,6 +1754,12 @@ build_string(strptr, strptr_i, mbuf->mb_dest & MODEBUF_DEST_NOKEY ? "*" : MB_STRING(mbuf, i), 0, ' '); +#if defined(UNDERNET) + /* deal with invisible passwords */ + else if (MB_TYPE(mbuf, i) & (MODE_APASS | MODE_UPASS)) + build_string(strptr, strptr_i, "*", 0, ' '); +#endif + /* * deal with limit; note we cannot include the limit parameter if we're * removing it @@ -1575,7 +1843,11 @@ build_string(strptr, strptr_i, NumNick(MB_CLIENT(mbuf, i)), ' '); /* deal with modes that take strings */ +#if defined(UNDERNET) + else if (MB_TYPE(mbuf, i) & (MODE_KEY | MODE_BAN | MODE_APASS | MODE_UPASS)) +#else else if (MB_TYPE(mbuf, i) & (MODE_KEY | MODE_BAN)) +#endif build_string(strptr, strptr_i, MB_STRING(mbuf, i), 0, ' '); /* @@ -1676,6 +1948,9 @@ assert(0 != chan); assert(0 != dest); + if (IsLocalChannel(chan->chname)) + dest &= ~MODEBUF_DEST_SERVER; + mbuf->mb_add = 0; mbuf->mb_rem = 0; mbuf->mb_source = source; @@ -1803,6 +2078,10 @@ MODE_INVITEONLY, 'i', MODE_NOPRIVMSGS, 'n', MODE_KEY, 'k', +#if defined(UNDERNET) + MODE_APASS, 'A', + MODE_UPASS, 'u', +#endif /* MODE_BAN, 'b', */ MODE_LIMIT, 'l', MODE_REGONLY, 'r', @@ -1812,6 +2091,9 @@ int i, bufpos = 0, len; int *flag_p; char *key = 0, limitbuf[20]; +#if defined(UNDERNET) + char *apass = 0, *upass = 0; +#endif assert(0 != mbuf); assert(0 != buf); @@ -1822,12 +2104,22 @@ for (i = 0; i < mbuf->mb_count; i++) { /* find keys and limits */ if (MB_TYPE(mbuf, i) & MODE_ADD) { +#if defined(UNDERNET) + add |= MB_TYPE(mbuf, i) & (MODE_KEY | MODE_LIMIT | MODE_APASS | MODE_UPASS); +#else add |= MB_TYPE(mbuf, i) & (MODE_KEY | MODE_LIMIT); +#endif if (MB_TYPE(mbuf, i) & MODE_KEY) /* keep strings */ key = MB_STRING(mbuf, i); else if (MB_TYPE(mbuf, i) & MODE_LIMIT) ircd_snprintf(0, limitbuf, sizeof(limitbuf), "%u", MB_UINT(mbuf, i)); +#if defined(UNDERNET) + else if (MB_TYPE(mbuf, i) & MODE_UPASS) + upass = MB_STRING(mbuf, i); + else if (MB_TYPE(mbuf, i) & MODE_APASS) + apass = MB_STRING(mbuf, i); +#endif } } @@ -1845,6 +2137,12 @@ build_string(buf, &bufpos, key, 0, ' '); else if (buf[i] == 'l') build_string(buf, &bufpos, limitbuf, 0, ' '); +#if defined(UNDERNET) + else if (buf[i] == 'u') + build_string(buf, &bufpos, upass, 0, ' '); + else if (buf[i] == 'A') + build_string(buf, &bufpos, apass, 0, ' '); +#endif } buf[bufpos] = '\0'; @@ -1880,12 +2178,17 @@ #define DONE_BANLIST 0x04 /* We've sent the ban list */ #define DONE_NOTOPER 0x08 /* We've sent a "Not oper" error */ #define DONE_BANCLEAN 0x10 /* We've cleaned bans... */ +#if defined(UNDERNET) +#define DONE_UPASS 0x20 /* We've set user pass */ +#define DONE_APASS 0x40 /* We've set admin pass */ +#endif struct ParseState { struct ModeBuf *mbuf; struct Client *cptr; struct Client *sptr; struct Channel *chptr; + struct Membership *member; int parc; char **parv; unsigned int flags; @@ -2023,7 +2326,7 @@ /* clean up the key string */ s = t_str; - while (*++s > ' ' && *s != ':' && --t_len) + while (*s > ' ' && *s != ':' && --t_len) s++; *s = '\0'; @@ -2074,6 +2377,233 @@ } } +#if defined(UNDERNET) +/* + * Helper function to convert user passes + */ +static void +mode_parse_upass(struct ParseState *state, int *flag_p) +{ + char *t_str, *s; + int t_len; + + if (MyUser(state->sptr) && state->max_args <= 0) /* drop if too many args */ + return; + + if (state->parc <= 0) { /* warn if not enough args */ + if (MyUser(state->sptr)) + need_more_params(state->sptr, state->dir == MODE_ADD ? "MODE +u" : + "MODE -u"); + return; + } + + t_str = state->parv[state->args_used++]; /* grab arg */ + state->parc--; + state->max_args--; + + /* If they're not an oper, they can't change modes */ + if (state->flags & (MODE_PARSE_NOTOPER | MODE_PARSE_NOTMEMBER)) { + send_notoper(state); + return; + } + + /* If they are not the channel manager, they are not allowed to change it */ + if (MyUser(state->sptr) && !IsChannelManager(state->member)) { + if (*state->chptr->mode.apass) { + send_reply(state->sptr, ERR_NOTMANAGER, state->chptr->chname, + "Use /JOIN", state->chptr->chname, "<AdminPass>."); + } else { + send_reply(state->sptr, ERR_NOTMANAGER, state->chptr->chname, + "Re-create the channel. The channel must be *empty* for", + TStime() - state->chptr->creationtime >= 171000 ? "48 contiguous hours" : "a minute or two", + "before it can be recreated."); + } + return; + } + + if (state->done & DONE_UPASS) /* allow upass to be set only once */ + return; + state->done |= DONE_UPASS; + + t_len = PASSLEN + 1; + + /* clean up the upass string */ + s = t_str; + while (*s > ' ' && *s != ':' && --t_len) + s++; + *s = '\0'; + + if (!*t_str) { /* warn if empty */ + if (MyUser(state->sptr)) + need_more_params(state->sptr, state->dir == MODE_ADD ? "MODE +u" : + "MODE -u"); + return; + } + + if (!state->mbuf) + return; + + if (!(state->flags & MODE_PARSE_FORCE)) + /* can't add the upass while apass is not set */ + if (state->dir == MODE_ADD && !*state->chptr->mode.apass) { + send_reply(state->sptr, ERR_UPASSNOTSET, state->chptr->chname, state->chptr->chname); + return; + } + /* can't add a upass if one is set, nor can one remove the wrong upass */ + if ((state->dir == MODE_ADD && *state->chptr->mode.upass) || + (state->dir == MODE_DEL && + ircd_strcmp(state->chptr->mode.upass, t_str))) { + send_reply(state->sptr, ERR_KEYSET, state->chptr->chname); + return; + } + + if (!(state->flags & MODE_PARSE_WIPEOUT) && state->dir == MODE_ADD && + !ircd_strcmp(state->chptr->mode.upass, t_str)) + return; /* no upass change */ + + if (state->flags & MODE_PARSE_BOUNCE) { + if (*state->chptr->mode.upass) /* reset old upass */ + modebuf_mode_string(state->mbuf, MODE_DEL | flag_p[0], + state->chptr->mode.upass, 0); + else /* remove new bogus upass */ + modebuf_mode_string(state->mbuf, MODE_ADD | flag_p[0], t_str, 0); + } else /* send new upass */ + modebuf_mode_string(state->mbuf, state->dir | flag_p[0], t_str, 0); + + if (state->flags & MODE_PARSE_SET) { + if (state->dir == MODE_ADD) /* set the new upass */ + ircd_strncpy(state->chptr->mode.upass, t_str, PASSLEN); + else /* remove the old upass */ + *state->chptr->mode.upass = '\0'; + } +} + +/* + * Helper function to convert admin passes + */ +static void +mode_parse_apass(struct ParseState *state, int *flag_p) +{ + char *t_str, *s; + int t_len; + + if (MyUser(state->sptr) && state->max_args <= 0) /* drop if too many args */ + return; + + if (state->parc <= 0) { /* warn if not enough args */ + if (MyUser(state->sptr)) + need_more_params(state->sptr, state->dir == MODE_ADD ? "MODE +A" : + "MODE -A"); + return; + } + + t_str = state->parv[state->args_used++]; /* grab arg */ + state->parc--; + state->max_args--; + + /* If they're not an oper, they can't change modes */ + if (state->flags & (MODE_PARSE_NOTOPER | MODE_PARSE_NOTMEMBER)) { + send_notoper(state); + return; + } + + /* Don't allow to change the Apass if the channel is older than 48 hours. */ + if (TStime() - state->chptr->creationtime >= 172800 && !IsAnOper(state->sptr)) { + send_reply(state->sptr, ERR_CHANSECURED, state->chptr->chname); + return; + } + + /* If they are not the channel manager, they are not allowed to change it */ + if (MyUser(state->sptr) && !IsChannelManager(state->member)) { + if (*state->chptr->mode.apass) { + send_reply(state->sptr, ERR_NOTMANAGER, state->chptr->chname, + "Use /JOIN", state->chptr->chname, "<AdminPass>."); + } else { + send_reply(state->sptr, ERR_NOTMANAGER, state->chptr->chname, + "Re-create the channel. The channel must be *empty* for", + "at least a whole minute", "before it can be recreated."); + } + return; + } + + if (state->done & DONE_APASS) /* allow apass to be set only once */ + return; + state->done |= DONE_APASS; + + t_len = PASSLEN + 1; + + /* clean up the apass string */ + s = t_str; + while (*s > ' ' && *s != ':' && --t_len) + s++; + *s = '\0'; + + if (!*t_str) { /* warn if empty */ + if (MyUser(state->sptr)) + need_more_params(state->sptr, state->dir == MODE_ADD ? "MODE +A" : + "MODE -A"); + return; + } + + if (!state->mbuf) + return; + + if (!(state->flags & MODE_PARSE_FORCE)) { + ... [truncated message content] |
From: Toni G. <zo...@us...> - 2003-11-15 03:12:23
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2003-11-15 03:12:09 UTC Modified files: ChangeLog ChangeLog.es include/patchlevel.h ircd/channel.c Added files: libs/zlib/ChangeLog libs/zlib/FAQ libs/zlib/INDEX libs/zlib/Make_vms.com libs/zlib/Makefile libs/zlib/Makefile.in libs/zlib/Makefile.riscos libs/zlib/README libs/zlib/adler32.c libs/zlib/algorithm.txt libs/zlib/compress.c libs/zlib/configure libs/zlib/crc32.c libs/zlib/deflate.c libs/zlib/deflate.h libs/zlib/descrip.mms libs/zlib/example.c libs/zlib/gzio.c libs/zlib/infblock.c libs/zlib/infblock.h libs/zlib/infcodes.c libs/zlib/infcodes.h libs/zlib/inffast.c libs/zlib/inffast.h libs/zlib/inffixed.h libs/zlib/inflate.c libs/zlib/inftrees.c libs/zlib/inftrees.h libs/zlib/infutil.c libs/zlib/infutil.h libs/zlib/maketree.c libs/zlib/minigzip.c libs/zlib/trees.c libs/zlib/trees.h libs/zlib/uncompr.c libs/zlib/zconf.h libs/zlib/zlib.3 libs/zlib/zlib.h libs/zlib/zlib.html libs/zlib/zutil.c libs/zlib/zutil.h libs/zlib/amiga/Makefile.pup libs/zlib/amiga/Makefile.sas libs/zlib/contrib/README.contrib libs/zlib/contrib/visual-basic.txt libs/zlib/contrib/asm386/gvmat32.asm libs/zlib/contrib/asm386/gvmat32c.c libs/zlib/contrib/asm386/mkgvmt32.bat libs/zlib/contrib/asm386/zlibvc.def libs/zlib/contrib/asm386/zlibvc.dsp libs/zlib/contrib/asm386/zlibvc.dsw libs/zlib/contrib/asm586/README.586 libs/zlib/contrib/asm586/match.S libs/zlib/contrib/asm686/README.686 libs/zlib/contrib/asm686/match.S libs/zlib/contrib/delphi/zlib.mak libs/zlib/contrib/delphi/zlibdef.pas libs/zlib/contrib/delphi2/d_zlib.bpr libs/zlib/contrib/delphi2/d_zlib.cpp libs/zlib/contrib/delphi2/readme.txt libs/zlib/contrib/delphi2/zlib.bpg libs/zlib/contrib/delphi2/zlib.bpr libs/zlib/contrib/delphi2/zlib.cpp libs/zlib/contrib/delphi2/zlib.pas libs/zlib/contrib/delphi2/zlib32.bpr libs/zlib/contrib/delphi2/zlib32.cpp libs/zlib/contrib/iostream/test.cpp libs/zlib/contrib/iostream/zfstream.cpp libs/zlib/contrib/iostream/zfstream.h libs/zlib/contrib/iostream2/zstream.h libs/zlib/contrib/iostream2/zstream_test.cpp libs/zlib/contrib/minizip/ChangeLogUnzip libs/zlib/contrib/minizip/Makefile libs/zlib/contrib/minizip/miniunz.c libs/zlib/contrib/minizip/minizip.c libs/zlib/contrib/minizip/readme.txt libs/zlib/contrib/minizip/unzip.c libs/zlib/contrib/minizip/unzip.def libs/zlib/contrib/minizip/unzip.h libs/zlib/contrib/minizip/zip.c libs/zlib/contrib/minizip/zip.def libs/zlib/contrib/minizip/zip.h libs/zlib/contrib/minizip/zlibvc.def libs/zlib/contrib/minizip/zlibvc.dsp libs/zlib/contrib/minizip/zlibvc.dsw libs/zlib/contrib/untgz/Makefile libs/zlib/contrib/untgz/makefile.w32 libs/zlib/contrib/untgz/untgz.c libs/zlib/msdos/Makefile.b32 libs/zlib/msdos/Makefile.bor libs/zlib/msdos/Makefile.dj2 libs/zlib/msdos/Makefile.emx libs/zlib/msdos/Makefile.msc libs/zlib/msdos/Makefile.tc libs/zlib/msdos/Makefile.w32 libs/zlib/msdos/Makefile.wat libs/zlib/msdos/zlib.def libs/zlib/msdos/zlib.rc libs/zlib/nt/Makefile.emx libs/zlib/nt/Makefile.gcc libs/zlib/nt/Makefile.nt libs/zlib/nt/zlib.dnt libs/zlib/os2/Makefile.os2 libs/zlib/os2/zlib.def Log message: Author: zoltan <zo...@ir...> Log message: 2003-11-15 Toni Garcia <zo...@ir...> 1.0.alpha7 * Se incluye el source de la libreria zlib. ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.7 ircd-ircdev/ChangeLog:1.8 --- ircd-ircdev/ChangeLog:1.7 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ChangeLog Fri Nov 14 19:11:54 2003 @@ -1,10 +1,13 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.7 2003/11/11 21:36:21 zolty Exp $ +# $Id: ChangeLog,v 1.8 2003/11/15 03:11:54 zolty Exp $ # # Insert new changes at beginning of the change list. # +2003-11-15 Toni Garcia <zo...@ir...> 1.0.alpha7 + * Incluyed zlib library source. + 2003-11-11 Toni Garcia <zo...@ir...> 1.0.alpha6 * Includes TEA encryptation. * Separates Undernet special code with defines. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.7 ircd-ircdev/ChangeLog.es:1.8 --- ircd-ircdev/ChangeLog.es:1.7 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ChangeLog.es Fri Nov 14 19:11:54 2003 @@ -1,10 +1,13 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.7 2003/11/11 21:36:21 zolty Exp $ +# $Id: ChangeLog.es,v 1.8 2003/11/15 03:11:54 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2003-11-15 Toni Garcia <zo...@ir...> 1.0.alpha7 + * Se incluye el source de la libreria zlib. + 2003-11-11 Toni Garcia <zo...@ir...> 1.0.alpha6 * Se incluye la encriptacion TEA en el ircd. * Se separa el codigo especial de Undernet con defines. Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.7 ircd-ircdev/include/patchlevel.h:1.8 --- ircd-ircdev/include/patchlevel.h:1.7 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/patchlevel.h Fri Nov 14 19:11:54 2003 @@ -15,10 +15,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: patchlevel.h,v 1.7 2003/11/11 21:36:21 zolty Exp $ + * $Id: patchlevel.h,v 1.8 2003/11/15 03:11:54 zolty Exp $ * */ -#define PATCHLEVEL ".alpha6" +#define PATCHLEVEL ".alpha7" #define RELEASE "1.0" Index: ircd-ircdev/ircd/channel.c diff -u ircd-ircdev/ircd/channel.c:1.3 ircd-ircdev/ircd/channel.c:1.4 --- ircd-ircdev/ircd/channel.c:1.3 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/channel.c Fri Nov 14 19:11:54 2003 @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: channel.c,v 1.3 2003/11/11 21:36:21 zolty Exp $ + * $Id: channel.c,v 1.4 2003/11/15 03:11:54 zolty Exp $ */ #include "config.h" @@ -1045,7 +1045,6 @@ msgq_append(&me, mb, tbuf); } } - member = member->next_member; } if (full) break; Index: ircd-ircdev/libs/zlib/ChangeLog diff -u /dev/null ircd-ircdev/libs/zlib/ChangeLog:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/ChangeLog Fri Nov 14 19:11:54 2003 @@ -0,0 +1,481 @@ + + ChangeLog file for zlib + +Changes in 1.1.4 (11 March 2002) +- ZFREE was repeated on same allocation on some error conditions. + This creates a security problem described in + http://www.zlib.org/advisory-2002-03-11.txt +- Returned incorrect error (Z_MEM_ERROR) on some invalid data +- Avoid accesses before window for invalid distances with inflate window + less than 32K. +- force windowBits > 8 to avoid a bug in the encoder for a window size + of 256 bytes. (A complete fix will be available in 1.1.5). + +Changes in 1.1.3 (9 July 1998) +- fix "an inflate input buffer bug that shows up on rare but persistent + occasions" (Mark) +- fix gzread and gztell for concatenated .gz files (Didier Le Botlan) +- fix gzseek(..., SEEK_SET) in write mode +- fix crc check after a gzeek (Frank Faubert) +- fix miniunzip when the last entry in a zip file is itself a zip file + (J Lillge) +- add contrib/asm586 and contrib/asm686 (Brian Raiter) + See http://www.muppetlabs.com/~breadbox/software/assembly.html +- add support for Delphi 3 in contrib/delphi (Bob Dellaca) +- add support for C++Builder 3 and Delphi 3 in contrib/delphi2 (Davide Moretti) +- do not exit prematurely in untgz if 0 at start of block (Magnus Holmgren) +- use macro EXTERN instead of extern to support DLL for BeOS (Sander Stoks) +- added a FAQ file + +- Support gzdopen on Mac with Metrowerks (Jason Linhart) +- Do not redefine Byte on Mac (Brad Pettit & Jason Linhart) +- define SEEK_END too if SEEK_SET is not defined (Albert Chin-A-Young) +- avoid some warnings with Borland C (Tom Tanner) +- fix a problem in contrib/minizip/zip.c for 16-bit MSDOS (Gilles Vollant) +- emulate utime() for WIN32 in contrib/untgz (Gilles Vollant) +- allow several arguments to configure (Tim Mooney, Frodo Looijaard) +- use libdir and includedir in Makefile.in (Tim Mooney) +- support shared libraries on OSF1 V4 (Tim Mooney) +- remove so_locations in "make clean" (Tim Mooney) +- fix maketree.c compilation error (Glenn, Mark) +- Python interface to zlib now in Python 1.5 (Jeremy Hylton) +- new Makefile.riscos (Rich Walker) +- initialize static descriptors in trees.c for embedded targets (Nick Smith) +- use "foo-gz" in example.c for RISCOS and VMS (Nick Smith) +- add the OS/2 files in Makefile.in too (Andrew Zabolotny) +- fix fdopen and halloc macros for Microsoft C 6.0 (Tom Lane) +- fix maketree.c to allow clean compilation of inffixed.h (Mark) +- fix parameter check in deflateCopy (Gunther Nikl) +- cleanup trees.c, use compressed_len only in debug mode (Christian Spieler) +- Many portability patches by Christian Spieler: + . zutil.c, zutil.h: added "const" for zmem* + . Make_vms.com: fixed some typos + . Make_vms.com: msdos/Makefile.*: removed zutil.h from some dependency lists + . msdos/Makefile.msc: remove "default rtl link library" info from obj files + . msdos/Makefile.*: use model-dependent name for the built zlib library + . msdos/Makefile.emx, nt/Makefile.emx, nt/Makefile.gcc: + new makefiles, for emx (DOS/OS2), emx&rsxnt and mingw32 (Windows 9x / NT) +- use define instead of typedef for Bytef also for MSC small/medium (Tom Lane) +- replace __far with _far for better portability (Christian Spieler, Tom Lane) +- fix test for errno.h in configure (Tim Newsham) + +Changes in 1.1.2 (19 March 98) +- added contrib/minzip, mini zip and unzip based on zlib (Gilles Vollant) + See http://www.winimage.com/zLibDll/unzip.html +- preinitialize the inflate tables for fixed codes, to make the code + completely thread safe (Mark) +- some simplifications and slight speed-up to the inflate code (Mark) +- fix gzeof on non-compressed files (Allan Schrum) +- add -std1 option in configure for OSF1 to fix gzprintf (Martin Mokrejs) +- use default value of 4K for Z_BUFSIZE for 16-bit MSDOS (Tim Wegner + Glenn) +- added os2/Makefile.def and os2/zlib.def (Andrew Zabolotny) +- add shared lib support for UNIX_SV4.2MP (MATSUURA Takanori) +- do not wrap extern "C" around system includes (Tom Lane) +- mention zlib binding for TCL in README (Andreas Kupries) +- added amiga/Makefile.pup for Amiga powerUP SAS/C PPC (Andreas Kleinert) +- allow "make install prefix=..." even after configure (Glenn Randers-Pehrson) +- allow "configure --prefix $HOME" (Tim Mooney) +- remove warnings in example.c and gzio.c (Glenn Randers-Pehrson) +- move Makefile.sas to amiga/Makefile.sas + +Changes in 1.1.1 (27 Feb 98) +- fix macros _tr_tally_* in deflate.h for debug mode (Glenn Randers-Pehrson) +- remove block truncation heuristic which had very marginal effect for zlib + (smaller lit_bufsize than in gzip 1.2.4) and degraded a little the + compression ratio on some files. This also allows inlining _tr_tally for + matches in deflate_slow. +- added msdos/Makefile.w32 for WIN32 Microsoft Visual C++ (Bob Frazier) + +Changes in 1.1.0 (24 Feb 98) +- do not return STREAM_END prematurely in inflate (John Bowler) +- revert to the zlib 1.0.8 inflate to avoid the gcc 2.8.0 bug (Jeremy Buhler) +- compile with -DFASTEST to get compression code optimized for speed only +- in minigzip, try mmap'ing the input file first (Miguel Albrecht) +- increase size of I/O buffers in minigzip.c and gzio.c (not a big gain + on Sun but significant on HP) + +- add a pointer to experimental unzip library in README (Gilles Vollant) +- initialize variable gcc in configure (Chris Herborth) + +Changes in 1.0.9 (17 Feb 1998) +- added gzputs and gzgets functions +- do not clear eof flag in gzseek (Mark Diekhans) +- fix gzseek for files in transparent mode (Mark Diekhans) +- do not assume that vsprintf returns the number of bytes written (Jens Krinke) +- replace EXPORT with ZEXPORT to avoid conflict with other programs +- added compress2 in zconf.h, zlib.def, zlib.dnt +- new asm code from Gilles Vollant in contrib/asm386 +- simplify the inflate code (Mark): + . Replace ZALLOC's in huft_build() with single ZALLOC in inflate_blocks_new() + . ZALLOC the length list in inflate_trees_fixed() instead of using stack + . ZALLOC the value area for huft_build() instead of using stack + . Simplify Z_FINISH check in inflate() + +- Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8 +- in inftrees.c, avoid cc -O bug on HP (Farshid Elahi) +- in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with + the declaration of FAR (Gilles VOllant) +- install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann) +- read_buf buf parameter of type Bytef* instead of charf* +- zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout) +- do not redeclare unlink in minigzip.c for WIN32 (John Bowler) +- fix check for presence of directories in "make install" (Ian Willis) + +Changes in 1.0.8 (27 Jan 1998) +- fixed offsets in contrib/asm386/gvmat32.asm (Gilles Vollant) +- fix gzgetc and gzputc for big endian systems (Markus Oberhumer) +- added compress2() to allow setting the compression level +- include sys/types.h to get off_t on some systems (Marc Lehmann & QingLong) +- use constant arrays for the static trees in trees.c instead of computing + them at run time (thanks to Ken Raeburn for this suggestion). To create + trees.h, compile with GEN_TREES_H and run "make test". +- check return code of example in "make test" and display result +- pass minigzip command line options to file_compress +- simplifying code of inflateSync to avoid gcc 2.8 bug + +- support CC="gcc -Wall" in configure -s (QingLong) +- avoid a flush caused by ftell in gzopen for write mode (Ken Raeburn) +- fix test for shared library support to avoid compiler warnings +- zlib.lib -> zlib.dll in msdos/zlib.rc (Gilles Vollant) +- check for TARGET_OS_MAC in addition to MACOS (Brad Pettit) +- do not use fdopen for Metrowerks on Mac (Brad Pettit)) +- add checks for gzputc and gzputc in example.c +- avoid warnings in gzio.c and deflate.c (Andreas Kleinert) +- use const for the CRC table (Ken Raeburn) +- fixed "make uninstall" for shared libraries +- use Tracev instead of Trace in infblock.c +- in example.c use correct compressed length for test_sync +- suppress +vnocompatwarnings in configure for HPUX (not always supported) + +Changes in 1.0.7 (20 Jan 1998) +- fix gzseek which was broken in write mode +- return error for gzseek to negative absolute position +- fix configure for Linux (Chun-Chung Chen) +- increase stack space for MSC (Tim Wegner) +- get_crc_table and inflateSyncPoint are EXPORTed (Gilles Vollant) +- define EXPORTVA for gzprintf (Gilles Vollant) +- added man page zlib.3 (Rick Rodgers) +- for contrib/untgz, fix makedir() and improve Makefile + +- check gzseek in write mode in example.c +- allocate extra buffer for seeks only if gzseek is actually called +- avoid signed/unsigned comparisons (Tim Wegner, Gilles Vollant) +- add inflateSyncPoint in zconf.h +- fix list of exported functions in nt/zlib.dnt and mdsos/zlib.def + +Changes in 1.0.6 (19 Jan 1998) +- add functions gzprintf, gzputc, gzgetc, gztell, gzeof, gzseek, gzrewind and + gzsetparams (thanks to Roland Giersig and Kevin Ruland for some of this code) +- Fix a deflate bug occuring only with compression level 0 (thanks to + Andy Buckler for finding this one). +- In minigzip, pass transparently also the first byte for .Z files. +- return Z_BUF_ERROR instead of Z_OK if output buffer full in uncompress() +- check Z_FINISH in inflate (thanks to Marc Schluper) +- Implement deflateCopy (thanks to Adam Costello) +- make static libraries by default in configure, add --shared option. +- move MSDOS or Windows specific files to directory msdos +- suppress the notion of partial flush to simplify the interface + (but the symbol Z_PARTIAL_FLUSH is kept for compatibility with 1.0.4) +- suppress history buffer provided by application to simplify the interface + (this feature was not implemented anyway in 1.0.4) +- next_in and avail_in must be initialized before calling inflateInit or + inflateInit2 +- add EXPORT in all exported functions (for Windows DLL) +- added Makefile.nt (thanks to Stephen Williams) +- added the unsupported "contrib" directory: + contrib/asm386/ by Gilles Vollant <in...@wi...> + 386 asm code replacing longest_match(). + contrib/iostream/ by Kevin Ruland <ke...@ro...> + A C++ I/O streams interface to the zlib gz* functions + contrib/iostream2/ by Tyge Løvset <Tyg...@cm...> + Another C++ I/O streams interface + contrib/untgz/ by "Pedro A. Aranda Guti\irrez" <pa...@ti...> + A very simple tar.gz file extractor using zlib + contrib/visual-basic.txt by Carlos Rios <c_...@so...> + How to use compress(), uncompress() and the gz* functions from VB. +- pass params -f (filtered data), -h (huffman only), -1 to -9 (compression + level) in minigzip (thanks to Tom Lane) + +- use const for rommable constants in deflate +- added test for gzseek and gztell in example.c +- add undocumented function inflateSyncPoint() (hack for Paul Mackerras) +- add undocumented function zError to convert error code to string + (for Tim Smithers) +- Allow compilation of gzio with -DNO_DEFLATE to avoid the compression code. +- Use default memcpy for Symantec MSDOS compiler. +- Add EXPORT keyword for check_func (needed for Windows DLL) +- add current directory to LD_LIBRARY_PATH for "make test" +- create also a link for libz.so.1 +- added support for FUJITSU UXP/DS (thanks to Toshiaki Nomura) +- use $(SHAREDLIB) instead of libz.so in Makefile.in (for HPUX) +- added -soname for Linux in configure (Chun-Chung Chen, +- assign numbers to the exported functions in zlib.def (for Windows DLL) +- add advice in zlib.h for best usage of deflateSetDictionary +- work around compiler bug on Atari (cast Z_NULL in call of s->checkfn) +- allow compilation with ANSI keywords only enabled for TurboC in large model +- avoid "versionString"[0] (Borland bug) +- add NEED_DUMMY_RETURN for Borland +- use variable z_verbose for tracing in debug mode (L. Peter Deutsch). +- allow compilation with CC +- defined STDC for OS/2 (David Charlap) +- limit external names to 8 chars for MVS (Thomas Lund) +- in minigzip.c, use static buffers only for 16-bit systems +- fix suffix check for "minigzip -d foo.gz" +- do not return an error for the 2nd of two consecutive gzflush() (Felix Lee) +- use _fdopen instead of fdopen for MSC >= 6.0 (Thomas Fanslau) +- added makelcc.bat for lcc-win32 (Tom St Denis) +- in Makefile.dj2, use copy and del instead of install and rm (Frank Donahoe) +- Avoid expanded $Id: ChangeLog,v 1.1 2003/11/15 03:11:54 zolty Exp $. Use "rcs -kb" or "cvs admin -kb" to avoid Id expansion. +- check for unistd.h in configure (for off_t) +- remove useless check parameter in inflate_blocks_free +- avoid useless assignment of s->check to itself in inflate_blocks_new +- do not flush twice in gzclose (thanks to Ken Raeburn) +- rename FOPEN as F_OPEN to avoid clash with /usr/include/sys/file.h +- use NO_ERRNO_H instead of enumeration of operating systems with errno.h +- work around buggy fclose on pipes for HP/UX +- support zlib DLL with BORLAND C++ 5.0 (thanks to Glenn Randers-Pehrson) +- fix configure if CC is already equal to gcc + +Changes in 1.0.5 (3 Jan 98) +- Fix inflate to terminate gracefully when fed corrupted or invalid data +- Use const for rommable constants in inflate +- Eliminate memory leaks on error conditions in inflate +- Removed some vestigial code in inflate +- Update web address in README + +Changes in 1.0.4 (24 Jul 96) +- In very rare conditions, deflate(s, Z_FINISH) could fail to produce an EOF + bit, so the decompressor could decompress all the correct data but went + on to attempt decompressing extra garbage data. This affected minigzip too. +- zlibVersion and gzerror return const char* (needed for DLL) +- port to RISCOS (no fdopen, no multiple dots, no unlink, no fileno) +- use z_error only for DEBUG (avoid problem with DLLs) + +Changes in 1.0.3 (2 Jul 96) +- use z_streamp instead of z_stream *, which is now a far pointer in MSDOS + small and medium models; this makes the library incompatible with previous + versions for these models. (No effect in large model or on other systems.) +- return OK instead of BUF_ERROR if previous deflate call returned with + avail_out as zero but there is nothing to do +- added memcmp for non STDC compilers +- define NO_DUMMY_DECL for more Mac compilers (.h files merged incorrectly) +- define __32BIT__ if __386__ or i386 is defined (pb. with Watcom and SCO) +- better check for 16-bit mode MSC (avoids problem with Symantec) + +Changes in 1.0.2 (23 May 96) +- added Windows DLL support +- added a function zlibVersion (for the DLL support) +- fixed declarations using Bytef in infutil.c (pb with MSDOS medium model) +- Bytef is define's instead of typedef'd only for Borland C +- avoid reading uninitialized memory in example.c +- mention in README that the zlib format is now RFC1950 +- updated Makefile.dj2 +- added algorithm.doc + +Changes in 1.0.1 (20 May 96) [1.0 skipped to avoid confusion] +- fix array overlay in deflate.c which sometimes caused bad compressed data +- fix inflate bug with empty stored block +- fix MSDOS medium model which was broken in 0.99 +- fix deflateParams() which could generated bad compressed data. +- Bytef is define'd instead of typedef'ed (work around Borland bug) +- added an INDEX file +- new makefiles for DJGPP (Makefile.dj2), 32-bit Borland (Makefile.b32), + Watcom (Makefile.wat), Amiga SAS/C (Makefile.sas) +- speed up adler32 for modern machines without auto-increment +- added -ansi for IRIX in configure +- static_init_done in trees.c is an int +- define unlink as delete for VMS +- fix configure for QNX +- add configure branch for SCO and HPUX +- avoid many warnings (unused variables, dead assignments, etc...) +- no fdopen for BeOS +- fix the Watcom fix for 32 bit mode (define FAR as empty) +- removed redefinition of Byte for MKWERKS +- work around an MWKERKS bug (incorrect merge of all .h files) + +Changes in 0.99 (27 Jan 96) +- allow preset dictionary shared between compressor and decompressor +- allow compression level 0 (no compression) +- add deflateParams in zlib.h: allow dynamic change of compression level + and compression strategy. +- test large buffers and deflateParams in example.c +- add optional "configure" to build zlib as a shared library +- suppress Makefile.qnx, use configure instead +- fixed deflate for 64-bit systems (detected on Cray) +- fixed inflate_blocks for 64-bit systems (detected on Alpha) +- declare Z_DEFLATED in zlib.h (possible parameter for deflateInit2) +- always return Z_BUF_ERROR when deflate() has nothing to do +- deflateInit and inflateInit are now macros to allow version checking +- prefix all global functions and types with z_ with -DZ_PREFIX +- make falloc completely reentrant (inftrees.c) +- fixed very unlikely race condition in ct_static_init +- free in reverse order of allocation to help memory manager +- use zlib-1.0/* instead of zlib/* inside the tar.gz +- make zlib warning-free with "gcc -O3 -Wall -Wwrite-strings -Wpointer-arith + -Wconversion -Wstrict-prototypes -Wmissing-prototypes" +- allow gzread on concatenated .gz files +- deflateEnd now returns Z_DATA_ERROR if it was premature +- deflate is finally (?) fully deterministic (no matches beyond end of input) +- Document Z_SYNC_FLUSH +- add uninstall in Makefile +- Check for __cpluplus in zlib.h +- Better test in ct_align for partial flush +- avoid harmless warnings for Borland C++ +- initialize hash_head in deflate.c +- avoid warning on fdopen (gzio.c) for HP cc -Aa +- include stdlib.h for STDC compilers +- include errno.h for Cray +- ignore error if ranlib doesn't exist +- call ranlib twice for NeXTSTEP +- use exec_prefix instead of prefix for libz.a +- renamed ct_* as _tr_* to avoid conflict with applications +- clear z->msg in inflateInit2 before any error return +- initialize opaque in example.c, gzio.c, deflate.c and inflate.c +- fixed typo in zconf.h (_GNUC__ => __GNUC__) +- check for WIN32 in zconf.h and zutil.c (avoid farmalloc in 32-bit mode) +- fix typo in Make_vms.com (f$trnlnm -> f$getsyi) +- in fcalloc, normalize pointer if size > 65520 bytes +- don't use special fcalloc for 32 bit Borland C++ +- use STDC instead of __GO32__ to avoid redeclaring exit, calloc, etc... +- use Z_BINARY instead of BINARY +- document that gzclose after gzdopen will close the file +- allow "a" as mode in gzopen. +- fix error checking in gzread +- allow skipping .gz extra-field on pipes +- added reference to Perl interface in README +- put the crc table in FAR data (I dislike more and more the medium model :) +- added get_crc_table +- added a dimension to all arrays (Borland C can't count). +- workaround Borland C bug in declaration of inflate_codes_new & inflate_fast +- guard against multiple inclusion of *.h (for precompiled header on Mac) +- Watcom C pretends to be Microsoft C small model even in 32 bit mode. +- don't use unsized arrays to avoid silly warnings by Visual C++: + warning C4746: 'inflate_mask' : unsized array treated as '__far' + (what's wrong with far data in far model?). +- define enum out of inflate_blocks_state to allow compilation with C++ + +Changes in 0.95 (16 Aug 95) +- fix MSDOS small and medium model (now easier to adapt to any compiler) +- inlined send_bits +- fix the final (:-) bug for deflate with flush (output was correct but + not completely flushed in rare occasions). +- default window size is same for compression and decompression + (it's now sufficient to set MAX_WBITS in zconf.h). +- voidp -> voidpf and voidnp -> voidp (for consistency with other + typedefs and because voidnp was not near in large model). + +Changes in 0.94 (13 Aug 95) +- support MSDOS medium model +- fix deflate with flush (could sometimes generate bad output) +- fix deflateReset (zlib header was incorrectly suppressed) +- added support for VMS +- allow a compression level in gzopen() +- gzflush now calls fflush +- For deflate with flush, flush even if no more input is provided. +- rename libgz.a as libz.a +- avoid complex expression in infcodes.c triggering Turbo C bug +- work around a problem with gcc on Alpha (in INSERT_STRING) +- don't use inline functions (problem with some gcc versions) +- allow renaming of Byte, uInt, etc... with #define. +- avoid warning about (unused) pointer before start of array in deflate.c +- avoid various warnings in gzio.c, example.c, infblock.c, adler32.c, zutil.c +- avoid reserved word 'new' in trees.c + +Changes in 0.93 (25 June 95) +- temporarily disable inline functions +- make deflate deterministic +- give enough lookahead for PARTIAL_FLUSH +- Set binary mode for stdin/stdout in minigzip.c for OS/2 +- don't even use signed char in inflate (not portable enough) +- fix inflate memory leak for segmented architectures + +Changes in 0.92 (3 May 95) +- don't assume that char is signed (problem on SGI) +- Clear bit buffer when starting a stored block +- no memcpy on Pyramid +- suppressed inftest.c +- optimized fill_window, put longest_match inline for gcc +- optimized inflate on stored blocks. +- untabify all sources to simplify patches + +Changes in 0.91 (2 May 95) +- Default MEM_LEVEL is 8 (not 9 for Unix) as documented in zlib.h +- Document the memory requirements in zconf.h +- added "make install" +- fix sync search logic in inflateSync +- deflate(Z_FULL_FLUSH) now works even if output buffer too short +- after inflateSync, don't scare people with just "lo world" +- added support for DJGPP + +Changes in 0.9 (1 May 95) +- don't assume that zalloc clears the allocated memory (the TurboC bug + was Mark's bug after all :) +- let again gzread copy uncompressed data unchanged (was working in 0.71) +- deflate(Z_FULL_FLUSH), inflateReset and inflateSync are now fully implemented +- added a test of inflateSync in example.c +- moved MAX_WBITS to zconf.h because users might want to change that. +- document explicitly that zalloc(64K) on MSDOS must return a normalized + pointer (zero offset) +- added Makefiles for Microsoft C, Turbo C, Borland C++ +- faster crc32() + +Changes in 0.8 (29 April 95) +- added fast inflate (inffast.c) +- deflate(Z_FINISH) now returns Z_STREAM_END when done. Warning: this + is incompatible with previous versions of zlib which returned Z_OK. +- work around a TurboC compiler bug (bad code for b << 0, see infutil.h) + (actually that was not a compiler bug, see 0.81 above) +- gzread no longer reads one extra byte in certain cases +- In gzio destroy(), don't reference a freed structure +- avoid many warnings for MSDOS +- avoid the ERROR symbol which is used by MS Windows + +Changes in 0.71 (14 April 95) +- Fixed more MSDOS compilation problems :( There is still a bug with + TurboC large model. + +Changes in 0.7 (14 April 95) +- Added full inflate support. +- Simplified the crc32() interface. The pre- and post-conditioning + (one's complement) is now done inside crc32(). WARNING: this is + incompatible with previous versions; see zlib.h for the new usage. + +Changes in 0.61 (12 April 95) +- workaround for a bug in TurboC. example and minigzip now work on MSDOS. + +Changes in 0.6 (11 April 95) +- added minigzip.c +- added gzdopen to reopen a file descriptor as gzFile +- added transparent reading of non-gziped files in gzread. +- fixed bug in gzread (don't read crc as data) +- fixed bug in destroy (gzio.c) (don't return Z_STREAM_END for gzclose). +- don't allocate big arrays in the stack (for MSDOS) +- fix some MSDOS compilation problems + +Changes in 0.5: +- do real compression in deflate.c. Z_PARTIAL_FLUSH is supported but + not yet Z_FULL_FLUSH. +- support decompression but only in a single step (forced Z_FINISH) +- added opaque object for zalloc and zfree. +- added deflateReset and inflateReset +- added a variable zlib_version for consistency checking. +- renamed the 'filter' parameter of deflateInit2 as 'strategy'. + Added Z_FILTERED and Z_HUFFMAN_ONLY constants. + +Changes in 0.4: +- avoid "zip" everywhere, use zlib instead of ziplib. +- suppress Z_BLOCK_FLUSH, interpret Z_PARTIAL_FLUSH as block flush + if compression method == 8. +- added adler32 and crc32 +- renamed deflateOptions as deflateInit2, call one or the other but not both +- added the method parameter for deflateInit2. +- added inflateInit2 +- simplied considerably deflateInit and inflateInit by not supporting + user-provided history buffer. This is supported only in deflateInit2 + and inflateInit2. + +Changes in 0.3: +- prefix all macro names with Z_ +- use Z_FINISH instead of deflateEnd to finish compression. +- added Z_HUFFMAN_ONLY +- added gzerror() Index: ircd-ircdev/libs/zlib/FAQ diff -u /dev/null ircd-ircdev/libs/zlib/FAQ:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/FAQ Fri Nov 14 19:11:54 2003 @@ -0,0 +1,100 @@ + + Frequently Asked Questions about zlib + + +If your question is not there, please check the zlib home page +http://www.zlib.org which may have more recent information. +The lastest zlib FAQ is at http://www.gzip.org/zlib/zlib_faq.html + + + 1. Is zlib Y2K-compliant? + + Yes. zlib doesn't handle dates. + + 2. Where can I get a Windows DLL version? + + The zlib sources can be compiled without change to produce a DLL. If you + want a precompiled DLL, see http://www.winimage.com/zLibDll/ . Questions + about the zlib DLL should be sent to Gilles Vollant (in...@wi...). + + 3. Where can I get a Visual Basic interface to zlib? + + See + * http://www.winimage.com/zLibDll/cmp-z-it.zip + * http://www.dogma.net/markn/articles/zlibtool/zlibtool.htm + * contrib/visual-basic.txt in the zlib distribution + + 4. compress() returns Z_BUF_ERROR + + Make sure that before the call of compress, the length of the compressed + buffer is equal to the total size of the compressed buffer and not + zero. For Visual Basic, check that this parameter is passed by reference + ("as any"), not by value ("as long"). + + 5. deflate() or inflate() returns Z_BUF_ERROR + + Before making the call, make sure that avail_in and avail_out are not + zero. When setting the parameter flush equal to Z_FINISH, also make sure + that avail_out is big enough to allow processing all pending input. + + 6. Where's the zlib documentation (man pages, etc.)? + + It's in zlib.h for the moment, and Francis S. Lin has converted it to a + web page zlib.html. Volunteers to transform this to Unix-style man pages, + please contact Jean-loup Gailly (jl...@gz...). Examples of zlib usage + are in the files example.c and minigzip.c. + + 7. Why don't you use GNU autoconf or libtool or ...? + + Because we would like to keep zlib as a very small and simple + package. zlib is rather portable and doesn't need much configuration. + + 8. I found a bug in zlib. + + Most of the time, such problems are due to an incorrect usage of + zlib. Please try to reproduce the problem with a small program and send + the corresponding source to us at zl...@gz... . Do not send + multi-megabyte data files without prior agreement. + + 9. Why do I get "undefined reference to gzputc"? + + If "make test" produces something like + + example.o(.text+0x154): undefined reference to `gzputc' + + check that you don't have old files libz.* in /usr/lib, /usr/local/lib or + /usr/X11R6/lib. Remove any old versions, then do "make install". + +10. I need a Delphi interface to zlib. + + See the directories contrib/delphi and contrib/delphi2 in the zlib + distribution. + +11. Can zlib handle .zip archives? + + See the directory contrib/minizip in the zlib distribution. + +12. Can zlib handle .Z files? + + No, sorry. You have to spawn an uncompress or gunzip subprocess, or adapt + the code of uncompress on your own. + +13. How can I make a Unix shared library? + + make clean + ./configure -s + make + +14. Why does "make test" fail on Mac OS X? + + Mac OS X already includes zlib as a shared library, and so -lz links the + shared library instead of the one that the "make" compiled. For zlib + 1.1.3, the two are incompatible due to different compile-time + options. Simply change the -lz in the Makefile to libz.a, and it will use + the compiled library instead of the shared one and the "make test" will + succeed. + +15. I have a question about OttoPDF + + We are not the authors of OttoPDF. The real author is on the OttoPDF web + site Joel Hainley jha...@my.... Index: ircd-ircdev/libs/zlib/INDEX diff -u /dev/null ircd-ircdev/libs/zlib/INDEX:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/INDEX Fri Nov 14 19:11:54 2003 @@ -0,0 +1,86 @@ +ChangeLog history of changes +INDEX this file +FAQ Frequently Asked Questions about zlib +Make_vms.com script for Vax/VMS +Makefile makefile for Unix (generated by configure) +Makefile.in makefile for Unix (template for configure) +Makefile.riscos makefile for RISCOS +README guess what +algorithm.txt description of the (de)compression algorithm +configure configure script for Unix +descrip.mms makefile for Vax/VMS +zlib.3 mini man page for zlib (volunteers to write full + man pages from zlib.h welcome. write to jl...@gz...) + +amiga/Makefile.sas makefile for Amiga SAS/C +amiga/Makefile.pup makefile for Amiga powerUP SAS/C PPC + +msdos/Makefile.w32 makefile for Microsoft Visual C++ 32-bit +msdos/Makefile.b32 makefile for Borland C++ 32-bit +msdos/Makefile.bor makefile for Borland C/C++ 16-bit +msdos/Makefile.dj2 makefile for DJGPP 2.x +msdos/Makefile.emx makefile for EMX 0.9c (32-bit DOS/OS2) +msdos/Makefile.msc makefile for Microsoft C 16-bit +msdos/Makefile.tc makefile for Turbo C +msdos/Makefile.wat makefile for Watcom C +msdos/zlib.def definition file for Windows DLL +msdos/zlib.rc definition file for Windows DLL + +nt/Makefile.nt makefile for Windows NT +nt/zlib.dnt definition file for Windows NT DLL +nt/Makefile.emx makefile for EMX 0.9c/RSXNT 1.41 (Win32 Intel) +nt/Makefile.gcc makefile for Windows NT using GCC (mingw32) + + + zlib public header files (must be kept): +zconf.h +zlib.h + + private source files used to build the zlib library: +adler32.c +compress.c +crc32.c +deflate.c +deflate.h +gzio.c +infblock.c +infblock.h +infcodes.c +infcodes.h +inffast.c +inffast.h +inflate.c +inftrees.c +inftrees.h +infutil.c +infutil.h +maketree.c +trees.c +uncompr.c +zutil.c +zutil.h + + source files for sample programs: +example.c +minigzip.c + + unsupported contribution by third parties + +contrib/asm386/ by Gilles Vollant <in...@wi...> + 386 asm code replacing longest_match(). + +contrib/minizip/ by Gilles Vollant <in...@wi...> + Mini zip and unzip based on zlib + See http://www.winimage.com/zLibDll/unzip.html + +contrib/iostream/ by Kevin Ruland <ke...@ro...> + A C++ I/O streams interface to the zlib gz* functions + +contrib/iostream2/ by Tyge Løvset <Tyg...@cm...> + Another C++ I/O streams interface + +contrib/untgz/ by "Pedro A. Aranda Guti\irrez" <pa...@ti...> + A very simple tar.gz extractor using zlib + +contrib/visual-basic.txt by Carlos Rios <c_...@so...> + How to use compress(), uncompress() and the gz* functions from VB. Index: ircd-ircdev/libs/zlib/Make_vms.com diff -u /dev/null ircd-ircdev/libs/zlib/Make_vms.com:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/Make_vms.com Fri Nov 14 19:11:54 2003 @@ -0,0 +1,115 @@ +$! make libz under VMS +$! written by Martin P.J. Zinser <m.z...@gs...> +$! +$! Look for the compiler used +$! +$ ccopt = "" +$ if f$getsyi("HW_MODEL").ge.1024 +$ then +$ ccopt = "/prefix=all"+ccopt +$ comp = "__decc__=1" +$ if f$trnlnm("SYS").eqs."" then define sys sys$library: +$ else +$ if f$search("SYS$SYSTEM:DECC$COMPILER.EXE").eqs."" +$ then +$ comp = "__vaxc__=1" +$ if f$trnlnm("SYS").eqs."" then define sys sys$library: +$ else +$ if f$trnlnm("SYS").eqs."" then define sys decc$library_include: +$ ccopt = "/decc/prefix=all"+ccopt +$ comp = "__decc__=1" +$ endif +$ endif +$! +$! Build the thing plain or with mms +$! +$ write sys$output "Compiling Zlib sources ..." +$ if f$search("SYS$SYSTEM:MMS.EXE").eqs."" +$ then +$ dele example.obj;*,minigzip.obj;* +$ CALL MAKE adler32.OBJ "CC ''CCOPT' adler32" - + adler32.c zlib.h zconf.h +$ CALL MAKE compress.OBJ "CC ''CCOPT' compress" - + compress.c zlib.h zconf.h +$ CALL MAKE crc32.OBJ "CC ''CCOPT' crc32" - + crc32.c zlib.h zconf.h +$ CALL MAKE deflate.OBJ "CC ''CCOPT' deflate" - + deflate.c deflate.h zutil.h zlib.h zconf.h +$ CALL MAKE gzio.OBJ "CC ''CCOPT' gzio" - + gzio.c zutil.h zlib.h zconf.h +$ CALL MAKE infblock.OBJ "CC ''CCOPT' infblock" - + infblock.c zutil.h zlib.h zconf.h infblock.h +$ CALL MAKE infcodes.OBJ "CC ''CCOPT' infcodes" - + infcodes.c zutil.h zlib.h zconf.h inftrees.h +$ CALL MAKE inffast.OBJ "CC ''CCOPT' inffast" - + inffast.c zutil.h zlib.h zconf.h inffast.h +$ CALL MAKE inflate.OBJ "CC ''CCOPT' inflate" - + inflate.c zutil.h zlib.h zconf.h infblock.h +$ CALL MAKE inftrees.OBJ "CC ''CCOPT' inftrees" - + inftrees.c zutil.h zlib.h zconf.h inftrees.h +$ CALL MAKE infutil.OBJ "CC ''CCOPT' infutil" - + infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h +$ CALL MAKE trees.OBJ "CC ''CCOPT' trees" - + trees.c deflate.h zutil.h zlib.h zconf.h +$ CALL MAKE uncompr.OBJ "CC ''CCOPT' uncompr" - + uncompr.c zlib.h zconf.h +$ CALL MAKE zutil.OBJ "CC ''CCOPT' zutil" - + zutil.c zutil.h zlib.h zconf.h +$ write sys$output "Building Zlib ..." +$ CALL MAKE libz.OLB "lib/crea libz.olb *.obj" *.OBJ +$ write sys$output "Building example..." +$ CALL MAKE example.OBJ "CC ''CCOPT' example" - + example.c zlib.h zconf.h +$ call make example.exe "LINK example,libz.olb/lib" example.obj libz.olb +$ write sys$output "Building minigzip..." +$ CALL MAKE minigzip.OBJ "CC ''CCOPT' minigzip" - + minigzip.c zlib.h zconf.h +$ call make minigzip.exe - + "LINK minigzip,libz.olb/lib,x11vms:xvmsutils.olb/lib" - + minigzip.obj libz.olb +$ else +$ mms/macro=('comp') +$ endif +$ write sys$output "Zlib build completed" +$ exit +$! +$! +$MAKE: SUBROUTINE !SUBROUTINE TO CHECK DEPENDENCIES +$ V = 'F$Verify(0) +$! P1 = What we are trying to make +$! P2 = Command to make it +$! P3 - P8 What it depends on +$ +$ If F$Search(P1) .Eqs. "" Then Goto Makeit +$ Time = F$CvTime(F$File(P1,"RDT")) +$arg=3 +$Loop: +$ Argument = P'arg +$ If Argument .Eqs. "" Then Goto Exit +$ El=0 +$Loop2: +$ File = F$Element(El," ",Argument) +$ If File .Eqs. " " Then Goto Endl +$ AFile = "" +$Loop3: +$ OFile = AFile +$ AFile = F$Search(File) +$ If AFile .Eqs. "" .Or. AFile .Eqs. OFile Then Goto NextEl +$ If F$CvTime(F$File(AFile,"RDT")) .Ges. Time Then Goto Makeit +$ Goto Loop3 +$NextEL: +$ El = El + 1 +$ Goto Loop2 +$EndL: +$ arg=arg+1 +$ If arg .Le. 8 Then Goto Loop +$ Goto Exit +$ +$Makeit: +$ VV=F$VERIFY(0) +$ write sys$output P2 +$ 'P2 +$ VV='F$Verify(VV) +$Exit: +$ If V Then Set Verify +$ENDSUBROUTINE Index: ircd-ircdev/libs/zlib/Makefile diff -u /dev/null ircd-ircdev/libs/zlib/Makefile:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/Makefile Fri Nov 14 19:11:54 2003 @@ -0,0 +1,175 @@ +# Makefile for zlib +# Copyright (C) 1995-2002 Jean-loup Gailly. +# For conditions of distribution and use, see copyright notice in zlib.h + +# To compile and test, type: +# ./configure; make test +# The call of configure is optional if you don't have special requirements +# If you wish to build zlib as a shared library, use: ./configure -s + +# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: +# make install +# To install in $HOME instead of /usr/local, use: +# make install prefix=$HOME + +CC=cc + +CFLAGS=-O +#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 +#CFLAGS=-g -DDEBUG +#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ +# -Wstrict-prototypes -Wmissing-prototypes + +LDFLAGS=-L. -lz +LDSHARED=$(CC) +CPP=$(CC) -E + +VER=1.1.4 +LIBS=libz.a +SHAREDLIB=libz.so + +AR=ar rc +RANLIB=ranlib +TAR=tar +SHELL=/bin/sh + +prefix = /usr/local +exec_prefix = ${prefix} +libdir = ${exec_prefix}/lib +includedir = ${prefix}/include + +OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ + zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o + +OBJA = +# to use the asm code: make OBJA=match.o + +TEST_OBJS = example.o minigzip.o + +DISTFILES = README FAQ INDEX ChangeLog configure Make*[a-z0-9] *.[ch] *.mms \ + algorithm.txt zlib.3 zlib.html \ + msdos/Make*[a-z0-9] msdos/zlib.def msdos/zlib.rc \ + nt/Make*[a-z0-9] nt/zlib.dnt amiga/Make*.??? os2/M*.os2 os2/zlib.def \ + contrib/RE*.contrib contrib/*.txt contrib/asm386/*.asm contrib/asm386/*.c \ + contrib/asm386/*.bat contrib/asm386/zlibvc.d?? contrib/asm[56]86/*.?86 \ + contrib/asm[56]86/*.S contrib/iostream/*.cpp \ + contrib/iostream/*.h contrib/iostream2/*.h contrib/iostream2/*.cpp \ + contrib/untgz/Makefile contrib/untgz/*.c contrib/untgz/*.w32 \ + contrib/minizip/[CM]*[pe] contrib/minizip/*.[ch] contrib/minizip/*.[td]?? \ + contrib/delphi*/*.??? + +all: example minigzip + +test: all + @LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ + echo hello world | ./minigzip | ./minigzip -d || \ + echo ' *** minigzip test FAILED ***' ; \ + if ./example; then \ + echo ' *** zlib test OK ***'; \ + else \ + echo ' *** zlib test FAILED ***'; \ + fi + +libz.a: $(OBJS) $(OBJA) + $(AR) $@ $(OBJS) $(OBJA) + -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 + +match.o: match.S + $(CPP) match.S > _match.s + $(CC) -c _match.s + mv _match.o match.o + rm -f _match.s + +$(SHAREDLIB).$(VER): $(OBJS) + $(LDSHARED) -o $@ $(OBJS) + rm -f $(SHAREDLIB) $(SHAREDLIB).1 + ln -s $@ $(SHAREDLIB) + ln -s $@ $(SHAREDLIB).1 + +example: example.o $(LIBS) + $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) + +minigzip: minigzip.o $(LIBS) + $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) + +install: $(LIBS) + -@if [ ! -d $(includedir) ]; then mkdir $(includedir); fi + -@if [ ! -d $(libdir) ]; then mkdir $(libdir); fi + cp zlib.h zconf.h $(includedir) + chmod 644 $(includedir)/zlib.h $(includedir)/zconf.h + cp $(LIBS) $(libdir) + cd $(libdir); chmod 755 $(LIBS) + -@(cd $(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 + cd $(libdir); if test -f $(SHAREDLIB).$(VER); then \ + rm -f $(SHAREDLIB) $(SHAREDLIB).1; \ + ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB); \ + ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB).1; \ + (ldconfig || true) >/dev/null 2>&1; \ + fi +# The ranlib in install is needed on NeXTSTEP which checks file times +# ldconfig is for Linux + +uninstall: + cd $(includedir); \ + v=$(VER); \ + if test -f zlib.h; then \ + v=`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`; \ + rm -f zlib.h zconf.h; \ + fi; \ + cd $(libdir); rm -f libz.a; \ + if test -f $(SHAREDLIB).$$v; then \ + rm -f $(SHAREDLIB).$$v $(SHAREDLIB) $(SHAREDLIB).1; \ + fi + +clean: + rm -f *.o *~ example minigzip libz.a libz.so* foo.gz so_locations \ + _match.s maketree + +distclean: clean + +zip: + mv Makefile Makefile~; cp -p Makefile.in Makefile + rm -f test.c ztest*.c contrib/minizip/test.zip + v=`sed -n -e 's/\.//g' -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\ + zip -ul9 zlib$$v $(DISTFILES) + mv Makefile~ Makefile + +dist: + mv Makefile Makefile~; cp -p Makefile.in Makefile + rm -f test.c ztest*.c contrib/minizip/test.zip + d=zlib-`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\ + rm -f $$d.tar.gz; \ + if test ! -d ../$$d; then rm -f ../$$d; ln -s `pwd` ../$$d; fi; \ + files=""; \ + for f in $(DISTFILES); do files="$$files $$d/$$f"; done; \ + cd ..; \ + GZIP=-9 $(TAR) chofz $$d/$$d.tar.gz $$files; \ + if test ! -d $$d; then rm -f $$d; fi + mv Makefile~ Makefile + +tags: + etags *.[ch] + +depend: + makedepend -- $(CFLAGS) -- *.[ch] + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +adler32.o: zlib.h zconf.h +compress.o: zlib.h zconf.h +crc32.o: zlib.h zconf.h +deflate.o: deflate.h zutil.h zlib.h zconf.h +example.o: zlib.h zconf.h +gzio.o: zutil.h zlib.h zconf.h +infblock.o: infblock.h inftrees.h infcodes.h infutil.h zutil.h zlib.h zconf.h +infcodes.o: zutil.h zlib.h zconf.h +infcodes.o: inftrees.h infblock.h infcodes.h infutil.h inffast.h +inffast.o: zutil.h zlib.h zconf.h inftrees.h +inffast.o: infblock.h infcodes.h infutil.h inffast.h +inflate.o: zutil.h zlib.h zconf.h infblock.h +inftrees.o: zutil.h zlib.h zconf.h inftrees.h +infutil.o: zutil.h zlib.h zconf.h infblock.h inftrees.h infcodes.h infutil.h +minigzip.o: zlib.h zconf.h +trees.o: deflate.h zutil.h zlib.h zconf.h trees.h +uncompr.o: zlib.h zconf.h +zutil.o: zutil.h zlib.h zconf.h Index: ircd-ircdev/libs/zlib/Makefile.in diff -u /dev/null ircd-ircdev/libs/zlib/Makefile.in:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/Makefile.in Fri Nov 14 19:11:54 2003 @@ -0,0 +1,175 @@ +# Makefile for zlib +# Copyright (C) 1995-2002 Jean-loup Gailly. +# For conditions of distribution and use, see copyright notice in zlib.h + +# To compile and test, type: +# ./configure; make test +# The call of configure is optional if you don't have special requirements +# If you wish to build zlib as a shared library, use: ./configure -s + +# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: +# make install +# To install in $HOME instead of /usr/local, use: +# make install prefix=$HOME + +CC=cc + +CFLAGS=-O +#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 +#CFLAGS=-g -DDEBUG +#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ +# -Wstrict-prototypes -Wmissing-prototypes + +LDFLAGS=-L. -lz +LDSHARED=$(CC) +CPP=$(CC) -E + +VER=1.1.4 +LIBS=libz.a +SHAREDLIB=libz.so + +AR=ar rc +RANLIB=ranlib +TAR=tar +SHELL=/bin/sh + +prefix = /usr/local +exec_prefix = ${prefix} +libdir = ${exec_prefix}/lib +includedir = ${prefix}/include + +OBJS = adler32.o compress.o crc32.o gzio.o uncompr.o deflate.o trees.o \ + zutil.o inflate.o infblock.o inftrees.o infcodes.o infutil.o inffast.o + +OBJA = +# to use the asm code: make OBJA=match.o + +TEST_OBJS = example.o minigzip.o + +DISTFILES = README FAQ INDEX ChangeLog configure Make*[a-z0-9] *.[ch] *.mms \ + algorithm.txt zlib.3 zlib.html \ + msdos/Make*[a-z0-9] msdos/zlib.def msdos/zlib.rc \ + nt/Make*[a-z0-9] nt/zlib.dnt amiga/Make*.??? os2/M*.os2 os2/zlib.def \ + contrib/RE*.contrib contrib/*.txt contrib/asm386/*.asm contrib/asm386/*.c \ + contrib/asm386/*.bat contrib/asm386/zlibvc.d?? contrib/asm[56]86/*.?86 \ + contrib/asm[56]86/*.S contrib/iostream/*.cpp \ + contrib/iostream/*.h contrib/iostream2/*.h contrib/iostream2/*.cpp \ + contrib/untgz/Makefile contrib/untgz/*.c contrib/untgz/*.w32 \ + contrib/minizip/[CM]*[pe] contrib/minizip/*.[ch] contrib/minizip/*.[td]?? \ + contrib/delphi*/*.??? + +all: example minigzip + +test: all + @LD_LIBRARY_PATH=.:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ + echo hello world | ./minigzip | ./minigzip -d || \ + echo ' *** minigzip test FAILED ***' ; \ + if ./example; then \ + echo ' *** zlib test OK ***'; \ + else \ + echo ' *** zlib test FAILED ***'; \ + fi + +libz.a: $(OBJS) $(OBJA) + $(AR) $@ $(OBJS) $(OBJA) + -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 + +match.o: match.S + $(CPP) match.S > _match.s + $(CC) -c _match.s + mv _match.o match.o + rm -f _match.s + +$(SHAREDLIB).$(VER): $(OBJS) + $(LDSHARED) -o $@ $(OBJS) + rm -f $(SHAREDLIB) $(SHAREDLIB).1 + ln -s $@ $(SHAREDLIB) + ln -s $@ $(SHAREDLIB).1 + +example: example.o $(LIBS) + $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) + +minigzip: minigzip.o $(LIBS) + $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) + +install: $(LIBS) + -@if [ ! -d $(includedir) ]; then mkdir $(includedir); fi + -@if [ ! -d $(libdir) ]; then mkdir $(libdir); fi + cp zlib.h zconf.h $(includedir) + chmod 644 $(includedir)/zlib.h $(includedir)/zconf.h + cp $(LIBS) $(libdir) + cd $(libdir); chmod 755 $(LIBS) + -@(cd $(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 + cd $(libdir); if test -f $(SHAREDLIB).$(VER); then \ + rm -f $(SHAREDLIB) $(SHAREDLIB).1; \ + ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB); \ + ln -s $(SHAREDLIB).$(VER) $(SHAREDLIB).1; \ + (ldconfig || true) >/dev/null 2>&1; \ + fi +# The ranlib in install is needed on NeXTSTEP which checks file times +# ldconfig is for Linux + +uninstall: + cd $(includedir); \ + v=$(VER); \ + if test -f zlib.h; then \ + v=`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`; \ + rm -f zlib.h zconf.h; \ + fi; \ + cd $(libdir); rm -f libz.a; \ + if test -f $(SHAREDLIB).$$v; then \ + rm -f $(SHAREDLIB).$$v $(SHAREDLIB) $(SHAREDLIB).1; \ + fi + +clean: + rm -f *.o *~ example minigzip libz.a libz.so* foo.gz so_locations \ + _match.s maketree + +distclean: clean + +zip: + mv Makefile Makefile~; cp -p Makefile.in Makefile + rm -f test.c ztest*.c contrib/minizip/test.zip + v=`sed -n -e 's/\.//g' -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\ + zip -ul9 zlib$$v $(DISTFILES) + mv Makefile~ Makefile + +dist: + mv Makefile Makefile~; cp -p Makefile.in Makefile + rm -f test.c ztest*.c contrib/minizip/test.zip + d=zlib-`sed -n '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h`;\ + rm -f $$d.tar.gz; \ + if test ! -d ../$$d; then rm -f ../$$d; ln -s `pwd` ../$$d; fi; \ + files=""; \ + for f in $(DISTFILES); do files="$$files $$d/$$f"; done; \ + cd ..; \ + GZIP=-9 $(TAR) chofz $$d/$$d.tar.gz $$files; \ + if test ! -d $$d; then rm -f $$d; fi + mv Makefile~ Makefile + +tags: + etags *.[ch] + +depend: + makedepend -- $(CFLAGS) -- *.[ch] + +# DO NOT DELETE THIS LINE -- make depend depends on it. + +adler32.o: zlib.h zconf.h +compress.o: zlib.h zconf.h +crc32.o: zlib.h zconf.h +deflate.o: deflate.h zutil.h zlib.h zconf.h +example.o: zlib.h zconf.h +gzio.o: zutil.h zlib.h zconf.h +infblock.o: infblock.h inftrees.h infcodes.h infutil.h zutil.h zlib.h zconf.h +infcodes.o: zutil.h zlib.h zconf.h +infcodes.o: inftrees.h infblock.h infcodes.h infutil.h inffast.h +inffast.o: zutil.h zlib.h zconf.h inftrees.h +inffast.o: infblock.h infcodes.h infutil.h inffast.h +inflate.o: zutil.h zlib.h zconf.h infblock.h +inftrees.o: zutil.h zlib.h zconf.h inftrees.h +infutil.o: zutil.h zlib.h zconf.h infblock.h inftrees.h infcodes.h infutil.h +minigzip.o: zlib.h zconf.h +trees.o: deflate.h zutil.h zlib.h zconf.h trees.h +uncompr.o: zlib.h zconf.h +zutil.o: zutil.h zlib.h zconf.h Index: ircd-ircdev/libs/zlib/Makefile.riscos diff -u /dev/null ircd-ircdev/libs/zlib/Makefile.riscos:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/Makefile.riscos Fri Nov 14 19:11:54 2003 @@ -0,0 +1,151 @@ +# Project: zlib_1_03 +# Patched for zlib 1.1.2 rw...@sh... 19980430 +# test works out-of-the-box, installs `somewhere' on demand + +# Toolflags: +CCflags = -c -depend !Depend -IC: -g -throwback -DRISCOS -fah +C++flags = -c -depend !Depend -IC: -throwback +Linkflags = -aif -c++ -o $@ +ObjAsmflags = -throwback -NoCache -depend !Depend +CMHGflags = +LibFileflags = -c -l -o $@ +Squeezeflags = -o $@ + +# change the line below to where _you_ want the library installed. +libdest = lib:zlib + +# Final targets: +@.lib: @.o.adler32 @.o.compress @.o.crc32 @.o.deflate @.o.gzio \ + @.o.infblock @.o.infcodes @.o.inffast @.o.inflate @.o.inftrees @.o.infutil @.o.trees \ + @.o.uncompr @.o.zutil + LibFile $(LibFileflags) @.o.adler32 @.o.compress @.o.crc32 @.o.deflate \ + @.o.gzio @.o.infblock @.o.infcodes @.o.inffast @.o.inflate @.o.inftrees @.o.infutil \ + @.o.trees @.o.uncompr @.o.zutil +test: @.minigzip @.example @.lib + @copy @.lib @.libc A~C~DF~L~N~P~Q~RS~TV + @echo running tests: hang on. + @/@.minigzip -f -9 libc + @/@.minigzip -d libc-gz + @/@.minigzip -f -1 libc + @/@.minigzip -d libc-gz + @/@.minigzip -h -9 libc + @/@.minigzip -d libc-gz + @/@.minigzip -h -1 libc + @/@.minigzip -d libc-gz + @/@.minigzip -9 libc + @/@.minigzip -d libc-gz + @/@.minigzip -1 libc + @/@.minigzip -d libc-gz + @diff @.lib @.libc + @echo that should have reported '@.lib and @.libc identical' if you have diff. + @/@.example @.fred @.fred + @echo that will have given lots of hello!'s. + +@.minigzip: @.o.minigzip @.lib C:o.Stubs + Link $(Linkflags) @.o.minigzip @.lib C:o.Stubs +@.example: @.o.example @.lib C:o.Stubs + Link $(Linkflags) @.o.example @.lib C:o.Stubs + +install: @.lib + cdir $(libdest) + cdir $(libdest).h + @copy @.h.zlib $(libdest).h.zlib A~C~DF~L~N~P~Q~RS~TV + @copy @.h.zconf $(libdest).h.zconf A~C~DF~L~N~P~Q~RS~TV + @copy @.lib $(libdest).lib A~C~DF~L~N~P~Q~RS~TV + @echo okay, installed zlib in $(libdest) + +clean:; remove @.minigzip + remove @.example + remove @.libc + -wipe @.o.* F~r~cV + remove @.fred + +# User-editable dependencies: +.c.o: + cc $(ccflags) -o $@ $< + +# Static dependencies: + +# Dynamic dependencies: +o.example: c.example +o.example: h.zlib +o.example: h.zconf +o.minigzip: c.minigzip +o.minigzip: h.zlib +o.minigzip: h.zconf +o.adler32: c.adler32 +o.adler32: h.zlib +o.adler32: h.zconf +o.compress: c.compress +o.compress: h.zlib +o.compress: h.zconf +o.crc32: c.crc32 +o.crc32: h.zlib +o.crc32: h.zconf +o.deflate: c.deflate +o.deflate: h.deflate +o.deflate: h.zutil +o.deflate: h.zlib +o.deflate: h.zconf +o.gzio: c.gzio +o.gzio: h.zutil +o.gzio: h.zlib +o.gzio: h.zconf +o.infblock: c.infblock +o.infblock: h.zutil +o.infblock: h.zlib +o.infblock: h.zconf +o.infblock: h.infblock +o.infblock: h.inftrees +o.infblock: h.infcodes +o.infblock: h.infutil +o.infcodes: c.infcodes +o.infcodes: h.zutil +o.infcodes: h.zlib +o.infcodes: h.zconf +o.infcodes: h.inftrees +o.infcodes: h.infblock +o.infcodes: h.infcodes +o.infcodes: h.infutil +o.infcodes: h.inffast +o.inffast: c.inffast +o.inffast: h.zutil +o.inffast: h.zlib +o.inffast: h.zconf +o.inffast: h.inftrees +o.inffast: h.infblock +o.inffast: h.infcodes +o.inffast: h.infutil +o.inffast: h.inffast +o.inflate: c.inflate +o.inflate: h.zutil +o.inflate: h.zlib +o.inflate: h.zconf +o.inflate: h.infblock +o.inftrees: c.inftrees +o.inftrees: h.zutil +o.inftrees: h.zlib +o.inftrees: h.zconf +o.inftrees: h.inftrees +o.inftrees: h.inffixed +o.infutil: c.infutil +o.infutil: h.zutil +o.infutil: h.zlib +o.infutil: h.zconf +o.infutil: h.infblock +o.infutil: h.inftrees +o.infutil: h.infcodes +o.infutil: h.infutil +o.trees: c.trees +o.trees: h.deflate +o.trees: h.zutil +o.trees: h.zlib +o.trees: h.zconf +o.trees: h.trees +o.uncompr: c.uncompr +o.uncompr: h.zlib +o.uncompr: h.zconf +o.zutil: c.zutil +o.zutil: h.zutil +o.zutil: h.zlib +o.zutil: h.zconf Index: ircd-ircdev/libs/zlib/README diff -u /dev/null ircd-ircdev/libs/zlib/README:1.1 --- /dev/null Fri Nov 14 19:12:09 2003 +++ ircd-ircdev/libs/zlib/README Fri Nov 14 19:11:54 2003 @@ -0,0 +1,147 @@ +zlib 1.1.4 is a general purpose data compression library. All the code +is thread safe. The data format used by the zlib library +is described by RFCs (Request for Comments) 1950 to 1952 in the files +http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate +format) and rfc1952.txt (gzip format). These documents are also available in +other formats from ftp://ftp.uu.net/graphics/png/documents/zlib/zdoc-index.html + +All functions of the compression library are documented in the file zlib.h +(volunteer to write man pages welcome, contact jl...@gz...). A usage +example of the library is given in the file example.c which also tests that +the library is working correctly. Another example is given in the file +minigzip.c. The compression library itself is composed of all source files +except example.c and minigzip.c. + +To compile all files and run the test program, follow the instructions +given at the top of Makefile. In short "make test; make install" +should work for most machines. For Unix: "./configure; make test; make install" +For MSDOS, use one of the special makefiles such as Makefile.msc. +For VMS, use Make_vms.com or descrip.mms. + +Questions about zlib should be sent to <zl...@gz...>, or to +Gilles Vollant <in...@wi...> for the Windows DLL version. +The zlib home page is http://www.zlib.org or http://www.gzip.org/zlib/ +Before reporting a problem, please check this site to verify that +you have the latest version of zlib; otherwise get the latest version and +check whether the problem still exists or not. + +PLEASE read the zlib FAQ http://www.gzip.org/zlib/zlib_faq.html +before asking for help. + +Mark Nelson <ma...@ie...> wrote an article about zlib for the Jan. 1997 +issue of Dr. Dobb's Journal; a copy of the article is available in +http://dogma.net/markn/articles/zlibtool/zlibtool.htm + +The changes made in version 1.1.4 are documented in the file ChangeLog. +The only changes made since 1.1.3 are bug corrections: + +- ZFREE was repeated on same allocation on some error conditions. + This creates a security problem described in + http://www.zlib.org/advisory-2002-03-11.txt +- Returned incorrect error (Z_MEM_ERROR) on some invalid data +- Avoid accesses before window for invalid distances with inflate window + less than 32K. +- force windowBits > 8 to avoid a bug in the encoder for a window size + of 256 bytes. (A complete fix will be available in 1.1.5). + +The beta version 1.1.5beta includes many more changes. A new official +version 1.1.5 will be released as soon as extensive testing has been +completed on it. + + +Unsupported third party contributions are provided in directory "contrib". + +A Java implementation of zlib is available in the Java Development Kit +http://www.javasoft.com/products/JDK/1.1/docs/api/Package-java.util.zip.html +See the zlib home page http://www.zlib.org for details. + +A Perl interface to zlib written by Paul Marquess <pma...@bf...> +is in the CPAN (Comprehensive Perl Archive Network) sites +http://www.cpan.org/modules/by-mo... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-02-22 16:25:47
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-02-22 16:12:56 UTC Modified files: doc/Makefile.in doc/ircd.sample-en.conf Log message: Author: zoltan <zo...@ir...> Log message: 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Sincronizacion con u2.10.11.07. * Limpieza de cabeceras (Licencia GPLv2) ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/Makefile.in diff -u ircd-ircdev/doc/Makefile.in:1.1.1.1 ircd-ircdev/doc/Makefile.in:1.2 --- ircd-ircdev/doc/Makefile.in:1.1.1.1 Mon Sep 8 03:34:26 2003 +++ ircd-ircdev/doc/Makefile.in Sun Feb 22 08:12:45 2004 @@ -1,20 +1,24 @@ -# doc/Makefile for the Undernet IRC Daemon. -# Copyright (C) 1997, Carlo Wood <ca...@ru...> - +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, doc/Makefile +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> +# Copyright (C) 1997 Carlo Wood <ca...@ru...> +# # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. - +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. - +# # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# $Id: Makefile.in,v 1.2 2004/02/22 16:12:45 zolty Exp $ +# #### Start of system configuration section. #### Index: ircd-ircdev/doc/ircd.sample-en.conf diff -u ircd-ircdev/doc/ircd.sample-en.conf:1.1 ircd-ircdev/doc/ircd.sample-en.conf:1.2 --- ircd-ircdev/doc/ircd.sample-en.conf:1.1 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/doc/ircd.sample-en.conf Sun Feb 22 08:12:46 2004 @@ -675,6 +675,7 @@ # "LOCAL_CHANNELS" = "TRUE"; # "KILLCHASETIMELIMIT" = "30"; # "MAXCHANNELSPERUSER" = "10"; +# "NICKLEN" = "9"; # "AVBANLEN" = "40"; # "MAXBANS" = "45"; # "MAXSILES" = "15"; @@ -697,6 +698,12 @@ # "TOS_SERVER" = "0x08"; # "TOS_CLIENT" = "0x08"; # "POLLS_PER_LOOP" = "200"; +# "IRCD_RES_TIMEOUTS = "4"; +# "IRCD_RES_RETRIES = "2"; +# "AUTH_TIMEOUT = "9"; +# "IPCHECK_CLONE_LIMIT = 24"; +# "IPCHECK_CLONE_PERIOD = "40"; +# "IPCHECK_CLONE_DELAY = "600"; # "CRYPT_OPER_PASSWORD" = "TRUE"; # "OPER_NO_CHAN_LIMIT" = "TRUE"; # "OPER_MODE_LCHAN" = "TRUE"; ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-02-22 16:26:57
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-02-22 16:13:31 UTC Modified files: include/IPcheck.h include/channel.h include/class.h include/client.h include/crule.h include/dbuf.h include/destruct_event.h include/fileio.h include/gline.h include/handlers.h include/hash.h include/iauth.h include/ircd.h include/ircd_alloc.h include/ircd_chattr.h include/ircd_defs.h include/ircd_events.h include/ircd_features.h include/ircd_handler.h include/ircd_log.h include/ircd_osdep.h include/ircd_relay.h include/ircd_reply.h include/ircd_signal.h include/ircd_snprintf.h include/ircd_string.h include/ircd_tea.h include/ircd_xopen.h include/jupe.h include/list.h include/listener.h include/match.h include/motd.h include/msg.h include/msgq.h include/numeric.h include/numnicks.h include/opercmds.h include/packet.h include/parse.h include/patchlevel.h include/querycmds.h include/random.h include/res.h include/s_auth.h include/s_bsd.h include/s_conf.h include/s_debug.h include/s_misc.h include/s_numeric.h include/s_serv.h include/s_stats.h include/s_user.h include/send.h include/struct.h include/support.h include/supported.h include/sys.h include/uping.h include/userload.h include/version.h include/watch.h include/whocmds.h include/whowas.h Log message: Author: zoltan <zo...@ir...> Log message: 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Sincronizacion con u2.10.11.07. * Limpieza de cabeceras (Licencia GPLv2) ---------------------- diff included ---------------------- Index: ircd-ircdev/include/IPcheck.h diff -u ircd-ircdev/include/IPcheck.h:1.1.1.1 ircd-ircdev/include/IPcheck.h:1.2 --- ircd-ircdev/include/IPcheck.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/IPcheck.h Sun Feb 22 08:13:20 2004 @@ -1,7 +1,25 @@ /* - * IPcheck.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/IPcheck.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1998 Carlo Wood <Ru...@un...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: IPcheck.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: IPcheck.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ipcheck_h #define INCLUDED_ipcheck_h Index: ircd-ircdev/include/channel.h diff -u ircd-ircdev/include/channel.h:1.3 ircd-ircdev/include/channel.h:1.4 --- ircd-ircdev/include/channel.h:1.3 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/channel.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,14 @@ /* - * IRC - Internet Relay Chat, ircd/channel.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/channel.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1996-1997 Carlo Wood * Copyright (C) 1990 Jarkko Oikarinen - * Copyright (C) 1996 - 1997 Carlo Wood * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,12 +17,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: channel.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ * - * $Id: channel.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_channel_h #define INCLUDED_channel_h + #ifndef INCLUDED_ircd_defs_h #include "ircd_defs.h" /* NICKLEN */ #endif Index: ircd-ircdev/include/class.h diff -u ircd-ircdev/include/class.h:1.2 ircd-ircdev/include/class.h:1.3 --- ircd-ircdev/include/class.h:1.2 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/include/class.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,14 @@ /* - * IRC - Internet Relay Chat, include/class.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/class.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1996-1997 Carlo Wood * Copyright (C) 1990 Darren Reed - * Copyright (C) 1996 - 1997 Carlo Wood * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +17,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: class.h,v 1.3 2004/02/22 16:13:20 zolty Exp $ * - * $Id: class.h,v 1.2 2003/11/01 15:26:45 zolty Exp $ */ #ifndef INCLUDED_class_h #define INCLUDED_class_h Index: ircd-ircdev/include/client.h diff -u ircd-ircdev/include/client.h:1.3 ircd-ircdev/include/client.h:1.4 --- ircd-ircdev/include/client.h:1.3 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/client.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/client.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/client.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,13 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * + * $Id: client.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ * - * $Id: client.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_client_h #define INCLUDED_client_h + #ifndef INCLUDED_ircd_defs_h #include "ircd_defs.h" #endif @@ -550,4 +552,3 @@ extern int client_report_privs(struct Client* to, struct Client* client); #endif /* INCLUDED_client_h */ - Index: ircd-ircdev/include/crule.h diff -u ircd-ircdev/include/crule.h:1.1.1.1 ircd-ircdev/include/crule.h:1.2 --- ircd-ircdev/include/crule.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/crule.h Sun Feb 22 08:13:20 2004 @@ -1,7 +1,25 @@ /* - * crule.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/crule.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Darren Reed + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: crule.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: crule.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_crule_h #define INCLUDED_crule_h Index: ircd-ircdev/include/dbuf.h diff -u ircd-ircdev/include/dbuf.h:1.1.1.1 ircd-ircdev/include/dbuf.h:1.2 --- ircd-ircdev/include/dbuf.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/dbuf.h Sun Feb 22 08:13:20 2004 @@ -1,11 +1,13 @@ /* - * IRC - Internet Relay Chat, include/dbuf.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/dbuf.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 1990 Markku Savela * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -14,12 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: dbuf.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: dbuf.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_dbuf_h #define INCLUDED_dbuf_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> /* size_t */ #define INCLUDED_sys_types_h @@ -60,5 +64,4 @@ extern unsigned int dbuf_getmsg(struct DBuf *dyn, char *buf, unsigned int length); extern void dbuf_count_memory(size_t *allocated, size_t *used); - #endif /* INCLUDED_dbuf_h */ Index: ircd-ircdev/include/destruct_event.h diff -u ircd-ircdev/include/destruct_event.h:1.1 ircd-ircdev/include/destruct_event.h:1.2 --- ircd-ircdev/include/destruct_event.h:1.1 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/destruct_event.h Sun Feb 22 08:13:20 2004 @@ -1,13 +1,13 @@ -#ifndef INCLUDED_destruct_event_h -#define INCLUDED_destruct_event_h /* - * IRC - Internet Relay Chat, include/destruct_event.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/destruct_event.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2002 Carlo Wood <ca...@al...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -16,10 +16,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: destruct_event.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: destruct_event.h,v 1.1 2003/11/11 21:36:21 zolty Exp $ */ +#ifndef INCLUDED_destruct_event_h +#define INCLUDED_destruct_event_h #ifndef INCLUDED_config_h #include "config.h" Index: ircd-ircdev/include/fileio.h diff -u ircd-ircdev/include/fileio.h:1.1.1.1 ircd-ircdev/include/fileio.h:1.2 --- ircd-ircdev/include/fileio.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/fileio.h Sun Feb 22 08:13:20 2004 @@ -1,7 +1,26 @@ /* - * fileio.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/fileio.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1998 Thomas Helvey <to...@in...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: fileio.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: fileio.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_fileio_h #define INCLUDED_fileio_h Index: ircd-ircdev/include/gline.h diff -u ircd-ircdev/include/gline.h:1.1.1.1 ircd-ircdev/include/gline.h:1.2 --- ircd-ircdev/include/gline.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/gline.h Sun Feb 22 08:13:20 2004 @@ -1,15 +1,15 @@ -#ifndef INCLUDED_gline_h -#define INCLUDED_gline_h /* - * IRC - Internet Relay Chat, include/gline.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center - * Copyright (C) 1996 -1997 Carlo Wood + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/gline.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * Copyright (C) 1996-1997 Carlo Wood + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,10 +18,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: gline.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: gline.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ +#ifndef INCLUDED_gline_h +#define INCLUDED_gline_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> #define INCLUDED_sys_types_h Index: ircd-ircdev/include/handlers.h diff -u ircd-ircdev/include/handlers.h:1.3 ircd-ircdev/include/handlers.h:1.4 --- ircd-ircdev/include/handlers.h:1.3 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/handlers.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/handlers.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/handlers.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: handlers.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ * - * $Id: handlers.h,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ #ifndef INCLUDED_handlers_h #define INCLUDED_handlers_h Index: ircd-ircdev/include/hash.h diff -u ircd-ircdev/include/hash.h:1.2 ircd-ircdev/include/hash.h:1.3 --- ircd-ircdev/include/hash.h:1.2 Tue Oct 7 11:52:17 2003 +++ ircd-ircdev/include/hash.h Sun Feb 22 08:13:20 2004 @@ -1,11 +1,14 @@ /* - * IRC - Internet Relay Chat, include/hash.h - * Copyright (C) 1998 by Andrea "Nemesi" Cocito + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/hash.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1998 Andrea Cocito + * Copyright (C) 1991 Darren Reed * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -14,11 +17,11 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: hash.h,v 1.3 2004/02/22 16:13:20 zolty Exp $ * - * $Id: hash.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ - #ifndef INCLUDED_hash_h #define INCLUDED_hash_h Index: ircd-ircdev/include/iauth.h diff -u ircd-ircdev/include/iauth.h:1.1.1.1 ircd-ircdev/include/iauth.h:1.2 --- ircd-ircdev/include/iauth.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/iauth.h Sun Feb 22 08:13:20 2004 @@ -1,22 +1,25 @@ -/* - Internet Relay Chat, include/iauth.h - * Copyright (C) 2001 Perry Lorier <Is...@co...> +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/iauth.h * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2001 Perry Lorier <is...@co...> * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: iauth.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: iauth.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ +* */ #ifndef INCLUDED_iauth_h #define INCLUDED_iauth_h @@ -31,6 +34,4 @@ extern struct Iauth* IauthPollList; /* GLOBAL - iauth list */ - #endif /* INCLUDED_iauth_h */ - Index: ircd-ircdev/include/ircd.h diff -u ircd-ircdev/include/ircd.h:1.1.1.1 ircd-ircdev/include/ircd.h:1.2 --- ircd-ircdev/include/ircd.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd.h Sun Feb 22 08:13:20 2004 @@ -1,10 +1,29 @@ /* - * ircd.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: ircd.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_h #define INCLUDED_ircd_h + #ifndef INCLUDED_struct_h #include "struct.h" /* struct Client */ #endif @@ -63,4 +82,3 @@ extern int running; #endif /* INCLUDED_ircd_h */ - Index: ircd-ircdev/include/ircd_alloc.h diff -u ircd-ircdev/include/ircd_alloc.h:1.1.1.1 ircd-ircdev/include/ircd_alloc.h:1.2 --- ircd-ircdev/include/ircd_alloc.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_alloc.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/ircd_alloc.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_alloc.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 1999 Thomas Helvey <to...@in...> * - * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,11 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * Commentary by Bleep (Thomas Helvey) + * $Id: ircd_alloc.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: ircd_alloc.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_alloc_h #define INCLUDED_ircd_alloc_h @@ -69,4 +69,3 @@ #endif /* defined(MDEBUG) */ #endif /* INCLUDED_ircd_alloc_h */ - Index: ircd-ircdev/include/ircd_chattr.h diff -u ircd-ircdev/include/ircd_chattr.h:1.1.1.1 ircd-ircdev/include/ircd_chattr.h:1.2 --- ircd-ircdev/include/ircd_chattr.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_chattr.h Sun Feb 22 08:13:20 2004 @@ -1,11 +1,13 @@ /* - * IRC - Internet Relay Chat, include/ircd_chattr.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_chattr.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 1998 Andrea Cocito * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -14,22 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_chattr.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ + * $Id: ircd_chattr.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * */ -/* - * All the code in common.h/common.c is taken from the NTL - * (Nemesi's Tools Library), adapted for ircu's character set - * and thereafter released under GNU GPL, from there comes the - * NTL_ prefix of all macro and object names. - * Removed isXdigit() to leave space to other char sets in the - * bitmap, should give the same results as isxdigit() on any - * implementation and isn't used in IRC anyway. - */ #ifndef INCLUDED_ircd_chattr_h #define INCLUDED_ircd_chattr_h + #ifndef INCLUDED_limits_h #include <limits.h> #define INCLUDED_limits_h @@ -40,6 +34,16 @@ #endif /* + * All the code in common.h/common.c is taken from the NTL + * (Nemesi's Tools Library), adapted for ircu's character set + * and thereafter released under GNU GPL, from there comes the + * NTL_ prefix of all macro and object names. + * Removed isXdigit() to leave space to other char sets in the + * bitmap, should give the same results as isxdigit() on any + * implementation and isn't used in IRC anyway. + */ + +/* * Character attribute macros */ #define NTL_ALNUM 0x0001 /* (NTL_ALPHA | NTL_DIGIT) */ Index: ircd-ircdev/include/ircd_defs.h diff -u ircd-ircdev/include/ircd_defs.h:1.1.1.1 ircd-ircdev/include/ircd_defs.h:1.2 --- ircd-ircdev/include/ircd_defs.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_defs.h Sun Feb 22 08:13:20 2004 @@ -1,12 +1,14 @@ /* - * IRC - Internet Relay Chat, include/ircd_defs.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_defs.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1999 Thomas Helvey <to...@in...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,14 +17,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * Commentary by Bleep (Thomas Helvey) + * $Id: ircd_defs.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: ircd_defs.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_defs_h #define INCLUDED_ircd_defs_h + /* * Definitions used everywhere in the server * NOTE: Changing any of these definitions is equivalent to a protocol @@ -38,7 +40,7 @@ * it. Thanks for helping debug guys. */ #ifndef NICKLEN -#define NICKLEN 9 +#define NICKLEN 15 #endif /* * USERLEN is the maximum length allowed of a user name including an optional Index: ircd-ircdev/include/ircd_events.h diff -u ircd-ircdev/include/ircd_events.h:1.1.1.1 ircd-ircdev/include/ircd_events.h:1.2 --- ircd-ircdev/include/ircd_events.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_events.h Sun Feb 22 08:13:20 2004 @@ -1,13 +1,13 @@ -#ifndef INCLUDED_ircd_events_h -#define INCLUDED_ircd_events_h /* - * IRC - Internet Relay Chat, include/ircd_events.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_events.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2001 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -16,10 +16,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_events.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ * - * $Id: ircd_events.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ +#ifndef INCLUDED_ircd_events_h +#define INCLUDED_ircd_events_h #ifndef INCLUDED_config_h #include "config.h" Index: ircd-ircdev/include/ircd_features.h diff -u ircd-ircdev/include/ircd_features.h:1.4 ircd-ircdev/include/ircd_features.h:1.5 --- ircd-ircdev/include/ircd_features.h:1.4 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/ircd_features.h Sun Feb 22 08:13:20 2004 @@ -1,13 +1,13 @@ -#ifndef INCLUDED_features_h -#define INCLUDED_features_h /* - * IRC - Internet Relay Chat, include/features.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_features.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -16,10 +16,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_features.h,v 1.5 2004/02/22 16:13:20 zolty Exp $ * - * $Id: ircd_features.h,v 1.4 2003/11/11 21:36:21 zolty Exp $ */ +#ifndef INCLUDED_features_h +#define INCLUDED_features_h struct Client; struct StatDesc; @@ -57,6 +60,7 @@ /* features that probably should not be touched */ FEAT_KILLCHASETIMELIMIT, FEAT_MAXCHANNELSPERUSER, + FEAT_NICKLEN, FEAT_AVBANLEN, FEAT_MAXBANS, FEAT_MAXSILES, @@ -72,6 +76,9 @@ FEAT_GLINEMAXUSERCOUNT, FEAT_SOCKSENDBUF, FEAT_SOCKRECVBUF, + FEAT_IPCHECK_CLONE_LIMIT, + FEAT_IPCHECK_CLONE_PERIOD, + FEAT_IPCHECK_CLONE_DELAY, /* Some misc. default paths */ FEAT_MPATH, @@ -83,6 +90,9 @@ FEAT_TOS_SERVER, FEAT_TOS_CLIENT, FEAT_POLLS_PER_LOOP, + FEAT_IRCD_RES_RETRIES, + FEAT_IRCD_RES_TIMEOUT, + FEAT_AUTH_TIMEOUT, /* features that affect all operators */ FEAT_CRYPT_OPER_PASSWORD, Index: ircd-ircdev/include/ircd_handler.h diff -u ircd-ircdev/include/ircd_handler.h:1.1.1.1 ircd-ircdev/include/ircd_handler.h:1.2 --- ircd-ircdev/include/ircd_handler.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_handler.h Sun Feb 22 08:13:21 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/ircd_handler.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_handler.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_handler.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_handler.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_handler_h #define INCLUDED_ircd_handler_h @@ -48,4 +50,3 @@ #endif /* INCLUDED_ircd_handler_h */ - Index: ircd-ircdev/include/ircd_log.h diff -u ircd-ircdev/include/ircd_log.h:1.1.1.1 ircd-ircdev/include/ircd_log.h:1.2 --- ircd-ircdev/include/ircd_log.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_log.h Sun Feb 22 08:13:21 2004 @@ -1,22 +1,25 @@ -/* - Internet Relay Chat, include/ircd_log.h - * Copyright (C) 1999 Thomas Helvey +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_log.h * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1999 Thomas Helvey * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_log.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_log.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_log_h #define INCLUDED_ircd_log_h Index: ircd-ircdev/include/ircd_osdep.h diff -u ircd-ircdev/include/ircd_osdep.h:1.1.1.1 ircd-ircdev/include/ircd_osdep.h:1.2 --- ircd-ircdev/include/ircd_osdep.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_osdep.h Sun Feb 22 08:13:21 2004 @@ -1,7 +1,26 @@ /* - * ircd_osdep.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_osdep.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1999 Thomas Helvey <to...@in...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_osdep.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_osdep.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_osdep_h #define INCLUDED_ircd_osdep_h @@ -46,4 +65,3 @@ extern int os_set_tos(int fd,int tos); #endif /* INCLUDED_ircd_osdep_h */ - Index: ircd-ircdev/include/ircd_relay.h diff -u ircd-ircdev/include/ircd_relay.h:1.1.1.1 ircd-ircdev/include/ircd_relay.h:1.2 --- ircd-ircdev/include/ircd_relay.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_relay.h Sun Feb 22 08:13:21 2004 @@ -1,17 +1,13 @@ -#ifndef INCLUDED_IRCD_RELAY_H -#define INCLUDED_IRCD_RELAY_H /* - * IRC - Internet Relay Chat, include/ircd_relay.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_relay.h * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -20,10 +16,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_relay.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_relay.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ +#ifndef INCLUDED_ircd_relay_h +#define INCLUDED_ircd_relay_h struct Client; @@ -43,4 +42,4 @@ extern void server_relay_private_message(struct Client* sptr, const char* name, const char* text); extern void server_relay_private_notice(struct Client* sptr, const char* name, const char* text); -#endif /* INCLUDED_IRCD_RELAY_H */ +#endif /* INCLUDED_ircd_relay_h */ Index: ircd-ircdev/include/ircd_reply.h diff -u ircd-ircdev/include/ircd_reply.h:1.1.1.1 ircd-ircdev/include/ircd_reply.h:1.2 --- ircd-ircdev/include/ircd_reply.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_reply.h Sun Feb 22 08:13:21 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/ircd_reply.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_handler.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_reply.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_reply.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_reply_h #define INCLUDED_ircd_reply_h @@ -32,4 +34,3 @@ #define SND_EXPLICIT 0x40000000 /* first arg is a pattern to use */ #endif /* INCLUDED_ircd_reply_h */ - Index: ircd-ircdev/include/ircd_signal.h diff -u ircd-ircdev/include/ircd_signal.h:1.1.1.1 ircd-ircdev/include/ircd_signal.h:1.2 --- ircd-ircdev/include/ircd_signal.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_signal.h Sun Feb 22 08:13:21 2004 @@ -1,7 +1,25 @@ /* - * ircd_signal.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_signal.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_signal.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_signal.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_signal_h #define INCLUDED_ircd_signal_h Index: ircd-ircdev/include/ircd_snprintf.h diff -u ircd-ircdev/include/ircd_snprintf.h:1.1.1.1 ircd-ircdev/include/ircd_snprintf.h:1.2 --- ircd-ircdev/include/ircd_snprintf.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_snprintf.h Sun Feb 22 08:13:21 2004 @@ -1,13 +1,13 @@ -#ifndef INCLUDED_ircd_snprintf_h -#define INCLUDED_ircd_snprintf_h /* - * IRC - Internet Relay Chat, include/ircd_snprintf.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_snprintf.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -16,10 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_snprintf.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_snprintf.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ +#ifndef INCLUDED_ircd_snprintf_h +#define INCLUDED_ircd_snprintf_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> #define INCLUDED_sys_types_h Index: ircd-ircdev/include/ircd_string.h diff -u ircd-ircdev/include/ircd_string.h:1.1.1.1 ircd-ircdev/include/ircd_string.h:1.2 --- ircd-ircdev/include/ircd_string.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_string.h Sun Feb 22 08:13:21 2004 @@ -1,10 +1,29 @@ /* - * ircd_string.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_string.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1999 Thomas Helvey + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_string.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_string.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_string_h #define INCLUDED_ircd_string_h + #ifndef INCLUDED_ircd_chattr_h #include "ircd_chattr.h" #endif @@ -101,4 +120,3 @@ extern int strnChattr(const char *s, const size_t n); #endif /* INCLUDED_ircd_string_h */ - Index: ircd-ircdev/include/ircd_tea.h diff -u ircd-ircdev/include/ircd_tea.h:1.1 ircd-ircdev/include/ircd_tea.h:1.2 --- ircd-ircdev/include/ircd_tea.h:1.1 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/include/ircd_tea.h Sun Feb 22 08:13:21 2004 @@ -1,24 +1,24 @@ /* - * IRC - Internet Relay Chat, ircd/ircd_tea.h - * - * See file AUTHORS in IRC package for additional names of - * the programmers. - * + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_tea.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_tea.h,v 1.1 2003/11/11 21:36:21 zolty Exp $ + * $Id: ircd_tea.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * */ #ifndef INCLUDED_ircd_tea_h #define INCLUDED_ircd_tea_h Index: ircd-ircdev/include/ircd_xopen.h diff -u ircd-ircdev/include/ircd_xopen.h:1.1.1.1 ircd-ircdev/include/ircd_xopen.h:1.2 --- ircd-ircdev/include/ircd_xopen.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/ircd_xopen.h Sun Feb 22 08:13:21 2004 @@ -1,7 +1,25 @@ /* - * ircd_xopen.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/ircd_xopen.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990-1991 Armin Gruner + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ircd_xopen.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: ircd_xopen.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_ircd_xopen_h #define INCLUDED_ircd_xopen_h @@ -9,4 +27,3 @@ extern const char* ircd_crypt(const char* key, const char* salt); #endif /* INCLUDED_ircd_xopen_h */ - Index: ircd-ircdev/include/jupe.h diff -u ircd-ircdev/include/jupe.h:1.1.1.1 ircd-ircdev/include/jupe.h:1.2 --- ircd-ircdev/include/jupe.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/jupe.h Sun Feb 22 08:13:21 2004 @@ -1,15 +1,13 @@ -#ifndef INCLUDED_jupe_h -#define INCLUDED_jupe_h /* - * IRC - Internet Relay Chat, include/jupe.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/jupe.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,10 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: jupe.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: jupe.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ +#ifndef INCLUDED_jupe_h +#define INCLUDED_jupe_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> #define INCLUDED_sys_types_h Index: ircd-ircdev/include/list.h diff -u ircd-ircdev/include/list.h:1.2 ircd-ircdev/include/list.h:1.3 --- ircd-ircdev/include/list.h:1.2 Tue Oct 7 11:52:17 2003 +++ ircd-ircdev/include/list.h Sun Feb 22 08:13:21 2004 @@ -1,10 +1,29 @@ /* - * list.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/list.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: list.h,v 1.3 2004/02/22 16:13:21 zolty Exp $ * - * $Id: list.h,v 1.2 2003/10/07 18:52:17 zolty Exp $ */ #ifndef INCLUDED_list_h #define INCLUDED_list_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> /* time_t, size_t */ #define INCLUDED_sys_types_h Index: ircd-ircdev/include/listener.h diff -u ircd-ircdev/include/listener.h:1.1.1.1 ircd-ircdev/include/listener.h:1.2 --- ircd-ircdev/include/listener.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/listener.h Sun Feb 22 08:13:21 2004 @@ -1,25 +1,29 @@ -/* - Internet Relay Chat, include/listener.h - * Copyright (C) 1999 Thomas Helvey <to...@in...> +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/listener.h * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1999 Thomas Helvey <to...@in...> * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: listener.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: listener.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_listener_h #define INCLUDED_listener_h + #ifndef INCLUDED_ircd_defs_h #include "ircd_defs.h" /* HOSTLEN */ #endif @@ -68,4 +72,3 @@ extern void release_listener(struct Listener* listener); #endif /* INCLUDED_listener_h */ - Index: ircd-ircdev/include/match.h diff -u ircd-ircdev/include/match.h:1.1.1.1 ircd-ircdev/include/match.h:1.2 --- ircd-ircdev/include/match.h:1.1.1.1 Mon Sep 8 03:34:27 2003 +++ ircd-ircdev/include/match.h Sun Feb 22 08:13:21 2004 @@ -1,10 +1,29 @@ /* - * match.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/match.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: match.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ * - * $Id: match.h,v 1.1.1.1 2003/09/08 10:34:27 zolty Exp $ */ #ifndef INCLUDED_match_h #define INCLUDED_match_h + #ifndef INCLUDED_sys_types_h #include <sys/types.h> /* XXX - broken BSD system headers */ #define INCLUDED_sys_types_h Index: ircd-ircdev/include/motd.h diff -u ircd-ircdev/include/motd.h:1.2 ircd-ircdev/include/motd.h:1.3 --- ircd-ircdev/include/motd.h:1.2 Sat Nov 1 07:26:45 2003 +++ ircd-ircdev/include/motd.h Sun Feb 22 08:13:21 2004 @@ -1,15 +1,14 @@ -#ifndef INCLUDED_motd_h -#define INCLUDED_motd_h /* - * IRC - Internet Relay Chat, include/motd.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/motd.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,10 +17,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: motd.h,v 1.3 2004/02/22 16:13:21 zolty Exp $ * - * $Id: motd.h,v 1.2 2003/11/01 15:26:45 zolty Exp $ */ +#ifndef INCLUDED_motd_h +#define INCLUDED_motd_h + #ifndef INCLUDED_time_h #include <time.h> /* struct tm */ #define INCLUDED_time_h Index: ircd-ircdev/include/msg.h diff -u ircd-ircdev/include/msg.h:1.2 ircd-ircdev/include/msg.h:1.3 --- ircd-ircdev/include/msg.h:1.2 Tue Oct 7 11:52:18 2003 +++ ircd-ircdev/include/msg.h Sun Feb 22 08:13:21 2004 @@ -1,12 +1,13 @@ /* - * IRC - Internet Relay Chat, include/msg.h - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, include/msg.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,12 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-13... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-02-22 16:27:27
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-02-22 16:14:35 UTC Modified files: tools/Makefile.crypt tools/README tools/crypter tools/mkchroot tools/mkpasswd.c tools/ringlog.c tools/ringlog.pl tools/transition tools/wrapper.c Log message: Author: zoltan <zo...@ir...> Log message: 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Sincronizacion con u2.10.11.07. * Limpieza de cabeceras (Licencia GPLv2) ---------------------- diff included ---------------------- Index: ircd-ircdev/tools/Makefile.crypt diff -u ircd-ircdev/tools/Makefile.crypt:1.1.1.1 ircd-ircdev/tools/Makefile.crypt:1.2 --- ircd-ircdev/tools/Makefile.crypt:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/Makefile.crypt Sun Feb 22 08:14:25 2004 @@ -1,22 +1,26 @@ -#************************************************************************ -#* IRC - Internet Relay Chat, ircd/crypt/Makefile -#* Copyright (C) 1991 Darren Reed -#* -#* This program is free software; you can redistribute it and/or modify -#* it under the terms of the GNU General Public License as published by -#* the Free Software Foundation; either version 1, or (at your option) -#* any later version. -#* -#* This program is distributed in the hope that it will be useful, -#* but WITHOUT ANY WARRANTY; without even the implied warranty of -#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#* GNU General Public License for more details. -#* -#* You should have received a copy of the GNU General Public License -#* along with this program; if not, write to the Free Software -#* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -#*/ # +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/Makefile.crypt +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> +# Copyright (C) 1991 Darren Reed +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# $Id: Makefile.crypt,v 1.2 2004/02/22 16:14:25 zolty Exp $ +# + # Change this to the path of your local ircd.conf file # IRCDCONF = /usr/local/lib/irc/ircd.conf Index: ircd-ircdev/tools/README diff -u ircd-ircdev/tools/README:1.1.1.1 ircd-ircdev/tools/README:1.2 --- ircd-ircdev/tools/README:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/README Sun Feb 22 08:14:25 2004 @@ -1,20 +1,25 @@ -/************************************************************************ - * IRC - Internet Relay Chat, tools/README - * Copyright (C) 1991 Nelson Minar - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/README + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1991 Nelson Minar + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: README,v 1.2 2004/02/22 16:14:25 zolty Exp $ + * */ The change implemented here is that the operator passwords in the ircd.conf Index: ircd-ircdev/tools/crypter diff -u ircd-ircdev/tools/crypter:1.1.1.1 ircd-ircdev/tools/crypter:1.2 --- ircd-ircdev/tools/crypter:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/crypter Sun Feb 22 08:14:25 2004 @@ -1,22 +1,26 @@ #!/usr/local/bin/perl -#************************************************************************ -#* IRC - Internet Relay Chat, ircd/crypt/crypter -#* Copyright (C) 1991 Sean Batt -#* -#* This program is free software; you can redistribute it and/or modify -#* it under the terms of the GNU General Public License as published by -#* the Free Software Foundation; either version 1, or (at your option) -#* any later version. -#* -#* This program is distributed in the hope that it will be useful, -#* but WITHOUT ANY WARRANTY; without even the implied warranty of -#* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -#* GNU General Public License for more details. -#* -#* You should have received a copy of the GNU General Public License -#* along with this program; if not, write to the Free Software -#* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -#*/ +# +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/crypter +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> +# Copyright (C) 1991 Sean Batt +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# $Id: crypter,v 1.2 2004/02/22 16:14:25 zolty Exp $ +# #From Sean Batt se...@co... # Index: ircd-ircdev/tools/mkchroot diff -u ircd-ircdev/tools/mkchroot:1.1.1.1 ircd-ircdev/tools/mkchroot:1.2 --- ircd-ircdev/tools/mkchroot:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/mkchroot Sun Feb 22 08:14:25 2004 @@ -1,12 +1,14 @@ #!/bin/sh # -# IRC - Internet Relay Chat, tools/mkchroot +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/mkchroot +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> # Copyright (C) 2001 Kevin L. Mitchell <kl...@mi...> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +17,10 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# $Id: mkchroot,v 1.2 2004/02/22 16:14:25 zolty Exp $ # -# $Id: mkchroot,v 1.1.1.1 2003/09/08 10:34:31 zolty Exp $ if test $# -lt 2; then echo "Usage: $0 <destdir> <executable> [<executable> [...]]" >&2 Index: ircd-ircdev/tools/mkpasswd.c diff -u ircd-ircdev/tools/mkpasswd.c:1.1.1.1 ircd-ircdev/tools/mkpasswd.c:1.2 --- ircd-ircdev/tools/mkpasswd.c:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/mkpasswd.c Sun Feb 22 08:14:25 2004 @@ -1,6 +1,25 @@ -/* simple password generator by Nelson Minar (mi...@re...) - * copyright 1991, all rights reserved. - * You can use this code as long as my name stays with it. +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/mkpasswd.c + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1991 Nelson Minar (mi...@re...) + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: mkpasswd.c,v 1.2 2004/02/22 16:14:25 zolty Exp $ + * */ #define _XOPEN_SOURCE #define _XOPEN_VERSION 4 @@ -36,4 +55,3 @@ printf("%s\n", crypt(plaintext, salt)); return 0; } - Index: ircd-ircdev/tools/ringlog.c diff -u ircd-ircdev/tools/ringlog.c:1.1.1.1 ircd-ircdev/tools/ringlog.c:1.2 --- ircd-ircdev/tools/ringlog.c:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/ringlog.c Sun Feb 22 08:14:25 2004 @@ -1,22 +1,27 @@ /* -** Copyright (C) 2002 by Kevin L. Mitchell <kl...@mi...> -** -** This program is free software; you can redistribute it and/or modify -** it under the terms of the GNU General Public License as published by -** the Free Software Foundation; either version 2 of the License, or -** (at your option) any later version. -** -** This program is distributed in the hope that it will be useful, -** but WITHOUT ANY WARRANTY; without even the implied warranty of -** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -** GNU General Public License for more details. -** -** You should have received a copy of the GNU General Public License -** along with this program; if not, write to the Free Software -** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -** -** @(#)$Id: ringlog.c,v 1.1.1.1 2003/09/08 10:34:31 zolty Exp $ -*/ + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/ringlog.c + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2002 by Kevin L. Mitchell <kl...@mi...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: ringlog.c,v 1.2 2004/02/22 16:14:25 zolty Exp $ + * + */ + /* * This file contains two separate pieces, along with some common * gunk. If RINGLOG_INSTRUMENT is defined, the two special functions Index: ircd-ircdev/tools/ringlog.pl diff -u ircd-ircdev/tools/ringlog.pl:1.1.1.1 ircd-ircdev/tools/ringlog.pl:1.2 --- ircd-ircdev/tools/ringlog.pl:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/ringlog.pl Sun Feb 22 08:14:25 2004 @@ -1,6 +1,9 @@ #! /usr/bin/perl -w # -# Copyright (C) 2002 by Kevin L. Mitchell <kl...@mi...> +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/ringlog.pl +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> +# Copyright (C) 2002 Kevin L. Mitchell <kl...@mi...> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -16,8 +19,9 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# @(#)$Id: ringlog.pl,v 1.1.1.1 2003/09/08 10:34:31 zolty Exp $ +# $Id: ringlog.pl,v 1.2 2004/02/22 16:14:25 zolty Exp $ # + # This program is intended to be used in conjunction with ringlog and # the binutils program addr2line. The -r option specifies the path to # the ringlog program; the -a option specifies the path to addr2line. Index: ircd-ircdev/tools/transition diff -u ircd-ircdev/tools/transition:1.1.1.1 ircd-ircdev/tools/transition:1.2 --- ircd-ircdev/tools/transition:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/transition Sun Feb 22 08:14:25 2004 @@ -1,12 +1,14 @@ #!/bin/sh # -# IRC - Internet Relay Chat, tools/transition +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/transition +# +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> # Copyright (C) 2001 Kevin L. Mitchell <kl...@mi...> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 1, or (at your option) -# any later version. +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -15,9 +17,10 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# $Id: transition,v 1.2 2004/02/22 16:14:25 zolty Exp $ # -# $Id: transition,v 1.1.1.1 2003/09/08 10:34:31 zolty Exp $ # Better than having evals all over the place setvar () { Index: ircd-ircdev/tools/wrapper.c diff -u ircd-ircdev/tools/wrapper.c:1.1.1.1 ircd-ircdev/tools/wrapper.c:1.2 --- ircd-ircdev/tools/wrapper.c:1.1.1.1 Mon Sep 8 03:34:31 2003 +++ ircd-ircdev/tools/wrapper.c Sun Feb 22 08:14:25 2004 @@ -1,22 +1,26 @@ /* -** Copyright (C) 2000 by Kevin L. Mitchell <kl...@mi...> -** -** This program is free software; you can redistribute it and/or modify -** it under the terms of the GNU General Public License as published by -** the Free Software Foundation; either version 2 of the License, or -** (at your option) any later version. -** -** This program is distributed in the hope that it will be useful, -** but WITHOUT ANY WARRANTY; without even the implied warranty of -** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -** GNU General Public License for more details. -** -** You should have received a copy of the GNU General Public License -** along with this program; if not, write to the Free Software -** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -** -** @(#)$Id: wrapper.c,v 1.1.1.1 2003/09/08 10:34:31 zolty Exp $ -*/ + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, tools/wrapper.c + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 by Kevin L. Mitchell <kl...@mi...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: wrapper.c,v 1.2 2004/02/22 16:14:25 zolty Exp $ + * + */ #include <string.h> #include <stdlib.h> #include <stdio.h> @@ -47,6 +51,9 @@ #endif #endif +/*fix for change uid/gid with chroot #ubra 08/02/03*/ +int uid, gid; + /* * Set the hard and soft limits for maximum file descriptors. */ @@ -78,14 +85,16 @@ /* * Change the user and group ids--including supplementary groups!--as * appropriate. + * + * fix for change uid/gid with chroot #ubra 08/02/03 + * old change_user() got splited into get_user() and set_user() */ int -change_user(char *user, char *group) +get_user(char *user, char *group) { struct passwd *pwd; struct group *grp; char *tmp; - int uid, gid; /* Track down a struct passwd describing the desired user */ uid = strtol(user, &tmp, 10); /* was the user given as a number? */ @@ -111,6 +120,11 @@ if (initgroups(pwd->pw_name, gid)) /* initialize supplementary groups */ return -1; + return 0; /* success! */ +} + +int +set_user(void) { if (setgid(gid)) /* change our current group */ return -1; if (setuid(uid)) /* change our current user */ @@ -182,6 +196,13 @@ return 1; } + if(user) /* get the selected user account uid/gid*/ + if (get_user(user, group)) { + perror(prog); + return 1; + } + + if (root) /* change root directories */ if (change_root(root)) { perror(prog); @@ -189,7 +210,7 @@ } if (user) /* change to selected user account */ - if (change_user(user, group)) { + if (set_user()) { perror(prog); return 1; } ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-02-22 16:29:45
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-02-22 16:16:49 UTC Modified files: ChangeLog ChangeLog.es Makefile.in TODO.es acconfig.h config.h.in configure configure.in Added files: Doxyfile Log message: Author: zoltan <zo...@ir...> Log message: 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Sincronizacion con u2.10.11.07. * Limpieza de cabeceras (Licencia GPLv2) ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.8 ircd-ircdev/ChangeLog:1.9 --- ircd-ircdev/ChangeLog:1.8 Fri Nov 14 19:11:54 2003 +++ ircd-ircdev/ChangeLog Sun Feb 22 08:16:22 2004 @@ -1,10 +1,14 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.8 2003/11/15 03:11:54 zolty Exp $ +# $Id: ChangeLog,v 1.9 2004/02/22 16:16:22 zolty Exp $ # # Insert new changes at beginning of the change list. # +2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 + * Synchronization with u2.10.11.07. + * Headers cleanup (GPLv2 licence) + 2003-11-15 Toni Garcia <zo...@ir...> 1.0.alpha7 * Incluyed zlib library source. Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.8 ircd-ircdev/ChangeLog.es:1.9 --- ircd-ircdev/ChangeLog.es:1.8 Fri Nov 14 19:11:54 2003 +++ ircd-ircdev/ChangeLog.es Sun Feb 22 08:16:22 2004 @@ -1,10 +1,14 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.8 2003/11/15 03:11:54 zolty Exp $ +# $Id: ChangeLog.es,v 1.9 2004/02/22 16:16:22 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 + * Sincronizacion con u2.10.11.07. + * Limpieza de cabeceras (Licencia GPLv2) + 2003-11-15 Toni Garcia <zo...@ir...> 1.0.alpha7 * Se incluye el source de la libreria zlib. Index: ircd-ircdev/Doxyfile diff -u /dev/null ircd-ircdev/Doxyfile:1.1 --- /dev/null Sun Feb 22 08:16:49 2004 +++ ircd-ircdev/Doxyfile Sun Feb 22 08:16:22 2004 @@ -0,0 +1,1078 @@ +# Doxyfile 1.3.4 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = "IRC-Dev IRC Daemon" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = "$Name: $" + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = doc/doxygen + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, +# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en +# (Japanese with English messages), Korean, Norwegian, Polish, Portuguese, +# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian. + +OUTPUT_LANGUAGE = English + +# This tag can be used to specify the encoding used in the generated output. +# The encoding is not always determined by the language that is chosen, +# but also whether or not the output is meant for Windows or non-Windows users. +# In case there is a difference, setting the USE_WINDOWS_ENCODING tag to YES +# forces the Windows encoding (this is the default for the Windows binary), +# whereas setting the tag to NO uses a Unix-style encoding (the default for +# all platforms other than Windows). + +USE_WINDOWS_ENCODING = NO + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = YES + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited +# members of a class in the documentation of that class as if those members were +# ordinary class members. Constructors, destructors and assignment operators of +# the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = NO + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. It is allowed to use relative paths in the argument list. + +STRIP_FROM_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like the Qt-style comments (thus requiring an +# explict @brief command for a brief description. + +JAVADOC_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the DETAILS_AT_TOP tag is set to YES then Doxygen +# will output the detailed description near the top, like JavaDoc. +# If set to NO, the detailed description appears after the member +# documentation. + +DETAILS_AT_TOP = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# reimplements. + +INHERIT_DOCS = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources +# only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = YES + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources +# only. Doxygen will then generate output that is more tailored for Java. +# For instance, namespaces will be presented as packages, qualified scopes +# will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = . + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp +# *.h++ *.idl *.odl *.cs *.php *.php3 *.inc + +FILE_PATTERNS = + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories +# that are symbolic links (a Unix filesystem feature) are excluded from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. + +EXCLUDE_PATTERNS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command <filter> <input-file>, where <filter> +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. + +INPUT_FILTER = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. + +SOURCE_BROWSER = YES + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = NO + +# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES (the default) +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = YES + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output dir. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be +# generated containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = YES + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = YES + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = YES + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = YES + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimised for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assigments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = YES + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. This is useful +# if you want to understand what is going on. On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_PREDEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse the +# parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::addtions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = ircu.tags + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base or +# super classes. Setting the tag to NO turns the diagrams off. Note that this +# option is superceded by the HAVE_DOT option below. This is only a fallback. It is +# recommended to install and use dot, since it yields more powerful graphs. + +CLASS_DIAGRAMS = YES + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = NO + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = YES + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similiar to the OMG's Unified Modeling +# Language. + +UML_LOOK = YES + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT tags are set to YES then doxygen will +# generate a call dependency graph for every global function or class method. +# Note that enabling this option will significantly increase the time of a run. +# So in most cases it will be better to enable call graphs for selected +# functions only using the \callgraph command. + +CALL_GRAPH = YES + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found on the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_WIDTH = 1024 + +# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height +# (in pixels) of the graphs generated by dot. If a graph becomes larger than +# this value, doxygen will try to truncate the graph, so that it fits within +# the specified constraint. Beware that most browsers cannot cope with very +# large images. + +MAX_DOT_GRAPH_HEIGHT = 1024 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes that +# lay further from the root node will be omitted. Note that setting this option to +# 1 or 2 may greatly reduce the computation time needed for large code bases. Also +# note that a graph may be further truncated if the graph's image dimensions are +# not sufficient to fit the graph (see MAX_DOT_GRAPH_WIDTH and MAX_DOT_GRAPH_HEIGHT). +# If 0 is used for the depth value (the default), the graph is not depth-constrained. + +MAX_DOT_GRAPH_DEPTH = 0 + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES + +#--------------------------------------------------------------------------- +# Configuration::addtions related to the search engine +#--------------------------------------------------------------------------- + +# The SEARCHENGINE tag specifies whether or not a search engine should be +# used. If set to NO the values of all tags below this one will be ignored. + +SEARCHENGINE = NO Index: ircd-ircdev/Makefile.in diff -u ircd-ircdev/Makefile.in:1.2 ircd-ircdev/Makefile.in:1.3 --- ircd-ircdev/Makefile.in:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/Makefile.in Sun Feb 22 08:16:22 2004 @@ -1,11 +1,12 @@ -# Makefile for the IRC-Dev IRC Daemon. +# IRC-Dev IRCD - An advanced and innovative IRC Daemon, Makefile + +# Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> # Copyright (C) 1997, Carlo Wood <ca...@ru...> -# Copyright (C) 2003, IRC-Dev Devel Team <de...@ir...> # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -14,8 +15,7 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA #### Start of system configuration section. #### Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.4 ircd-ircdev/TODO.es:1.5 --- ircd-ircdev/TODO.es:1.4 Tue Nov 11 13:37:08 2003 +++ ircd-ircdev/TODO.es Sun Feb 22 08:16:22 2004 @@ -1,11 +1,16 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.4 2003/11/11 21:37:08 zolty Exp $ +# $Id: TODO.es,v 1.5 2004/02/22 16:16:22 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # + +URGENTE: +Limpieza de licencias en los ircd/m_*.c + + Bugs Conocidos: -------------------------------------------------------------------------------------- 1/Nov/2003 Index: ircd-ircdev/acconfig.h diff -u ircd-ircdev/acconfig.h:1.1.1.1 ircd-ircdev/acconfig.h:1.2 --- ircd-ircdev/acconfig.h:1.1.1.1 Mon Sep 8 03:34:25 2003 +++ ircd-ircdev/acconfig.h Sun Feb 22 08:16:22 2004 @@ -1,13 +1,13 @@ -#ifndef INCLUDED_config_h -#define INCLUDED_config_h /* - * IRC - Internet Relay Chat, include/config.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, acconfig.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -16,10 +16,14 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: acconfig.h,v 1.2 2004/02/22 16:16:22 zolty Exp $ * - * $Id: acconfig.h,v 1.1.1.1 2003/09/08 10:34:25 zolty Exp $ */ +#ifndef INCLUDED_config_h +#define INCLUDED_config_h + @TOP@ /* Define if you have the setrlimit function */ Index: ircd-ircdev/config.h.in diff -u ircd-ircdev/config.h.in:1.3 ircd-ircdev/config.h.in:1.4 --- ircd-ircdev/config.h.in:1.3 Sun Nov 2 10:34:46 2003 +++ ircd-ircdev/config.h.in Sun Feb 22 08:16:22 2004 @@ -1,14 +1,14 @@ /* config.h.in. Generated from configure.in by autoheader. */ -#ifndef INCLUDED_config_h -#define INCLUDED_config_h /* - * IRC - Internet Relay Chat, include/config.h + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, config.h + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -17,10 +17,13 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: config.h.in,v 1.4 2004/02/22 16:16:22 zolty Exp $ * - * $Id: config.h.in,v 1.3 2003/11/02 18:34:46 zolty Exp $ */ +#ifndef INCLUDED_config_h +#define INCLUDED_config_h /* Define if you have the setrlimit function */ #undef HAVE_SETRLIMIT Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.6 ircd-ircdev/configure:1.7 --- ircd-ircdev/configure:1.6 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/configure Sun Feb 22 08:16:22 2004 @@ -1,9 +1,8 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.57. +# Generated by GNU Autoconf 2.58. # -# Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -# Free Software Foundation, Inc. +# Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## @@ -20,9 +19,10 @@ elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi +DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. -if (FOO=FOO; unset FOO) >/dev/null 2>&1; then +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false @@ -41,7 +41,7 @@ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do - if (set +x; test -n "`(eval $as_var=C; export $as_var) 2>&1`"); then + if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var @@ -218,16 +218,17 @@ if mkdir -p . 2>/dev/null; then as_mkdir_p=: else + test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. -as_tr_cpp="sed y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g" +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. -as_tr_sh="sed y%*+%pp%;s%[^_$as_cr_alnum]%_%g" +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS @@ -668,7 +669,7 @@ # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ - localstatedir libdir includedir oldincludedir infodir mandir + localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in @@ -708,10 +709,10 @@ # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| \ - . : '\(.\)' 2>/dev/null || + X"$0" : 'X\(//\)[^/]' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| \ + . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } @@ -803,9 +804,9 @@ cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] + [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] + [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify @@ -919,12 +920,45 @@ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac -# Don't blindly perform a `cd "$ac_dir"/$ac_foo && pwd` since $ac_foo can be -# absolute. -ac_abs_builddir=`cd "$ac_dir" && cd $ac_builddir && pwd` -ac_abs_top_builddir=`cd "$ac_dir" && cd ${ac_top_builddir}. && pwd` -ac_abs_srcdir=`cd "$ac_dir" && cd $ac_srcdir && pwd` -ac_abs_top_srcdir=`cd "$ac_dir" && cd $ac_top_srcdir && pwd` + +# Do not use `cd foo && pwd` to compute absolute paths, because +# the directories may not exist. +case `pwd` in +.) ac_abs_builddir="$ac_dir";; +*) + case "$ac_dir" in + .) ac_abs_builddir=`pwd`;; + [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; + *) ac_abs_builddir=`pwd`/"$ac_dir";; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_builddir=${ac_top_builddir}.;; +*) + case ${ac_top_builddir}. in + .) ac_abs_top_builddir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; + *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_srcdir=$ac_srcdir;; +*) + case $ac_srcdir in + .) ac_abs_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; + *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; + esac;; +esac +case $ac_abs_builddir in +.) ac_abs_top_srcdir=$ac_top_srcdir;; +*) + case $ac_top_srcdir in + .) ac_abs_top_srcdir=$ac_abs_builddir;; + [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; + *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; + esac;; +esac cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. @@ -935,7 +969,7 @@ echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || - test -f $ac_srcdir/configure.in; then + test -f $ac_srcdir/configure.in; then echo $ac_configure --help else @@ -949,8 +983,7 @@ if $ac_init_version; then cat <<\_ACEOF -Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, 2002 -Free Software Foundation, Inc. +Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF @@ -962,7 +995,7 @@ running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was -generated by GNU Autoconf 2.57. Invocation command line was +generated by GNU Autoconf 2.58. Invocation command line was $ $0 $@ @@ -1039,19 +1072,19 @@ 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. + ac_must_keep_next=false # Got value, back to normal. else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. @@ -1085,12 +1118,12 @@ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ - "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" + "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ - "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" + "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } @@ -1119,7 +1152,7 @@ for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` - echo "$ac_var='"'"'$ac_val'"'"'" + echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi @@ -1218,7 +1251,7 @@ # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | - sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do + sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" @@ -1235,13 +1268,13 @@ ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 + { echo "$as_me:$LINENO: former value: $ac_... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-04-22 17:37:41
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-04-22 17:37:28 UTC Modified files: ircd/m_burst.c ircd/m_clearmode.c ircd/m_close.c ircd/m_connect.c ircd/m_cprivmsg.c ircd/m_create.c ircd/m_defaults.c ircd/m_destruct.c ircd/m_desynch.c ircd/m_die.c ircd/m_endburst.c ircd/m_error.c ircd/m_get.c ircd/m_gline.c ircd/m_help.c ircd/m_info.c ircd/m_invite.c ircd/m_ison.c ircd/m_join.c ircd/m_jupe.c ircd/m_kick.c ircd/m_kill.c ircd/m_links.c ircd/m_list.c ircd/m_lusers.c ircd/m_map.c ircd/m_mode.c ircd/m_motd.c ircd/m_names.c ircd/m_nick.c ircd/m_notice.c ircd/m_oper.c ircd/m_opmode.c ircd/m_part.c ircd/m_pass.c ircd/m_ping.c ircd/m_pong.c ircd/m_privmsg.c ircd/m_privs.c ircd/m_proto.c ircd/m_quit.c ircd/m_rehash.c ircd/m_reset.c ircd/m_restart.c ircd/m_rping.c ircd/m_rpong.c ircd/m_server.c ircd/m_set.c ircd/m_settime.c ircd/m_silence.c ircd/m_squit.c ircd/m_stats.c ircd/m_time.c ircd/m_tmpl.c ircd/m_topic.c ircd/m_trace.c ircd/m_uping.c ircd/m_user.c ircd/m_userhost.c ircd/m_userip.c ircd/m_version.c ircd/m_wallchops.c ircd/m_wallops.c ircd/m_wallusers.c ircd/m_wallvoices.c ircd/m_watch.c ircd/m_who.c ircd/m_whois.c ircd/m_whowas.c Log message: Author: zoltan <zo...@ir...> Log message: 2004-04-23 Toni Garcia <zo...@ir...> 1.0.alpha9 * Limpieza de cabeceras (Licencia GPLv2) en los m_*.c ---------------------- diff included ---------------------- Index: ircd-ircdev/ircd/m_burst.c diff -u ircd-ircdev/ircd/m_burst.c:1.2 ircd-ircdev/ircd/m_burst.c:1.3 --- ircd-ircdev/ircd/m_burst.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_burst.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,14 @@ /* - * IRC - Internet Relay Chat, ircd/m_burst.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_burst.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1995-1997 Carlo Wood <ca...@ru...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +17,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_burst.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_burst.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_clearmode.c diff -u ircd-ircdev/ircd/m_clearmode.c:1.2 ircd-ircdev/ircd/m_clearmode.c:1.3 --- ircd-ircdev/ircd/m_clearmode.c:1.2 Sat Nov 1 07:26:46 2003 +++ ircd-ircdev/ircd/m_clearmode.c Thu Apr 22 10:37:18 2004 @@ -1,16 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_tmpl.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center - * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_clearmode.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_clearmode.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_clearmode.c,v 1.2 2003/11/01 15:26:46 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_close.c diff -u ircd-ircdev/ircd/m_close.c:1.1.1.1 ircd-ircdev/ircd/m_close.c:1.2 --- ircd-ircdev/ircd/m_close.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_close.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_close.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_close.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1992 Darren Reed * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_close.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_close.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_connect.c diff -u ircd-ircdev/ircd/m_connect.c:1.2 ircd-ircdev/ircd/m_connect.c:1.3 --- ircd-ircdev/ircd/m_connect.c:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ircd/m_connect.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_connect.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_connect.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_connect.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_connect.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_cprivmsg.c diff -u ircd-ircdev/ircd/m_cprivmsg.c:1.1.1.1 ircd-ircdev/ircd/m_cprivmsg.c:1.2 --- ircd-ircdev/ircd/m_cprivmsg.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_cprivmsg.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_cprivmsg.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_cprivmsg.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_cprivmsg.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_cprivmsg.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_create.c diff -u ircd-ircdev/ircd/m_create.c:1.1.1.1 ircd-ircdev/ircd/m_create.c:1.2 --- ircd-ircdev/ircd/m_create.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_create.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_create.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_create.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1995-1997 Carlo Wood <ca...@ru...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_create.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_create.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_defaults.c diff -u ircd-ircdev/ircd/m_defaults.c:1.1.1.1 ircd-ircdev/ircd/m_defaults.c:1.2 --- ircd-ircdev/ircd/m_defaults.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_defaults.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_proto.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_defaults.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,22 +16,11 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_defaults.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_defaults.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ -#include "config.h" - -#include "client.h" -#include "ircd.h" -#include "ircd_reply.h" -#include "numeric.h" -#include "numnicks.h" -#include "send.h" -#include "supported.h" -#include "version.h" - -#include <assert.h> /* * m_functions execute protocol messages on this server: @@ -91,6 +78,19 @@ * note: it is guaranteed that parv[0]..parv[parc-1] are all * non-NULL pointers. */ +#include "config.h" + +#include "client.h" +#include "ircd.h" +#include "ircd_reply.h" +#include "numeric.h" +#include "numnicks.h" +#include "send.h" +#include "supported.h" +#include "version.h" + +#include <assert.h> + int m_not_oper(struct Client* cptr, struct Client* sptr, int parc, char* parv[]) { Index: ircd-ircdev/ircd/m_destruct.c diff -u ircd-ircdev/ircd/m_destruct.c:1.2 ircd-ircdev/ircd/m_destruct.c:1.3 --- ircd-ircdev/ircd/m_destruct.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_destruct.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_destruct.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_destruct.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1995-1997 Carlo Wood <ca...@ru...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_destruct.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_destruct.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_desynch.c diff -u ircd-ircdev/ircd/m_desynch.c:1.1.1.1 ircd-ircdev/ircd/m_desynch.c:1.2 --- ircd-ircdev/ircd/m_desynch.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_desynch.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_desynch.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_desynch.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1998 Carlo Wood <ca...@ru...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_desynch.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_desynch.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_die.c diff -u ircd-ircdev/ircd/m_die.c:1.1.1.1 ircd-ircdev/ircd/m_die.c:1.2 --- ircd-ircdev/ircd/m_die.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_die.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_die.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_die.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_die.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_die.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_endburst.c diff -u ircd-ircdev/ircd/m_endburst.c:1.1.1.1 ircd-ircdev/ircd/m_endburst.c:1.2 --- ircd-ircdev/ircd/m_endburst.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_endburst.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_end_of_burst.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_endburst.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1996 Carlo Wood <ca...@ru...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_endburst.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_endburst.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_error.c diff -u ircd-ircdev/ircd/m_error.c:1.1.1.1 ircd-ircdev/ircd/m_error.c:1.2 --- ircd-ircdev/ircd/m_error.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_error.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_error.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_error.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_error.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_error.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* @@ -98,7 +97,7 @@ /* * mr_error - unregistered client message handler - * +v * * parv[0] = sender prefix * parv[parc-1] = text */ Index: ircd-ircdev/ircd/m_get.c diff -u ircd-ircdev/ircd/m_get.c:1.1.1.1 ircd-ircdev/ircd/m_get.c:1.2 --- ircd-ircdev/ircd/m_get.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_get.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_get.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_get.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_get.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_get.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_gline.c diff -u ircd-ircdev/ircd/m_gline.c:1.1.1.1 ircd-ircdev/ircd/m_gline.c:1.2 --- ircd-ircdev/ircd/m_gline.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_gline.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,15 @@ /* - * IRC - Internet Relay Chat, ircd/m_gline.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_gline.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * Copyright (C) 1996-1997 Carlo Wood + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +18,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_gline.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_gline.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_help.c diff -u ircd-ircdev/ircd/m_help.c:1.1.1.1 ircd-ircdev/ircd/m_help.c:1.2 --- ircd-ircdev/ircd/m_help.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_help.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_help.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_help.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_help.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_help.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_info.c diff -u ircd-ircdev/ircd/m_info.c:1.1.1.1 ircd-ircdev/ircd/m_info.c:1.2 --- ircd-ircdev/ircd/m_info.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_info.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_info.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_info.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_info.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_info.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_invite.c diff -u ircd-ircdev/ircd/m_invite.c:1.1.1.1 ircd-ircdev/ircd/m_invite.c:1.2 --- ircd-ircdev/ircd/m_invite.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_invite.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_invite.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_invite.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_invite.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_invite.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_ison.c diff -u ircd-ircdev/ircd/m_ison.c:1.1.1.1 ircd-ircdev/ircd/m_ison.c:1.2 --- ircd-ircdev/ircd/m_ison.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_ison.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_ison.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_ison.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1991 Darren Reed * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_ison.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_ison.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_join.c diff -u ircd-ircdev/ircd/m_join.c:1.3 ircd-ircdev/ircd/m_join.c:1.4 --- ircd-ircdev/ircd/m_join.c:1.3 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_join.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_join.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_join.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_join.c,v 1.4 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_join.c,v 1.3 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_jupe.c diff -u ircd-ircdev/ircd/m_jupe.c:1.1.1.1 ircd-ircdev/ircd/m_jupe.c:1.2 --- ircd-ircdev/ircd/m_jupe.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_jupe.c Thu Apr 22 10:37:18 2004 @@ -1,16 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_jupe.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center - * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_jupe.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_jupe.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_jupe.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_kick.c diff -u ircd-ircdev/ircd/m_kick.c:1.2 ircd-ircdev/ircd/m_kick.c:1.3 --- ircd-ircdev/ircd/m_kick.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_kick.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_kick.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_kick.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_kick.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_kick.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_kill.c diff -u ircd-ircdev/ircd/m_kill.c:1.1.1.1 ircd-ircdev/ircd/m_kill.c:1.2 --- ircd-ircdev/ircd/m_kill.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_kill.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_kill.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_kill.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_kill.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_kill.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_links.c diff -u ircd-ircdev/ircd/m_links.c:1.2 ircd-ircdev/ircd/m_links.c:1.3 --- ircd-ircdev/ircd/m_links.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_links.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_links.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_links.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_links.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_links.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_list.c diff -u ircd-ircdev/ircd/m_list.c:1.1.1.1 ircd-ircdev/ircd/m_list.c:1.2 --- ircd-ircdev/ircd/m_list.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_list.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_list.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_list.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,9 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * - * $Id: m_list.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ + * $Id: m_list.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ + * */ /* Index: ircd-ircdev/ircd/m_lusers.c diff -u ircd-ircdev/ircd/m_lusers.c:1.1.1.1 ircd-ircdev/ircd/m_lusers.c:1.2 --- ircd-ircdev/ircd/m_lusers.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_lusers.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_lusers.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_lusers.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,9 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_lusers.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ + * $Id: m_lusers.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_map.c diff -u ircd-ircdev/ircd/m_map.c:1.2 ircd-ircdev/ircd/m_map.c:1.3 --- ircd-ircdev/ircd/m_map.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_map.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_map.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_map.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1996 Carlo Wood <ca...@ru...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_map.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_map.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_mode.c diff -u ircd-ircdev/ircd/m_mode.c:1.2 ircd-ircdev/ircd/m_mode.c:1.3 --- ircd-ircdev/ircd/m_mode.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_mode.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_mode.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_mode.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_mode.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_mode.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_motd.c diff -u ircd-ircdev/ircd/m_motd.c:1.1.1.1 ircd-ircdev/ircd/m_motd.c:1.2 --- ircd-ircdev/ircd/m_motd.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_motd.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_motd.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_motd.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_motd.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_motd.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_names.c diff -u ircd-ircdev/ircd/m_names.c:1.2 ircd-ircdev/ircd/m_names.c:1.3 --- ircd-ircdev/ircd/m_names.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_names.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_names.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_names.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_names.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_names.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_nick.c diff -u ircd-ircdev/ircd/m_nick.c:1.2 ircd-ircdev/ircd/m_nick.c:1.3 --- ircd-ircdev/ircd/m_nick.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_nick.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_nick.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_nick.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_nick.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_nick.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_notice.c diff -u ircd-ircdev/ircd/m_notice.c:1.1.1.1 ircd-ircdev/ircd/m_notice.c:1.2 --- ircd-ircdev/ircd/m_notice.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_notice.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_notice.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_notice.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_notice.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_notice.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_oper.c diff -u ircd-ircdev/ircd/m_oper.c:1.2 ircd-ircdev/ircd/m_oper.c:1.3 --- ircd-ircdev/ircd/m_oper.c:1.2 Sat Nov 1 16:47:33 2003 +++ ircd-ircdev/ircd/m_oper.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_oper.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_oper.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,9 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_oper.c,v 1.2 2003/11/02 00:47:33 zolty Exp $ + * $Id: m_oper.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_opmode.c diff -u ircd-ircdev/ircd/m_opmode.c:1.2 ircd-ircdev/ircd/m_opmode.c:1.3 --- ircd-ircdev/ircd/m_opmode.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_opmode.c Thu Apr 22 10:37:18 2004 @@ -1,16 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_tmpl.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center - * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_opmode.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2000 Kevin L. Mitchell <kl...@mi...> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -19,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_opmode.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_opmode.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* @@ -184,4 +182,3 @@ return 0; } - Index: ircd-ircdev/ircd/m_part.c diff -u ircd-ircdev/ircd/m_part.c:1.2 ircd-ircdev/ircd/m_part.c:1.3 --- ircd-ircdev/ircd/m_part.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_part.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_part.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_part.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_part.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_part.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_pass.c diff -u ircd-ircdev/ircd/m_pass.c:1.1.1.1 ircd-ircdev/ircd/m_pass.c:1.2 --- ircd-ircdev/ircd/m_pass.c:1.1.1.1 Mon Sep 8 03:34:29 2003 +++ ircd-ircdev/ircd/m_pass.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_pass.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_pass.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_pass.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_pass.c,v 1.1.1.1 2003/09/08 10:34:29 zolty Exp $ */ /* Index: ircd-ircdev/ircd/m_ping.c diff -u ircd-ircdev/ircd/m_ping.c:1.2 ircd-ircdev/ircd/m_ping.c:1.3 --- ircd-ircdev/ircd/m_ping.c:1.2 Tue Nov 11 13:36:21 2003 +++ ircd-ircdev/ircd/m_ping.c Thu Apr 22 10:37:18 2004 @@ -1,15 +1,13 @@ /* - * IRC - Internet Relay Chat, ircd/m_ping.c - * Copyright (C) 1990 Jarkko Oikarinen and - * University of Oulu, Computing Center + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_ping.c * - * See file AUTHORS in IRC package for additional names of - * the programmers. + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 1990 Jarkko Oikarinen * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 1, or (at your option) - * any later version. + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -18,9 +16,10 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_ping.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ * - * $Id: m_ping.c,v 1.2 2003/11/11 21:36:21 zolty Exp $ */ /* @@ -48,7 +47,7 @@ * <Gte-> I tried /quote ping 12345 uworld.blah.net locally, and uworld * +recieved -> ":Gte- PING N :Uworld.blah.net" * <Gte-> oh no, sorry, I did ping N :) - * > right, it's broken +v * > right, it's broken * <Gte-> good thing it doesn't have a fit replying to it * > hmm * *** plano.tx.us.undernet.org: PONG received from plano.tx.us.undernet.org Index: ircd-ircdev/ircd/m_pong.c diff -u ircd-... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-04-23 10:08:17
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-04-23 10:08:00 UTC Added files: doc/history/Undernet/ChangeLog-u2.10.11 doc/history/Undernet/ChangeLog-u2.10.12 Log message: Agrego los changelogs de las ultimas versiones de undernet ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.11 diff -u /dev/null ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.11:1.1 --- /dev/null Fri Apr 23 03:08:01 2004 +++ ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.11 Fri Apr 23 03:07:50 2004 @@ -0,0 +1,6686 @@ +2004-03-20 Isomer <is...@un...> + * ircd/m_invite.c: Disallow invites to non existant channels + +2004-02-27 Entrope <en...@cl...> + * ircd/ircd.c: Move the PID file acquisition after reading + the config file, so that F:PPATH works. + +2004-02-27 Entrope <en...@cl...> + + * doc/readme.who: Describe the support for matching on and + showing account names. + +2004-02-16 Entrope <en...@ga...> + + * configure.in: Check for missing epoll functions. + + * ircd/engine_epoll.c: Use the results. + + * config.h.in, configure: Regenerate. + +2004-03-07 Kevin L Mitchell <kl...@mi...> + + * ircd/gline.c (gline_stats): gotta have an else here or we end up + with some nice server crashes + +2004-01-31 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): update patchlevel... + + * ircd/channel.c (mode_parse_key): don't allow , in keys! + +2004-01-11 Perry Lorier <is...@un...> + + * include/patchlevel.h: Release 2.10.11.06 + +2004-01-04 Kevin L Mitchell <kl...@mi...> + + * ircd/s_numeric.c (do_numeric): fix a crash when a numeric is + sent to a channel... + +2003-12-31 Perry Lorier <is...@un...> + * ircd/s_misc.c: Fix bug in incorrect %Tu format specifier + + * Doxyfile: Doxygen file for generating documation for code + +2003-12-02 Perry Lorier <is...@un...> + * ircd/gline.c: Patch gline_find not to core on the *second* gline + added. + +2003-12-01 Perry Lorier <is...@un...> + * include/patchlevel.h: Bump patchlevel to pre3 + +2003-11-30 Perry Lorier <is...@un...> + * ircd/gline.c: Patch canon_userhost as suggested by netski + + * ChangeLog: Fix up contributers name + +2003-11-22 Kevin L Mitchell <kl...@mi...> + + * tools/wrapper.c: commit uid on chroot fix from ubra + + * ircd/version.c.SH: fix generation generation + + * ircd/m_nick.c (m_nick): truncate the nickname to the minimum of + the maximum allowed length (NICKLEN) or the allowed nickname + length specified as the NICKLEN feature + + * ircd/ircd_features.c: declare NICKLEN and set its default value + to 9 + + * ircd/engine_epoll.c: include inttypes.h--bah epoll. + + * include/supported.h: add MAXNICKLEN to ISUPPORT and do a little + rearranging... + + * include/ircd_features.h: add NICKLEN feature + + * include/ircd_defs.h (NICKLEN): raise max NICKLEN to 15 + + * doc/readme.features: document new NICKLEN feature + + * doc/example.conf: list new NICKLEN F-line + + * configure.in: check for inttypes.h--bah epoll. + + * configure: regenerate... + + * config.h.in: regenerate... + + * ircd/gline.c (make_gline): little bit of logic cleanup here... + +2003-11-23 Beware <ste...@xs...> + * doc/p10.txt: Bewares excellent reference on the p10 protocol as + implemented by Undernet. + +2003-11-13 Spike <sp...@un...> + * ircd/gline.c: Remove the possibility to add a BADCHAN by + setting a gline on $R#chan. + +2003-11-23 Isomer <is...@un...> + * ircd/s_user.c: Don't credit users with an extra attempt if they + are klined/glined, throttle them! + +2003-11-23 Isomer <is...@un...> + * ircd/os_*.c, ircd/ircd_features.c: Default changing window sizes + to off. if an admin is smart enough to understand these features + they can enable them manually. + +2003-11-23 Spike <sp...@un...> + * ircd/IPcheck.c: Make IPcheck constants configurable + +2003-11-18 Isomer <is...@un...> + * ircd/gline.c: Fix broken test that causes core dumps on realname + glines. + + * ircd/m_whois.c: Fix lost ! from ShowChannel() + +2003-11-18 Isomer <is...@un...> + * ircd/res.c: Minor cosmetic typo. + +2003-11-17 Entrope <en...@cl...> + * ircd/engine_epoll.c: #include <sys/types.h>, which is + reportedly necessary on certain RedHat releases. + + * ircd/os_linux.c: Restore the #include <unistd.h>, which is + reportedly necessary on the Fedora Core 1 distribution. + +2003-11-18 Isomer <is...@un...> + * ircd/s_auth.c, ircd/res.c: Clean up the preregistration subsystem + allowing customisation of timers, make the dns resolver stats oper only, + and make it much more clear what all the numbers are. + +2003-11-09 beware <ste...@xs...> + * move assigning a numeric to a local client from when nick is set, + to when connection becomes client, to not waste numerics. + +2003-11-06 Isomer <is...@un...> + * include/gline.c: a^b vs !(a^b) + +2003-11-06 Isomer <is...@un...> + * include/gline.c: Fix more cores in make_gline.c + +2003-11-06 Isomer <is...@un...> + * include/s_user.c: Fix ERR_UMODEUNKNOWNFLAG (again) + +2003-11-06 Isomer <is...@un...> + * include/patchlevel.h: Bump to .pre1 + +2003-11-06 Isomer <is...@un...> + * ircd/s_stats.c: Show "Allowed" in /stats H + +2003-11-06 Isomer <is...@un...> + * ircd/s_misc.c: Change the logging format (Closes: 836413) + +2003-11-06 Isomer <is...@un...> + * ircd/s_err.c: Fix bug with ERR_UMODEUNKNOWNFLAG introduced by Isomer + +2003-11-05 Isomer <is...@un...> + * ircd/gline.c: Display realname glines in /stats g + +2003-11-05 Isomer <is...@un...> + * ircd/m_whois.c: On remote whois, show +s local channels with a * + prefix to opers. + +2003-11-05 Isomer <is...@un...> + * ircd/s_misc.c, ircd/s_user.c: added numnick to SNO_CONNEXIT message + (so you can match EXIT's to CONN's) + +2003-11-05 Entrope <en...@us...> + * ircd/engine_epoll.c, config.h.in, configure,in, ircd/ircd_events.h: + Added epoll(2) support. + +2003-07-18 |SmAsH| <sm...@we...> + * ircd/s_user.c: added sending of ERR_UMODEUNKNOWNFLAG (Updated by + Isomer with suggestions from wasted) + +2003-07-07 beware <ste...@xs...> + * ircd/s_user.c: invalidate ban cache for user on host hiding/account + +2003-07-01 Bas Steendijk <ste...@xs...> + * ircd/m_names.c: length counter being incremented one too many + for each nick, resulting names reply messages are about 50 chars + shorter than possible. fixed. + +2003-06-29 Bas Steendijk <ste...@xs...> + * ircd/channel.c: don't ever send mode changes for local channels to + servers. + +2003-06-25 Bas Steendijk <ste...@xs...> + * ircd/m_burst.c: Clear topic set by netrider on burst. + +2003-04-26 volta <vo...@gm...> + * ircd/m_userip.c, ircd/m_userhost.c: Small fix, that + allows users to see their own ip & hostname. (Should solve + all problems with dcc) + +2003-06-13 Zoot <zo...@ga...> + + * ircd/m_map.c, ircd/m_links.c: Remove user-visible references + to Undernet's CFV-165. + +2003-06-08 Matthias Crauwels <ult...@wo...> + * ircd/gline.c: fixed the counting bug in gline_memory_count + + * ircd/jupe.c: fixed the counting bug in jupe_memory_count + +2003-11-05 Isomer <is...@un...> + * ircd/channel.c: (Jeekay) Remove extra : from channel JOIN's on + netburst + + * ircd/gline.c: (splidge) Don't make invalid glines match everyone! + +2003-11-05 Isomer <is...@un...> + * ircd/gline.c: Fix my first Gline Fix as noticed by a1kmm, thanks! + +2003-11-05 Isomer <is...@un...> + * ircd/gline.c: Remove duplicate/overlapping realname glines + +2003-11-04 Isomer <is...@un...> + * include/patchlevel.h: 2.10.11.06 initial branch + + * ircd/s_serv.c: Burst glines/jupes early + + * ircd/gline.c: Don't add spirious @ + +2003-11-01 Isomer <is...@un...> + * include/patchlevel.h: 2.10.11.05 release + +2003-10-25 beware <ste...@xs...> + * ircd/m_who.c: Fixed /whois comma separated list with wildcards cpu + hog bug + +2003-10-25 Isomer <is...@un...> + * ircd/gline.c: When comparing hosts for equality, check that + one isn't NULL. + +2003-10-25 Entrope <en...@us...> + * ircd/channel.c: Move IsUserParting() test up so we do not + send the part to other servers. + +2003-10-24 Entrope <en...@us...> + * include/channel.h: Add new flag to indicate a user is + parting a channel. + + * ircd/channel.c: Use it. + +2003-10-25 Isomer <is...@un...> + * ircd/gline.c: Make sure we never use the gl_host variable when we + are dealing with a realname (or other magical) gline. + +2003-10-15 splidge <sp...@qu...> + * ircd/channel.c: Fixed buggy MODE +k handling (broke with '+k :'). + +2003-09-03 splidge <sp...@qu...> + * ircd/m_nick.c: Fixed use-after-free bug in nick collision code. + +2003-09-03 splidge <sp...@qu...> + * ircd/m_nick.c: Made nick collides get sent to all servers (should + fix "ghost client" bug). + +2003-09-03 splidge <sp...@qu...> + * ircd/s_user.c: Made hide_hostmask() not show bogus joins for + channels where the user is a zombie. + +2003-08-31 hikari <sh...@un...> + * ircd/s_stats.c: Fixed stats_servers_verbose() so that the client + count for the local server is actually displayed. + +2003-08-28 hikari <sh...@un...> + * ircd/Makefile.in: Adding CFLAGS in a couple of places so building + with flags that effect linking works properly (-m64 for example). + +2003-08-28 hikari <sh...@un...> + * ircd/gline.c: Throw a protocol_violation if we get sent an + invalid GLINE with $ in it (suspected cause of recent core where + a GLINE was missing the R after $ to denote relanme. + +2003-07-13 hikari <sh...@un...> + * ircd/IPcheck.c: Fixed (another) overflow problem in + ip_registry_check_local() + +2003-07-04 Spike <sp...@un...> + * ircd/s_user.c: Fixed a small typo + +2003-07-01 Isomer <is...@un...> + * ircd/s_nick.c: Add user@host information to client exiting notices + +2003-07-01 Isomer <is...@un...> + * ircd/s_user.c: Add realname information to client connect notices + +2003-06-29 hikari <sh...@un...> + * ircd/IPcheck.c: Fixed overflow problem in + ip_registry_connect_fail() + +2003-06-27 hikari <sh...@un...> + * ircd/ircd.c: After thought, update the next check time based on + when an unregistered client should expire. + +2003-06-27 Kevin L Mitchell <kl...@mi...> + + * ircd/s_user.c (register_user): stomp on a warning + +2003-06-22 hikari <sh...@un...> + * ircd/ircd.c: Fixed check_pings() - shouldn't be any problem with + clients not being able to connect anymore. + + * include/patchlevel.h: Bumped to pre3 - hopefuly the last pre + before the release. + +2003-06-13 Kevin L Mitchell <kl...@mi...> + + * ircd/m_settime.c: it's supposed to be %ld, not %l + +2003-04-45 Reed Loden <re...@re...> + + * INSTALL: Updated the "howto" for CVS. + + * INSTALL_FR: Updated the "howto" for CVS. (NOTE: Somebody needs + to correct the part about the password as there isn't a password + right now... I don't know French so I couldn't correct that.) + + * doc/Authors: Corrected my e-mail address and added several + others. :) + + * doc/readme.cvs: Updated the "howto" for CVS. + + * tools/README: Updated location of file and partly rewrote to + fit u2.10.11's Features. + + + +2003-05-01 Reed Loden <re...@re...> + * ircd/s_err.c: Added network to text and edited 001 a bit. + + * ircd/s_user.c: Send network with 001. + +2003-05-01 splidge <sp...@qu...> + * ircd/match.c: Added a check to detect the end of the string. + +2003-05-02 Isomer <is...@un...> + * ircd/IPcheck.c: Added assert()'s to check for underflow + +2003-05-01 hikari <sh...@un...> + * ircd/s_conf.c: Added check to ensure the first character of a k: + line was a digit. + + * ircd/ircd.c: Only reset the ping check on registered clients. + Unregistered clients will now ping out if they don't register + within FEAT_CONNECTTIMEOUT. + +2003-04-28 Jeekay <je...@ne...> + * ircd/s_user.c: Store finduser() return value + instead of calling twice. + +2003-04-19 Perry Lorier <is...@un...> + * configure.in: Changed == to = in "if test" line from the MacOS X + compilation patch. + +2003-04-24 Jeekay <je...@ne...> + * ircd/s_conf.c: Added check for FEAT_HUB after the configuration file + is read. + +2003-04-24 Jeekay <je...@ne...> + * ircd/s_user.c: Altered (K-lined) to depend on find_kill type + +2003-04-26 David Mansell <sp...@qu...> + * ircd/m_invite.c: let +k users invite into channels they aren't on. + +2003-04-26 David Mansell <sp...@qu...> + * ircd/channel.c: removed extra :, it confuses broken clients. + +2003-04-19 Perry Lorier <is...@un...> + * ircd/gline.c, include/gline.c: Added realname glines. I feel dirty + after working with this code. As punishment for not fixing it, I'll + fix it properly in 2.10.12. + +2003-03-26 splidge <sp...@qu...> + * ircd/include/ircd_features.h, include/ircd_osdep.h, + ircd/ircd_features.c, ircd/listener.c, ircd/os_bsd.c, + ircd/os_generic.c, ircd/os_linux.c, ircd/os_openbsd.c + ircd/os_solaris.c, ircd/s_bsd.c: Patch to allow socket bufs to be + altered via F: lines + +2003-03-26 splidge <sp...@qu...> + * ircd/m_nick.c: Added collidefix - should eliminate some nick + collision races. + +2002-11-23 Aaron Catella <aca...@us...> + + * include/channel.h: create new IsGlobalChannel() + + * ircd/m_clearmode.c, ircd/m_invite.c, m_mode.c, m_opmode.c: clean-up + + 2003-03-11 Landon Fuller (landonf) <la...@sf...> + * configure.in: allow ircu to build on MacOS X. + +2003-04-12 David Mansell (splidge) <sp...@sf...> + * ircd/channel.c: When keys and limits conflict on burst, the key + which is first alphabetically or the limit which is lower will be + used by both servers. This matches pre-2.10.11 behaviour. + Closes: (#713930) + +2003-02-24 Vincent Sweeney <za...@qu...> + * include/support.h: + Redefine the NETMASK macro to fix bits == 0 oddness. + +2003-04-09 Jochen Meesters <ek...@pa...> + + * doc/example.conf: Adding 2 F:lines to the default conf, to log + memoryproblems, which could cause the server to die. + +2003-04-15 Alex Badea <va...@p1...> + * include/channel.h: added a 'flags' to struct ListingArgs + + * ircd/m_list.c (m_list): added oper-only listing parameter 'S' + that shows +s channels + + * ircd/channel.c (list_next_channels): show +s channels to + opers that requested it + +2003-01-05 Perry Lorier <is...@un...> + * include/patchlevel.h: Release this sucker + +2003-01-04 Kevin L Mitchell <kl...@mi...> + + * ircd/m_burst.c (ms_burst): There's a possibility that the user + could be destroyed by net rider kicks, causing a crash in + mode_invite_clear()--moved it to before the net rider kick loop + +2003-01-05 Perry Lorier <is...@un...> + * include/patchlevel.h: Bump PL + +2003-01-04 Kevin L Mitchell <kl...@mi...> + + * ircd/table_gen.c (makeTables): + is no longer a valid channel + prefix + +2002-12-31 hikari <sh...@un...> + * m_userhost.c: Send the real userhost to opers. + +2002-12-31 David Mansell <sp...@qu...> + * ircd/m_burst.c (ms_burst): when kicking net riders, clear invites + too. + +2002-12-30 Perry Lorier <is...@un...> + * ircd/m_gline.c: Server set glines are FORCE'd. + +2002-12-30 Perry Lorier <is...@un...> + * ircd/whocmds.c: s/&/&&/ as suggested by reed + +2002-12-28 David Mansell <sp...@qu...> + + * ircd/channel.c (mode_parse_limit): don't allow -l when no limit is + set, don't allow -l with negative parameter (or unsigned >2^31). + +2002-12-29 volta <vo...@gm...> + + * ircd/whocmds.c: fixed a bug in the who reply for field 'l', + that breaks HIS + +2002-12-28 Kevin L Mitchell <kl...@mi...> + + * ircd/m_create.c (ms_create): we must pass in a flag, not a + boolean 1 or 0! Good spotting splidge... + +2002-12-18 Kevin L Mitchell <kl...@mi...> + + * ircd/s_stats.c (stats_init): er, should have started at 0--not + that we'll ever see a /stats '\0', but just for completeness' sake + :) + + * ircd/s_user.c (hide_hostmask): only send the reply if the user's + on my server + +2002-12-17 hikari <sh...@un...> + * ircd/s_err.c: added RPL_HOSTHIDDEN reply text + + * ircd/s_user.c: send a confirmation of mode +x using reply numeric + RPL_HOSTHIDDEN + + * include/numeric.h: addition of RPL_HOSTHIDDEN as 396 + + * include/patchlevel.h: bumped to 04dev1 + +2002-12-14 hikari <sh...@un...> + * ircd/m_wallchops.c: fixed ms_wallchops() + + * ircd/m_wallvoices.c: fixed ms_wallvoices() + +2002-12-13 Zoot <zo...@ga...> + * ircd/m_whois.c (do_whois): use IsChanOp and HasVoice macros + instead of is_chan_op() and has_voice since we already have + membership links. + +2002-12-15 Isomer <Is...@un...> + * include/patchlevel.h: Release this sucker! + +2002-12-11 Isomer <Is...@un...> + * tools/linesync.sh: Update + + * include/ircd_alloc.h: Disable the frobulator by default, it has + alignment issues on non intel. + +2002-12-10 Isomer <Is...@un...> + * RELEASE.NOTES: Note problem we've seen on larger FBSD boxen + + * ircd/s_user.c: Don't set +x on connect, since other servers ignore + -x, and possible desyncs with -x. + +2002-12-03 hikari <sh...@un...> + + * ircd/Makefile.in: fluff to link ircd/m_wallvoices.c + + * ircd/parse.c: addition of wallvoices parsers + + * ircd/send.c: addition of a check for SKIP_NONVOICES which causes + a check for !IsChanOp() && !HasVoice() + + * ircd/m_wallvoices.c: new m_wallvoices() and ms_wallvoices() + functions message is sent as "#channel :+ foo" + + * ircd/m_wallchops.c: modifed so the format is now "#channel :@ + * foo" + to match the WALLVOICES form...after a little "discussion" on the + mater + + * include/send.h: addition of defintion for SKIP_NONVOICES + + * include/msg.h: command defines + + * include/handlers.h: function declarations + +2002-11-30 <sp...@qu...> + * ircd/ircd_alloc.h: Patched frobulator bug overwriting too much + +2002-11-26 Perry Lorier <is...@un...> + * ircd/m_join.c: Update messages + +2002-11-27 Andrew Miller <a1...@mw...> + * ircd/channel.c: Don't access memory after it is freed. + * include/patchlevel.h: Bump patchlevel again to stop confusion. + +2002-11-26 Perry Lorier <is...@un...> + * include/patchlevel.h: Update version string + +2002-11-26 Perry Lorier <is...@un...> + * ircd/m_kill.c: Overzealous assert(3). + +2002-11-25 Perry Lorier <is...@un...> + * include/ircd_alloc.h, ircd_alloc.c: Readded the side effect of + MyFree() setting the pointer to NULL. + +2002-11-24 Kevin L Mitchell <kl...@mi...> + + * ircd/m_settime.c: rewrite m[so]_settime(). Critical changes + are: servers may also send SETTIMEs to specific remote servers + (but are not required to); if we handle such a SETTIME that is + *not* for us, not only forward it, but if it's more than 30 + seconds off in either direction (automatically corrected by code + before this), bounce a corrective SETTIME to our previous hop + (only if we're RELIABLE_CLOCK, of course); opers may now specify a + time of "0" to SETTIME to have the server fill it + in--RELIABLE_CLOCK servers will always fill in their own time + + * ircd/m_create.c (ms_create): initialize the joinbufs just before + the for loop; issue a SETTIME if the remote server is > 1 minute + ahead, rather than squiting if it's > 5 minutes ahead + + * ircd/s_user.c (hunt_server_prio_cmd): comment out the assert--we + now permit servers to send SETTIME to targeted servers + + * ircd/m_create.c (ms_create): exit the client's *server*, not the + client--I was wondering why we weren't seeing any of these squits + on the network! + +2002-11-24 Andrew Miller <a1...@mw...> + * include/ircd_alloc.h: Support FROBONMALLOC and FROBONFREE. Turned on + now for debugging. + + * ircd/ircd_alloc.c (MyMalloc,MyRealloc,MyCalloc,MyFree): Made these + functions work with frobbing. + +2002-11-23 Kevin L Mitchell <kl...@mi...> + + * ircd/m_kick.c (ms_kick): if a kick comes from a user, it should + *appear* to be from the user + + * ircd/s_bsd.c (deliver_it): this should have been a ClrFlag(), + not a SetFlag()--caused crashes on /restart and probably other + nastiness + + * ircd/client.c (client_set_privs): must count up through + PRIV_LAST_PRIV rather than 0, since we *start* at zero + + * include/client.h: I was so inspired by the use of enum Flag by + Entrope that I decided to use an enum for privileges as well + + * include/whocmds.h (SEE_LUSER): correct a bug in SEE_LUSER with + regard to the PRIV_SHOW_INVIS / PRIV_SHOW_ALL_INVIS privileges + + * ircd/client.c: use enum Priv for privilage table + + * include/client.h: remove a comma from the end of the enumerator + list--resulted in a gcc warning. + +2002-11-04 Entrope <en...@ga...> + + * include/client.h: Convert cli_flags into a struct rather + than a plain integer. Add and update helper macros to match. + + * include/s_user.h: Update declarations to match ircd/s_user.c + changes (see below). + + * ircd/client.c (client_set_privs): Update (and rework) to + match new changes to struct Client and FLAG_* values. + + * ircd/m_oper.c (m_oper): Update to match new FLAG_* values, + access macros and send_umode_out() arguments. + + * ircd/s_user.c (register_user): Update to match new FLAG_* + values and access macros. + (userModeList): Likewise; also change meaning of "flag" field + to be flag number rather than bitmask. + (set_nick_name): Update to match userModeList. + (send_umode_out): Update arguments and send_umode() call to + match new send_umode() arguments. + (hide_hostmask): Change meaning of "flag" argument to be flag + number rather than bitmask. Update to match new FLAG_* values + and access macros. + (set_user_mode): Change "setflags" to struct Flags type, and + use new FLAG_* values and access macros. Use new arguments + for send_umode_out(). + (umode_str): Update to match new FLAG_* values and access + macros. Update test for global modes. + + (send_umode): Change "old" argument to struct Flags* type and + change "sendmask" bitmask to "sendset" enum. Update test for + whether to send each mode. + + * ircd/IPCheck.c (ip_registry_disconenct): Update comment to + reflect new FLAG_* names. + + * ircd/m_server.c (mr_server): Update to use new FLAG_* values + and access macros. + (ms_server): Likewise. Split out serv_flags into one variable + for each of the relevant flags. + + * ircd/ircd.c (check_pings): Update to match new FLAG_* values + and access macros. + + * ircd/channel.c (is_banned): Likewise. + + * ircd/m_account.c (ms_account): Likewise. + + * ircd/m_join.c (ms_join): Likewise. + + * ircd/m_kick.c (m_kick): Likewise. + (ms_kick): Likewise. + + * ircd/m_kill.c (do_kill): Likewise. + + * ircd/m_map.c (dump_map): Likewise. + + * ircd/m_mode.c (m_mode): Likewise. + (ms_mode): Likewise. + + * ircd/m_nick.c (ms_nick): Likewise. + + * ircd/m_notice.c (m_notice): Likewise. + (ms_notice): Likewise. + (mo_notice): Likewise. + + * ircd/m_part.c (m_part): Likewise. + (ms_part): Likewise. + + * ircd/m_pong.c (ms_pong): Likewise. + (mr_pong): Likewise. + (m_pong): Likewise. + + * ircd/m_privmsg.c (m_privmsg): Likewise. + (ms_privmsg): Likewise. + (mo_privmsg): Likewise. + + * ircd/m_wallchops.c (m_wallchops): Likewise. + + * ircd/m_who.c (m_who): Likewise. + + * ircd/numnicks.c (markMatchexServer): Likewise. + + * ircd/s_bsd.c (deliver_it): Likewise. + (completed_connection): Likewise. + (close_connection): Likewise. + (read_packet): Likewise. + (client_sock_callback): Likewise. + + * ircd/s_conf.c (attach_iline): Likewise. + + * ircd/s_misc.c (exit_client): Likewise. + + * ircd/send.c (dead_link): Likewise. + (sendwallto_group_butone): Likewise. + +2002-11-21 Aaron Catella <aar...@ya...> + + * ircd/m_admin.c: allow /admin <local server> + * ircd/m_version.c: allow /version <local server> + +2002-11-23 Kevin L Mitchell <kl...@mi...> + + * ircd/m_join.c (m_join): reset control character sentinel; + otherwise, all channels after the first control-charactered + channel get rejected as well + + * ircd/m_create.c (ms_create): add missing ) + + * ircd/m_account.c: include string.h to stomp a "implicit + declaration of strlen" warning from gcc + +2002-11-20 Aaron Catella <aar...@ya...> + + * include/channel.h, ircd/channel.c, ircd/gline.c, m_clearmode.c, + m_create.c, m_invite.c, m_join.c, m_kick.c, m_mode.c, m_topic.c: + removed modeless channel support + +2002-11-21 Alexander Maassen <out...@ke...> + * ircd/m_join.c: Deny joining channels with control chars. + +2002-11-23 Kevin L Mitchell <kl...@mi...> + + * ircd/s_stats.c: change STAT_FLAG_OPERONLY into + STAT_FLAG_OPERFEAT so that /stats v is governed by + FEAT_HIS_STATS_v + +2002-11-24 Andrew Miller <a1...@mw...> + * ircd/m_server.c: Fixed the H: line hostname checking. + * docs/example.conf: Documented the max-hops feature. + +2002-11-23 Perry Lorier <is...@un...> + * ircd/m_nick.c: ms_nick had mysteriously gained a "return" in the + middle of it. This meant when two people had the same TS on a nick + collide it was only killing one of them. Thus we have phantom clients + on the network, which desync channels and cause protocol violations... + +2002-11-23 Perry Lorier <is...@un...> + * ircd/m_nick.c: Minor cleanups and fixing some stuff I accidently + commited before + +2002-11-19 Perry Lorier <is...@un...> + * ircd/m_join.c: Fix the inevitable typo + +2002-11-19 Perry Lorier <is...@un...> + * ircd/m_join.c: Make the protocol violation warning more verbose + + * ircd/m_channel.c: OUTsiders OVERRIDE overly-noisy join patch. + + * ircd/m_join.c: OUTsiders OVERRIDE +r patch. + + * ircd/s_stats.c: fixed a little bug to allow local opers to get a + complete /stats k reply. -- Spike + +2002-10-30 Alex Badea <va...@p1...> + + * ircd/m_whois.c (do_whois): reply real host to the user himself, + in addition to opers + +2002-10-23 Kevin L Mitchell <kl...@mi...> + + * doc/readme.features: fix documentation--HIS_REMOTE is an integer + defaulting to 1, not a boolean defaulting to TRUE + + * doc/ircd.conf.sample: fix documentation--HIS_REMOTE is an + integer defaulting to 1, not a boolean defaulting to TRUE; also + comment out the default F-lines, since you only need an F-line if + you want a non-default setting for a feature + + * doc/example.conf: fix documentation--HIS_REMOTE is an integer + defaulting to 1, not a boolean defaulting to TRUE + +2002-10-21 Alex Badea <va...@p1...> + + * include/ircd_features.h: new feature FEAT_AUTOHIDE + + * ircd/ircd_features.c: new feature FEAT_AUTOHIDE + + * s_user.c: set umode +x in register_user if FEAT_AUTOHIDE is on; + allow toggling of umode +x while there is no account set + + * doc/readme.features: documented FEAT_AUTOHIDE, also corrected + the HOST_HIDING default to match the code + + * doc/ircd.conf.sample: default value for FEAT_AUTOHIDE + +2002-10-19 Kevin L Mitchell <kl...@mi...> + + * ircd/channel.c (mode_parse_key): correct an off-by-one error + that failed to truncate passed-in keys correctly--this caused a + presentation error that made the client think the key was one + character longer than it actually was + + * ircd/channel.c (mode_process_bans): correct an off-by-one error + that allowed only 29 (44) bans to be set instead of the full 30 + (45) + +2002-10-19 Perry Lorier <is...@un...> + + * doc/example.conf: Changed defaults for host hiding and maxbans. + + * ircd/ircd_features.c: Changed defaults for host hiding and maxbans. + + * ircd/m_kick: Fixed braino. + +2002-10-17 Perry Lorier <is...@un...> + + * ircd/m_kick.c (ms_kick): Don't HACK(3) when a server kicks it's own + users, opers get twitchy. Hide the kickee's server. + +2002-10-17 Perry Lorier <is...@un...> + + * ircd/m_away.c (m_away): Don't forward away messages if users are + already away. It sucks a lot of bandwidth. + +2002-10-15 Tim Vogelsang <ne...@as...> + + * ircd/channel.c (is_banned): users that are using account and not + using the hidden host feature should have their accounts checked + against other hidden hosts banned in a attempted channel join + +2002-10-17 Perry Lorier <is...@un...> + + * include/patchlevel.h (PATCHLEVEL): branch u2.10.11.03 + +2002-10-10 Perry Lorier <is...@un...> + + * include/patchlevel.h (PATCHLEVEL): release u2.10.11.02 + +2002-10-10 Perry Lorier <is...@un...> + + * ircd/ircd_relay.c: X doesn't announce +s yet, we can't enable this + +2002-10-09 sp...@qu... + + * ircd/m_stats.c: unsigned char index into array bug + +2002-10-05 Zoot <zo...@ga...> + + * ircd/ircd_relay.c (relay_directed_message): fix a bug that had + completely broken directed messages + +2002-10-07 Perry Lorier <is...@un...> + + * ircd/s_user.c: Fixed bugs as pointed out by Kev, doh! + * ircd/ircd_features.c: Fixed bugs as pointed out by Kev, doh! + +2002-10-06 Perry Lorier <is...@un...> + + * ircd/s_err.c, ircd/s_user.c: Add pointless spam, as required by + CFV-202. + +2002-10-05 Zoot <zo...@ga...> (and Isomer <is...@un...>) + + * ircd/m_account.c (ms_account): check the length of the account; + ignore accounts that are too long and send a warning through wallops. + Updated by Isomer to use protocol_violation. + +2002-09-25 David Mansell <sp...@qu...> + + * ircd/m_burst.c: Fixed list walking bug. + +2002-10-04 Perry Lorier <is...@un...> + * ircd/m_version.c: was showing 005 on VERSION for opers only(!?) + +2002-10-04 Perry Lorier <is...@un...> + * ircd/m_names.c: Fixed bug where RPL_ENDOFNAMES was not sent when + requesting names from a channel you are not on. Reported by + mike2 and Liandrin. + +2002-09-02 Alexander Maassen <out...@ke...> + + * doc/readme.features: Fixed bugs regarding certain features + being associated to WHOIS instead of WHO. + +2002-05-21 Andrew Miller <a1...@mw...> + + * ircd/ircd_relay.c: stop an information leak about the + network topography from relayed messages. + +2002-09-02 Mathieu Rene <ma...@ro...> + * ircd/m_squit.c (ms_squit): Fixed a bug that caused server + to crash when receiving a SQUIT without any reason or timestamp. + +2002-06-18 Alex Badea <va...@p1...> + + * ircd/m_burst.c (ms_burst): kick local members if the channel + has a larger local TS and it's +i or +k remotely (anti net.ride) + +2002-09-16 Jochen Meesters <ek...@pa...> + + * ircd/whocmds.h: Changed output of /who %a command, making it + easier to parse (puts field in front of realname, and reply 0 + if user has no AC) + +2002-09-16 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel for + u2_10_11_02 development branch + +2002-09-14 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): release u2.10.11.01 + +2002-09-13 Kevin L Mitchell <kl...@mi...> + + * ircd/s_err.c: make RPL_WHOISACTUALLY machine parsable + + * ircd/s_user.c (register_user): if FEAT_CONNEXIT_NOTICES is TRUE, + send a server notice when client connects + + * ircd/s_misc.c (exit_client): if FEAT_CONNEXIT_NOTICES is TRUE + and victim is a user, send a server notice + + * ircd/ircd_features.c: new feature, CONNEXIT_NOTICES--defaults to + FALSE + + * include/ircd_features.h: new feature: CONNEXIT_NOTICES + + * doc/readme.features: document new CONNEXIT_NOTICES feature + + * doc/ircd.conf.sample: list CONNEXIT_NOTICES in among the F-lines + + * doc/example.conf: list CONNEXIT_NOTICES in among the F-lines + +2002-09-13 Jochen Meesters <ek...@pa...> + + * include/whocmds.h: created WHO_FIELD_ACC + + * ircd/whcmds.c: added WHO_FIELD_ACC support + + * ircd/m_who.c: added WHO_FIELD_ACC, showing the users ACCOUNT login + if %a is used in the /who request + +2002-09-06 Kevin L Mitchell <kl...@mi...> + + * ircd/channel.c (modebuf_flush_int): somehow missed this--set + apparent source to me if actual source is a server or if its an + OPMODE + +2002-09-05 Kevin L Mitchell <kl...@mi...> + + * INSTALL: one-character typo + +2002-09-04 Kevin L Mitchell <kl...@mi...> + + * doc/readme.features: add documentation for NETWORK and + URL_CLIENTS + + * doc/example.conf: list new F-lines for NETWORK and + URL_CLIENTS--yeah, it's redundant, but we'll keep it for now + + * doc/ircd.conf.sample: list new F-lines for NETWORK and + URL_CLIENTS + + * ircd/ircd_relay.c: use feature for NETWORK + + * ircd/ircd.c: use feature for URL_CLIENTS + + * include/ircd_defs.h: remove now deprecated defined for NETWORK; + remove now deprecated define for URL_CLIENTS + + * include/supported.h (FEATURESVALUES2): remove + as a channel + prefix, since we're deprecating them; use FEAT_NETWORK value + instead of static value set in ircd_defs.h + + * ircd/ircd_features.c: create new FEAT_NETWORK, FEAT_URL_CLIENTS + + * include/ircd_features.h: create new FEAT_NETWORK, + FEAT_URL_CLIENTS + +2002-09-04 Arjen Wolfs <ar...@eu...> + + * README.FreeBSD: fix a few typos + + * README: fix a few typos + + * INSTALL: fix a few typos + +2002-09-03 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel for + u2.10.11.01 development + + * ircd/m_invite.c (m_invite): send the invite message to a local + user in the case of local channels + + * ircd/engine_poll.c (engine_loop): remove an assertion which + isn't supposed to be being triggered, but somehow is + +2002-09-03 hikari <sh...@un...> + * ircd/m_map.c: changed call from IsOper to IsAnOper to + pickup locals. + + * ircd/m_links.c: changed call from IsOper to IsAnOper to + pickup locals. + +2002-09-02 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h: release u2.10.11.00 + +2002-09-02 Arjen Wolfs <ar...@eu...> + + * doc/ircd.conf.sample: new sample ircd.conf + + * tools/linesync/linesync.sh: don't use /tmp, require GNU awk + + * README.Solaris: include a link with more information + + * README.FreeBSD: document how to increase maximum number of open + files on the system + + * README: document account, correct a couple of typos, include + CFLAGS example + +2002-08-30 Kevin L Mitchell <kl...@mi...> + + * ircd/send.c (vsendto_opmask_butone): make vsendto_opmask_butone + honor the "one" exemption + +2002-08-28 Kevin L Mitchell <kl...@mi...> + + * ircd/m_gline.c: trust remote servers to include ! for wide + glines only if its operator has the WIDE_GLINE privilege; check + gline addition/modification privilege after verifying that gline + is enabled, rather than in-line with the target tests + +2002-08-27 Kevin L Mitchell <kl...@mi...> + + * ircd/m_settime.c (ms_settime): SETTIME != NOTICE + +2002-08-26 Kevin L Mitchell <kl...@mi...> + + * ircd/m_opmode.c (mo_opmode): don't require opers to be on the + channel to use /opmode + +2002-08-24 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): release rc2 + + * ircd/ircd_log.c: remove a core possibility in log_set_file() + that would interact badly if DEBUGMODE was defined and the ircd + was given -t; modify the log file reporting in + log_feature_report() to indicate a terminal if the file is set to + null + +2002-08-23 Kevin L Mitchell <kl...@mi...> + + * ircd/msgq.c (msgq_append): correct an off-by-one error that + jinxed the bursts + +2002-08-22 Kevin L Mitchell <kl...@mi...> + + * ircd/Makefile.in: apply Sengaia's patch to include LDFLAGS in + link lines + + * ircd/m_join.c (m_join): begin deprecation of modeless channels + by prohibiting their creation--if the channel already exists, you + can join it, otherwise you get "no such channel" + +2002-08-19 Kevin L Mitchell <kl...@mi...> + + * doc/readme.features: document that feature names are + case-sensitive + + * ircd/ircd_features.c (feature_desc): make feature names + case-sensitive + +2002-08-11 Kevin L Mitchell <kl...@mi...> + + * doc/readme.log: correct a bug in the documentation--it's + FACILITY, not SYSLOG + +2002-08-09 Kevin L Mitchell <kl...@mi...> + + * ircd/random.c (memxor): oops, off by one error would keep the + algorithm from touching the first byte of the string + +2002-08-05 Zoot <zo...@ga...> + + * ircd/ircd_snprintf.c: Reorder the tests in the adds() while loop + to squelch some warnings from Valgrind. + +2002-07-26 Kevin L Mitchell <kl...@mi...> + + * ircd/s_stats.c: create stats_help() to send the help information + (skipping the information for character '*') and add an entry for + '*' to the statsinfo[] table + + * ircd/m_stats.c (m_stats): offload stats help into the stats + handler for stats flag '*'--as a side effect, we get back the + ability to propagate /stats flags that we ourselves do not + understand, and can even propagate a single extra parameter if one + is given + +2002-07-17 Reed Loden <re...@re...> + + * ircd/m_server.c: Added a log_write to show the IP in the + "Recieved unauthorized connection" snotice. + +2002-07-17 Reed Loden <re...@re...> + + * doc/Authors: Updated to latest info, fixed some + spelling/grammar errors, and added several people. + + * doc/readme.features: Add documentation for all the new + HEAD_IN_SAND features and added info about HEAD_IN_SAND for /STATS + v and /STATS q. + + * doc/example.conf: Correct the case in the string + HEAD_IN_SAND features, change /STATS u and /STATS W default to + FALSE and not TRUE, and add info about HEAD_IN_SAND for /STATS v + and /STATS q. + + * include/ircd_features.h: Change the title of the HEAD_IN_SAND + section, add HEAD_IN_SAND for /STATS v and /STATS q, modify the + case of all HEAD_IN_SAND_STATS_* to lowercase due to s_stats.c + changes. + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/Makefile.in: Regenerated using "make depend". + + * ircd/channel.c: Removed unnecessary line additions/removals, + removed extra whitespace at end of line, and used "?:" construct + instead of "if" statement on several ircd_policy.h -> features + places. + + * ircd/gline.c: Used "?:" construct instead of "if" statement on + several ircd_policy.h -> features places and removed unnecessary + line additions. + + * ircd/ircd_features.c: Change /stats u and /stats W default to + FALSE and not TRUE, change the title of the HEAD_IN_SAND + section, add stats for q and v, modify the case of all + HEAD_IN_SAND_STATS_* to lowercase due to s_stats.c changes. + + * ircd/jupe.c: Put the #include for ircd_features.h in correct + alphabetical order, used "?:" construct instead of "if" statement on + several ircd_policy.h -> features places and removed unnecessary + line additions. + + * ircd/m_admin.c: Re-word-wrap'ed a line. + + * ircd/m_burst.c: Used "?:" construct instead of "if" statement on + an ircd_policy.h -> features place. + + * ircd/m_kill.c: Put the #include for ircd_features.h in + correct alphabetical order, used "?:" construct instead of "if" + statement on an ircd_policy.h -> features place, and removed + C++-style comment. + + * ircd/m_links.c: Changed a boolean AND (&) to a logic AND (&&), + redid some incorrect logic, and removed unnecessary comment'ed + out code. + + * ircd/m_lusers.c: Re-word-wrap'ed a line. + + * ircd/m_map.c: Fixed indentation and removed unnecessary + comment'ed out code. + + * ircd/m_motd.c: Re-word-wrap'ed a line. + + * ircd/m_nick.c: Put the #include for ircd_features.h in correct + alphabetical order, removed unnecessary reason, re-word-wrap'ed a + line, used exit_client_msg() instead of exit_client() so %s could + be used, and removed a C++-style comment. + + * ircd/m_time.c: Re-word-wrap'ed a line. + + * ircd/m_trace.c: Put the #include for ircd_features.h in correct + alphabetical order, changed m_not_oper() to send_reply(), removed + braces, used return send_reply() instead of return 0, and removed + unnecessary addition of line. + + * ircd/m_version.c: Re-word-wrap'ed a line. + + * ircd/m_who.c: Put the #include for ircd_features.h in correct + alphabetical order, incorporated feature_bool() test into + !IsAnOper() test, and removed multiple inclusions of + ircd_features.h created by myself earlier. + + * ircd/m_whois.c: Optimized if statement by doing the + feature_bool() test first, consolidated logic used "?:" constant, + and fixed indentation. + + * ircd/m_whowas.c: Used "?:" construct instead of "if" statement + on an ircd_policy.h -> features place. + + * ircd/parse.c: Renamed mo_trace to m_trace. + + * ircd/s_misc.c: Put the #include for ircd_features.h in correct + alphabetical order, removed multiple inclusion of ircd_features.h, + and added a missing double-quote on one of the #includes, and fixed + indentation. + + * ircd/s_numeric.c: Consolidated logic using "?:" construct + instead of "if" statement on an ircd_policy.h -> features place. + + * ircd/s_stats.c: Removed temporary #define's, removed #include + "ircd_policy.h" and added HEAD_IN_SAND for /STATS v and /STATS q. + + * ircd/s_user.c: Simplified logic using "?:" construct instead of + "if" statements on ircd_policy.h -> features places. + + * ircd/send.c: Simplified logic using "?:" construct instead of "if" + statement on a ircd_policy.h -> feature place. + + * ircd/whowas.c: Optimized an "if" statement, fixed indentation, added + a cast to kill a warning, and added an !IsAnOper() test. + + Thanks to Kev for helping me when I didn't have a clue what to do. + :) + +2002-06-21 Andreas Louca <ne...@sp...> + + * include/ircd_features.h: Moved HEAD_IN_SAND Defines to Features. + + * ircd/Makefile.in: Removed ircd_policy.h from the build list; it + is no longer needed. + + * ircd/channel.c (modebuf_flush_int): Re-adjust the existing + ircd-policy code to work with the new policy-features. (Notice + opers on HACK) + + * ircd/gline.c (gline_add/gline_active/gline_deactivate): + Re-adjust the existing ircd-policy code to work with the new + policy-features (Notice opers on gline add/activate/deactivate) + + * ircd/features.c (struct FeatureDesc): Added new features (from + ircd_policy.h) + + * ircd/jupe.c (jupe_add/jupe_activate/jupe_deactivate): Re-adjust + the existing ircd-policy code to work with the new policy-features + (Server Notices on jupe add/activate/deactivate) + + * ircd/m_admin.c (mo_admin): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND REMOTE) + + * ircd/m_burst.c (ms_burst): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND BANWHO) + + * ircd/m_kill.c (do_kill): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND + KILLWHO) + + * ircd/m_links.c: Removed function m_links_redirect. User + privileges will now be checked from function m_links directly. + + * ircd/m_links.c (m_links): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND LINKS) + + * ircd/m_lusers.c (m_lusers): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND REMOTE) + + * ircd/m_map.c: Removed function m_map_redirect. User privileges + will now be checked from function m_map directly. + + * ircd/m_map.c (m_map): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND MAP) + + * ircd/m_motd.c (m_motd): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND REMOTE) + + * ircd/m_nick.c (ms_nick): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND + SERVERNAME) + + * ircd/m_stats.c (m_stats): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND STATS) + + * ircd/m_time.c (m_time): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND REMOTE) + + * ircd/m_trace.c (mo_trace): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND TRACE) + + * ircd/m_version.c (mo_version): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND REMOTE) + + * ircd/m_who.c (m_who): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND WHO + SERVERNAME) + + * ircd/m_whois (do_whois): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND WHOIS + SERVERNAME) + + * ircd/m_whowas.c (m_whowas): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND WHOIS + SERVERNAME) + + * ircd/parce.c (struct Message): Modified TOK_TRACE, TOK_MAP, + TOK_LINKS so they use the main function, since the redirection was + removed. HEAD_IN_SAND checking will be performed by main + functions. + + * ircd/s_misc.c (exit_client): Re-adjust the existing ircd-policy + code to work with the new policy-features. (HEAD_IN_SAND NETSPLIT) + + * ircd/s_numeric.c (do_numeric): Re-adjust the existing + ircd-policy code to work with the new policy-features. + (HEAD_IN_SAND REWRITE) + + * ircd/s_user.c (set_user_mode): Re-adjust the existing + ircd-policy code to work with the new policy-features. + (HEAD_IN_SAND SNOTICES OPER ONLY, DEBUG OPER ONLY) + + * ircd/send.c (sendwallto_group_butone): Re-adjust the existing + ircd-policy code to work with the new policy-features. + (HEAD_IN_SAND WALLOPS OPER ONLY) + + * ircd/whocmds.c (do_who): Re-adjust the existing + ircd-policy code to work with the new policy-features. + (HEAD_IN_SAND WHO SERVERNAME) + +2002-07-17 Mathieu Rene <ma...@ro...> + Reed Loden <re...@re...> + + * include/channel.h: Added IsInvited function definition. + + * include/client.h: Added SNO_AUTO, changed the hex of + SNO_DEBUG and the two SNO_ALL's. + + * ircd/channel.c: Added function IsInvited(client,chan). + + * ircd/gline.c: Add an ircd_strncmp to check for AUTO and if + found, use SNO_AUTO to hide it. + + * ircd/s_user.c (check_target_limit): User gets a free target for + a channel on which they are invited to. + +2002-07-16 Kevin L Mitchell <kl...@mi...> + + * ircd/s_stats.c: extend stats_quarantine() and + stats_servers_verbose() to take the extra parameter to limit their + searches to servers matching a given pattern + +2002-07-13 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/userload.c (calc_load): turn into a stats dispatch function + + * ircd/s_stats.c: implementation of all stats dispatch functions + that were here, in m_stats.c, or were in-line in the m_stats() + massive switch statement; removal of hunt_stats()--it's no longer + needed, since it's now easy for m_stats() to determine if it needs + to worry about an extra parameter; declare statsinfo[] array, in + which each stats character is listed and described; declare + statsmap[] array, which provides efficient lookup for stats; + define stats_init() which initializes the statsmap[] array from + the statsinfo[] array + + * ircd/s_misc.c (tstats): turn into a stats dispatch function + + * ircd/s_debug.c: turn send_usage() into a stats dispatch + function; turn count_memory() into a stats dispatch function + + * ircd/parse.c: no longer need mo_stats() or ms_stats(), so use + m_stats() for all + + * ircd/msgq.c (msgq_histogram): turn into a stats dispatch + function + + * ircd/motd.c (motd_report): turn into a stats dispatch function + + * ircd/m_stats.c: rewrote m_stats() from scratch--now uses a table + (defined in s_stats.c) to dispatch to a handler instead of a huge + select + + * ircd/listener.c (show_ports): turn into a stats dispatch + function; moved policy decisions into show_ports() + + * ircd/ircd_features.c (feature_report): turn into a stats + dispatch function + + * ircd/ircd.c: initialize the stats system + + * ircd/gline.c (gline_stats): turn into a stats dispatch function + + * ircd/class.c (report_classes): turn into a stats dispatch + function + + * include/userload.h: change calc_load() function so it can be a + stats dispatch function + + * include/s_stats.h: include ircd_features.h for enum Features; + remove all formerly exported stats functions; typedef for + StatFunc, structure declaration for struct StatDesc, and + preprocessor declarations for STAT_FLAG_*; declaration of + statsinfo[] and statsmap[] arrays; declaration of stats_init() + function + + * include/s_misc.h: change tstats() declaration so it can be a + stats dispatch function + + * include/s_debug.h: change send_usage() declaration so it can be + a stats dispatch function; change count_memory() declaration so it + can be a stats dispatch function + + * include/msgq.h: change msgq_histogram() declaration so it can be + a stats dispatch function + + * include/motd.h: change motd_report() declaration so it can be a + stats dispatch function + + * include/listener.h: change show_ports() declaration so it can be + a stats dispatch function + + * include/ircd_features.h: change feature_report() declaration so + it can be a stats dispatch function + + * include/gline.h: change gline_stats() declaration so it can be a + stats dispatch function + + * include/class.h: change report_classes() declaration so it can + be a stats dispatch function + + * ircd/m_gline.c (ms_gline): set a default reason, bashing an + uninitialized warning from gcc + +2002-07-12 Tim Vogelsang <ne...@as...> + + * ircd/m_gline.c: when a privileged server removes a gline + with only 3 paramters, including the server prefix, do not + attempt to retrieve the reason + +2002-07-11 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/s_bsd.c (read_packet): length is initialized to 0, but + read_packet() is called in cases where the recv() may not be + called, resulting in length remaining 0 and prohibiting processing + of queued data + +2002-07-10 Kevin L Mitchell <kl...@mi...> + + * include/jupe.h (jupe_memory_count): use size_t instead of int + + * include/gline.h (gline_memory_count): use size_t instead of int + + * ircd/motd.c (motd_memory_count): added a missing "++" + + * ircd/gline.c (gline_memory_count): use size_t instead of int + + * ircd/jupe.c (jupe_memory_count): use size_t instead of int + +2002-06-26 Tim Vogelsang <ne...@as...> + + * ircd/gline.c: added function gline_memory_count which returns + the total amount of glines and memory consumed + + * ircd/jupe.c: added function jupe_memory_count which returns + the total amount of jupes and memory consumed + + * ircd/motd.c: added function motd_memory_count which sends + local, remote, freelist and cachelist sizes and memory consumed + + * ircd/s_debug.c: added support for additional 'stats z' debugging + information; accounts, glines, jupes and motd + +2002-07-10 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/s_auth.c: added REPORT_INVAL_DNS for reporting that the + hostname is invalid; added auth_verify_hostname() to examine the + hostname character by character and verify that all characters fit + in the character set [a-zA-Z0-9_.-] and that the host name is not + too long; call auth_verify_hostname() from auth_dns_callback() as + the final check before accepting the hostname + +2002-07-05 Andrew Miller <a1...@mw...> + * ircd/packet.c(connect_dopacket): Pass the job on to server_dopacket + when they become a server. + * ircd/s_bsd.c(read_packet): Check they are now a server *after* the + packet is sent. + * ircd/class.c(make_class): Fixed an assert to be more useful. + +2002-07-05 Andrew Miller <a1...@mw...> + * ircd/packet.c + * ircd/packet.h: (connect_dopacket): Made a dopacket function for + connecting links which sends the messages through the correct message + handler. + * ircd/s_bsd.c(read_packet): Put packets through the correct handler + for connecting links. Properly handle unknown links becoming + connecting or servers. + +2002-07-01 Andrew Miller <a1...@mw...> + * ircd/class.c (make_class): Initialise the class reference count + to 0 on creation. + +2002-07-01 Andrew Miller <a1...@mw...> + * ircd/s_bsd.c (read_packet): Do allow connecting servers to + flood also. + +2002-06-38 Andrew Miller <a1...@mw...> + + * ircd/s_bsd.c (read_packet): Do allow handshaking servers to + flood, as the whole burst can end up going through. + +2002-06-38 Andrew Miller <a1...@mw...> + + * ircd/s_bsd.c (read_packet): Don't allow unknown connections to + flood. + +2002-06-11 Alex Badea <va...@p1...> + + * ircd/opercmds.c (militime_float): killing warning another way, + modifying the argument breaks AsLL + +2002-06-10 Kevin L Mitchell <kl...@mi...> + + * ircd/opercmds.c (militime_float): kill a warning--not critical + enough to warrent bumping patchlevel + +2002-06-07 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/m_server.c (ms_server): we weren't parsing the server flags + correctly in ms_server()--we were setting the flags on the cptr + instead of the introduced server! + +2002-06-07 Alex Badea <va...@p1...) + + * ircd/ircd.c (check_pings): use a timestamp on server pings + + * ircd/m_ping.c (ms_ping): reply with AsLL information on server + pings + + * ircd/m_ping.c (ms_pong): process AsLL-compliant server pongs, + and record statistics + + * ircd/m_stats.c (report_servers_verbose): also report IsHub + and IsService flags + + * ircd/opercmds.c: added militime_float, a version of militime + which returns the timestamp as a floating-point number + + * ircd/parse.c: added MSG_ASLL + + * ircd/s_bsd.c: don't reset cli_lasttime on server links + (use pings instead) + + * ircd/s_stats.c: help on /stats v + + * include/handlers.h: declared handlers for MSG_ASLL + + * include/msg.h: added MSG_ASLL + + * include/opercmds.h: declared militime_float + + * include/struct.h: added asll stats to struct Server + + * ircd/Makefile.in: added m_asll.c + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-06-04 Alex Badea <va...@p1...) + + * ircd/m_stats.c: backported /stats v for verbose information + about servers on the network (opers only) + + * ircd/s_err.c: added numeric 236 for /stats v + + * include/numeric.h: added numeric 236 for /stats v + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-05-30 Alex Badea <va...@p1...) + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-05-30 Jean-Edouard Babin <Je...@je...> + + * ircd/m_server.c (mr_server): fixed core bug on insufficient + arguments + +2002-05-17 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-05-17 Sascha Schumann <sa...@sc...> + + * ircd/listener.c (accept_listener): In the event of a readable + listener socket, the function loops until accept(2) returns -1. + This ensures that all connections which are pending at the time + are accepted which increases the server's capacity significantly. + +2002-05-16 Alex Badea <va...@p1...> + + * ircd/m_opmode.c (mo_opmode): check for Q:lines, with + an option to force + + * ircd/m_clearmode.c (mo_clearmode): check for Q:lines, with + an option to force + + * ircd/m_stats.c: added /stats Q for reporting Q:lines + (opers only) + + * ircd/s_conf.c: functions for quarantined list management + + * ircd/s_err.c: added replies for RPL_STATSQLINE, ERR_QUARANTINED; + changed ERR_NOPRIVILEGES reply to "Insufficient privileges" + + * ircd/client.c: PRIV_* kludge + + * ircd/ircd_features.c: added FEAT_OPER_FORCE_OPMODE, + FEAT_OPER_FORCE_LOPMODE, FEAT_LOCOP_FORCE_LOPMODE + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * include/s_conf.h: declared struct qline for storing Q:lines, + a global Q:line list and a find_quarantine() function + + * include/numeric.h: added RPL_STATSQLINE (228) for /stats Q + and RPL_QUARANTINED (524) for the quarantine warning + + * include/ircd_features.h: added FEAT_OPER_FORCE_OPMODE, + FEAT_OPER_FORCE_LOPMODE, FEAT_LOCOP_FORCE_LOPMODE + + * include/client.h: added PRIV_FORCE_OPMODE and + PRIV_FORCE_LOCAL_OPMODE + + * doc/readme.features: documented the abovementioned features + + * doc/example.conf: documented Q:lines and default values for + features + + * doc/Authors: added self + +2002-05-10 Kevin L Mitchell <kl...@mi...> + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-05-07 Kevin L Mitchell <kl...@mi...> + + * ircd/s_debug.c (count_memory): msgq_count_memory() now sends the + replies itself + + * ircd/msgq.c: implement a slab-style buffer allocation system + using powers of 2; collapsed all static data into a single struct; + add msgq_clear_freembs() (internal only) to clear the freelist in + a last-ditch attempt to get more memory to allocate for buffers; + make msgq_count_memory() send the replies itself, and send a + histogram for each slab at that; correct an off-by-one error in + the message size histogram accumulators + + * ircd/ircd.c: implement server_panic() to get us out in an + emergency without allocating any more buffers + + * ircd/Makefile.in: run "make depend" + + * include/msgq.h: completely internalize MsgCounts stuff, + including changes to msgq_count_memory() to send the replies + itself + + * include/ircd.h: declare a panic method to try to prohibit + allocation of memory in emergencies but still get a log message + out + +2002-05-05 Kevin L Mitchell <kl...@mi...> + + * ircd/msgq.c (msgq_histogram): minor off-by-n error--no harm + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel (again) + + * ircd/s_stats.c: document /stats j as an option + + * ircd/msgq.c: keep a histogram of message sizes; add + msgq_histogram() to report it + + * ircd/m_stats.c: add /stats j to report message length histogram + + * include/msgq.h (msgq_histogram): declare histogram reporting + function + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + + * ircd/send.c (kill_highest_sendq): create a new routine to kill + the client with the highest sendq--can optionally skip servers + + * ircd/msgq.c: create new helper routine msgq_alloc() to allocate + a struct MsgBuf, subject to FEAT_BUFFERPOOL restrictions; recast + msgq_vmake() to use the new helper and to try various tricks to + free up a buffer, like calling kill_highest_sendq() + + * include/send.h: declare a new routine to kill the client with + the highest sendq--can optionally skip servers + +2002-04-24 Greg Sikorski <gt...@at... + + * ircd/msgq.c (msgq_count_memory): Have stats z report the + correct amount of memory used by all the MsgBuf's. + + * include/patchlevel.h (PATCHLEVEL): patchlevel++ + +2002-04-19 Alex Badea <va...@p1...> + + * ircd/m_who.c (m_who): disallow non-opers to /who server.name + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-04-17 beware <ste...@to...> + + * m_whois.c (m_whois): disallow remote queries for non-existent + local users when originated by a non-oper + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-04-16 Alex Badea <va...@p1...> + + * ircd/s_user.c (hunt_server_cmd): also send a "no such server" + reply if the servername contains a '*' and it doesn't exist + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel + +2002-04-16 beware <ste...@to...> + + * ircd/m_whois.c: the previous patch broke whois, fixed it + another way + + * ircd/m_admin.c: cleaned up m_admin too while we're here, + hunt_server_cmd can do ... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-04-23 11:08:41
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-04-23 11:08:19 UTC Modified files: ChangeLog ChangeLog.es TODO.es include/client.h include/handlers.h include/msg.h include/numeric.h include/patchlevel.h include/querycmds.h include/s_serv.h ircd/Makefile.in ircd/channel.c ircd/engine_epoll.c ircd/gline.c ircd/ircd.c ircd/ircd_parser.y ircd/m_invite.c ircd/m_join.c ircd/m_lusers.c ircd/m_names.c ircd/m_watch.c ircd/m_whois.c ircd/parse.c ircd/s_err.c ircd/s_serv.c ircd/watch.c ircd/whocmds.c Added files: ircd/m_users.c Log message: Author: zoltan <zo...@ir...> Log message: 2004-04-23 Toni García <zo...@ir...> 1.0.alpha9 * Fix de warnings de compilacion * Comando USERS * Sincronizacion Undernet 2004-04-23 Roberto Muñoz <r5...@te...> * Soporte @+ en WHOIS, WHO y NAMES ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.9 ircd-ircdev/ChangeLog:1.10 --- ircd-ircdev/ChangeLog:1.9 Sun Feb 22 08:16:22 2004 +++ ircd-ircdev/ChangeLog Fri Apr 23 04:08:08 2004 @@ -1,10 +1,17 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.9 2004/02/22 16:16:22 zolty Exp $ +# $Id: ChangeLog,v 1.10 2004/04/23 11:08:08 zolty Exp $ # # Insert new changes at beginning of the change list. # +2004-04-23 Toni García <zo...@ir...> 1.0.alpha9 + * Warnings fixes + * USERS command + * Undernet synchronization +2004-04-23 Roberto Muñoz <r5...@te...> + * @+ support on WHOIS, WHO y NAMES + 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Synchronization with u2.10.11.07. * Headers cleanup (GPLv2 licence) Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.9 ircd-ircdev/ChangeLog.es:1.10 --- ircd-ircdev/ChangeLog.es:1.9 Sun Feb 22 08:16:22 2004 +++ ircd-ircdev/ChangeLog.es Fri Apr 23 04:08:08 2004 @@ -1,10 +1,17 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.9 2004/02/22 16:16:22 zolty Exp $ +# $Id: ChangeLog.es,v 1.10 2004/04/23 11:08:08 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2004-04-23 Toni García <zo...@ir...> 1.0.alpha9 + * Fix de warnings de compilacion + * Comando USERS + * Sincronizacion Undernet +2004-04-23 Roberto Muñoz <r5...@te...> + * Soporte @+ en WHOIS, WHO y NAMES + 2004-02-22 Toni Garcia <zo...@ir...> 1.0.alpha8 * Sincronizacion con u2.10.11.07. * Limpieza de cabeceras (Licencia GPLv2) Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.5 ircd-ircdev/TODO.es:1.6 --- ircd-ircdev/TODO.es:1.5 Sun Feb 22 08:16:22 2004 +++ ircd-ircdev/TODO.es Fri Apr 23 04:08:08 2004 @@ -1,14 +1,13 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.5 2004/02/22 16:16:22 zolty Exp $ +# $Id: TODO.es,v 1.6 2004/04/23 11:08:08 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # URGENTE: -Limpieza de licencias en los ircd/m_*.c Bugs Conocidos: @@ -23,7 +22,6 @@ Features para General: -------------------------------------------------------------------------------------- - Caracter '~' en los nicks. -- Mostrar @+#canal en NAMES, WHOIS y WHO. - Los clientes con +k han de poder "hablar" en canales. - Mostrar tiempo en formato humano en las G-lines. - Soporte de E-lines (excepciones a K-lines). @@ -32,8 +30,6 @@ - ¿Modo +M de canales?. - Enviar un Closing Link en los QUIT. - ¿Ampliacion comando OPER para elegir clase? -- Comando USERS. -- No permitir invitar a canales desde fuera. - Poner uuna Feature para elegir entre salir o no el nombre del servidor en los notices de auth y dnslookup al conectar. - Cuando nos silencian, que salga un numerico. Index: ircd-ircdev/include/client.h diff -u ircd-ircdev/include/client.h:1.4 ircd-ircdev/include/client.h:1.5 --- ircd-ircdev/include/client.h:1.4 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/client.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: client.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ + * $Id: client.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_client_h @@ -160,8 +160,8 @@ FLAG_GLOBAL_UMODES = FLAG_OPER /* First global mode flag */ }; -DECLARE_FLAGSET(Privs, PRIV_LAST_PRIV); -DECLARE_FLAGSET(Flags, FLAG_LAST_FLAG); +DECLARE_FLAGSET(Privs, PRIV_LAST_PRIV) +DECLARE_FLAGSET(Flags, FLAG_LAST_FLAG) struct Connection { /* Index: ircd-ircdev/include/handlers.h diff -u ircd-ircdev/include/handlers.h:1.4 ircd-ircdev/include/handlers.h:1.5 --- ircd-ircdev/include/handlers.h:1.4 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/handlers.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: handlers.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ + * $Id: handlers.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_handlers_h @@ -133,6 +133,7 @@ extern int m_user(struct Client*, struct Client*, int, char*[]); extern int m_userhost(struct Client*, struct Client*, int, char*[]); extern int m_userip(struct Client*, struct Client*, int, char*[]); +extern int m_users(struct Client*, struct Client*, int, char*[]); extern int m_version(struct Client*, struct Client*, int, char*[]); extern int m_wallchops(struct Client*, struct Client*, int, char*[]); extern int m_wallvoices(struct Client*, struct Client*, int, char*[]); @@ -232,6 +233,7 @@ extern int ms_topic(struct Client*, struct Client*, int, char*[]); extern int ms_trace(struct Client*, struct Client*, int, char*[]); extern int ms_uping(struct Client*, struct Client*, int, char*[]); +extern int ms_users(struct Client*, struct Client*, int, char*[]); extern int ms_version(struct Client*, struct Client*, int, char*[]); extern int ms_wallchops(struct Client*, struct Client*, int, char*[]); extern int ms_wallvoices(struct Client*, struct Client*, int, char*[]); Index: ircd-ircdev/include/msg.h diff -u ircd-ircdev/include/msg.h:1.3 ircd-ircdev/include/msg.h:1.4 --- ircd-ircdev/include/msg.h:1.3 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/msg.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: msg.h,v 1.3 2004/02/22 16:13:21 zolty Exp $ + * $Id: msg.h,v 1.4 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_msg_h @@ -225,6 +225,10 @@ #define TOK_LUSERS "LU" #define CMD_LUSERS MSG_LUSERS, TOK_LUSERS +#define MSG_USERS "USERS" /* USE */ +#define TOK_USERS "US" +#define CMD_USERS MSG_USERS, TOK_USERS + #define MSG_MOTD "MOTD" /* MOTD */ #define TOK_MOTD "MO" #define CMD_MOTD MSG_MOTD, TOK_MOTD Index: ircd-ircdev/include/numeric.h diff -u ircd-ircdev/include/numeric.h:1.4 ircd-ircdev/include/numeric.h:1.5 --- ircd-ircdev/include/numeric.h:1.4 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/numeric.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: numeric.h,v 1.4 2004/02/22 16:13:21 zolty Exp $ + * $Id: numeric.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_numeric_h @@ -165,8 +165,8 @@ /* RPL_LOAD_THROTTLED 263 efnet/hybrid */ /* RPL_TRYAGAIN 263 Numerics List: IRCnet */ /* RPL_LOAD2HI 263 Dalnet */ -/* RPL_CURRENT_LOCAL 265 aircd/efnet/hybrid/dalnet*/ -/* RPL_CURRENT_GLOBAL 266 aircd/efnet/hybrid/dalnet */ +#define RPL_CURRENT_LOCAL 265 /* irc-dev/aircd/efnet/hybrid/dalnet */ +#define RPL_CURRENT_GLOBAL 266 /* irc-dev/aircd/efnet/hybrid/dalnet */ /* RPL_START_NETSTAT 267 aircd */ /* RPL_NETSTAT 268 aircd */ /* RPL_END_NETSTAT 269 aircd */ Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.9 ircd-ircdev/include/patchlevel.h:1.10 --- ircd-ircdev/include/patchlevel.h:1.9 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/patchlevel.h Fri Apr 23 04:08:08 2004 @@ -17,10 +17,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: patchlevel.h,v 1.9 2004/02/22 16:13:21 zolty Exp $ + * $Id: patchlevel.h,v 1.10 2004/04/23 11:08:08 zolty Exp $ * */ -#define PATCHLEVEL ".alpha8" +#define PATCHLEVEL ".alpha9" #define RELEASE "1.0" Index: ircd-ircdev/include/querycmds.h diff -u ircd-ircdev/include/querycmds.h:1.2 ircd-ircdev/include/querycmds.h:1.3 --- ircd-ircdev/include/querycmds.h:1.2 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/querycmds.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: querycmds.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * $Id: querycmds.h,v 1.3 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_querycmds_h @@ -59,7 +59,17 @@ */ /* Macros for remote connections: */ -#define Count_newremoteclient(UserStats, cptr) (++UserStats.clients, ++(cli_serv(cptr)->clients)) +#define Count_newremoteclient(UserStats, cptr) \ + do { \ + ++UserStats.clients; \ + ++(cli_serv(cptr)->clients); \ + if (UserStats.clients >= max_global_count) \ + { \ + max_global_count = UserStats.clients; \ + max_global_count_TS = CurrentTime; \ + } \ + } while (0) + #define Count_newremoteserver(UserStats) (++UserStats.servers) #define Count_remoteclientquits(UserStats,cptr) \ @@ -80,6 +90,10 @@ ++current_load.local_count; \ if (UserStats.local_clients > max_client_count) \ max_client_count = UserStats.local_clients; \ + max_client_count_TS = CurrentTime; \ + if (UserStats.clients > max_global_count) \ + max_global_count = UserStats.clients; \ + max_global_count_TS = CurrentTime; \ if (UserStats.local_clients + UserStats.local_servers > max_connection_count) \ { \ max_connection_count = UserStats.local_clients + UserStats.local_servers; \ Index: ircd-ircdev/include/s_serv.h diff -u ircd-ircdev/include/s_serv.h:1.2 ircd-ircdev/include/s_serv.h:1.3 --- ircd-ircdev/include/s_serv.h:1.2 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/s_serv.h Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: s_serv.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * $Id: s_serv.h,v 1.3 2004/04/23 11:08:08 zolty Exp $ * */ #ifndef INCLUDED_s_serv_h @@ -34,6 +34,9 @@ extern unsigned int max_connection_count; extern unsigned int max_client_count; +extern unsigned int max_global_count; +extern time_t max_client_count_TS; +extern time_t max_global_count_TS; /* * Prototypes Index: ircd-ircdev/ircd/Makefile.in diff -u ircd-ircdev/ircd/Makefile.in:1.8 ircd-ircdev/ircd/Makefile.in:1.9 --- ircd-ircdev/ircd/Makefile.in:1.8 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/Makefile.in Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307 USA -# $Id: Makefile.in,v 1.8 2004/02/22 16:11:42 zolty Exp $ +# $Id: Makefile.in,v 1.9 2004/04/23 11:08:08 zolty Exp $ #### Start of system configuration section. #### @@ -177,6 +177,7 @@ m_trace.c \ m_uping.c \ m_user.c \ + m_users.c \ m_userhost.c \ m_userip.c \ m_version.c \ Index: ircd-ircdev/ircd/channel.c diff -u ircd-ircdev/ircd/channel.c:1.5 ircd-ircdev/ircd/channel.c:1.6 --- ircd-ircdev/ircd/channel.c:1.5 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/channel.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: channel.c,v 1.5 2004/02/22 16:11:42 zolty Exp $ + * $Id: channel.c,v 1.6 2004/04/23 11:08:08 zolty Exp $ * */ #include "config.h" @@ -454,9 +454,11 @@ struct Membership* member) { struct SLink* tmp; +#if defined(UNDERNET) char tmphost[HOSTLEN + 1]; - char nu_host[NUH_BUFSIZE]; char nu_realhost[NUH_BUFSIZE]; +#endif + char nu_host[NUH_BUFSIZE]; char nu_ip[NUI_BUFSIZE]; char* s; char* sr = NULL; Index: ircd-ircdev/ircd/engine_epoll.c diff -u ircd-ircdev/ircd/engine_epoll.c:1.2 ircd-ircdev/ircd/engine_epoll.c:1.3 --- ircd-ircdev/ircd/engine_epoll.c:1.2 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/engine_epoll.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: engine_epoll.c,v 1.2 2004/02/22 16:11:42 zolty Exp $ + * $Id: engine_epoll.c,v 1.3 2004/04/23 11:08:08 zolty Exp $ * */ #include "config.h" @@ -43,7 +43,7 @@ /* The GNU C library may have a valid header but stub implementations * of the epoll system calls. If so, provide our own. */ -#if defined(__stub_epoll_create) || defined(__stub___epoll_create) +#if defined(__stub_epoll_create) || defined(__stub___epoll_create) || defined(EPOLL_NEED_BODY) /* Oh, did we mention that some glibc releases do not even define the * syscall numbers? */ Index: ircd-ircdev/ircd/gline.c diff -u ircd-ircdev/ircd/gline.c:1.4 ircd-ircdev/ircd/gline.c:1.5 --- ircd-ircdev/ircd/gline.c:1.4 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/gline.c Fri Apr 23 04:08:08 2004 @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: gline.c,v 1.4 2004/02/22 16:11:42 zolty Exp $ + * $Id: gline.c,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ #include "config.h" @@ -815,7 +815,8 @@ if (gline->gl_expire <= CurrentTime) gline_free(gline); - send_reply(sptr, RPL_STATSGLINE, 'G', gline->gl_user, gline->gl_host, + else + send_reply(sptr, RPL_STATSGLINE, 'G', gline->gl_user, gline->gl_host, gline->gl_host ? "@" : "", gline->gl_host ? gline->gl_host : "", gline->gl_expire + TSoffset, gline->gl_reason); Index: ircd-ircdev/ircd/ircd.c diff -u ircd-ircdev/ircd/ircd.c:1.5 ircd-ircdev/ircd/ircd.c:1.6 --- ircd-ircdev/ircd/ircd.c:1.5 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/ircd.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd.c,v 1.5 2004/02/22 16:11:42 zolty Exp $ + * $Id: ircd.c,v 1.6 2004/04/23 11:08:08 zolty Exp $ * */ #include "config.h" @@ -254,7 +254,7 @@ for (aconf = GlobalConfList; aconf; aconf = aconf->next) { /* Also when already connecting! (update holdtimes) --SRB */ if (!(aconf->status & CONF_SERVER) || aconf->port == 0 || aconf->hold == 0) -// FIXME if (!(aconf->status & CONF_SERVER) || aconf->port == 0) +/* FIXME if (!(aconf->status & CONF_SERVER) || aconf->port == 0) */ continue; /* Also skip juped servers */ @@ -639,10 +639,6 @@ setup_signals(); feature_init(); /* initialize features... */ log_init(*argv); - if (check_pid()) { - Debug((DEBUG_FATAL, "Failed to acquire PID file lock after fork")); - exit(2); - } set_nomem_handler(outofmemory); if (!init_string()) { @@ -668,6 +664,11 @@ return 7; } + if (check_pid()) { + Debug((DEBUG_FATAL, "Failed to acquire PID file lock after fork")); + exit(2); + } + init_server_identity(); uping_init(); Index: ircd-ircdev/ircd/ircd_parser.y diff -u ircd-ircdev/ircd/ircd_parser.y:1.4 ircd-ircdev/ircd/ircd_parser.y:1.5 --- ircd-ircdev/ircd/ircd_parser.y:1.4 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/ircd_parser.y Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_parser.y,v 1.4 2004/02/22 16:11:42 zolty Exp $ + * $Id: ircd_parser.y,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ %{ @@ -153,42 +153,17 @@ %token FEATURES %token QUARANTINE /* and now a lot of priviledges... */ -%token TPRIV_CHAN_LIMIT -%token TPRIV_MODE_LCHAN -%token TPRIV_DEOP_LCHAN -%token TPRIV_WALK_LCHAN -%token TPRIV_KILL -%token TPRIV_LOCAL_KILL -%token TPRIV_REHASH -%token TPRIV_RESTART -%token TPRIV_DIE -%token TPRIV_GLINE -%token TPRIV_LOCAL_GLINE -%token TPRIV_JUPE -%token TPRIV_LOCAL_JUPE -%token TPRIV_LOCAL_OPMODE -%token TPRIV_OPMODE -%token TPRIV_SET -%token TPRIV_WHOX -%token TPRIV_BADCHAN +%token TPRIV_CHAN_LIMIT TPRIV_MODE_LCHAN TPRIV_DEOP_LCHAN TPRIV_WALK_LCHAN +%token TPRIV_KILL TPRIV_LOCAL_KILL TPRIV_REHASH TPRIV_RESTART TPRIV_DIE +%token TPRIV_GLINE TPRIV_LOCAL_GLINE TPRIV_JUPE TPRIV_LOCAL_JUPE +%token TPRIV_LOCAL_OPMODE TPRIV_OPMODE TPRIV_SET TPRIV_WHOX TPRIV_BADCHAN %token TPRIV_LOCAL_BADCHAN -%token TPRIV_SEE_CHAN -%token TPRIV_SHOW_INVIS -%token TPRIV_SHOW_ALL_INVIS -%token TPRIV_PROPAGATE -%token TPRIV_UNLIMIT_QUERY -%token TPRIV_DISPLAY -%token TPRIV_SEE_OPERS -%token TPRIV_WIDE_GLINE +%token TPRIV_SEE_CHAN TPRIV_SHOW_INVIS TPRIV_SHOW_ALL_INVIS TPRIV_PROPAGATE +%token TPRIV_UNLIMIT_QUERY TPRIV_DISPLAY TPRIV_SEE_OPERS TPRIV_WIDE_GLINE /* and some types... */ %type <num> sizespec -%type <num> timespec -%type <num> timefactor -%type <num> factoredtimes -%type <num> factoredtime -%type <num> expr -%type <num> yesorno -%type <num> privtype +%type <num> timespec timefactor factoredtimes factoredtime +%type <num> expr yesorno privtype %left '+' '-' %left '*' '/' @@ -228,28 +203,22 @@ | DECADES { $$ = 60 * 60 * 24 * 365 * 10; }; -sizespec: expr - { +sizespec: expr { $$ = $1; } - | expr BYTES - { + | expr BYTES { $$ = $1; } - | expr KBYTES - { + | expr KBYTES { $$ = $1 * 1024; } - | expr MBYTES - { + | expr MBYTES { $$ = $1 * 1024 * 1024; } - | expr GBYTES - { + | expr GBYTES { $$ = $1 * 1024 * 1024 * 1024; } - | expr TBYTES - { + | expr TBYTES { $$ = $1 * 1024 * 1024 * 1024; } ; @@ -259,29 +228,24 @@ { $$ = $1; } - | expr '+' expr - { + | expr '+' expr { $$ = $1 + $3; } - | expr '-' expr - { + | expr '-' expr { $$ = $1 - $3; } - | expr '*' expr - { + | expr '*' expr { $$ = $1 * $3; } - | expr '/' expr - { + | expr '/' expr { $$ = $1 / $3; } /* leave this out until we find why it makes BSD yacc dump core -larne | '-' expr %prec NEG - { + = { $$ = -$2; } */ - | '(' expr ')' - { + | '(' expr ')' { $$ = $2; } ; Index: ircd-ircdev/ircd/m_invite.c diff -u ircd-ircdev/ircd/m_invite.c:1.2 ircd-ircdev/ircd/m_invite.c:1.3 --- ircd-ircdev/ircd/m_invite.c:1.2 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_invite.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_invite.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_invite.c,v 1.3 2004/04/23 11:08:08 zolty Exp $ * */ @@ -145,24 +145,7 @@ return 0; if (!(chptr = FindChannel(parv[2]))) { - if (IsLocalChannel(parv[2])) { - send_reply(sptr, ERR_NOTONCHANNEL, parv[2]); - return 0; - } - - /* Do not disallow to invite to non-existant #channels, otherwise they - would simply first be created, causing only MORE bandwidth usage. */ - - if (check_target_limit(sptr, acptr, cli_name(acptr), 0)) - return 0; - - send_reply(sptr, RPL_INVITING, cli_name(acptr), parv[2]); - - if (cli_user(acptr)->away) - send_reply(sptr, RPL_AWAY, cli_name(acptr), cli_user(acptr)->away); - - sendcmdto_one(sptr, CMD_INVITE, acptr, "%s :%s", cli_name(acptr), parv[2]); - + send_reply(sptr, ERR_NOTONCHANNEL, parv[2]); return 0; } Index: ircd-ircdev/ircd/m_join.c diff -u ircd-ircdev/ircd/m_join.c:1.4 ircd-ircdev/ircd/m_join.c:1.5 --- ircd-ircdev/ircd/m_join.c:1.4 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_join.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_join.c,v 1.4 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_join.c,v 1.5 2004/04/23 11:08:08 zolty Exp $ * */ @@ -166,7 +166,9 @@ struct Channel *chptr; struct JoinBuf join; struct JoinBuf create; +#if defined(UNDERNET) struct ModeBuf mbuf; +#endif struct Gline *gline; unsigned int flags = 0; int i, j, k = 0; Index: ircd-ircdev/ircd/m_lusers.c diff -u ircd-ircdev/ircd/m_lusers.c:1.2 ircd-ircdev/ircd/m_lusers.c:1.3 --- ircd-ircdev/ircd/m_lusers.c:1.2 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_lusers.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_lusers.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_lusers.c,v 1.3 2004/04/23 11:08:08 zolty Exp $ */ /* @@ -80,6 +80,7 @@ #include "config.h" #include "client.h" +#include "handlers.h" #include "ircd.h" #include "ircd_features.h" #include "ircd_reply.h" @@ -88,8 +89,9 @@ #include "numeric.h" #include "numnicks.h" #include "querycmds.h" -#include "s_user.h" +#include "s_misc.h" #include "s_serv.h" +#include "s_user.h" #include "send.h" #include <assert.h> @@ -120,9 +122,15 @@ send_reply(sptr, RPL_LUSERME, UserStats.local_clients, UserStats.local_servers); + m_users(cptr, sptr, parc, parv); + +/* sendcmdto_one(&me, CMD_NOTICE, sptr, "%C :Highest connection count: " "%d (%d clients)", sptr, max_connection_count, max_client_count); +*/ + send_reply(sptr, RPL_STATSCONN, max_connection_count, max_client_count, + ServerStats->is_cl); return 0; } @@ -153,9 +161,16 @@ send_reply(sptr, RPL_LUSERME, UserStats.local_clients, UserStats.local_servers); + m_users(cptr, sptr, parc, parv); + +/* sendcmdto_one(&me, CMD_NOTICE, sptr, "%C :Highest connection count: " "%d (%d clients)", sptr, max_connection_count, max_client_count); +*/ + + send_reply(sptr, RPL_STATSCONN, max_connection_count, max_client_count, + ServerStats->is_cl); return 0; } Index: ircd-ircdev/ircd/m_names.c diff -u ircd-ircdev/ircd/m_names.c:1.3 ircd-ircdev/ircd/m_names.c:1.4 --- ircd-ircdev/ircd/m_names.c:1.3 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_names.c Fri Apr 23 04:08:08 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_names.c,v 1.3 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_names.c,v 1.4 2004/04/23 11:08:08 zolty Exp $ * */ @@ -164,15 +164,18 @@ strcat(buf, "!"); idx++; } - else if (IsChanOp(member)) + else { - strcat(buf, "@"); - idx++; - } - else if (HasVoice(member)) - { - strcat(buf, "+"); - idx++; + if (IsChanOp(member)) + { + strcat(buf, "@"); + idx++; + } + if (HasVoice(member)) + { + strcat(buf, "+"); + idx++; + } } strcat(buf, cli_name(c2ptr)); idx += strlen(cli_name(c2ptr)); Index: ircd-ircdev/ircd/m_users.c diff -u /dev/null ircd-ircdev/ircd/m_users.c:1.1 --- /dev/null Fri Apr 23 04:08:34 2004 +++ ircd-ircdev/ircd/m_users.c Fri Apr 23 04:08:09 2004 @@ -0,0 +1,136 @@ +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_users.c + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2004 Toni Garcia (zoltan) <zo...@ir...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_users.c,v 1.1 2004/04/23 11:08:09 zolty Exp $ + */ + +/* + * m_functions execute protocol messages on this server: + * + * cptr is always NON-NULL, pointing to a *LOCAL* client + * structure (with an open socket connected!). This + * identifies the physical socket where the message + * originated (or which caused the m_function to be + * executed--some m_functions may call others...). + * + * sptr is the source of the message, defined by the + * prefix part of the message if present. If not + * or prefix not found, then sptr==cptr. + * + * (!IsServer(cptr)) => (cptr == sptr), because + * prefixes are taken *only* from servers... + * + * (IsServer(cptr)) + * (sptr == cptr) => the message didn't + * have the prefix. + * + * (sptr != cptr && IsServer(sptr) means + * the prefix specified servername. (?) + * + * (sptr != cptr && !IsServer(sptr) means + * that message originated from a remote + * user (not local). + * + * combining + * + * (!IsServer(sptr)) means that, sptr can safely + * taken as defining the target structure of the + * message in this server. + * + * *Always* true (if 'parse' and others are working correct): + * + * 1) sptr->from == cptr (note: cptr->from == cptr) + * + * 2) MyConnect(sptr) <=> sptr == cptr (e.g. sptr + * *cannot* be a local connection, unless it's + * actually cptr!). [MyConnect(x) should probably + * be defined as (x == x->from) --msa ] + * + * parc number of variable parameter strings (if zero, + * parv is allowed to be NULL) + * + * parv a NULL terminated list of parameter pointers, + * + * parv[0], sender (prefix string), if not present + * this points to an empty string. + * parv[1]...parv[parc-1] + * pointers to additional parameters + * parv[parc] == NULL, *always* + * + * note: it is guaranteed that parv[0]..parv[parc-1] are all + * non-NULL pointers. + */ +#include "config.h" + +#include "client.h" +#include "ircd_features.h" +#include "ircd_reply.h" +#include "msg.h" +#include "numeric.h" +#include "querycmds.h" +#include "s_misc.h" +#include "s_user.h" +#include "s_serv.h" + +#include <assert.h> + +/* + * m_users - generic message handler + * + * parv[0] = sender + * parv[1] = ignored + * parv[2] = server to query + */ +int m_users(struct Client* cptr, struct Client* sptr, int parc, char* parv[]) +{ + if (parc > 2) + if (hunt_server_cmd(sptr, CMD_USERS, cptr, feature_int(FEAT_HIS_REMOTE), + "%s :%C", 2, parc, parv) != HUNTED_ISME) + return 0; + + send_reply(sptr, RPL_CURRENT_LOCAL, UserStats.local_clients, max_client_count, + date(max_client_count_TS)); + send_reply(sptr, RPL_CURRENT_GLOBAL, UserStats.clients, max_global_count, + date(max_global_count_TS)); + + return 0; +} + +/* + * ms_users - server message handler + * + * parv[0] = sender + * parv[1] = ignored + * parv[2] = server to query + */ +int ms_users(struct Client* cptr, struct Client* sptr, int parc, char* parv[]) +{ + if (parc > 2) + if (hunt_server_cmd(sptr, CMD_USERS, cptr, 0, "%s :%C", 2, parc, parv) != + HUNTED_ISME) + return 0; + + send_reply(sptr, RPL_CURRENT_LOCAL, UserStats.local_clients, max_client_count, + date(max_client_count_TS)); + send_reply(sptr, RPL_CURRENT_GLOBAL, UserStats.clients, max_global_count, + date(max_global_count_TS)); + + return 0; +} Index: ircd-ircdev/ircd/m_watch.c diff -u ircd-ircdev/ircd/m_watch.c:1.2 ircd-ircdev/ircd/m_watch.c:1.3 --- ircd-ircdev/ircd/m_watch.c:1.2 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_watch.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_watch.c,v 1.2 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_watch.c,v 1.3 2004/04/23 11:08:09 zolty Exp $ * */ @@ -84,6 +84,7 @@ #include "hash.h" #include "ircd.h" #include "ircd_features.h" +#include "ircd_reply.h" #include "ircd_string.h" #include "list.h" #include "numeric.h" Index: ircd-ircdev/ircd/m_whois.c diff -u ircd-ircdev/ircd/m_whois.c:1.5 ircd-ircdev/ircd/m_whois.c:1.6 --- ircd-ircdev/ircd/m_whois.c:1.5 Thu Apr 22 10:37:18 2004 +++ ircd-ircdev/ircd/m_whois.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: m_whois.c,v 1.5 2004/04/22 17:37:18 zolty Exp $ + * $Id: m_whois.c,v 1.6 2004/04/23 11:08:09 zolty Exp $ */ /* @@ -151,7 +151,7 @@ chptr = chan->channel; if (!(IsOper(sptr) && IsLocalChannel(chptr->chname)) - && ShowChannel(sptr, chptr)) + && !ShowChannel(sptr, chptr)) continue; if (acptr != sptr && IsZombie(chan)) @@ -168,14 +168,12 @@ if (IsOper(sptr) && !ShowChannel(sptr,chptr)) *(buf + len++) = '*'; if (IsZombie(chan)) - { *(buf + len++) = '!'; - } else { if (IsChanOp(chan)) *(buf + len++) = '@'; - else if (HasVoice(chan)) + if (HasVoice(chan)) *(buf + len++) = '+'; } if (len) Index: ircd-ircdev/ircd/parse.c diff -u ircd-ircdev/ircd/parse.c:1.4 ircd-ircdev/ircd/parse.c:1.5 --- ircd-ircdev/ircd/parse.c:1.4 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/parse.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: parse.c,v 1.4 2004/02/22 16:11:42 zolty Exp $ + * $Id: parse.c,v 1.5 2004/04/23 11:08:09 zolty Exp $ * */ #include "config.h" @@ -340,6 +340,13 @@ { m_unregistered, m_lusers, ms_lusers, m_lusers, m_ignore } }, { + MSG_USERS, + TOK_USERS, + 0, MAXPARA, MFLG_SLOW, 0, + /* UNREG, CLIENT, SERVER, OPER, SERVICE */ + { m_unregistered, m_users, ms_users, m_users, m_ignore } + }, + { MSG_TIME, TOK_TIME, 0, MAXPARA, MFLG_SLOW, 0, Index: ircd-ircdev/ircd/s_err.c diff -u ircd-ircdev/ircd/s_err.c:1.5 ircd-ircdev/ircd/s_err.c:1.6 --- ircd-ircdev/ircd/s_err.c:1.5 Sun Feb 22 08:11:42 2004 +++ ircd-ircdev/ircd/s_err.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: s_err.c,v 1.5 2004/02/22 16:11:42 zolty Exp $ + * $Id: s_err.c,v 1.6 2004/04/23 11:08:09 zolty Exp $ * */ #include "config.h" @@ -539,7 +539,7 @@ /* 249 */ { RPL_STATSDEBUG, 0, "249" }, /* 250 */ - { RPL_STATSCONN, ":Highest connection count: %d (%d clients)", "250" }, + { RPL_STATSCONN, ":Highest connection count: %d (%d clients) (%d connections received)", "250" }, /* 251 */ { RPL_LUSERCLIENT, ":There are %d users and %d invisible on %d servers", "251" }, /* 252 */ @@ -569,9 +569,9 @@ /* 264 */ { 0 }, /* 265 */ - { 0 }, + { RPL_CURRENT_LOCAL, ":Current local users: %d Max: %d (%s)", "265" }, /* 266 */ - { 0 }, + { RPL_CURRENT_GLOBAL, ":Current global users: %d Max: %d (%s)", "266" }, /* 267 */ { 0 }, /* 268 */ Index: ircd-ircdev/ircd/s_serv.c diff -u ircd-ircdev/ircd/s_serv.c:1.3 ircd-ircdev/ircd/s_serv.c:1.4 --- ircd-ircdev/ircd/s_serv.c:1.3 Sun Feb 22 08:11:43 2004 +++ ircd-ircdev/ircd/s_serv.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: s_serv.c,v 1.3 2004/02/22 16:11:43 zolty Exp $ + * $Id: s_serv.c,v 1.4 2004/04/23 11:08:09 zolty Exp $ * */ #include "config.h" @@ -60,6 +60,9 @@ unsigned int max_connection_count = 0; unsigned int max_client_count = 0; +unsigned int max_global_count = 0; +time_t max_client_count_TS = 0; +time_t max_global_count_TS = 0; int exit_new_server(struct Client *cptr, struct Client *sptr, const char *host, time_t timestamp, const char *pattern, ...) Index: ircd-ircdev/ircd/watch.c diff -u ircd-ircdev/ircd/watch.c:1.2 ircd-ircdev/ircd/watch.c:1.3 --- ircd-ircdev/ircd/watch.c:1.2 Sun Feb 22 08:11:43 2004 +++ ircd-ircdev/ircd/watch.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: watch.c,v 1.2 2004/02/22 16:11:43 zolty Exp $ + * $Id: watch.c,v 1.3 2004/04/23 11:08:09 zolty Exp $ * */ #include "config.h" @@ -28,6 +28,7 @@ #include "hash.h" #include "ircd.h" #include "ircd_alloc.h" +#include "ircd_reply.h" #include "ircd_string.h" #include "list.h" #include "numeric.h" @@ -84,7 +85,7 @@ hAddWatch(wptr); #ifdef DEBUGMODE -// watchs.inuse++; +/* watchs.inuse++; */ #endif return (wptr); @@ -104,7 +105,7 @@ MyFree(wptr); #ifdef DEBUGMODE -// watchs.inuse--; +/* watchs.inuse--; */ #endif } Index: ircd-ircdev/ircd/whocmds.c diff -u ircd-ircdev/ircd/whocmds.c:1.3 ircd-ircdev/ircd/whocmds.c:1.4 --- ircd-ircdev/ircd/whocmds.c:1.3 Sun Feb 22 08:11:43 2004 +++ ircd-ircdev/ircd/whocmds.c Fri Apr 23 04:08:09 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: whocmds.c,v 1.3 2004/02/22 16:11:43 zolty Exp $ + * $Id: whocmds.c,v 1.4 2004/04/23 11:08:09 zolty Exp $ * */ #include "config.h" @@ -173,12 +173,15 @@ *(p1++) = '!'; } else { - if (chptr && is_chan_op(acptr, chptr)) - *(p1++) = '@'; - else if (chptr && has_voice(acptr, chptr)) - *(p1++) = '+'; - else if (chptr && is_zombie(acptr, chptr)) + if (chptr && is_zombie(acptr, chptr)) *(p1++) = '!'; + else + { + if (chptr && is_chan_op(acptr, chptr)) + *(p1++) = '@'; + if (chptr && has_voice(acptr, chptr)) + *(p1++) = '+'; + } } if (IsDeaf(acptr)) *(p1++) = 'd'; ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-04-23 19:27:42
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-04-23 19:27:36 UTC Modified files: TODO.es Log message: Actualizaion TODO.es ---------------------- diff included ---------------------- Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.6 ircd-ircdev/TODO.es:1.7 --- ircd-ircdev/TODO.es:1.6 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/TODO.es Fri Apr 23 12:27:26 2004 @@ -1,72 +1,81 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.6 2004/04/23 11:08:08 zolty Exp $ +# $Id: TODO.es,v 1.7 2004/04/23 19:27:26 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # - -URGENTE: - - -Bugs Conocidos: +URGENTE -------------------------------------------------------------------------------------- -1/Nov/2003 -- Bug al conectar sale umode -Oo. -- Enlazar la libreria de adns al ircd. -- Bug en las U-lines (uworld y jupes). - + - [D] Implementar el protocolo DDB. + - [D] Comando de consulta de DDB. + - [D] Nicks registrados y protegidos. -Features para General: +ALTA PRIORIDAD -------------------------------------------------------------------------------------- -- Caracter '~' en los nicks. -- Los clientes con +k han de poder "hablar" en canales. -- Mostrar tiempo en formato humano en las G-lines. -- Soporte de E-lines (excepciones a K-lines). -- Modo +X de ver ips. -- Modo +R de usuarios. -- ¿Modo +M de canales?. -- Enviar un Closing Link en los QUIT. -- ¿Ampliacion comando OPER para elegir clase? -- Poner uuna Feature para elegir entre salir o no el nombre del servidor en los notices - de auth y dnslookup al conectar. -- Cuando nos silencian, que salga un numerico. -- Completar el MAP, salir numeric, nº de usuarios, porcentajes. -- Estudiar sobre la conveniencia de mandar privmsg globales al nick en vez de a la mascara. -- Si un global lo manda un ircop, que salga el prefijo de Mensaje global con la mascara o - avisar mediante wallops global. -- Estudiar sobre la conveniencia de mezclar numericos (3 y 5). Puede romper la estandarizacion - del protocolo P10. -- Posibilidad de BURST de topics. -- Modo de canal +D para conferencias. Mirar Asuka o Universal ircu de Run. -- Implementar la libreria libevent cuando este terminado (Da soporte IPv6). + - [G] Soporte de E-lines (excepciones a K-lines). + - [G] Modo +X de ver ips. + - [G] Modo +R de usuarios. + - [G] ¿Modo +M de canales?. + - [G] Poner uuna Feature para elegir entre salir o no el nombre del servidor en los + notices de auth y dnslookup al conectar. + - [G] Completar el MAP, salir numeric, nº de usuarios, porcentajes. + - [D] Comando GHOST. + - [D] Virtualhost personalizado a traves de la DDB. + - [D] U-lines a traves de la DDB. + - [D] F-lines (features) a traves de la DDB. -Features para Undernet: +PRIORIDAD MEDIA -------------------------------------------------------------------------------------- -- Soporte de modos de canal +A y +u y todo lo relacionado con el. -- S-lines (Spoof Lines). + - [G] Caracter '~' en los nicks. + - [G] Los clientes con +k han de poder "hablar" en canales. + - [G] Mostrar tiempo en formato humano en las G-lines. + - [G] Enviar un Closing Link en los QUIT. + - [G] Cuando nos silencian, que salga un numerico. + - [G] Estudiar sobre la conveniencia de mandar privmsg globales al nick en vez de a + la mascara. + - [G] Si un global lo manda un ircop, que salga el prefijo de Mensaje global con la + mascara o avisar mediante wallops global. + - [G] Modo de canal +D para conferencias. Mirar Asuka o Universal ircu de Run. + - [S] Buscar una forma para cifrar IPs con un cambio de clave de cifrado incluido. + - [S] Comando SVSNICK. + - [S] Comando SVSMODE. + - [S] Comando SVSVHOST para cambiar la virtualhost. Estudiar alguna forma de propagarse + en el burst. + - [S] Comando /IDENTIFY y autentificacion NICK nick clave. + - [S] Comprobar el comando OPMODE haga lo que hacia el SAMODE de Terraircu. +PRIORIDAD BAJA +-------------------------------------------------------------------------------------- + - [G] Enlazar la libreria de adns al ircd. + - [G] ¿Ampliacion comando OPER para elegir clase? + - [G] Estudiar sobre la conveniencia de mezclar numericos (3 y 5). Puede romper la + estandarizacion del protocolo P10. + - [G] Posibilidad de BURST de topics. + - [G] S-lines (Spoof Lines). + - [G] Implementar la libreria libevent cuando este terminado (Da soporte IPv6). + - [G] Soporte Zlib para server<->server y client<->server (requiere + negociado). + - [G] Soporte RC4 para server<->server. + - [G] Soporte SSL para client<->server. + - [U] Soporte de modos de canal +A y +u y todo lo relacionado con el (.12). -Features Services (ex Terraircu): +BUGS CONOCIDOS -------------------------------------------------------------------------------------- -- Buscar una forma para cifrar IPs con un cambio de clave de cifrado incluido. -- Comando SVSNICK. -- Comando SVSMODE. -- Comando SVSVHOST para cambiar la virtualhost. Estudiar alguna forma de propagarse en - el burst. -- Comando /IDENTIFY y autentificacion NICK nick clave. -- Comprobar el comando OPMODE haga lo que hacia el SAMODE. - +23/Abr/2004 + - [G] Sistema de logs no funciona por el paso del .conf al bison +1/Nov/2003 + - [G] Bug al conectar sale umode -Oo. + - [G] Bug en las U-lines (uworld y jupes). -Features Distributed DataBase (Similar a BDD): --------------------------------------------------------------------------------------- -- Estudiar un protocolo para DDB. -- Comando de consulta de DDB. -- Nicks registrados y protegidos. -- Comando GHOST +Leyenda: +[G] General +[U] Undernet +[D] DDB +[S] Services ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-21 15:40:15
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-21 15:39:46 UTC Modified files: ChangeLog ChangeLog.es Makefile.in TODO.es configure doc/ircd.sample-en.conf doc/history/Undernet/ChangeLog-u2.10.12 include/channel.h include/class.h include/client.h include/gline.h include/handlers.h include/ircd_defs.h include/ircd_features.h include/ircd_string.h include/msg.h include/msgq.h include/numeric.h include/parse.h include/patchlevel.h include/s_conf.h include/s_user.h include/send.h include/struct.h include/supported.h ircd/IPcheck.c ircd/Makefile.in ircd/channel.c ircd/chkconf.c ircd/client.c ircd/engine_epoll.c ircd/gline.c ircd/ircd.c ircd/ircd_features.c ircd/ircd_lexer.l ircd/ircd_parser.y ircd/ircd_relay.c ircd/ircd_string.c ircd/m_account.c ircd/m_burst.c ircd/m_clearmode.c ircd/m_error.c ircd/m_invite.c ircd/m_join.c ircd/m_kick.c ircd/m_names.c ircd/m_nick.c ircd/m_oper.c ircd/m_part.c ircd/m_ping.c ircd/m_quit.c ircd/m_server.c ircd/m_topic.c ircd/m_wallchops.c ircd/m_wallvoices.c ircd/m_who.c ircd/m_whois.c ircd/match.c ircd/parse.c ircd/res_adns.c ircd/res_libresolv.c ircd/s_conf.c ircd/s_debug.c ircd/s_err.c ircd/s_stats.c ircd/s_user.c ircd/send.c ircd/version.c.SH Log message: Author: zoltan <zo...@ir...> Log message: 2004-05-21 Toni García <zo...@ir...> 1.0.alpha10 * Deshabilitar el cambio de nick en canales moderados * Mapeo de comandos de services * Modo de canal +D (Delayed-join / Modo de conferencias) * Opcion de usermode por defecto por clase de conection * Anuncio de invitaciones a los otros operadores * Sincronizacion Undernet ---------------------- diff included ---------------------- Index: ircd-ircdev/ChangeLog diff -u ircd-ircdev/ChangeLog:1.10 ircd-ircdev/ChangeLog:1.11 --- ircd-ircdev/ChangeLog:1.10 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/ChangeLog Fri May 21 08:39:32 2004 @@ -1,10 +1,19 @@ # # ChangeLog for ircd-ircdev # -# $Id: ChangeLog,v 1.10 2004/04/23 11:08:08 zolty Exp $ +# $Id: ChangeLog,v 1.11 2004/05/21 15:39:32 zolty Exp $ # # Insert new changes at beginning of the change list. # +2004-05-21 Toni García <zo...@ir...> 1.0.alpha10 + * Disallow nick change on a moderated channel + * Mapping service commands + * Delayed-join channel mode +D (Conferende mode) + * Per-connection-class default usermode option + * Topic burst optional + * Announce invitations to other channel operators + * Undernet synchronization + 2004-04-23 Toni García <zo...@ir...> 1.0.alpha9 * Warnings fixes * USERS command Index: ircd-ircdev/ChangeLog.es diff -u ircd-ircdev/ChangeLog.es:1.10 ircd-ircdev/ChangeLog.es:1.11 --- ircd-ircdev/ChangeLog.es:1.10 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/ChangeLog.es Fri May 21 08:39:33 2004 @@ -1,10 +1,18 @@ # # Log de Cambios para ircd-ircdev # -# $Id: ChangeLog.es,v 1.10 2004/04/23 11:08:08 zolty Exp $ +# $Id: ChangeLog.es,v 1.11 2004/05/21 15:39:33 zolty Exp $ # # Insertar los nuevos cambios al principio de esta lista de cambios. # +2004-05-21 Toni García <zo...@ir...> 1.0.alpha10 + * Deshabilitar el cambio de nick en canales moderados + * Mapeo de comandos de services + * Modo de canal +D (Delayed-join / Modo de conferencias) + * Opcion de usermode por defecto por clase de conection + * Anuncio de invitaciones a los otros operadores + * Sincronizacion Undernet + 2004-04-23 Toni García <zo...@ir...> 1.0.alpha9 * Fix de warnings de compilacion * Comando USERS Index: ircd-ircdev/Makefile.in diff -u ircd-ircdev/Makefile.in:1.3 ircd-ircdev/Makefile.in:1.4 --- ircd-ircdev/Makefile.in:1.3 Sun Feb 22 08:16:22 2004 +++ ircd-ircdev/Makefile.in Fri May 21 08:39:33 2004 @@ -104,6 +104,7 @@ install: ${IRCD_MAKEFILES} test -d ${prefix} || mkdir ${prefix} + test -d ${prefix}/include || mkdir ${prefix}/include @for i in ${SUBDIRS}; do \ echo "Installing $$i..."; \ cd $$i; ${MAKE} install; cd ..; \ Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.7 ircd-ircdev/TODO.es:1.8 --- ircd-ircdev/TODO.es:1.7 Fri Apr 23 12:27:26 2004 +++ ircd-ircdev/TODO.es Fri May 21 08:39:33 2004 @@ -1,7 +1,7 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.7 2004/04/23 19:27:26 zolty Exp $ +# $Id: TODO.es,v 1.8 2004/05/21 15:39:33 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # @@ -63,7 +63,9 @@ - [G] Soporte RC4 para server<->server. - [G] Soporte SSL para client<->server. - [U] Soporte de modos de canal +A y +u y todo lo relacionado con el (.12). - + - [G] Soporte de cache de MAP (.12). + - [G] Nuevo soporte de memoria (.12). + - [G] Mirar si el aviso de invites lo haga con wallchops o con raw. BUGS CONOCIDOS -------------------------------------------------------------------------------------- Index: ircd-ircdev/configure diff -u ircd-ircdev/configure:1.7 ircd-ircdev/configure:1.8 --- ircd-ircdev/configure:1.7 Sun Feb 22 08:16:22 2004 +++ ircd-ircdev/configure Fri May 21 08:39:33 2004 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.58. +# Generated by GNU Autoconf 2.59. # # Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation @@ -995,7 +995,7 @@ running configure, to aid debugging if configure makes a mistake. It was created by $as_me, which was -generated by GNU Autoconf 2.58. Invocation command line was +generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ @@ -4680,10 +4680,8 @@ esac else if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} + { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 +echo "$as_me: error: internal error: not reached in cross-compile" >&2;} { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF @@ -5088,10 +5086,8 @@ esac else if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} + { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 +echo "$as_me: error: internal error: not reached in cross-compile" >&2;} { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF @@ -5496,10 +5492,8 @@ esac else if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} + { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 +echo "$as_me: error: internal error: not reached in cross-compile" >&2;} { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF @@ -5904,10 +5898,8 @@ esac else if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run test program while cross compiling -See \`config.log' for more details." >&2;} + { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5 +echo "$as_me: error: internal error: not reached in cross-compile" >&2;} { (exit 1); exit 1; }; } else cat >conftest.$ac_ext <<_ACEOF @@ -9257,7 +9249,7 @@ cat >&5 <<_CSEOF This file was extended by $as_me, which was -generated by GNU Autoconf 2.58. Invocation command line was +generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -9320,7 +9312,7 @@ cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ config.status -configured by $0, generated by GNU Autoconf 2.58, +configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2003 Free Software Foundation, Inc. @@ -9719,11 +9711,6 @@ *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac - if test x"$ac_file" != x-; then - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - rm -f "$ac_file" - fi # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ @@ -9762,6 +9749,12 @@ fi;; esac done` || { (exit 1); exit 1; } + + if test x"$ac_file" != x-; then + { echo "$as_me:$LINENO: creating $ac_file" >&5 +echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub Index: ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.12 diff -u ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.12:1.1 ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.12:1.2 --- ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.12:1.1 Fri Apr 23 03:07:50 2004 +++ ircd-ircdev/doc/history/Undernet/ChangeLog-u2.10.12 Fri May 21 08:39:33 2004 @@ -1,3 +1,609 @@ +2004-05-18 Michael Poole <md...@tr...> + + Announce invitations to other channel operators. + + * include/ircd_features.h, ircd/ircd_features.c + (ANNOUNCE_INVITES): Add new boolean feature, default off. + + * include/numeric.h, ircd/s_err.c (RPL_ISSUEDINVITE): Add new + reply. + + * include/send.h, ircd/send.c (sendcmdto_channel_butserv_butone): + Add 'skip' parameter that is needed elsewhere. + (sendcmdto_channel_servers_butone): New function. + + * ircd/channel.c, ircd/m_burst.c, ircd/m_kick.c, ircd/m_topic.c, + ircd/s_user.c: Add argument for 'skip' to calls to s_c_b_b. + + * ircd/m_invite.c (m_invite, ms_invite): If ANNOUNCE_INVITES, send + the INVITE message to all interested servers, and send a numeric + to all local chanops. + +2004-05-18 Michael Poole <md...@tr...> + + * ircd/res_adns.c (res_ourserver): Remove unused function. + (validate_name): Likewise. + +2004-05-17 Michael Poole <md...@tr...> + + * include/ircd_features.h, ircd/ircd_features.c, ircd/s_debug.c: + Rip out feature settings related to oper privileges. + + * include/client.h: Comment a few unexplained privileges. + + * ircd/ircd_lexer.l: Rename privilege keywords to match their + names in code and /PRIVS output. Add support for two "new" + privileges (FORCE_OPMODE, FORCE_LOCAL_OPMODE). + + * include/class.h, ircd/client.c, ircd/ircd_parser.y, + ircd/m_oper.c: Replace the removed feature settings with + per-connection class operator privileges. + + * doc/example.conf: Document the change. + + * ircd/ircd_parser.y (portblock): Fix slight memory leak. + +2004-05-16 Michael Poole <md...@tr...> + + * doc/example.conf: Make this show the new NICKLEN default. + +2004-05-14 Kevin L Mitchell <kl...@mi...> + + * ircd/ircd_features.c: per CFV-0243, NICKLEN default is increased + to 12 + +2004-05-14 Kevin L Mitchell <kl...@mi...> + + * ircd/s_user.c: process account creation timestamp if present in + user mode portion of a N protocol message; add account creation + timestamp to outgoing N protocol messages if that timestamp is + non-zero + + * ircd/m_account.c: process account creation timestamp if present + in AC protocol message + + * include/struct.h: add account creation timestamp + +2004-05-16 Michael Poole <md...@tr...> + + * doc/example.conf: Document operator privilege settings. + +2004-05-16 Michael Poole <md...@tr...> + + Get rid of CONF_LOCOP; use PRIV_PROPAGATE instead. + + * ircd/ircd_parser.y (invert): New variable. + (operlocal): Remove production. + (operpriv): Use "invert" variable. + (privtype): Add LOCAL alternative production. + + * ircd/m_oper.c (m_oper): Remove references to CONF_LOCOP; replace + with CONF_OPERATOR or PRIV_PROPAGATE checks, as appropriate. + + * ircd/s_conf.c (AuthorizationCheckResult, find_conf_exact): + Likewise. + + * ircd/s_stats.c (report_array, statsinfo): Likewise. + + * ircd/s_user.c (set_user_mode): Likewise. + +2004-05-15 Michael Poole <md...@tr...> + + * patches/diffs/astralnet.diff, patches/diffs/nocfv.diff: Remove + patches obsoleted by F: lines. + + * patches/diffs/topicburst.diff: Remove patch that was integrated + into the main code. + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-05 -MDP] + + * ircd/m_whois.c: On remote whois, show +s local channels with a * + prefix to opers. + +2004-05-15 Michael Poole <md...@tr...> + + * include/gline.h, ircd/gline.c, ircd/s_err.c: Forward port a lot + of gline-related fixes from 2.10.11. Things that work are due to + Kev, Isomer, Spike, hikari, and probably others; CVS makes it hard + to figure out who did what. Any mistakes are mine. + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-05 -MDP] + + * ircd/s_misc.c, ircd/s_user.c: added numnick to SNO_CONNEXIT + messages (so you can match EXIT's to CONN's) + +2004-05-15 Reed Loden <re...@re...> + + [Original ChangeLog date: 2003-05-01 -MDP] + + * ircd/s_err.c: Added network to text and edited 001 a bit. + + * ircd/s_user.c: Send network with 001. + +2004-05-15 Michael Poole <md...@tr...> + + * ircd/s_user.c (add_target): Move free target invite check... + + * ircd/s_user.c (check_target_limit): to here, matching 2.10.11's + behavior. + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-23 -MDP] + + * ircd/s_user.c: Don't credit users with an extra attempt if they + are klined/glined, throttle them! + +2004-05-15 Jeekay <je...@ne...> + + [Original ChangeLog date: 2003-04-24 -MDP] + + * ircd/s_user.c: Altered (K-lined) to depend on find_kill type + +2004-05-15 splidge <sp...@qu...> + + [Original ChangeLog date: 2003-09-03 -MDP] + + * ircd/s_user.c: Made hide_hostmask() not show bogus joins for + channels where the user is a zombie. + +2004-05-15 beware <ste...@xs...> + + [Original ChangeLog date: 2003-10-25 -MDP] + + * ircd/m_whois.c: Fixed /whois comma separated list with wildcards + cpu hog bug + +2004-05-15 Michael Poole <md...@tr...> + + * ircd/s_conf.c (rehash): Call clear_quarantines on rehash since + 2.10.11 does. Show ident and IP for clients being killed by new + G-lines and K-lines. + +2004-05-15 hikari <sh...@un...> + + [Original ChangeLog date: 2003-06-27 -MDP] + + * ircd/ircd.c: After thought, update the next check time based on + when an unregistered client should expire. + +2004-05-15 hikari <sh...@un...> + + [Original ChangeLog date: 2003-06-22 -MDP] + + * ircd/ircd.c: Fixed check_pings() - shouldn't be any problem with + clients not being able to connect anymore. + +2004-05-15 Michael Poole <md...@tr...> + + * ircd/channel.c (can_join): Revert to using IsInvited() rather + than walking the list directly. + (modebuf_flush_int): Fix errant HEAD_IN_SAND_SNOTICES check to + use feature_bool(FEAT_HIS_SNOTICES) instead. + +2004-05-15 Kevin L Mitchell <kl...@mi...> + + [Original ChangeLog date: 2004-01-31 -MDP] + + * ircd/channel.c (mode_parse_key): don't allow , in keys! + +2003-04-12 David Mansell (splidge) <sp...@sf...> + + [Original ChangeLog date: 2003-04-14 -MDP] + + * ircd/channel.c: When keys and limits conflict on burst, the key + which is first alphabetically or the limit which is lower will be + used by both servers. This matches pre-2.10.11 behaviour. + Closes: (#713930) + +2004-05-15 David Mansell <sp...@qu...> + + [Original ChangeLog date: 2002-12-28 -MDP] + + * ircd/channel.c (mode_parse_limit): don't allow -l when no limit is + set, don't allow -l with negative parameter (or unsigned >2^31). + +2004-05-15 David Mansell <sp...@qu...> + + [Original ChangeLog date: 2002-12-31 -MDP] + + * ircd/m_burst.c (ms_burst): when kicking net riders, clear + invites too. + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-04 -MDP] + + * ircd/s_serv.c: Burst glines/jupes early + +2004-05-15 volta <vo...@gm...> + + [Original ChangeLog date: 2003-04-26 -MDP] + + * ircd/m_userip.c, ircd/m_userhost.c: Small fix, that + allows users to see their own ip & hostname. (Should solve + all problems with dcc) + +2004-05-15 Kevin L Mitchell <kl...@mi...> + + [Original ChangeLog date: 2003-06-13 -MDP] + + * ircd/m_settime.c: it's supposed to be %ld, not %l + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2004-03-20 -MDP] + + * ircd/m_invite.c: Disallow invites to non existant channels + +2004-05-15 David Mansell <sp...@qu...> + + [Original ChangeLog date: 2003-04-26 -MDP] + + * ircd/m_invite.c: let +k users invite into channels they aren't on. + +2004-05-15 hikari <sh...@un...> + + [Original ChangeLog date: 2003-07-13 -MDP] + + * ircd/IPcheck.c: Fixed (another) overflow problem in + ip_registry_check_local() + + [Original ChangeLog date: 2003-06-29 -MDP] + + * ircd/IPcheck.c: Fixed overflow problem in + ip_registry_connect_fail() + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-05-02 -MDP] + + * ircd/IPcheck.c: Added assert()'s to check for underflow + +2004-05-15 Kevin L Mitchell <kl...@mi...> + + [Original ChangeLog date: 2003-11-22 -MDP] + + * tools/wrapper.c: commit uid on chroot fix from ubra + + * ircd/version.c.SH: fix generation generation + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-23 -MDP] + + * ircd/os_*.c, ircd/ircd_features.c: Default changing window sizes + to off. if an admin is smart enough to understand these features + they can enable them manually. + +2004-05-15 splidge <sp...@qu...> + + [Original ChangeLog date: 2003-03-26 -MDP] + + * ircd/include/ircd_features.h, include/ircd_osdep.h, + ircd/ircd_features.c, ircd/listener.c, ircd/os_bsd.c, + ircd/os_generic.c, ircd/os_linux.c, ircd/os_openbsd.c + ircd/os_solaris.c, ircd/s_bsd.c: Patch to allow socket bufs to be + altered via F: lines + +2004-05-15 Isomer <is...@un...> + + [Original ChangeLog date: 2003-11-18 -MDP] + + * ircd/s_auth.c, ircd/res_libresolv.c, ircd/res_adns.c: Clean up + the preregistration subsystem allowing customisation of timers, + make the dns resolver stats oper only, and make it much more clear + what all the numbers are. + +2004-05-15 Spike <sp...@un...> + + [Original ChangeLog date: 2003-11-23 -MDP] + + * ircd/IPcheck.c: Make IPcheck constants configurable + +2004-05-14 Kevin L Mitchell <kl...@mi...> + + [Original ChangeLog date: 2003-11-22 -MDP] + + * ircd/m_nick.c (m_nick): truncate the nickname to the minimum of + the maximum allowed length (NICKLEN) or the allowed nickname + length specified as the NICKLEN feature + + * ircd/ircd_features.c: declare NICKLEN and set its default value + to 9 + + * include/supported.h: add MAXNICKLEN to ISUPPORT and do a little + rearranging... + + * include/ircd_features.h: add NICKLEN feature + + * include/ircd_defs.h (NICKLEN): raise max NICKLEN to 15 + + * doc/readme.features: document new NICKLEN feature + + * doc/example.conf: list new NICKLEN F-line + +2004-05-14 Matthias Crauwels <ult...@wo...> + + [Original ChangeLog date: 2003-06-08 -MDP] + + * ircd/gline.c: fixed the counting bug in gline_memory_count + + * ircd/jupe.c: fixed the counting bug in jupe_memory_count + +2004-05-14 Michael Poole <md...@tr...> + + * ircd/m_mode.c (ms_mode): Do not always try to call + set_user_mode() when parv[1] is a channel name. + +2004-05-10 Michael Poole <md...@tr...> + + Implement a per-connection-class default usermode option. + + * doc/example.conf: Illustrate how to use the option. + + * include/class.h (struct ConnectionClass): New "default_umode" + field. + (ConfUmode): New macro. + + * include/client.h (client_get_default_umode): New function. + + * ircd/client.c (client_get_default_umode): Implement it. + + * ircd/ircd_lexer.l (usermode): New token. + + * ircd/ircd_parser.y (classblock, etc): New syntax. + + * ircd/s_user.c (register_user): Set default user modes for user. + This sends the new mode to the user, so the explicit send later + is no longer necessary. + +2004-05-10 Michael Poole <md...@tr...> + + Forward port of asuka-topicburst.patch from Quakenet's "Asuka" + patch set. + + * include/ircd_features.h (FEAT_TOPIC_BURST): Add new feature. + + * ircd/channel.c (send_channel_modes): If F:TOPIC_BURST:TRUE, + also send a TOPIC to the peer. + + * ircd/ircd_features.c (FEAT_TOPIC_BURST): Add new boolean + feature, defaulting to FALSE. + + * ircd/m_topic.c (do_settopic): Add argument for topic timestamp, + and allow F:HIS_BANWHO to hide the originator of the topic. + (ms_topic): Parse optional timestamp arguments to TOPIC, and use + them to decide whether to ignore the topic. + +2004-05-10 Michael Poole <md...@tr...> + + Forward port of delayed-join.patch from Quakenet's "Asuka" patch + set (which was a port of code I wrote for the other ircu). + + * include/channel.h (CHFL_DELAYED): New membership flag. + (MODE_DELJOINS, MODE_WASDELJOINS): New channel modes. + (infochanmodes): Add +D to list of supported channel modes. + (IsDelayedJoin, SetDelayedJoin, ClearDelayedJoin): New macros. + (member_can_send_to_channel, client_can_send_to_channel): Add + "reveal" parameter to indicate whether a request should cause + a join-delayed user to become visible. + (RevealDelayedJoin, CheckDelayedJoins): New functions. + + * include/numeric.h (RPL_DELNAMREPLY): New numeric. + + * include/s_user.h (NAMES_DEL): New flag for do_names(). + + * include/supported.h (FEATURESVALUES2): Add +D to list of + supported channel modes. + + * ircd/channel.c (remove_member_from_channel, + member_can_send_to_channel, client_can_send_to_channel, + joinbuf_join): Handle join-delayed users. + (channel_modes, modebuf_flush_int, modebuf_mode, modebuf_flush, + modebuf_extract, mode_process_clients, mode_parse_mode, + mode_parse): Handle delayed-join channels. + (RevealDelayedJoin, CheckDelayedJoins): New functions. + + * ircd/ircd_relay.c (relay_channel_message, relay_channel_notice, + server_relay_channel_message, server_relay_channel_notice): Add + argument for "reveal" parameter to client_can_send_to_channel(). + + * ircd/m_burst.c (ms_burst): Support MODE_DELJOINS channels. + + * ircd/m_clearmode.c (do_clearmode): Support clearing mode +D. + + * ircd/m_join.c (join0): Pass the CHFL_DELAYED flag when parting a + channel with JOIN 0. + + * ircd/m_kick.c (m_kick): For join-delayed members, only send the + KICK to the kicker and kickee. Then check whether +d can be + removed. + + * ircd/m_names.c (do_names): Show join-delayed users if and only + if the NAMES_DEL flag is given. If NAMES_DEL is given, also use + RPL_DELNAMREPLY instead of RPL_NAMREPLY. + (m_names): If NAMES -D, pass NAMES_DEL to do_names(). + + * ircd/m_part.c (m_part, ms_part): Add "reveal" argument for + member_can_send_to_channel(). Set CHFL_DELAYED join in joinbuf if + the user is join-delayed. + + * ircd/m_quit.c (m_quit): Handle join-delayed users and new + argument for member_can_send_to_channel(). + + * ircd/m_topic.c (do_settopic): If a join-delayed channel member + changes the topic, reveal the member. + + * ircd/m_wallchops.c (m_wallchops, ms_wallchops): Add argument for + "reveal" parameter to client_can_send_to_channel(). + + * ircd/m_wallvoices.c (m_wallvoices, ms_wallvoices): Likewise. + + * ircd/m_who.c (m_who): Skip join-delayed members where we skip + zombies. + + * ircd/m_whois.c (do_whois): Use '<' as a prefix for join-delayed + users. Use slightly more efficient macros rather than function + calls to test for ops and voice. + + * ircd/s_err.c (RPL_DELNAMREPLY): New numeric response string. + + * ircd/s_user.c (hide_hostmask): For users with no modes in a + join-delayed channel, do not send JOIN to other members after the + QUIT :Registered. + + * ircd/send.c (sendcmdto_common_channels_butone): Skip + join-delayed users where we skip zombies. + +2004-05-10 Michael Poole <md...@tr...> + + * ircd/ircd_events.c: Actually reference and try to use the epoll + event engine. Omitted from yesterday's commit. + +2004-05-09 Michael Poole <md...@tr...> + + Forward port of Paul "Zoot" Chang's pseudo-command.patch and + pseudo-support.patch. + + * doc/example.conf: Illustrate how to use the feature. + + * include/handlers.h (m_pseudo): Declare new handler function. + + * include/ircd_features.h (HIS_STATS_R): Add a feature to control + user visibility of the pseudo-commands. + + * include/msg.h: Add flag and field for the extra information used + to select a pseudo-command's target. + + * include/numeric.h (RPL_STATSRLINE, ERR_SERVICESDOWN): Add + definitions. + + * include/parse.h (register_mapping, unregister_mapping): Declare. + + * include/s_conf.h (struct nick_host, struct s_map, + GlobalServiceMapList): Define. + + * ircd/Makefile.in: Add m_pseudo.c to IRCD_SRC. Add generated + files to "make depend" dependency list. Update dependencies. + + * ircd/ircd_features.c (HIS_STATS_R): Define feature type and + default value. + + * ircd/ircd_lexer.l (pseudo, prepend): Recognize new tokens. + + * ircd/ircd_parser.y: Support "Pseudo" configuration blocks. + + * ircd/parse.c (msgtab): Add initializer for field "extra" to all + commands. + (msg_tree_insert, msg_tree_remove, register_mapping, + unregister_mapping): New functions. + (parse_client): Implement MFLG_EXTRA extra argument passing. + + * ircd/s_conf.c (GlobalServiceMapList): New variable. + + * ircd/s_err.c (RPL_STATRLINE, ERR_SERVICESDOWN): Add format + strings for new numeric responses. + + * ircd/s_stats.c (stats_mapping): New function. + (statsinfo): Add entry for /stats R and make old /stats r entry + case-sensitive. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/ircd_parser.y (parse_error): Convert to being a wrapper for + yyerror() so that configuration errors all go to the same place. + + * ircd/s_conf.c: New variables conf_error and conf_already_read. + conf_error is cleared by read_configuration_file() and set by + yyerror(); conf_already_read is set by read_configuration_file() + and never cleared. Make yyerror() display error to stderr before + conf_already_read is set. Make configuration errors a fatal + condition in init_conf(). + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/Makefile.in: Pass the source directory as an argument to + version.c.SH so it knows where to find the source files for an + out-of-srcdir build. + + * ircd/version.c.SH: Use that information. + +2004-05-09 Michael Poole <md...@tr...> + + * Makefile.in: Ensure ${prefix}/include exists, since the adns + install puts files in that directory. (The adns Makefile does + not use configure's ${includedir}.) + +2004-05-09 Michael Poole <md...@tr...> + + * doc/readme.features: The logic for F:AUTOHIDE was removed, but + not its documentation. Fix that omission. + + * include/ircd_features.h, ircd/ircd_features.c: Remove the unused + definitions for FEATURE_AUTOHIDE. + +2004-05-09 Michael Poole <md...@tr...> + + * doc/readme.who: Document the support for account matching and + display in the WHO command. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/ircd.c (main): Move check_pid() call until after we read + the configuration file so that F:PPATH works correctly. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/match.c (match): Use ToLower() instead of tolower() for + character comparisons. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/s_user.c (register_user): Initialize "flag" (user's old + modes) passed to send_umode() so that the real set of modes are + sent to the user. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/m_server.c (ms_server): Apply +h/+s flags only to the new + server, not to a hub between us and the new server. + + * ircd/ircd_relay.c (relay_directed_message): Check FLAG_SERVICE + on target server rather than FLAG_CHSERV (so that directed + messages work at all). + +2004-05-09 Michael Poole <md...@tr...> + + * configure.in: Add checks for epoll_* system call family. + + * configure: Regenerate. + + * ircd/engine_epoll.c: New file; forward ported from 2.10.11 + branch. + +2004-05-09 Michael Poole <md...@tr...> + + * include/ircd_alloc.h: Add definitions for MyRealloc, since they + are needed by kqueue and epoll event engines; kill #if 0'd block. + + * include/memdebug.h: Declare dbg_realloc() helper function. + + * ircd/ircd_alloc.c: Implement DoRealloc() helper function. + + * ircd/memdebug.c: Implement dbg_realloc() helper function. + +2004-05-09 Michael Poole <md...@tr...> + + * ircd/channel.c (find_no_nickchange_channel): Disallow nick + changes on a moderated channel with neither ops nor voice. + + * ircd/s_err.c: Update ERR_BANNICKCHANGE message to match. + 2004-01-20 Perry Lorier <is...@un...> * ircd/ircd_parser.y: Fixed parser to work with a more modern bison Index: ircd-ircdev/doc/ircd.sample-en.conf diff -u ircd-ircdev/doc/ircd.sample-en.conf:1.2 ircd-ircdev/doc/ircd.sample-en.conf:1.3 --- ircd-ircdev/doc/ircd.sample-en.conf:1.2 Sun Feb 22 08:12:46 2004 +++ ircd-ircdev/doc/ircd.sample-en.conf Fri May 21 08:39:33 2004 @@ -1,6 +1,6 @@ # ircd.conf - configuration file for IRC-Dev's IRCD. # -# Last Updated: 1, November 2003. +# Last Updated: 21, May 2004. # # Written by Niels <ni...@un...>, based on the original example.conf, # server code and some real-life (ahem) experience. @@ -99,6 +99,7 @@ # connectfreq = time; # maxlinks = number; # sendq = size; +# usermode = "+i"; # }; # # <connect freq> applies only to servers, and specifies the frequency @@ -142,6 +143,7 @@ pingfreq = 1 minutes 30 seconds; sendq = 160000; maxlinks = 100; + usermode = "+iw"; }; Client { @@ -160,7 +162,57 @@ sendq = 160000; maxlinks = 400; }; +Class { + name = "Opers"; + pingfreq = 1 minutes 30 seconds; + sendq = 160000; + maxlinks = 10; + + # For connection classes intended for operator use, you can specify + # privileges used when the Operator block (see below) names this + # class. The local (aka globally_opered) privilege MUST be defined + # by either the Class or Operator block. The following privileges + # exist: + # + # local (or propagate, with the opposite sense) + # whox (can use x flag with /WHO) + # display (oper status visible to lusers) + # chan_limit (can join local channels when in + # MAXCHANNELSPERUSER channels) + # mode_lchan (can /MODE &channel without chanops) + # deop_lchan (cannot be deopped or kicked on local channels) + # walk_lchan (can forcibly /JOIN &channel OVERRIDE) + # show_invis (see +i users in /WHO x) + # show_all_invis (see +i users in /WHO x) + # unlimit_query (show more results from /WHO) + # local_kill (can kill clients on this server) + # rehash (can use /REHASH) + # die (can use /DIE) + # local_jupe_server (not used) + # set (can use /SET) + # local_gline (can set a G-line for this server only) + # local_badchan (can set a Gchan for this server only) + # see_chan (can see users in +s channels in /WHO) + # wide_gline (can use ! to force a wide G-line) + # see_opers (can see opers without DISPLAY privilege) + # force_local_opmode (can use OPMODE/CLEARMODE on quarantined local channels) + # kill (can kill clients on other servers) + # gline (can issue G-lines to other servers) + # jupe_server (not used) + # opmode (can use /OPMODE) + # badchan (can issue Gchans to other servers) + # force_opmode (can use OPMODE/CLEARMODE on quarantined global channels) + # + # For global opers (with propagate = yes or local = no), the default + # is to grant all of the above privileges. For local opers, the + # default is to grant ONLY the following privileges: + # chan_limit, mode_lchan, show_invis, show_all_invis, local_kill, + # rehash, local_gline, local_jupe, local_opmode, whox, display, + # force_local_opmode + # Any privileges listed in a Class block override the defaults. + local = no; +}; # [Client] # # To allow clients to connect, they need authorization. This can be @@ -529,18 +581,25 @@ # can squit, connect and kill - but only locally: their +o user mode # is not not passed along to other servers. On IRC-Dev, this prevents # them from using Uworld as well. -# Depending on some defines in include/config.h, local operators are also -# not allowed to /DIE and /RESTART the server. +# # Operator { -# local = no; # host = "host/IP mask"; # name = "opername"; # password = "encryptedpass"; # class = "classname"; +# # You can also set any operator privilege; see the Class block +# # documentation for details. A privilege defined for a single +# # Operator will override the privilege settings for the Class +# # and the default setting. # }; # -# The encrypted password is optional. If you wish to encrypt your password, -# there is a utility in the ircd. Please read the file tools/README. +# The encrypted password is optional. If you wish to encrypt your +# password, there is a utility in the ircd. Please read the file +# tools/README. +# All privileges are shown with their default values; if you wish to +# override defaults, you should set only those privileges for the +# operator. Listing defaulted privileges just makes things harder to +# find. Operator { local = no; host = "*@*.pooles.rima-tde.net"; @@ -549,11 +608,10 @@ class = "Local"; }; Operator { - local = yes; host = "*@*.ttd.es"; password = "notencryptedpass"; name = "zolty"; - class = "Local"; + class = "Opers"; }; # Note that the <connection class> is optional, but leaving it away @@ -630,6 +688,22 @@ port = 7000; }; +# This is a server-implemented alias to send a message to a service. +# The string after Pseudo is the command name; the name entry inside +# is the service name, used for error messages. More than one nick +# entry can be provided; the last one listed has highest priority. +Pseudo "CHANSERV" { + name = "X"; + nick = "X...@ch..."; +}; + +# You can also prepend text before the user's message. +Pseudo "LOGIN" { + name = "X"; + prepend = "LOGIN "; + nick = "X...@ch..."; +}; + # [features] # IRC servers have a large number of options and features. Most of these # are set at compile time through the use of #define's--see "make config" @@ -670,12 +744,11 @@ # "HOST_HIDING" = "TRUE"; # "HIDDEN_HOST" = "users.irc-dev.net"; # "HIDDEN_IP" = "127.0.0.1"; -# "AUTOHIDE" = "TRUE"; # "CONNEXIT_NOTICES" = "FALSE"; # "LOCAL_CHANNELS" = "TRUE"; # "KILLCHASETIMELIMIT" = "30"; # "MAXCHANNELSPERUSER" = "10"; -# "NICKLEN" = "9"; +# "NICKLEN" = "12"; # "AVBANLEN" = "40"; # "MAXBANS" = "45"; # "MAXSILES" = "15"; @@ -705,44 +778,9 @@ # "IPCHECK_CLONE_PERIOD = "40"; # "IPCHECK_CLONE_DELAY = "600"; # "CRYPT_OPER_PASSWORD" = "TRUE"; -# "OPER_NO_CHAN_LIMIT" = "TRUE"; -# "OPER_MODE_LCHAN" = "TRUE"; -# "OPER_WALK_THROUGH_LMODES" = "FALSE"; -# "NO_OPER_DEOP_LCHAN" = "FALSE"; -# "SHOW_INVISIBLE_USERS" = "TRUE"; -# "SHOW_ALL_INVISIBLE_USERS" = "TRUE"; -# "UNLIMIT_OPER_QUERY" = "FALSE"; -# "LOCAL_KILL_ONLY" = "FALSE"; # "CONFIG_OPERCMDS" = "FALSE"; -# "OPER_KILL" = "TRUE"; -# "OPER_REHASH" = "TRUE"; -# "OPER_RESTART" = "TRUE"; -# "OPER_DIE" = "TRUE"; -# "OPER_GLINE" = "TRUE"; -# "OPER_LGLINE" = "TRUE"; -# "OPER_JUPE" = "TRUE"; -# "OPER_LJUPE" = "TRUE"; -# "OPER_OPMODE" = "TRUE"; -# "OPER_LOPMODE" = "TRUE"; -# "OPER_FORCE_OPMODE" = "TRUE"; -# "OPER_FORCE_LOPMODE" = "TRUE"; -# "OPER_BADCHAN" = "FALSE"; -# "OPER_LBADCHAN" = "FALSE"; -# "OPER_SET" = "FALSE"; -# "OPERS_SEE_IN_SECRET_CHANNELS" = "TRUE"; -# "OPER_WIDE_GLINE" = "TRUE"; -# "LOCOP_KILL" = "TRUE"; -# "LOCOP_REHASH" = "TRUE"; -# "LOCOP_RESTART" = "FALSE"; -# "LOCOP_DIE" = "FALSE"; -# "LOCOP_LGLINE" = "TRUE"; -# "LOCOP_LJUPE" = "TRUE"; -# "LOCOP_LOPMODE" = "TRUE"; -# "LOCOP_FORCE_LOPMODE" = "TRUE"; -# "LOCOP_LBADCHAN" = "FALSE"; -# "LOCOP_SET" = "FALSE"; -# "LOCOP_SEE_IN_SECRET_CHANNELS" = "FALSE"; -# "LOCOP_WIDE_GLINE" = "FALSE"; +# "OPLEVELS" = "TRUE"; +# "LOCAL_CHANNELS" = "TRUE"; # "HIS_SNOTICES" = "TRUE"; # "HIS_SNOTICES_OPER_ONLY" = "TRUE"; # "HIS_DESYNCS" = "TRUE"; Index: ircd-ircdev/include/channel.h diff -u ircd-ircdev/include/channel.h:1.4 ircd-ircdev/include/channel.h:1.5 --- ircd-ircdev/include/channel.h:1.4 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/channel.h Fri May 21 08:39:33 2004 @@ -19,7 +19,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: channel.h,v 1.4 2004/02/22 16:13:20 zolty Exp $ + * $Id: channel.h,v 1.5 2004/05/21 15:39:33 zolty Exp $ * */ #ifndef INCLUDED_channel_h @@ -73,12 +73,13 @@ #define CHFL_BANVALID 0x0800 /* CHFL_BANNED bit is valid */ #define CHFL_BANNED 0x1000 /* Channel member is banned */ #define CHFL_SILENCE_IPMASK 0x2000 /* silence mask is an IP-number mask */ -#define CHFL_USER_PARTING 0x4000 /* User is already parting that channel */ #if defined(UNDERNET) -#define CHFL_BURST_ALREADY_OPPED 0x08000 /* In oob BURST, but was already joined and opped */ -#define CHFL_BURST_ALREADY_VOICED 0x10000 /* In oob BURST, but was already joined and voiced */ -#define CHFL_CHANNEL_MANAGER 0x20000 /* Set when creating channel or using Apass */ +#define CHFL_BURST_ALREADY_OPPED 0x04000 /* In oob BURST, but was already joined and opped */ +#define CHFL_BURST_ALREADY_VOICED 0x08000 /* In oob BURST, but was already joined and voiced */ +#define CHFL_CHANNEL_MANAGER 0x10000 /* Set when creating channel or using Apass */ #endif +#define CHFL_USER_PARTING 0x20000 /* User is already parting that channel */ +#define CHFL_DELAYED 0x40000 /* User's join message is delayed */ #define CHFL_OVERLAP (CHFL_CHANOP | CHFL_VOICE) #define CHFL_BANVALIDMASK (CHFL_BANVALID | CHFL_BANNED) @@ -98,24 +99,28 @@ #define MODE_BAN 0x0200 #define MODE_LIMIT 0x0400 #define MODE_REGONLY 0x0800 /* Only +r users may join */ +#define MODE_DELJOINS 0x1000 /* New join messages are delayed */ #define MODE_LISTED 0x10000 #define MODE_SAVE 0x20000 /* save this mode-with-arg 'til later */ #define MODE_FREE 0x40000 /* string needs to be passed to MyFree() */ #define MODE_BURSTADDED 0x80000 /* channel was created by a BURST */ #if defined(UNDERNET) -#define MODE_UPASS 0x100000 -#define MODE_APASS 0x200000 +#define MODE_UPASS 0x100000 +#define MODE_APASS 0x200000 #endif +#define MODE_WASDELJOINS 0x400000 /* Not DELJOINS, but some joins pending */ /* * mode flags which take another parameter (With PARAmeterS) */ -#define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT) - #if defined(UNDERNET) -#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "Abiklmnopstuvr" : "biklmnopstvr" +#define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT|MODE_APASS|MODE_UPASS) + +#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "AbiklmnopstuvrD" : "biklmnopstvrD" #define infochanmodeswithparams feature_bool(FEAT_OPLEVELS) ? "Abklouv" : "bklov" #else -#define infochanmodes "biklmnopstvr" +#define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT) + +#define infochanmodes "biklmnopstvrD" #define infochanmodeswithparams "bklov" #endif @@ -131,7 +136,7 @@ (MODE_PRIVATE | MODE_SECRET)) == 0) #define is_listed(x) ((x)->mode.mode & MODE_LISTED) -#define IsGlobalChannel(name) (*(name) == '#') +#define IsGlobalChannel(name) (*(name) == '#') #define IsLocalChannel(name) (*(name) == '&') #define IsChannelName(name) (IsGlobalChannel(name) || IsLocalChannel(name)) @@ -146,10 +151,10 @@ #define MODE_ADD 0x40000000 #define MODE_DEL 0x20000000 -/* ListingArgs flags */ +/* used in ListingArgs.flags */ -#define LISTARG_TOPICLIMITS 0x0001 -#define LISTARG_SHOWSECRET 0x0002 +#define LISTARG_TOPICLIMITS 0x0001 +#define LISTARG_SHOWSECRET 0x0002 /* * Maximum acceptable lag time in seconds: A channel younger than @@ -217,10 +222,11 @@ #define IsServOpOk(x) ((x)->status & CHFL_SERVOPOK) #define IsBurstJoined(x) ((x)->status & CHFL_BURST_JOINED) #define IsVoicedOrOpped(x) ((x)->status & CHFL_VOICED_OR_OPPED) -#define IsUserParting(x) ((x)->status & CHFL_USER_PARTING) #if defined(UNDERNET) #define IsChannelManager(x) ((x)->status & CHFL_CHANNEL_MANAGER) #endif +#define IsUserParting(x) ((x)->status & CHFL_USER_PARTING) +#define IsDelayedJoin(x) ((x)->status & CHFL_DELAYED) #define SetBanned(x) ((x)->status |= CHFL_BANNED) #define SetBanValid(x) ((x)->status |= CHFL_BANVALID) @@ -228,17 +234,19 @@ #define SetServOpOk(x) ((x)->status |= CHFL_SERVOPOK) #define SetBurstJoined(x) ((x)->status |= CHFL_BURST_JOINED) #define SetZombie(x) ((x)->status |= CHFL_ZOMBIE) -#define SetUserParting(x) ((x)->status |= CHFL_USER_PARTING) #if defined(UNDERNET) #define SetChannelManager(x) ((x)->status |= CHFL_CHANNEL_MANAGER) #define SetOpLevel(x, v) (void)((x)->oplevel = (v)) #endif +#define SetUserParting(x) ((x)->status |= CHFL_USER_PARTING) +#define SetDelayedJoin(x) ((x)->status |= CHFL_DELAYED) #define ClearBanned(x) ((x)->status &= ~CHFL_BANNED) #define ClearBanValid(x) ((x)->status &= ~CHFL_BANVALID) #define ClearDeopped(x) ((x)->status &= ~CHFL_DEOPPED) #define ClearServOpOk(x) ((x)->status &= ~CHFL_SERVOPOK) #define ClearBurstJoined(x) ((x)->status &= ~CHFL_BURST_JOINED) +#define ClearDelayedJoin(x) ((x)->status &= ~CHFL_DELAYED) struct Mode { @@ -376,8 +384,8 @@ extern const char* find_no_nickchange_channel(struct Client* cptr); extern struct Membership* IsMember(struct Client *cptr, struct Channel *chptr); extern struct Membership* find_channel_member(struct Client* cptr, struct Channel* chptr); -extern int member_can_send_to_channel(struct Membership* member); -extern int client_can_send_to_channel(struct Client *cptr, struct Channel *chptr); +extern int member_can_send_to_channel(struct Membership* member, int reveal); +extern int client_can_send_to_channel(struct Client *cptr, struct Channel *chptr, int reveal); extern void remove_user_from_channel(struct Client *sptr, struct Channel *chptr); extern void remove_user_from_all_channels(struct Client* cptr); @@ -397,6 +405,9 @@ extern void list_next_channels(struct Client *cptr, int nr); extern void list_set_default(void); /* this belongs elsewhere! */ +extern void RevealDelayedJoin(struct Membership *member); +extern void CheckDelayedJoins(struct Channel *chan); + extern void modebuf_init(struct ModeBuf *mbuf, struct Client *source, struct Client *connect, struct Channel *chan, unsigned int dest); Index: ircd-ircdev/include/class.h diff -u ircd-ircdev/include/class.h:1.3 ircd-ircdev/include/class.h:1.4 --- ircd-ircdev/include/class.h:1.3 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/class.h Fri May 21 08:39:34 2004 @@ -19,7 +19,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: class.h,v 1.3 2004/02/22 16:13:20 zolty Exp $ + * $Id: class.h,v 1.4 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_class_h @@ -29,7 +29,8 @@ #define INCLUDED_sys_types_h #endif -struct Client; +#include "client.h" + struct ConfItem; struct StatDesc; @@ -39,6 +40,9 @@ struct ConnectionClass { struct ConnectionClass* next; char *cc_name; + char *default_umode; + struct Privs privs; + struct Privs privs_dirty; unsigned int max_sendq; short ping_freq; short conn_freq; @@ -64,6 +68,7 @@ #define ConfMaxLinks(x) ((x)->conn_class->max_links) #define ConfSendq(x) ((x)->conn_class->max_sendq) #define ConfLinks(x) ((x)->conn_class->ref_count) +#define ConfUmode(x) ((x)->conn_class->default_umode) /* * Proto types Index: ircd-ircdev/include/client.h diff -u ircd-ircdev/include/client.h:1.5 ircd-ircdev/include/client.h:1.6 --- ircd-ircdev/include/client.h:1.5 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/include/client.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: client.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ + * $Id: client.h,v 1.6 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_client_h @@ -115,8 +115,8 @@ PRIV_SEE_OPERS, /* display hidden opers */ PRIV_WIDE_GLINE, /* oper can set wider G-lines */ PRIV_LIST_CHAN, /* oper can list secret channels */ - PRIV_FORCE_OPMODE, /* oper can override a Q-line */ - PRIV_FORCE_LOCAL_OPMODE,/* oper can override a local channel Q-line */ + PRIV_FORCE_OPMODE, /* can hack modes on quarantined channels */ + PRIV_FORCE_LOCAL_OPMODE, /* can hack modes on quarantined local channels */ PRIV_LAST_PRIV /* must be the same as the last priv */ }; @@ -544,6 +544,7 @@ } ShowIPType; extern const char* get_client_name(const struct Client* sptr, int showip); +extern const char* client_get_default_umode(const struct Client* sptr); extern int client_get_ping(const struct Client* local_client); extern void client_drop_sendq(struct Connection* con); extern void client_add_sendq(struct Connection* con, Index: ircd-ircdev/include/gline.h diff -u ircd-ircdev/include/gline.h:1.2 ircd-ircdev/include/gline.h:1.3 --- ircd-ircdev/include/gline.h:1.2 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/gline.h Fri May 21 08:39:34 2004 @@ -20,7 +20,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: gline.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ + * $Id: gline.h,v 1.3 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_gline_h @@ -64,7 +64,7 @@ #define GLINE_OPERFORCE 0x0400 /* oper forcing gline to be set */ #define GLINE_REALNAME 0x0800 /* gline matches only the realname field */ -#define GLINE_MASK (GLINE_ACTIVE | GLINE_BADCHAN | GLINE_LOCAL | GLINE_REALNAME ) +#define GLINE_MASK (GLINE_ACTIVE | GLINE_BADCHAN | GLINE_LOCAL | GLINE_REALNAME) #define GLINE_ACTMASK (GLINE_ACTIVE | GLINE_LDEACT) #define GlineIsActive(g) (((g)->gl_flags & GLINE_ACTMASK) == \ Index: ircd-ircdev/include/handlers.h diff -u ircd-ircdev/include/handlers.h:1.5 ircd-ircdev/include/handlers.h:1.6 --- ircd-ircdev/include/handlers.h:1.5 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/include/handlers.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: handlers.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ + * $Id: handlers.h,v 1.6 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_handlers_h @@ -121,6 +121,7 @@ extern int m_private(struct Client*, struct Client*, int, char*[]); extern int m_privmsg(struct Client*, struct Client*, int, char*[]); extern int m_proto(struct Client*, struct Client*, int, char*[]); +extern int m_pseudo(struct Client*, struct Client*, int, char*[]); extern int m_quit(struct Client*, struct Client*, int, char*[]); extern int m_registered(struct Client*, struct Client*, int, char*[]); extern int m_silence(struct Client*, struct Client*, int, char*[]); @@ -236,9 +237,9 @@ extern int ms_users(struct Client*, struct Client*, int, char*[]); extern int ms_version(struct Client*, struct Client*, int, char*[]); extern int ms_wallchops(struct Client*, struct Client*, int, char*[]); -extern int ms_wallvoices(struct Client*, struct Client*, int, char*[]); extern int ms_wallops(struct Client*, struct Client*, int, char*[]); extern int ms_wallusers(struct Client*, struct Client*, int, char*[]); +extern int ms_wallvoices(struct Client*, struct Client*, int, char*[]); extern int ms_whois(struct Client*, struct Client*, int, char*[]); #endif /* INCLUDED_handlers_h */ Index: ircd-ircdev/include/ircd_defs.h diff -u ircd-ircdev/include/ircd_defs.h:1.2 ircd-ircdev/include/ircd_defs.h:1.3 --- ircd-ircdev/include/ircd_defs.h:1.2 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/ircd_defs.h Fri May 21 08:39:34 2004 @@ -19,7 +19,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_defs.h,v 1.2 2004/02/22 16:13:20 zolty Exp $ + * $Id: ircd_defs.h,v 1.3 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_ircd_defs_h @@ -38,6 +38,7 @@ * is a default that can easily be overridden in CFLAGS. Just add * -DNICKLEN=15 to CFLAGS and save your config in .., and you can forget about * it. Thanks for helping debug guys. + * See also F:NICKLEN in ircd.conf. */ #ifndef NICKLEN #define NICKLEN 15 @@ -107,5 +108,7 @@ #define STARTTARGETS 10 #define RESERVEDTARGETS 12 +#define MAP_CACHE_TIME 604800 + #endif /* INCLUDED_ircd_defs_h */ Index: ircd-ircdev/include/ircd_features.h diff -u ircd-ircdev/include/ircd_features.h:1.5 ircd-ircdev/include/ircd_features.h:1.6 --- ircd-ircdev/include/ircd_features.h:1.5 Sun Feb 22 08:13:20 2004 +++ ircd-ircdev/include/ircd_features.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_features.h,v 1.5 2004/02/22 16:13:20 zolty Exp $ + * $Id: ircd_features.h,v 1.6 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_features_h @@ -50,12 +50,12 @@ FEAT_HOST_HIDING, FEAT_HIDDEN_HOST, FEAT_HIDDEN_IP, - FEAT_AUTOHIDE, FEAT_CONNEXIT_NOTICES, #if defined(UNDERNET) FEAT_OPLEVELS, #endif FEAT_LOCAL_CHANNELS, + FEAT_TOPIC_BURST, /* features that probably should not be touched */ FEAT_KILLCHASETIMELIMIT, @@ -93,55 +93,13 @@ FEAT_IRCD_RES_RETRIES, FEAT_IRCD_RES_TIMEOUT, FEAT_AUTH_TIMEOUT, + FEAT_ANNOUNCE_INVITES, /* features that affect all operators */ FEAT_CRYPT_OPER_PASSWORD, - FEAT_OPER_NO_CHAN_LIMIT, - FEAT_OPER_MODE_LCHAN, - FEAT_OPER_WALK_THROUGH_LMODES, - FEAT_NO_OPER_DEOP_LCHAN, - FEAT_SHOW_INVISIBLE_USERS, - FEAT_SHOW_ALL_INVISIBLE_USERS, - FEAT_UNLIMIT_OPER_QUERY, - FEAT_LOCAL_KILL_ONLY, FEAT_CONFIG_OPERCMDS, FEAT_LIST_CHAN, - /* features that affect global opers on this server */ - FEAT_OPER_KILL, - FEAT_OPER_REHASH, - FEAT_OPER_RESTART, - FEAT_OPER_DIE, - FEAT_OPER_GLINE, - FEAT_OPER_LGLINE, - FEAT_OPER_JUPE, - FEAT_OPER_LJUPE, - FEAT_OPER_OPMODE, - FEAT_OPER_LOPMODE, - FEAT_OPER_FORCE_OPMODE, - FEAT_OPER_FORCE_LOPMODE, - FEAT_OPER_BADCHAN, - FEAT_OPER_LBADCHAN, - FEAT_OPER_SET, - FEAT_OPERS_SEE_IN_SECRET_CHANNELS, - FEAT_OPER_WIDE_GLINE, - FEAT_OPER_LIST_CHAN, - - /* features that affect local opers on this server */ - FEAT_LOCOP_KILL, - FEAT_LOCOP_REHASH, - FEAT_LOCOP_RESTART, - FEAT_LOCOP_DIE, - FEAT_LOCOP_LGLINE, - FEAT_LOCOP_LJUPE, - FEAT_LOCOP_LOPMODE, - FEAT_LOCOP_FORCE_LOPMODE, - FEAT_LOCOP_LBADCHAN, - FEAT_LOCOP_SET, - FEAT_LOCOP_SEE_IN_SECRET_CHANNELS, - FEAT_LOCOP_WIDE_GLINE, - FEAT_LOCOP_LIST_CHAN, - /* HEAD_IN_SAND Features */ FEAT_HIS_SNOTICES, FEAT_HIS_SNOTICES_OPER_ONLY, @@ -164,6 +122,7 @@ FEAT_HIS_STATS_o, FEAT_HIS_STATS_p, FEAT_HIS_STATS_q, + FEAT_HIS_STATS_R, FEAT_HIS_STATS_r, FEAT_HIS_STATS_d, FEAT_HIS_STATS_e, Index: ircd-ircdev/include/ircd_string.h diff -u ircd-ircdev/include/ircd_string.h:1.2 ircd-ircdev/include/ircd_string.h:1.3 --- ircd-ircdev/include/ircd_string.h:1.2 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/ircd_string.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: ircd_string.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * $Id: ircd_string.h,v 1.3 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_ircd_string_h @@ -42,6 +42,8 @@ extern int string_is_address(const char* str); extern int string_has_wildcards(const char* str); +/*! Return hash for string using PJW algorithm */ +extern unsigned hash_pjw(const char* str); extern char* ircd_strncpy(char* dest, const char* src, size_t len); extern int ircd_strcmp(const char *a, const char *b); extern int ircd_strncmp(const char *a, const char *b, size_t n); Index: ircd-ircdev/include/msg.h diff -u ircd-ircdev/include/msg.h:1.4 ircd-ircdev/include/msg.h:1.5 --- ircd-ircdev/include/msg.h:1.4 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/include/msg.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: msg.h,v 1.4 2004/04/23 11:08:08 zolty Exp $ + * $Id: msg.h,v 1.5 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_msg_h @@ -372,6 +372,8 @@ * clients. */ #define MFLG_IGNORE 0x04 /* silently ignore command from * unregistered clients */ +#define MFLG_EXTRA 0x08 /* Handler requests that mptr->extra + * be passed in parv[1] */ /* * Structures @@ -385,6 +387,7 @@ to be used only on the average of once per 2 seconds -SRB */ unsigned int bytes; /* bytes received for this message */ + void *extra; /* extra pointer to be passed in parv[1] */ /* * cptr = Connected client ptr * sptr = Source client ptr Index: ircd-ircdev/include/msgq.h diff -u ircd-ircdev/include/msgq.h:1.2 ircd-ircdev/include/msgq.h:1.3 --- ircd-ircdev/include/msgq.h:1.2 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/msgq.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: msgq.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * $Id: msgq.h,v 1.3 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_msgq_h @@ -88,8 +88,8 @@ extern void msgq_add(struct MsgQ *mq, struct MsgBuf *mb, int prio); extern void msgq_count_memory(struct Client *cptr, size_t *msg_alloc, size_t *msgbuf_alloc); -extern unsigned int msgq_bufleft(struct MsgBuf *mb); extern void msgq_histogram(struct Client *cptr, struct StatDesc *sd, int stat, char *param); +extern unsigned int msgq_bufleft(struct MsgBuf *mb); #endif /* INCLUDED_msgq_h */ Index: ircd-ircdev/include/numeric.h diff -u ircd-ircdev/include/numeric.h:1.5 ircd-ircdev/include/numeric.h:1.6 --- ircd-ircdev/include/numeric.h:1.5 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/include/numeric.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: numeric.h,v 1.5 2004/04/23 11:08:08 zolty Exp $ + * $Id: numeric.h,v 1.6 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_numeric_h @@ -177,6 +177,7 @@ /* RPL_END_NOTIFY 274 aircd */ /* RPL_STATSDELTA 274 IRCnet extension */ #define RPL_STATSDLINE 275 /* Undernet extension */ +#define RPL_STATSRLINE 276 /* Undernet extension */ #define RPL_GLIST 280 /* Undernet extension */ #define RPL_ENDOFGLIST 281 /* Undernet extension */ @@ -261,6 +262,7 @@ #define RPL_INVITING 341 /* RPL_SUMMONING 342 removed from RFC1459 */ +#define RPL_ISSUEDINVITE 345 /* Undernet extension */ #define RPL_INVITELIST 346 /* IRCnet, Undernet extension */ #define RPL_ENDOFINVITELIST 347 /* IRCnet, Undernet extension */ /* RPL_EXCEPTLIST 348 IRCnet extension */ @@ -271,6 +273,7 @@ #define RPL_NAMREPLY 353 /* See also RPL_ENDOFNAMES */ #define RPL_WHOSPCRPL 354 /* Undernet extension, See also RPL_ENDOFWHO */ +#define RPL_DELNAMREPLY 355 /* QuakeNet extension */ #define RPL_KILLDONE 361 /* not used */ #define RPL_CLOSING 362 @@ -356,7 +359,7 @@ #define ERR_NICKTOOFAST 438 /* Undernet extension */ /* ERR_DEAD 438 IRCnet reserved for later use */ #define ERR_TARGETTOOFAST 439 /* Undernet extension */ -/* ERR_SERVICESDOWN 440 Dalnet,unreal */ +#define ERR_SERVICESDOWN 440 /* Dalnet,unreal,Undernet */ #define ERR_USERNOTINCHANNEL 441 #define ERR_NOTONCHANNEL 442 #define ERR_USERONCHANNEL 443 Index: ircd-ircdev/include/parse.h diff -u ircd-ircdev/include/parse.h:1.2 ircd-ircdev/include/parse.h:1.3 --- ircd-ircdev/include/parse.h:1.2 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/parse.h Fri May 21 08:39:34 2004 @@ -18,13 +18,14 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: parse.h,v 1.2 2004/02/22 16:13:21 zolty Exp $ + * $Id: parse.h,v 1.3 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_parse_h #define INCLUDED_parse_h struct Client; +struct s_map; /* * Prototypes @@ -34,4 +35,7 @@ extern int parse_server(struct Client *cptr, char *buffer, char *bufend); extern void initmsgtree(void); +extern int register_mapping(struct s_map *map); +extern int unregister_mapping(struct s_map *map); + #endif /* INCLUDED_parse_h */ Index: ircd-ircdev/include/patchlevel.h diff -u ircd-ircdev/include/patchlevel.h:1.10 ircd-ircdev/include/patchlevel.h:1.11 --- ircd-ircdev/include/patchlevel.h:1.10 Fri Apr 23 04:08:08 2004 +++ ircd-ircdev/include/patchlevel.h Fri May 21 08:39:34 2004 @@ -17,10 +17,10 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: patchlevel.h,v 1.10 2004/04/23 11:08:08 zolty Exp $ + * $Id: patchlevel.h,v 1.11 2004/05/21 15:39:34 zolty Exp $ * */ -#define PATCHLEVEL ".alpha9" +#define PATCHLEVEL ".alpha10" #define RELEASE "1.0" Index: ircd-ircdev/include/s_conf.h diff -u ircd-ircdev/include/s_conf.h:1.4 ircd-ircdev/include/s_conf.h:1.5 --- ircd-ircdev/include/s_conf.h:1.4 Sun Feb 22 08:13:21 2004 +++ ircd-ircdev/include/s_conf.h Fri May 21 08:39:34 2004 @@ -18,7 +18,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * - * $Id: s_conf.h,v 1.4 2004/02/22 16:13:21 zolty Exp $ + * $Id: s_conf.h,v 1.5 2004/05/21 15:39:34 zolty Exp $ * */ #ifndef INCLUDED_s_conf_h @@ -41,6 +41,7 @@ struct Client; struct SLink; struct TRecord; +struct Message; /* @@ -55,14 +56,12 @@ #define CONF_MATCH 0x40000000 #define CONF_CLIENT 0x0002 #define CONF_SERVER 0x0004 -#define CONF_LOCOP 0x0010 #define CONF_OPERATOR 0x0020 #define CONF_LEAF 0x1000 #define CONF_HUB 0x4000 #define CONF_UWORLD 0x8000 -#define CONF_OPS (CONF_OPERATOR | CONF_LOCOP) -#define CONF_CLIENT_MASK (CONF_CLIENT | CONF_OPS | CONF_SERVER) +#define CONF_CLIENT_MASK (CONF_CLIENT | CONF_OPERATOR | CONF_SERVER) #define IsIllegal(x) ((x)->status & CONF_ILLEGAL) @@ -177,6 +176,21 @@ ACR_BAD_SOCKET }; +struct nick_host { + struct nick_host *next; + int nicklen; /* of... [truncated message content] |
From: Toni G. <zo...@us...> - 2004-05-21 15:42:07
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-21 15:41:59 UTC Added files: ircd/m_pseudo.c Log message: Author: zoltan <zo...@ir...> Log message: 2004-05-21 Toni García <zo...@ir...> 1.0.alpha10 * Deshabilitar el cambio de nick en canales moderados * Mapeo de comandos de services * Modo de canal +D (Delayed-join / Modo de conferencias) * Opcion de usermode por defecto por clase de conection * Anuncio de invitaciones a los otros operadores * Sincronizacion Undernet ---------------------- diff included ---------------------- Index: ircd-ircdev/ircd/m_pseudo.c diff -u /dev/null ircd-ircdev/ircd/m_pseudo.c:1.1 --- /dev/null Fri May 21 08:42:00 2004 +++ ircd-ircdev/ircd/m_pseudo.c Fri May 21 08:41:49 2004 @@ -0,0 +1,150 @@ +/* + * IRC-Dev IRCD - An advanced and innovative IRC Daemon, ircd/m_pseudo.c + * + * Copyright (C) 2002-2004 IRC-Dev Development Team <de...@ir...> + * Copyright (C) 2002-2003 Zoot <zo...@ga...> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * $Id: m_pseudo.c,v 1.1 2004/05/21 15:41:49 zolty Exp $ + * + */ + +/* + * m_functions execute protocol messages on this server: + * + * cptr is always NON-NULL, pointing to a *LOCAL* client + * structure (with an open socket connected!). This + * identifies the physical socket where the message + * originated (or which caused the m_function to be + * executed--some m_functions may call others...). + * + * sptr is the source of the message, defined by the + * prefix part of the message if present. If not + * or prefix not found, then sptr==cptr. + * + * (!IsServer(cptr)) => (cptr == sptr), because + * prefixes are taken *only* from servers... + * + * (IsServer(cptr)) + * (sptr == cptr) => the message didn't + * have the prefix. + * + * (sptr != cptr && IsServer(sptr) means + * the prefix specified servername. (?) + * + * (sptr != cptr && !IsServer(sptr) means + * that message originated from a remote + * user (not local). + * + * combining + * + * (!IsServer(sptr)) means that, sptr can safely + * taken as defining the target structure of the + * message in this server. + * + * *Always* true (if 'parse' and others are working correct): + * + * 1) sptr->from == cptr (note: cptr->from == cptr) + * + * 2) MyConnect(sptr) <=> sptr == cptr (e.g. sptr + * *cannot* be a local connection, unless it's + * actually cptr!). [MyConnect(x) should probably + * be defined as (x == x->from) --msa ] + * + * parc number of variable parameter strings (if zero, + * parv is allowed to be NULL) + * + * parv a NULL terminated list of parameter pointers, + * + * parv[0], sender (prefix string), if not present + * this points to an empty string. + * parv[1], pointer to "extra" data (service mapping) + * parv[2]...parv[parc-1] + * pointers to additional parameters + * parv[parc] == NULL, *always* + * + * note: it is guaranteed that parv[0]..parv[parc-1] are all + * non-NULL pointers. + */ +#include "config.h" + +#include "client.h" +#include "hash.h" +#include "ircd.h" +#include "ircd_features.h" +#include "ircd_relay.h" +#include "ircd_reply.h" +#include "ircd_string.h" +#include "ircd_snprintf.h" +#include "msg.h" +#include "numeric.h" +#include "numnicks.h" +#include "s_conf.h" +#include "s_user.h" + +#include <assert.h> + +/* + * m_pseudo - generic service message handler + * + * parv[0] = sender prefix + * parv[1] = service mapping (s_map * disguised as char *) + * parv[2] = message + */ +int m_pseudo(struct Client* cptr, struct Client* sptr, int parc, char* parv[]) +{ + char *text, buffer[BUFSIZE]; + struct s_map *map; + struct nick_host *nh; + + assert(0 != cptr); + assert(cptr == sptr); + assert(0 != cli_user(sptr)); + + /* By default, relay the message straight through. */ + text = parv[parc - 1]; + + if (parc < 3 || EmptyString(text)) + return send_reply(sptr, ERR_NOTEXTTOSEND); + + /* HACK! HACK! HACK! HACK! Yes. It's icky, but + * it's the only way. */ + map = (struct s_map *)parv[1]; + assert(0 != map); + + if (map->prepend) { + ircd_snprintf(0, buffer, sizeof(buffer) - 1, "%s%s", map->prepend, text); + buffer[sizeof(buffer) - 1] = 0; + text = buffer; + } + + for (nh = map->services; nh; nh = nh->next) { + struct Client *target, *server; + + if (NULL == (server = FindServer(nh->nick + nh->nicklen + 1))) + continue; + nh->nick[nh->nicklen] = '\0'; + if ((NULL == (target = FindUser(nh->nick))) + || (server != cli_user(target)->server)) + continue; + nh->nick[nh->nicklen] = '@'; + relay_directed_message(sptr, nh->nick, nh->nick + nh->nicklen, text); + return 0; + } + + return send_reply(sptr, ERR_SERVICESDOWN, map->name); +} + ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-21 16:21:59
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-21 16:21:45 UTC Modified files: doc/ircd.sample-en.conf Log message: Actualizacion ircd.conf ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/ircd.sample-en.conf diff -u ircd-ircdev/doc/ircd.sample-en.conf:1.3 ircd-ircdev/doc/ircd.sample-en.conf:1.4 --- ircd-ircdev/doc/ircd.sample-en.conf:1.3 Fri May 21 08:39:33 2004 +++ ircd-ircdev/doc/ircd.sample-en.conf Fri May 21 09:21:23 2004 @@ -746,6 +746,7 @@ # "HIDDEN_IP" = "127.0.0.1"; # "CONNEXIT_NOTICES" = "FALSE"; # "LOCAL_CHANNELS" = "TRUE"; +# "FEAT_TOPIC_BURST" = "FALSE"; # "KILLCHASETIMELIMIT" = "30"; # "MAXCHANNELSPERUSER" = "10"; # "NICKLEN" = "12"; @@ -774,6 +775,7 @@ # "IRCD_RES_TIMEOUTS = "4"; # "IRCD_RES_RETRIES = "2"; # "AUTH_TIMEOUT = "9"; +# "FEAT_ANNOUNCE_INVITES = "FALSE"; # "IPCHECK_CLONE_LIMIT = 24"; # "IPCHECK_CLONE_PERIOD = "40"; # "IPCHECK_CLONE_DELAY = "600"; @@ -807,6 +809,7 @@ # "HIS_STATS_p" = "TRUE"; # "HIS_STATS_q" = "TRUE"; # "HIS_STATS_r" = "TRUE"; +# "HIS_STATS_R" = "TRUE"; # "HIS_STATS_t" = "TRUE"; # "HIS_STATS_T" = "TRUE"; # "HIS_STATS_u" = "FALSE"; ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-24 15:51:28
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-24 15:51:21 UTC Modified files: TODO.es Log message: Actualizacion TODO ---------------------- diff included ---------------------- Index: ircd-ircdev/TODO.es diff -u ircd-ircdev/TODO.es:1.8 ircd-ircdev/TODO.es:1.9 --- ircd-ircdev/TODO.es:1.8 Fri May 21 08:39:33 2004 +++ ircd-ircdev/TODO.es Mon May 24 08:51:11 2004 @@ -1,7 +1,7 @@ # # TODO para ircd-ircdev # -# $Id: TODO.es,v 1.8 2004/05/21 15:39:33 zolty Exp $ +# $Id: TODO.es,v 1.9 2004/05/24 15:51:11 zolty Exp $ # # Insertar las nuevas entradas al principio de la lista TODO. # @@ -72,7 +72,6 @@ 23/Abr/2004 - [G] Sistema de logs no funciona por el paso del .conf al bison 1/Nov/2003 - - [G] Bug al conectar sale umode -Oo. - [G] Bug en las U-lines (uworld y jupes). ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-28 09:53:13
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-28 09:53:06 UTC Modified files: doc/ircd.sample-en.conf Log message: Actualizacion ircd.conf en ingles ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/ircd.sample-en.conf diff -u ircd-ircdev/doc/ircd.sample-en.conf:1.4 ircd-ircdev/doc/ircd.sample-en.conf:1.5 --- ircd-ircdev/doc/ircd.sample-en.conf:1.4 Fri May 21 09:21:23 2004 +++ ircd-ircdev/doc/ircd.sample-en.conf Fri May 28 02:52:55 2004 @@ -1,6 +1,6 @@ # ircd.conf - configuration file for IRC-Dev's IRCD. # -# Last Updated: 21, May 2004. +# Last Updated: 28, May 2004. # # Written by Niels <ni...@un...>, based on the original example.conf, # server code and some real-life (ahem) experience. @@ -40,9 +40,9 @@ # There is a difference between the "hostname" and the "server name" # of the machine that the server is run on. For example, the host can # have "83.Red-80-59-255.pooles.rima-tde.net" as FQDN, and -# "zoltan.irc-dev.net" as server name. +# "gmsis.irc-dev.net" as server name. # A "server mask" is something like "*.EU.irc-dev.net", which is -# matched by "Vigo.ES.EU.irc-dev.net" but not by "Porto.PT.US.irc-dev.net". +# matched by "Vigo.ES.EU.irc-dev.net" but not by "Miami.FL.US.irc-dev.net". # # Please do NOT just rename the ircd.sample-en.conf to ircd.conf and expect # it to work. @@ -58,15 +58,15 @@ # numeric = numericnumber; # }; # -# <virtual host> must contain either a * or a valid IPv4 address in +# The "vhost" field must contain either a * or a valid IPv4 address in # dotted quad notation. (127.0.0.1) The address MUST be the address # of a physical interface on the host. This address is used for outgoing -# connections only, see Port{} for listener virtual hosting. +# connections only, see "Port" block for listener virtual hosting. # If in doubt put a * or the IP of your primary interface here. # The server must be compiled with virtual hosting turned on to get this # to work correctly. # -# Note that <server numeric> has to be unique on the network your server +# Note that "numeric" field has to be unique on the network your server # is running on, must be between 0 and 4095, and is not updated on a rehash. General { name = "gmsis.irc-dev.net"; @@ -102,10 +102,10 @@ # usermode = "+i"; # }; # -# <connect freq> applies only to servers, and specifies the frequency -# that the server tries to autoconnect. setting this to 0 will cause -# the server to attempt to connect repeatedly with no delay until the -# <maximum links> condition is satisfied. This is a Bad Thing(tm). +# The "connectfreq" field applies only to servers, and specifies the +# frequency that the server tries to autoconnect. setting this to 0 will +# cause the server to attempt to connect repeatedly with no delay until the +# "maxlinks" condition is satisfied. This is a Bad Thing(tm). # Note that times can be specified as a number, or by giving something # like: 1 minutes 20 seconds, or 1*60+20. # Client { @@ -115,7 +115,7 @@ # class = "classname"; # }; # -# <maximum links> should be set at either 0 or 1. +# The "maxlinks" field should be set at either 0 or 1. # # Recommended server classes: # All your server uplinks you are not a hub for. @@ -218,8 +218,8 @@ # To allow clients to connect, they need authorization. This can be # done based on hostmask, address mask, and/or with a password. # With intelligent use of classes and the maxconnections field in the -# Client blocks, you can let in a specific domain, but get rid of all other -# domains in the same toplevel, thus setting up some sort of "reverse +# "Client" blocks, you can let in a specific domain, but get rid of all +# other domains in the same toplevel, thus setting up some sort of "reverse # Kill block". # Client { # host = "user@host"; @@ -232,7 +232,9 @@ # For every connecting client, the IP address is known. A reverse lookup # on this IP-number is done to get the (/all) hostname(s). # Each hostname that belongs to this IP-number is matched to <hostmask>, -# and the Client {} is used when any matches; the client will then show +# and the "Client" block is used when any matches; the client will then +show +FIX FIX # with this particular hostname. If none of the hostnames match, then # the IP-number is matched against the <IP mask ...> field, if this matches # then the Client{} is used nevertheless and the client will show with the @@ -339,7 +341,7 @@ }; -# [motd] +# [Motd] # # It is possible to show a different Message of the Day to a connecting # client depending on its origin. @@ -350,26 +352,26 @@ # }; # # DPATH/net_com.motd contains a special MOTD where users are encouraged -# to register their domains and get their own client{} lines if they're in +# to register their domains and get their own "Client" blocks if they're in # Europe, or move to US.irc-dev.net if they're in the USA. -motd { +Motd { host = "*.net"; file = "net_com.motd"; }; -motd { +Motd { host = "*.com"; file = "net_com.motd"; }; -motd { +Motd { host = "Telefonica"; file = "telefonica.motd"; }; # A different MOTD for ourselves, where we point out that the helpdesk # better not be bothered with questions regarding irc... -motd { - host = "*.london.ac.uk"; - file = "london.motd"; +Motd { + host = "*.irc-dev.net"; + file = "irc-dev.motd"; }; # [Server] @@ -493,7 +495,7 @@ # The realname field lets you ban by realname... Kill { - host = "*sub7*"; + realname = "*sub7*"; reason = "You are infected with a Trojan"; }; @@ -510,7 +512,7 @@ # server links is provided for ircd to decide what links to allow, what # to let humans do themselves, and what links to (forcefully) disallow. # -# The Connect blocks +# The "Connect" blocks # define what servers the server connect to, and which servers are # allowed to connect. # Connect { @@ -524,11 +526,11 @@ # The "port" field defines the default port the server tries to connect # to if an operator uses /connect without specifying a port. This is also # the port used when the server attempts to auto-connect to the remote -# server. (See Class blocks for more informationa about auto-connects). +# server. (See "Class" blocks for more informationa about auto-connects). # # Our primary uplink. Connect { - name = "gmsis.irc-dev.net"; + name = "devel.irc-dev.net"; host = "1.2.3.4"; password = "passwd"; port = 4400; @@ -536,11 +538,11 @@ }; -# [crule] +# [Crule] # # For an advanced, real-time rule-based routing decision making system -# you can use crule blocks. For more information, see doc/readme.crules. -# CRULE +# you can use "Crule" blocks. For more information, see doc/*/crules.txt. +# Crule # { # server = "servermask"; # rule = "connectrule"; @@ -548,19 +550,19 @@ # # applies to autoconnects. # all = yes; # }; -CRULE +Crule { server = "*.US.irc-dev.net"; rule = "connected(*.US.irc-dev.net)"; }; -CRULE +Crule { server = "*.EU.irc-dev.net"; rule = "connected(Vigo.ES.EU.*)"; }; # The following block is recommended for leaf servers: -CRULE +Crule { server = "*"; rule = "directcon(*)"; @@ -587,7 +589,7 @@ # name = "opername"; # password = "encryptedpass"; # class = "classname"; -# # You can also set any operator privilege; see the Class block +# # You can also set any operator privilege; see the "Class" block # # documentation for details. A privilege defined for a single # # Operator will override the privilege settings for the Class # # and the default setting. @@ -614,15 +616,15 @@ class = "Opers"; }; -# Note that the <connection class> is optional, but leaving it away -# puts the opers in class "default", which usually only accepts one -# connection at a time. If you want users to Oper up more then once per -# block, then use a connection class that allows more then one connection, -# for example (using class Local as in the example above): +# Note that the "class" field is optional, but leaving it away puts the +# opers in class "default", which usually only accepts one connection at +# a time. If you want users to Oper up more then once per block, then use +# a connection class that allows more then one connection, for example +# (using class Local as in the example above): # # Once you OPER your connection class changes no matter where you are or # your previous connection classes. If the defined connection class is -# Local for the operator block, then your new connection class is Local. +# Local for the "Operator" block, then your new connection class is Local. # [Port] # When your server gets more full, you will notice delays when trying to @@ -704,12 +706,12 @@ nick = "X...@ch..."; }; -# [features] +# [Features] # IRC servers have a large number of options and features. Most of these # are set at compile time through the use of #define's--see "make config" # for more details--but we are working to move many of these into the # configuration file. Features let you configure these at runtime. -# You only need one feature block in which you use +# You only need one "features" block in which you use # "featurename" = "value1" , "value2", ..., "valuen-1", "valuen"; # # The entire purpose of F:lines are so that you do not have to recompile @@ -720,7 +722,7 @@ # be found at doc/*/features.txt and the logging documentation can be found # at doc/*/log.txt. The defaults used by the IRC-Dev.Net network are below. # -features +Features { # "LOG" = "SYSTEM:FILE:ircd.log"; # "LOG" = "SYSTEM:LEVEL:CRIT"; @@ -838,7 +840,7 @@ # Well, you have now reached the end of this sample configuration # file. If you have any questions, visit http://www.irc-dev.net, -# or join the channel #irc-dev at IRC-Hispano or Undernet, and feel :-) +# or join the channel #irc-dev at Undernet, and feel :-) # # Upgrades of the ircd can be found via CVS or download on # http://www.irc-dev.net ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-28 10:01:37
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-28 10:01:30 UTC Modified files: doc/ircd.sample-en.conf Log message: Actualizacion ircd.conf en ingles ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/ircd.sample-en.conf diff -u ircd-ircdev/doc/ircd.sample-en.conf:1.5 ircd-ircdev/doc/ircd.sample-en.conf:1.6 --- ircd-ircdev/doc/ircd.sample-en.conf:1.5 Fri May 28 02:52:55 2004 +++ ircd-ircdev/doc/ircd.sample-en.conf Fri May 28 03:01:20 2004 @@ -747,8 +747,9 @@ # "HIDDEN_HOST" = "users.irc-dev.net"; # "HIDDEN_IP" = "127.0.0.1"; # "CONNEXIT_NOTICES" = "FALSE"; +# "OPLEVELS" = "TRUE"; # "LOCAL_CHANNELS" = "TRUE"; -# "FEAT_TOPIC_BURST" = "FALSE"; +# "TOPIC_BURST" = "FALSE"; # "KILLCHASETIMELIMIT" = "30"; # "MAXCHANNELSPERUSER" = "10"; # "NICKLEN" = "12"; @@ -767,6 +768,9 @@ # "GLINEMAXUSERCOUNT" = "20"; # "SOCKSENDBUF" = "61440"; # "SOCKRECVBUF" = "61440"; +# "IPCHECK_CLONE_LIMIT = 24"; +# "IPCHECK_CLONE_PERIOD = "40"; +# "IPCHECK_CLONE_DELAY = "600"; # "MPATH" = "ircd.motd"; # "RPATH" = "remote.motd"; # "PPATH" = "ircd.pid"; @@ -777,14 +781,10 @@ # "IRCD_RES_TIMEOUTS = "4"; # "IRCD_RES_RETRIES = "2"; # "AUTH_TIMEOUT = "9"; -# "FEAT_ANNOUNCE_INVITES = "FALSE"; -# "IPCHECK_CLONE_LIMIT = 24"; -# "IPCHECK_CLONE_PERIOD = "40"; -# "IPCHECK_CLONE_DELAY = "600"; +# "ANNOUNCE_INVITES = "FALSE"; # "CRYPT_OPER_PASSWORD" = "TRUE"; # "CONFIG_OPERCMDS" = "FALSE"; -# "OPLEVELS" = "TRUE"; -# "LOCAL_CHANNELS" = "TRUE"; +# "LIST_CHAN" = "TRUE"; # "HIS_SNOTICES" = "TRUE"; # "HIS_SNOTICES_OPER_ONLY" = "TRUE"; # "HIS_DESYNCS" = "TRUE"; ----------------------- End of diff ----------------------- |
From: Toni G. <zo...@us...> - 2004-05-28 10:03:29
|
CVSROOT : /cvsroot/irc-dev Module : ircd-ircdev Commit time: 2004-05-28 10:03:21 UTC Added files: doc/ircd.sample-es.conf Log message: ircd.conf de ejemplo en castellano ;) ---------------------- diff included ---------------------- Index: ircd-ircdev/doc/ircd.sample-es.conf diff -u /dev/null ircd-ircdev/doc/ircd.sample-es.conf:1.1 --- /dev/null Fri May 28 03:03:22 2004 +++ ircd-ircdev/doc/ircd.sample-es.conf Fri May 28 03:03:11 2004 @@ -0,0 +1,886 @@ +# ircd.conf - archivo de configuración para el IRCD de IRC-Dev. +# +# Ultima actualización: 28, May 2004. +# +# Escrito por Niels <ni...@un...>, basado en el archivo example.conf +# original, en el código del servidor y la experiencia de la vida real. +# +# Actualizado y modificado profundamente por by Braden <db...@ya...>. +# +# Reescrito por A1kmm(Andrew Miller)<a1...@mw...> para +# soportar el nuevo analizador de configuración flex/bison. +# +# Agradecimientos y creditos para: Run, Trillian, Cym, Morrissey, Chaos, +# Flynn, Xorath, WildThang, Mmmm, SeKs, +# Ghostwolf y todo el resto de +# Administradores y Operadores de +# Undernet, y los programadores del ircd +# de Undernet. +# +# Actualizado por Zoltan (Toni Garcia) <zo...@ir...> +# Traducido por Zoltan (Toni Garcia) <zo...@ir...> +# +# Este es un ejemplo del archivo de configuración usado por el IRCD de IRC-Dev. +# +# Este documento está basado en un (fiticio) servidor en Europa con una +# conexión a la red de IRC de IRC-Dev. Este es un servidor "leaf", pero +# si todos los otros "hubs" en Europa no están en servicio, puede conectar +# a uno en los E.E.U.U. por sí mismo. +# +# El formato de la configuración consiste en un número de bloques en este +# formato +# NombreBloque { ajuste = número; ajuste2 = "texto"; ajuste3 = yes; }; +# Notése que los comentarios empiezan con un #(almohadilla) va al extremo +# de la línea. Espacios en blanco (espacio, tabulación, retornos de carro) +# son ignorados y se puede utlizar para hacer más legible el archivo de +# la configuración. +# +# Por favor observe que cuando el ircd pone las líneas en práctica, las +# analiza exactamente al sentido contrario que las lees. Utiliza los +# bloques en el orden reverso. +# +# Esto significa que debes comenzar tus bloques "Client" con "fall through", +# "most vanilla one", y al final con el más detallado. +# +# Hay una diferencia entre el "hostname" y el "nombre del servidor" de la +# máquina que el servidor está corriendo. Por ejemplo, el host puede tener +# "83.Red-80-59-255.pooles.rima-tde.net" como FQDN y "gmsis.irc-dev.net" +# como nombre del servidor. +# Una "máscara de servidor" es algo como "*.EU.irc-dev.net", que es +# emparejado por "Vigo.ES.EU.irc-dev.net" pero no por +# "Miami.FL.US.irc-dev.net". +# +# Por favor NO renombrar el ircd.sample-es.conf a ircd.conf y no espere +# que esto funcione. + + +# [General] +# +# Primero una información sobre el servidor. +# General { +# name = "nombreservidor"; +# vhost = "virtualhost"; +# description = "descripcion"; +# numeric = númerodenúmerico; +# }; +# +# El campo "vhost" debe contener un * o una dirección IPv4 válida en la +# notación de 4 números (127.0.0.1). La dirección DEBE ser la dirección +# de una interfaz física en el host. Esta dirección se utiliza solamente +# para las conexiones salientes, veáse el bloque "Port" para la escucha +# con virtual hosting. +# En caso de duda, pon un * o la IP de tu interface primaria aquí. +# El servidor debe estar compilado con "virtual hosting" activado para +# conseguir que esto trabaje correctamente. +# +# Observe que el campo "numeric" tiene que ser único en la red si tu +# servidor esta funcionando, y debe estar entre 0 y 4095, y no se +# actualiza en un rehash. +General { + name = "gmsis.irc-dev.net"; + description = "Servidor de Desarrollo de IRC-Dev.Net."; + numeric = 1; +}; + +# [Admin] +# +# Esto fija la información que se puede ver con el comando "/ADMIN". +# Se debe poner por lo menos una dirección de Email de contacto del +# administrador. +Admin { + # En la mayoría se permiten dos líneas de localización ("Location")... + Location = "Servidor de Desarrollo de IRC-Dev.Net"; + Location = "Administrador IRC : zoltan"; + Contact = "Email Administrador <zo...@ir...>"; +}; + +# [Classes] +# +# Todas las conexiones al servidor están asociadas con una cierta "clase +# de conexión", sean entrantes o salientes (iniciadas por el servidor), +# ya sean clientes, servidores o Martians. (Observe que el ircd no tiene +# soporte directo) +# Clases de clientes recomendadas: +# Para Martians (todavía?); tendrán que colocarse como usuarios normales. ;-) +# Tome los siguientes bloques de clases solamente como guía. +# Class { +# name = "nombreclase"; +# pingfreq = tiempo; +# connectfreq = tiempo; +# maxlinks = número; +# sendq = tamaño; +# usermode = "+i"; +# }; +# +# El campo "connectfreq" se aplica solamente a los servidores, y especifica +# la frecuencia con la cual el servidor intentará hacer el "autoconnect". +# Ajustando a 0 causará que el servidor intentará repetidamente sin pausa +# hasta que la condición especificada en el campo "maxlinks" esté satisfecha. +# Esto es una mala idea (Bad Thing(tm)). +# Observe que los tiempos se pueden especificar como número, dando algo +# como este: 1 minutes 20 seconds, or 1*60+20. +# Client { +# host = "user@host"; +# ip = "ip@host"; +# password = "contraseña"; +# class = "nombreclase"; +# }; +# +# El campo "maxlinks" se debe fijar en 0 o 1. +# +# Clases de servidores recomendadas: +# Todos los uplinks del servidor si tu no eres un "hub". +Class { + name = "Servidor"; + pingfreq = 1 minutes 30 seconds; + connectfreq = 5 minutes; + maxlinks = 1; + sendq = 9000000; +}; +# Todos los servidores "leaf" si tu eres "hub". +Class { + name = "ServidorLeaf"; + pingfreq = 1 minutes 30 seconds; + connectfreq = 5 minutes; + maxlinks = 0; + sendq = 9000000; +}; + +# Clases de clientes recomendadas: +# Clases de clientes. 10 = locales; 2 = para todos los .net y .com que no +# estén en Europa; 1 = para todos los demás. +Class { + name = "Local"; + pingfreq = 1 minutes 30 seconds; + sendq = 160000; + maxlinks = 100; + usermode = "+iw"; +}; +Client +{ + class = "Otros"; + host = "*@*"; +}; +Class { + name = "Telefonica"; + pingfreq = 1 minutes 30 seconds; + sendq = 80000; + maxlinks = 5; +}; +Class { + name = "Otros"; + pingfreq = 1 minutes 30 seconds; + sendq = 160000; + maxlinks = 400; +}; +Class { + name = "Opers"; + pingfreq = 1 minutes 30 seconds; + sendq = 160000; + maxlinks = 10; + + # Para las clases de conexión previstas para el uso de operadores, puedes + # especificar los privilegios usados cuando el bloque "Operator" (véase + # abajo) utiliza esta clase. El privilegio local (aka globally_opered) + # DEBE estar definido por el bloque de "Class" o de "Operator". Existen + # los siguientes privilegios: + # + # local (o "propagate", con el efecto contrario) + # whox (puede utlizar el flag x con /WHO) + # display (estado de Oper visible en lusers) + # chan_limit (puede entrar en canales locales cuando esta en + # MAXCHANNELSPERUSER canales) + # mode_lchan (puede usar /MODE &channel sin tener op en el canal) + # deop_lchan (no puede ser deopeado o kickeado en canales locales) + # walk_lchan (puede forzar /JOIN &channel OVERRIDE) + # show_invis (ve usuarios invisibles (+i) en el /WHO x) + # show_all_invis (ve usuarios invisibles (+i) en el /WHO x) + # unlimit_query (muestra más resultados desde /WHO) + # local_kill (puede expulsar (kill) clientes de este servidor) + # rehash (puede usar /REHASH) + # die (puede usar /DIE) + # local_jupe_server (no se usa) + # set (puede usar /SET) + # local_gline (puede poner una G-line para solamente este servidor) + # local_badchan (puede poner una Gchan para solamente este servidor) + # see_chan (puede ver usuarios en canales secretos (+s) en el /WHO) + # wide_gline (puede usar ! para forzar una wide G-line) + # see_opers (puede ver opers sin el privilegio DISPLAY) + # force_local_opmode (puede utilizar OPMODE/CLEARMODE en canales quarantined locales) + # kill (puede expulsar (kill) clientes en otros servidores) + # gline (puede poner G-lines a otros servidores) + # jupe_server (no se usa) + # opmode (puede usar /OPMODE) + # badchan (puede poner Gchans a otros servidores) + # force_opmode (puede utilizar OPMODE/CLEARMODE en canales quarantined globales) + # + # PAra los opers globales (con "propagate = yes" o "local = no"), por + # defecto es conceder todos los privilegios antes mencionados. Para los + # opers locales, por defecto es conceder SOLO los siguientes privilegios: + # chan_limit, mode_lchan, show_invis, show_all_invis, local_kill, + # rehash, local_gline, local_jupe, local_opmode, whox, display, + # force_local_opmode + # Cualquier privilegio listado en un bloque "Class" prevalece a los por + # defecto. + + local = no; +}; +# [Client] +# +# Para permitir conectar a los clientes, necesitan la autorización. Esta +# se puede otorgar basandose en una máscara de hosts, una máscara de +# direcciones y/o con una contraseña. +# Con un uso inteligente de las clases y el campo de "maxconnections" en +# los bloques "Client", puedes permitir entrar a un dominio específico, +# pero rechazando el resto de dominios del mismo nivel, como si fuera +# creando una especie de "bloque Kill inverso". +# Client { +# host = "user@host"; +# ip = "ip@host"; +# password = "contraseña"; +# class = "nombreclase"; +# }; +# +# Descripción técnica (para los ejemplos, vea abajo): +# Para cada cliente que conecta, su dirección IP es conocida. Se hace una +# consulta de dns inverso a la IP númerica para obtener el/los(todos) +# hostnames. +# Cada hostname que pertenece a esa IP numérica se compara con <hostmask>, +# y el bloque "Client" se usa cuando cualquiera de ellos encaja; el cliente +# entonces se mostrará con ese hostname en concreto. Si ninguno de los +# hostnames encanjan, entonces la IP numérica se compara contra el campo +# <IP mask>, y si esta concuerda entonces el bloque "Client" se usa a pesar +# de todo y el cliente mostrará el primer (principal) hostname si existe; +# si la IP numérica no resuelve, el cliente mostrará la notación decimal de +# la IP númerica. +# Hay un caso especial para los sockets de los dominios UNIX y las +# conexiones del host local (localhost); en este caso el campo <IP mask> +# se compara con el nombre del servidor (de tal suerte que no se hace +# con ninguna representación de una IP numérica). El nombre del servidor +# es el devuelto en la respuesta del numérico 002, por ejemplo: +# 002 Your host is 2.irc-dev.net[jolan.ppro], running version .. +# Entonces el "jolan.ppro" es el nombre que usa para comparar. +# Por lo tanto, los sockets de dominio unix, y las conexiones al host +# local (localhost), tendrían que satisfacer este bloque: +# host = "*@jolan.ppro"; +# +# Esta es la entrada "fallback". Todo .uk, .nl, y todos los sin resolver +# están en estos dos bloques. +# Usando dos bloques diferentes, las conexiones múltiples desde una sola +# IP son permitidas solamente de los hostnames que tienen resoluciones DNS +# directas e inversas válidas. +Client +{ + class = "Otros"; + ip = "*@*"; +}; + + +Client +{ + class = "Otros"; + host = "*@*"; +}; +# Si no quieres que conecten usuarios sin DNS inverso resuelto a tu +# servidor, no poner ajustes de "ip = ". +# +# Aqui, sólo se dejaría entrar a todos los usuarios españoles de Telefonica. +Client +{ + host = "*@*.pooles.rima-tde.net"; + class = "Telefonica"; +}; + +Client +{ + host = "*@*.telefonica-data.net"; + class = "Telefonica"; +}; + +Client +{ + host = "*@*.ttd.es"; + class = "Telefonica"; +}; + +# Ahora se listan los dominios .com / .net que se desean permitir... +# Esto es menos trabajoso que hacerlo de la otra manera - poniendo "Klined" +# a cada ISP de los E.E.U.U. +# Deseo que la gente de Holanda con dominio .nl, y no intento ser fresco +# y usar .com... +Client { host = "*@*.wirehub.net"; class = "Otros";}; +Client { host = "*@*.planete.net"; class = "Otros";}; +Client { host = "*@*.ivg.com"; class = "Otros";}; +Client { host = "*@*.ib.com"; class = "Otros";}; +Client { host = "*@*.ibm.net"; class = "Otros";}; +Client { host = "*@*.hydro.com"; class = "Otros";}; +Client { host = "*@*.nl.net"; class = "Local";}; + +# Puedes solicitar un listado más completo, incluyendo la "lista estándar +# de bloques "Kill"" del comité de "Routing"; también le será enviada si +# solicita para un servidor y consigues el aprobado. +# +# Nosotros mismos - esto nos asegura poder entrar, independiente de lo lleno +# que esté el servidor. +Client +{ + host = "*@*.pooles.rima-tde.net"; + ip = "*@80.59.*"; + class = "Local"; +}; + +# Puedes poner un número (0..9) en el campo "password", que hará que el +# ircd sólo acepte un cliente cuando el numero total de conexiones a la +# red desde la misma IP numérica no exceda de ese número. +# El siguiente ejemplo aceptaría al menos una conexión por IP numérica +# desde "*.ono.com" y al menos dos conexiones desde cuentas de acceso a +# internet por modem que tengan "*.dial??.*" como máscara de host: +# Client { +# host = "*@*.ono.com"; +# password = "1"; +# class = "Otros"; +# }; +# Client { +# host = "*@dial??.*"; +# password = "2"; +# class = "Otros"; +# }; +# +# Si no te preocupa de quien se conecta, esta línea permitirá que se +# conecten todos. +Client { + host = "*@*"; + ip = "*@*"; + class = "Otros"; +}; + + +# [Motd] +# +# Es posible mostrar un MOTD (Message of the Day"), a un cliente que +# conecta dependiendo de su origen. +# Motd { +# # Nota: el campo "host" también puede ser un nombre de clase. +# host = "Otros"; +# file = "ruta/al/fichero/del/motd"; +# }; +# +# DPATH/net_com.motd contiene un MOTD especial donde se anima a los +# usuarios que registren sus dominios y conseguir su propios bloques +# "Client" si están en Europa, o moverse a US.irc-dev.net si están en +# los E.E.U.U.. +Motd { + host = "*.net"; + file = "net_com.motd"; +}; +Motd { + host = "*.com"; + file = "net_com.motd"; +}; +Motd { + host = "Telefonica"; + file = "telefonica.motd"; +}; + +# Un MOTD diferente para nosotros, donde precisamos que el "helpdesk" +# mejor no ser molestado con preguntas con respeto al IRC... +Motd { + host = "*.irc-dev.net"; + file := "irc-dev.motd"; +}; + +# [Server] +# +# Una de las características más atractivas de IRC-Dev, es "Uworld", un +# programa conectado a la red como servidor. Esto le permite realizar +# cualquier cambio de modo, para que esta manera los opers puedan +# permitir, por ejemplo, desbloquear un canal que ha sufrido un take-over. +# Sólo hay un pequeño problema: El protocolo del TimeStamp (TS) hace +# que no sea posible. Por esto, hay una opción de configuración para +# permitir esos cambios desde cierto servidor. +# Server { +# # El nombre del servidor o la máscara para el que esto se aplica. +# name = "relnombreservidor"; +# # La máscara de servidores se permite para introducir (para hub = yes;) +# # o no se permite (para leaf = yes;). +# mask = "máscaraservidor"; +# # No son asumidos estos valores a menos que lo fijes a "yes". +# uworld = no; +# leaf = no; +# hub = yes; +# }; +# +# Nota: (1) Estas líneas son puestas por cada administrador de un servidor +# en IRC-Dev; (2) Estas líneas debe ser exactamente iguales en cada +# servidor, o los resultados serán impredecibles; (3) Esta es una +# característica útil, no algo que es una responsabilidad y abusado +# regularmente (bien... :-) +# Si estás en IRC-Dev, DEBES tener estas líneas. No puedo tener estrés +# por esto. Si todos los servidores no tienen las mismas lineas, los +# servidores intentarán deshacer los "hack" de cambios de modos que hará +# Uworld. ASEGURATE que todos los servidores tengan EXACTAMENTE las mismas +# "Ulines". +# +# Si tu servidor arranca en una red más grande, es probable que se te +# asignen uno o dos servidores a los que tu servidor pueda conectar. +# Si estos servidores a su vez se conecta a otros servidores que el tuyo +# (lo que es probable), necesitas definir el servidor al que te conectas +# con permiso como "hub". +# Para hacer esto, ajusta "hub = yes;" +# Puedes tambien forzar un servidor (uno que que no conecte con usted) +# a ser un "leaf" con "leaf = yes;" + +Server { + name = "luz.irc-dev.net"; + mask = "*"; + uworld = yes; + hub = yes; +}; +Server { + name = "services.irc-dev.net"; + mask = "*"; + uworld = yes; + hub = yes; +}; +Server { + name = "gmsis2.irc-dev.net"; + mask = "*"; + hub = yes; +}; +# Un ejemplo para estar seguro que IRCnet no consiga en IRC-Dev.Net... +Server { + name = "*"; + mask = "eris.berkeley.edu"; + hub = yes; +}; + +# Esto es posible para prohibir (Jupe) nicks. +Jupe { + nick = "EuWorld,E,StatServ,NoteServ"; + nick = "UWorld2,ChanSvr,ChanSaver,ChanServ"; + nick = "Uworld,NickSvr,NickSaver,NickServ"; + nick = "LPT1,X,login,LPT2,W,Undernet,COM1,V,protocol,COM2"; + nick = "U,pass,COM3,Y,AUX,COM4,Z,newpass"; +}; + +# [Kill] +# +# Mientras funciona tu servidor, es muy probablemente que encontrarás a +# personas o grupos de personas a los que no quieres permitir acceso a tu +# servidor. +# +# Para este propósito, el ircd entiende de "kill blocks". Estos también se +# conocen como "K-lines", en virtud del formato anterior del archivo de +# configuracion. + +# Kill +# { +# host = "user@host"; +# reason = "La razón que verá el usuario"; +# }; +# Es posible prohibir en base del nombre real (Realname). +# También es posible utilizar un archivo como comentario de la prohibición, +# usando file = "archivo": +# Kill +# { +# realname = "realnameabanear"; +# file = "ruta/al/archivo/con/la/razon/para/mostrar"; +# }; +# +# +# La razón por defecto es: "You are banned from this server" +# Notese que las "K-lines" son locales al servidor; si se prohibe a una +# persona o un dominio entero de tu servidor, aun pueden entrar al IRC +# por otro servidor que no tengan "K-lined" (aun). +# +# Con un simple comentario, usando comillas: +Kill { host = "*.au"; reason = "Por favor, use un servidor más cercano"; }; +Kill { host = "*.edu"; reason = "Por favor, use un servidor más cercano"; }; + +# El archivo puede contener, por ejemplo, una razón, un enlace a las normas +# del servidor y una dirección de contacto. +Kill +{ + host = "*lu...@un..."; + file = "kline/youflooded.txt"; +}; + +# Las lineas "kill" basadas en IP se aplican a todos los hosts, incluso si +# una dirección IP tiene un nombre de host resuelto correctamente. +Kill +{ + host = "192.168.*"; + file = "klines/martians"; +}; + +# El campo "realname" permite prohibir por el nombre real (realname)... +Kill +{ + realname = "*sub7*"; + reason = "Estás infectado con un Troyano"; +}; + +# [Connect] +# +# Es probable que quieras que tu servidor se conecte con otros servidores +# de forma que tus usuarios tengan otros usuarios con quien chatear. +# Los servidores del IRC conectan con otros servidores formando una red +# con topología de estrella o árbol. No se permiten los bucles (Loops). +# +# En esta red, dos servidores pueden ser distinguidos: servidores "hub" +# y "leaf". Los servidores "leaf" se conectan con los "hubs"; los "hub" +# se conectan entre ellos. Por supuesto, muchos servidores no se pueden +# clasificar directamente en una de esas categorias. Existe un sistema +# predefindo de toma de decisión basado en las reglas para los enlaces +# de los servidores se proporciona para decidir a que enlaces permitr, +# cuales se dejan establecer a mano, y cuales de los enlaces denegar (a +# la fuerza). +# +# Los bloques "Connect" +# define con qué servidores conecta el servidores, y qué servidores se +# permiten conectar. +# Connect { +# name = "nombreservidor"; +# host = "hostnameOip"; +# password = "contraseña"; +# port = númeropuerto; +# class = "nombreclase"; +# }; +# +# El campo "port" define el puerto por defecto que el servidor intentará +# conectar si un operador utiliza el comando "/connect" sin especificar +# un puerto. Este también es el puerto usado para los intentos del servidor +# de autoconectar con el servidor remoto. (Véase los bloques "Class" para +# más informacion sobre "auto-connects"). +# +# Nuestro uplink primario. +Connect { + name = "devel.irc-dev.net"; + host = "1.2.3.4"; + password = "passwd"; + port = 4400; + class = "Servidor"; +}; + + +# [Crule] +# +# Para un sistema avanzado de toma de decisiones basado en las reglas de +# encaminamiento en tiempo real puedes utilizar los bloques "Crule". Para +# más información, vea doc/*/crules.txt +# Crule +# { +# server = "máscaraservidor"; +# rule = "reglaconexión"; +# # Ajustar "all" a "yes" hace que la regla se aplique siempre. Si no +# # solamente se aplica a los "autoconnects". +# all = yes; +# }; +Crule +{ + server = "*.US.irc-dev.net"; + rule = "connected(*.US.irc-dev.net)"; +}; +Crule +{ + server = "*.EU.irc-dev.net"; + rule = "connected(Vigo.ES.EU.*)"; +}; + +# El siguiente bloque se recomienda para servidores "leaf": +Crule +{ + server = "*"; + rule = "directcon(*)"; +}; + +# [Operator] +# +# Inevitablemente, has alcanzado la parte sobre los Operadores del IRC (IRC +# Operators). El estado de Oper condece algunos privilegios especiales a un +# usuario, como la capacidad de poder desconectar el servidor de otro +# o (intentar a) establecer una conexión con otro usuario y a expulsar +# (kill) a usuarios del IRC. +# Se podrian escribir muchas páginas sobre esto; Resumamos con que si +# deseas designar a alguien como operador del IRC (IRC Operator) en tu +# servidor, esta persona debe estar enterado de sus responsabilidades, y +# eso, siendo el admin, el responsable de sus actos. +# +# Hay dos clases de Operadores del IRC (IRC Operators): "local" y "global". +# Los Opers locales pueden hacer "squit", "connect" y "kill" - pero +# solamente localmente: su modo de usuario de +o no se propaga a los otros +# servidores. En IRC-Dev, esto previene ellos de usar Uworld también. +# +# Operator { +# host = "máscara host/IP"; +# name = "nombreoper"; +# password = "contraseñacifrada"; +# class = "nombreclase"; +# # Puedes fijar también cualquier privilegio del operador; vea +# # la documentación del bloque "Class" para más detalles. Un +# # privilegio definido para un solo Operador prevalecerá los +# # ajustes de privilegios para la Clase y para el ajuste por +# # defecto. +# }; +# +# La contraseña cifrada es opcional. Si deseas cifrar tu contraseña, hay +# una utilidad en el ircd. Lea por favor el archivo tools/README.es +# Todos los privilegios son mostrados con los valores por defecto; Si +# deseas eliminar los valores por defecto, debes fijar solamente esos +# privilegios para el operador. Enumerar los privilegios omitidos apenas +# hace las cosas más duras para encontrar. +Operator { + local = no; + host = "*@*.pooles.rima-tde.net"; + password = "KI88nphRm0UPw"; + name = "zoltan"; + class = "Local"; +}; +Operator { + host = "*@*.ttd.es"; + password = "passnocifrada"; + name = "zolty"; + class = "Opers"; +}; + +# Notese que el campo "class" es opcional, pero dejarla vacía pone los +# opers en la clase "default", que acepta generalmente una sola conexión +# a la vez. Si deseas que haya más de un usuario para Oper por bloque, +# entonces utiliza una clase de conexión que permita más de una conexión, +# por ejemplo (usando la clase "Local" como en el ejemplo de arriba): +# +# Una vez que te haces OPER tu clase de conexión cambia, no importa de +# dónde eres o tus clases de conexión anteriores. Si la clase de conexión +# definida es "Local" para el bloque "Operator", entonces tu nueva clase +# de conexión es "Local". + +# [Port] +# Cuando tu servidor consigue llenarse, notarás retrasos al intentar +# conectar al puerto de escucha primario de tu servidor. Es posible con las +# lineas "Port" para especificar puertos adicionales para que el ircd los +# escuche. De hecho los puertos son: 6667 - estándar; 6660-6669 - puertos +# adicionales de clientes; +# Usar 4000 para puerto de escucha de servidores. +# Esto es sólo por convenio, no hay políticas oficiales de la IANA ni del +# IETF. +# La IANA dice que debemos usar el puerto 194, pero éste requiere que +# el ircd funcione como root, así que no lo hacemos. +# +# Port { +# port = número; +# mask = "máscaraip"; +# # Utilice esto para controlar la interfaz para "bindear". +# vhost = "ipvirtualhost"; +# # Ajustando a "yes" hace que sea de sólo servidores. +# server = yes; +# # Ajustando a "yes" hace que el port no salga en los "stats". +# hidden = yes; +# }; +# +# El ajuste del campo "mask" permite que especifiques un rango de +# direcciones IP de las cuales permitirás conexiones. Esto debe contener +# solamente direcciones IP y '*' si está utilizada. Este campo utiliza +# solamente direcciones IP. Esto no utiliza resolución DNS de ninguna manera +# así que no puedes utilizarlo para permitir *.nl o *.uk. Los intentos de +# especificar cualquier cosa excepto números, puntos y estrella [0-9.*] +# dará lugar que en el puerto permitirá conexiones desde cualquier sitio. +# +# El ajuste de la interface permite a los servidores "multihosts" a +# especificar que interface será utilizada en el puerto, si una interfaz +# no está especificada, será utilizada la interfaz por defecto. La interfaz +# DEBE ser la dirección IP completa de la interfaz hardware real en la +# máquina donde corre el ircd. +# Si deseas utilizar "virtual hosting" *TU* *DEBES* *UTILIZAR* *ESTO*, de +# otra manera *SE USARA* todas las interfaces - que no es lo que espera la +# mayoría de la gente. +# +Port { + server = yes; + port = 4400; +}; + +# Este es un puerto de Servidor que está oculto +Port { + server = yes; + hidden = yes; + port = 4401; +}; + +# Lo siguiente son puertos normales de cliente +Port { port = 6667; }; +Port { port = 6668; }; +Port { + mask = "192.168.*"; + port = 6666; +}; + +# Esto es un puerto de cliente oculto, escuchando en la interfaz +# asociado a la dirección IP 168.8.21.107 +Port { + mask = "168.8.21.107"; + hidden = yes; + port = 7000; +}; + +# Esto es un alias implementado del servidor para enviar un mensaje a un +# service. La cadena después de Pseudo es el nombre del comando; el campo +# "name" es el nombre del service, usado para los mensajes de error. Más +# de una entrada del campo "nick" puede ser proporcionadas, la última +# listada es la que tiene la prioridad más alta. +Pseudo "CHANSERV" { + name = "X"; + nick = "X...@ch..."; +}; + +# Puedes poner un texto "prepend" antes del mensaje del usuario. +Pseudo "LOGIN" { + name = "X"; + prepend = "LOGIN "; + nick = "X...@ch..."; +}; + +# [Features] +# Los servidores de IRC tienen una gran cantidad de opciones y +# características. La mayoria de éstos se ajustan en tiempo de compilación +# con el uso de #define's --ver "make config" para más detalles -- pero +# estamos trabajando para mover muchos de éstos al archivo de configuracion. +# Las características (features) permiten ajustarlos en tiempo real. +# Sólo necesitas un bloque "feature" en el cual se usa del siguiente modo. +# "nombrecaracterstica" = "valor1" , "valor2", ..., "valorn-1", "valorn"; +# +# El propósito entero de las F:lines es que no tengas que recompilar el IRCD +# cada vez que quieres cambiar una característica (feature). Todas las +# características se enumeran abajo, y al final cómo ajustar el "logging". +# +# Gracias especiales a Kev por escribir la documentación de F:lines. Eso +# puede ser encontrado en doc/*/features.txt y la documentación de registro +# de eventos (logging) se puede encontrar en doc/*/log.txt. Los valores por +# defecto usados por la red de IRC-Dev están abajo. +# +Features +{ +# "LOG" = "SYSTEM:FILE:ircd.log"; +# "LOG" = "SYSTEM:LEVEL:CRIT"; +# "DOMAINNAME" = "<obtenido desde /etc/resolv.conf por el ./configure>"; +# "RELIABLE_CLOCK" = "FALSE"; +# "BUFFERPOOL" = "27000000"; +# "HAS_FERGUSON_FLUSHER" = "FALSE"; +# "CLIENT_FLOOD" = "2048"; +# "SERVER_PORT" = "4400"; +# "NODEFAULTMOTD" = "TRUE"; +# "MOTD_BANNER" = "string"; +# "PROVIDER" = "string"; +# "KILL_IPMISMATCH" = "FALSE"; +# "IDLE_FROM_MSG" = "TRUE"; +# "HUB" = "FALSE"; +# "WALLOPS_OPER_ONLY" = "FALSE"; +# "NODNS" = "FALSE"; +# "RANDOM_SEED" = "<debes fijar uno explícitamente>"; +# "DEFAULT_LIST_PARAM" = "TRUE"; +# "NICKNAMEHISTORYLENGTH" = "800"; +# "HOST_HIDING" = "TRUE"; +# "HIDDEN_HOST" = "users.irc-dev.net"; +# "HIDDEN_IP" = "127.0.0.1"; +# "CONNEXIT_NOTICES" = "FALSE"; +# "OPLEVELS" = "TRUE"; +# "LOCAL_CHANNELS" = "TRUE"; +# "TOPIC_BURST" = "FALSE"; +# "KILLCHASETIMELIMIT" = "30"; +# "MAXCHANNELSPERUSER" = "10"; +# "NICKLEN" = "12"; +# "AVBANLEN" = "40"; +# "MAXBANS" = "45"; +# "MAXSILES" = "15"; +# "MAXWATCHS" = "128"; +# "HANGONGOODLINK = "300"; +# "HANGONRETRYDELAY" = "10"; +# "CONNECTTIMEOUT" = "90"; +# "TIMESEC" = "60"; +# "MAXIMUM_LINKS" = "1"; +# "PINGFREQUENCY" = "120"; +# "CONNECTFREQUENCY" = "600"; +# "DEFAULTMAXSENDQLENGTH" = "40000"; +# "GLINEMAXUSERCOUNT" = "20"; +# "SOCKSENDBUF" = "61440"; +# "SOCKRECVBUF" = "61440"; +# "IPCHECK_CLONE_LIMIT = 24"; +# "IPCHECK_CLONE_PERIOD = "40"; +# "IPCHECK_CLONE_DELAY = "600"; +# "MPATH" = "ircd.motd"; +# "RPATH" = "remote.motd"; +# "PPATH" = "ircd.pid";# "LIST_CHAN" = "TRUE"; +# "VIRTUAL_HOST" = "FALSE"; +# "TOS_SERVER" = "0x08"; +# "TOS_CLIENT" = "0x08"; +# "POLLS_PER_LOOP" = "200"; +# "IRCD_RES_TIMEOUTS = "4"; +# "IRCD_RES_RETRIES = "2"; +# "AUTH_TIMEOUT = "9"; +# "ANNOUNCE_INVITES = "FALSE"; +# "CRYPT_OPER_PASSWORD" = "TRUE"; +# "CONFIG_OPERCMDS" = "FALSE"; +# "LIST_CHAN" = "TRUE"; +# "HIS_SNOTICES" = "TRUE"; +# "HIS_SNOTICES_OPER_ONLY" = "TRUE"; +# "HIS_DESYNCS" = "TRUE"; +# "HIS_DEBUG_OPER_ONLY" = "TRUE"; +# "HIS_WALLOPS" = "TRUE"; +# "HIS_MAP" = "TRUE"; +# "HIS_LINKS" = "TRUE"; +# "HIS_TRACE" = "TRUE"; +# "HIS_STATS_a" = "TRUE"; +# "HIS_STATS_b" = "TRUE"; +# "HIS_STATS_c" = "TRUE"; +# "HIS_STATS_d" = "TRUE"; +# "HIS_STATS_e" = "TRUE"; +# "HIS_STATS_f" = "TRUE"; +# "HIS_STATS_g" = "TRUE"; +# "HIS_STATS_h" = "TRUE"; +# "HIS_STATS_i" = "TRUE"; +# "HIS_STATS_j" = "TRUE"; +# "HIS_STATS_k" = "TRUE"; +# "HIS_STATS_l" = "TRUE"; +# "HIS_STATS_m" = "TRUE"; +# "HIS_STATS_M" = "TRUE"; +# "HIS_STATS_o" = "TRUE"; +# "HIS_STATS_p" = "TRUE"; +# "HIS_STATS_q" = "TRUE"; +# "HIS_STATS_r" = "TRUE"; +# "HIS_STATS_R" = "TRUE"; +# "HIS_STATS_t" = "TRUE"; +# "HIS_STATS_T" = "TRUE"; +# "HIS_STATS_u" = "FALSE"; +# "HIS_STATS_U" = "TRUE"; +# "HIS_STATS_v" = "TRUE"; +# "HIS_STATS_w" = "FALSE"; +# "HIS_STATS_x" = "TRUE"; +# "HIS_STATS_y" = "TRUE"; +# "HIS_STATS_z" = "TRUE"; +# "HIS_WHOIS_SERVERNAME" = "TRUE"; +# "HIS_WHOIS_IDLETIME" = "TRUE"; +# "HIS_WHO_SERVERNAME" = "TRUE"; +# "HIS_WHO_HOPCOUNT" = TRUE"; +# "HIS_BANWHO" = "TRUE"; +# "HIS_KILLWHO" = "TRUE"; +# "HIS_REWRITE" = "TRUE"; +# "HIS_REMOTE" = 1; +# "HIS_NETSPLIT" = TRUE"; +# "HIS_SERVERNAME" = "*.irc-dev.net"; +# "HIS_SERVERINFO" = "IRC-Dev.Net, Desarrollo de IRC / IRC Development"; +# "HIS_URLSERVERS" = "http://www.irc-dev.net/servers.php"; +# "NETWORK" = "IRC-Dev"; +# "URL_CLIENTS" = "ftp://ftp.irc.org/pub/irc/clients"; + +}; + +# Bien, has llegado al final de este ejemplo del archivo de configuración. +# Si tienes alguna pregunta, visita http://www.irc-dev.net, o entra en el +# canal #irc-dev de Undernet y nos las planteas :-) +# +# Las actualizaciones de este ircd se puede encontrar via CVS o por +# descarga directa en http://www.irc-dev.net +# +# Buena suerte con el resto! + +# +# IRC-Dev Devel Team. ----------------------- End of diff ----------------------- |