X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=ChangeLog;h=0f9331d15077a64da450091f1f8bbe27b98d6900;hb=39423ad1e0a874890f1567531bdcc568b1ec326e;hp=38e056bcff6a0bb9089f3c93b9d5b4426b09cf56;hpb=cb396c94ca182a7ebbe9e47f9908b93cc1594ad2;p=ircu2.10.12-pk.git diff --git a/ChangeLog b/ChangeLog index 38e056b..0f9331d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,448 @@ +2001-05-07 Kevin L. Mitchell + + * ircd/m_settime.c: include ircd_snprintf.h + + * ircd/ircd_relay.c: stomp a couple of gcc warnings suggesting + parens around a construct that had both || and && + + * ircd/chkconf.c: #include "config.h" to get some important + definitions + + * ircd/Makefile.in: revamp ircd makefile for new build system + + * doc/Makefile.in: revamp doc makefile for new build system + + * config/*: Removed old build system files + + * stamp-h.in: a stamp file + + * install-sh: install-sh for new build system + + * configure.in: configure.in for new build system + + * configure: configure script for new build system (built by + autoconf) + + * config.sub: config.sub for new build system + + * config.h.in: config.h.in for new build system (built by + autoheader) + + * config.guess: config.guess for new build system + + * aclocal.m4: aclocal.m4 for new build system (built by aclocal + 1.4) + + * acinclude.m4: aclocal.m4 macros for new build system + + * acconfig.h: config.h skeleton for new build system + + * Makefile.in: modify for new build system + +2001-05-01 Kevin L. Mitchell + + * ircd/s_err.c: get rid of the last vestiges of TIME_T_FMT + + * ircd/m_settime.c: get rid of the last vestiges of TIME_T_FMT + + * ircd/m_server.c: get rid of the last vestiges of TIME_T_FMT + +2001-05-01 Perry Lorier + * doc/iauth.doc: Protocol for iauth server. (from hybrid). + * doc/linux-poll.patch: Patch to make Linux under 2.2 not deadlock + when you have far far too many sockets in use. + * {include,ircd}/iauth.c: A start on iauth support. + +2001-05-01 Perry Lorier + * ircd/s_err.c: Suggested wording change. + * ircd/s_user.c: Users aren't target limited against +k users. + * ircd/chkconf.c: Made it compile again, who knows if it works, but + now I can at least make install + * various: Cleanups on m_*.c files. + + +2001-04-23 Kevin L. Mitchell + + * ircd/s_misc.c (exit_client): make netsplit server notice say the + right thing + + * ircd/m_links.c (m_links_redirect): forward-port RPL_ENDOFLINKS + change to make Khaled happy... + + * ircd/m_whois.c (do_whois): pull-up of m_whois() fix + (do_whois): duh... + +2001-04-21 Kevin L. Mitchell + + * ircd/msgq.c: finally remove the msgq_integrity() hack, as it's + turned up no more bugs + + * ircd/ircd.c: use /* */ comments instead of // comments--all the + world's not gcc :( + + * ircd/s_conf.c (conf_add_server): use /* */ comments instead of + // comments--all the world's not gcc :( + + * ircd/runmalloc.c: finally garbage-collect unused file + + * include/runmalloc.h: finally garbage-collect unused file + + * ircd/: addition of '#include "config.h"' before + all other includes in most .c files + + * include/: remove includes of config.h, which are + now going into the raw .c files + +2001-04-20 Kevin L. Mitchell + + * ircd/m_whois.c (do_whois): display proper server name if the + user is looking up himself + + * ircd/m_who.c (m_who): disable match by servername or display of + server names by non-opers + + * include/ircd_policy.h: add define for + HEAD_IN_SAND_WHO_SERVERNAME to cover full intent of sub-motion 15 + of CFV 165 + +2001-04-18 Kevin L. Mitchell + + * ircd/s_conf.c: keep the $R in memory so we can see it clearly + when we do a /stats k + + * ircd/s_user.c (set_user_mode): pull-up of changes to prevent + users from turning on +s and +g + + * ircd/s_misc.c (exit_client): pull-up of changes to turn off + net.split notice + + * ircd/parse.c: pull-up of changes to disable /trace, /links, and + /map for users + + * ircd/m_whois.c (do_whois): pull-up of server name masking for + /whois + + * ircd/m_user.c (m_user): removal of umode and snomask defaulting + functions, pull-up + + * ircd/m_stats.c (m_stats): pull-up of stats-disabling stuff + + * ircd/m_map.c (m_map_redirect): pull-up of m_map_redirect() + + * ircd/m_links.c (m_links_redirect): pull-up of m_links_redirect() + + * ircd/channel.c (channel_modes): pull-up of channel key display + as * + + * include/ircd_policy.h: pull-up of ircd_policy.h + + * include/client.h: pull-up of Set/ClearServNotice() + + * ircd/gline.c (do_gline): report client name in G-line message + (pull-up) + + * ircd/s_user.c (register_user): pull-up--show IP address in some + server notices dealing only with users; report which connection + class has filled up + + * ircd/s_stats.c (report_deny_list): use conf->flags & + DENY_FLAGS_IP insteaf of conf->ip_kill + + * ircd/m_stats.c (report_klines): use conf->flags & DENY_FLAGS_IP + insteaf of conf->ip_kill + + * ircd/s_conf.c: use flags field in struct DenyConf; pull-up of + K-line by real name + + * include/s_conf.h: use a flags field in struct DenyConf; define + DENY_FLAGS_FILE, DENY_FLAGS_IP, and DENY_FLAGS_REALNAME for + pull-up of K-line by real name + + * ircd/m_trace.c: pull-up of IP show for user connections + + * doc/example.conf: pull-up of the realname K-line documentation + + * ircd/ircd.c: forward port of pid file advisory locking mechanism + +2001-04-16 Kevin L. Mitchell + + * ircd/send.c (sendcmdto_flag_butone): recast to just broadcast to + all servers, rather than to only servers that have +w/+g/whatever + users on them; among other things, this removes that atrocity + known as sentalong[] from this function + + * ircd/m_admin.c: must include ircd.h to declare "me"; must + include hash.h to declare FindUser() + + * ircd/m_wallusers.c: implementation of WALLUSERS + + * ircd/m_desynch.c (ms_desynch): only send DESYNCHs to opers + + * ircd/m_wallops.c: only send WALLOPS to opers + + * ircd/parse.c: add WALLUSERS command to parser table + + * include/handlers.h: declare wallusers handlers + + * include/msg.h: add WALLUSERS command + + * ircd/send.c (sendcmdto_flag_butone): if FLAGS_OPER is or'd with + flag, send only to appropriate opers + +2001-03-13 Joseph Bongaarts + * ircd/os_openbsd.c: Tweaked the openbsd hack a bit. + +2001-03-07 Joseph Bongaarts + + * config/configure.in: Add check for OpenBSD + + * ircd/os_openbsd.c: Add seperate os dep file for openbsd which + differs from generic BSD, particularly in its handling of + _XOPEN_SOURCE. + +2001-02-12 Kevin L. Mitchell + + * ircd/m_gline.c (ms_gline): propagate a G-line that happened to + have been added by a U-lined server, rather than going through the + activate/deactivate logic; propagate G-line removals by U-lined + servers as well + + * ircd/gline.c: rename propagate_gline() to gline_propagate(); + make gline_propagate() return an int 0 (convenience return); only + update lastmod in gline_activate() and gline_deactivate() if the + current lastmod is non-zero, since 0 lastmod is our flag of a + U-lined server having added a G-line + + * include/gline.h (gline_propagate): exporting the G-line + propagation function + + * ircd/m_list.c (m_list): duh; permit explicit channel name + specification only when /list gets two arguments ("Kev + #wasteland") rather than when /list gets more than two + arguments--nice braino + +2001-01-29 Thomas Helvey + + * ircd/ircd_reply.c (need_more_params): fix bug that allowed + unregistered clients to spam opers with protocol violation + messages. Note: the bugfix may have eliminated some useful + protocol violation messages. + Please send protocol violation messages explicitly from the + functions they are discovered in, you have much better context + for the error there and it helps to document the behavior of the + server. This was also a design bug in that it violated the + "A function should do one thing" heuristic. Patching this one + would have resulted in a continuous spawning of other bugs over + the next 3 years, so I killed it. Check around for stuff this + broke and readd the calls to protocol_violation in the functions + that need to send the message. + +2001-01-29 Kevin L. Mitchell + + * ircd/channel.c (mode_parse_ban): stopper a tiny leak--if a ban + already existed, then the logic would (attempt to) skip it, but + would not free the ban string; now the ban string is free'd and + the ban count is decremented, releasing the ban for use + + * ircd/s_user.c: make send_umode_out() take a prop argument + instead of testing for the PRIV_PROPAGATE privilege itself; fix + set_umode() to use this new argument, calculating it before + calculating the new privileges for a -o'd user + + * ircd/m_oper.c (m_oper): pass the new prop argument to + send_umode_out() + + * ircd/channel.c (mode_parse_ban): turn off MODE_ADD bit in bans + that we're not actually going to add because they already exist; + test that particular bit before adding to the linked list + + * include/s_user.h: add a prop argument to send_umode_out() to + indicate whether or not to propagate the user mode + +2001-01-24 Kevin L. Mitchell + + * ircd/msgq.c: ircd_vsnprintf() returns the number of bytes that + it would have written; upper-bound the number to prevent overflows + by proxy; also, tune buffer size given to ircd_vsnprintf() to take + into account the fact that ircd_vsnprintf() already takes the + terminal \0 into account + +2001-01-22 Kevin L. Mitchell + + * ircd/msgq.c: add an incredibly ugly hack to attempt to track + down an apparent buffer overflow; remove msgq_map(), since it's no + longer used anywhere; slight tweaks to prevent off-by-one errors, + but these can't explain the problems we've seen + + * include/msgq.h: remove msgq_map(), since it's no longer used + anywhere + +2001-01-18 Kevin L. Mitchell + + * ircd/s_user.c (set_nick_name): call client_set_privs() after + parsing user modes + +2001-01-17 Kevin L. Mitchell + + * ircd/s_bsd.c (read_message): fix a typo in the select version of + read_message() + + * ircd/whowas.c (whowas_free): MyFree() is a macro that expects + its argument to be an lvalue, which means we can't use + whowas_clean()'s handy-dandy "return ww" feature + + * ircd/ircd_features.c: default LOCOP_KILL to TRUE--oops... + +2001-01-15 Kevin L. Mitchell + + * ircd/client.c: fixed feattab; basically, when I changed features + to use small integers specifying bit positions, instead of the + bits themselves, I forgot to update feattab to not | these + privileges together; also fixed a bug in the antiprivs masking + loop in client_set_privs()--last index wouldn't get parsed + +2001-01-03 Kevin L. Mitchell + + * ircd/whowas.c: Completely re-did the old allocation scheme by + turning it into a linked list, permitting the + NICKNAMEHISTORYLENGTH feature to be changed on the fly + + * ircd/s_debug.c (count_memory): use FEAT_NICKNAMEHISTORYLENGTH + feature instead of old #define + + * ircd/ircd_features.c: add NICKNAMEHISTORYLENGTH feature as an + integer feature with a notify callback (whowas_realloc) + + * ircd/client.c (client_set_privs): second memset was supposed to + be over antiprivs, not privs; thanks, Chris Behrens + for pointing that out... + + * include/whowas.h: new elements for an extra linked list in + struct Whowas; a notify function for feature value changes + + * include/ircd_features.h: new feature--FEAT_NICKNAMEHISTORYLENGTH + + * config/config-sh.in: NICKNAMEHISTORYLENGTH is now a feature + +2001-01-02 Kevin L. Mitchell + + * config/config-sh.in: get rid of DEFAULT_LIST_PARAMETER + compile-time option--now in features subsystem + + * ircd/motd.c (motd_init): rework motd_init() to be called as the + notify function for MPATH and RPATH features (should probably + split it up a bit, though...) + + * ircd/m_privs.c (mo_privs): if called with no parameters, return + privs of the caller, rather than an error + + * ircd/m_list.c: pull usage message into its own function; pull + list parameter processing into its own function that does not + modify the contents of the parameter; add list_set_default() to + set the default list parameter (uses the notify hook); rework + m_list() to make use of these functions; removed dead code + + * ircd/ircd_log.c (log_feature_mark): make sure to return 0, since + we have no notify handler + + * ircd/ircd_features.c: add notify callback for notification of + value changes; give mark callback an int return value to indicate + whether or not to call the notify callback; fix up feature macros + for new notify callback; add DEFAULT_LIST_PARAM feature; rewrite + string handling in feature_set() to deal with def_str being a null + pointer; wrote feature_init() to set up all defaults appropriately + + * ircd/ircd.c (main): call feature_init() instead of + feature_mark(), to avoid calling notify functions while setting up + defaults + + * ircd/client.c: updated to deal with new privileges structure + + * ircd/class.c: updated so init_class() can be called should one + of PINGFREQUENCY, CONNECTFREQUENCY, MAXIMUM_LINKS, or + DEFAULTMAXSENDQLENGTH be changed + + * include/ircd_log.h: log_feature_mark() updated to fit with new + API changes + + * include/ircd_features.h: added DEFAULT_LIST_PARAM feature and + feature_init() function (found necessary since adding the notify + stuff and notifying motd.c during start-up...before we defined + RPATH!) + + * include/client.h: move privs around to enable addition of more + bits if necessary; based on the FD_* macros + + * include/channel.h: declare list_set_default (actually located in + m_list.c *blanche*) + + * ircd/s_user.c: retrieve MAXSILES and MAXSILELENGTH (now + AVBANLEN*MAXSILES) from features subsystem + + * ircd/s_debug.c (debug_serveropts): CMDLINE_CONFIG doesn't go to + anything anymore + + * ircd/s_bsd.c: retrieve HANGONGOODLINK and HANGONRETRYDELAY from + the features subsystem + + * ircd/s_auth.c (start_auth): NODNS migrated to the features + subsystem + + * ircd/random.c: created random_seed_set() function to set seed + value, along with some stuff to make ircrandom() a little more + random--state preserving, xor of time instead of direct usage, + etc.; it's still a pseudo-random number generator, though, and + hopefully I haven't broken the randomness + + * ircd/m_version.c: FEATUREVALUES makes use of feature_int() calls + + * ircd/m_join.c: use features interface to retrieve + MAXCHANNELSPERUSER + + * ircd/ircd_features.c: add NODISP flag for super-secret features; + add a whole bunch of new features migrated over from make config + + * ircd/ircd.c: use features interface to retrieve PINGFREQUENCY, + CONNECTTIMEOUT, and TIMESEC + + * ircd/client.c (client_get_ping): use features interface to + retrieve PINGFREQUENCY + + * ircd/class.c: use features interface to retrieve PINGFREQUENCY, + CONNECTFREQUENCY, MAXIMUM_LINKS, and DEFAULTMAXSENDQLENGTH + + * ircd/chkconf.c (DEFAULTMAXSENDQLENGTH): since it's now in the + features subsystem, we have to add something explicit + + * ircd/channel.c: use features interface to retrieve + KILLCHASETIMELIMIT, MAXBANLENGTH, MAXBANS, and MAXCHANNELSPERUSER; + note that MAXBANLENGTH is now calculated dynamically from MAXBANS + and AVBANLEN + + * ircd/Makefile.in: run make depend + + * include/supported.h (FEATURESVALUES): update to reference + feature settings + + * include/random.h: add prototype for random_seed_set + + * include/ircd_features.h: add several more features + + * include/channel.h: move MAXBANS and MAXBANLENGTH into feature + subsystem + + * config/config-sh.in: feature-ized some more stuff + + * include/motd.h: some new elements in motd.h for motd.c changes + + * ircd/motd.c: motd_cache() now searches a list of already cached + MOTD files; saves us from having duplicate caches in memory if + there are two identical T-lines for two different sites... + +2001-01-02 Perry Lorier + * ircd/motd.c: don't core if the motd isn't found. Bug found by + Amarande. + 2001-01-02 Perry Lorier * ircd/s_err.c: Added third param to 004 - the channel modes that tage params. Used by hybrid/epic. * ircd/s_channels.c: Added fix for msg'ing a -n+m channel - thanks