X-Git-Url: http://git.pk910.de/?p=ircu2.10.12-pk.git;a=blobdiff_plain;f=ChangeLog;h=e9291bb2865c361c62d972b335ccb85f5541f55d;hp=378f262b48052ee730ee96b4a0b034826c9b762b;hb=refs%2Fheads%2Fupstream;hpb=9a9279d9759e995d9aae78065c3eb8805589c255 diff --git a/ChangeLog b/ChangeLog index 378f262..e9291bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,548 @@ +2012-10-15 Michael Poole + + * include/IPcheck.h (IPcheck_connect_fail): Add new 'disconnect' + parameter. This treats the failure as a disconnection from the + client's current IP address. + + * ircd/IPcheck.c (ip_registry_connect_fail): Likewise. + (IPcheck_connect_fail): Pass it through. + + * ircd/m_nick.c (m_nick): Pass zero for the new parameter. + (ms_nick): Likewise. + + * ircd/s_auth.c (preregister_user): Likewise. + (iauth_cmd_ip_address): Pass one for the new parameter. + +2012-06-20 Michael Poole + + * ircd/ircd_string.c (ipmask_parse): Return zero if there is junk + after eight valid IPv6 address elements. + +2012-06-13 Michael Poole + + * ircd/s_stats.c (stats_configured_links): Correctly distinguish + local Operator blocks from global Operator blocks. + +2012-05-31 Michael Poole + + * ircd/m_gline.c (ms_gline): If the mask was empty after removing + the command character(s), reject the command. + (mo_gline): Likewise. + +2012-05-31 Michael Poole + + * include/channel.h (infochanmodes): Add +d channel mode. + + * include/client.h (infousermodes): Add +O user mode. + +2012-05-31 Michael Poole + + * ircd/gline.c (gline_add): Add length checks for badchan and + realname G-lines, comparable to the existing check for traditional + G-lines. + + * ircd/s_err.c (ERR_LONGMASK): Remove extra space in format string. + +2012-05-31 Michael Poole + + * ircd/m_server.c (check_loop_and_lh): Mention the mechanism used + to control HUB. + +2012-05-09 Michael Poole + + * ircd/s_user.c (set_user_mode): When a user deopers, revoke their + oper privileges in addition to their oper user mode. + +2012-05-09 Michael Poole + + * ircd/m_who.c (m_who): Only set WHOSELECT_EXTRA for current + opers. Because privileges are kept after -o, this would let + de-opered clients use WHOX. + +2012-05-07 Michael Poole + + * include/client.h (cli_account): New helper macro to return the + client's account name, or "0" for unstamped clients. + + * ircd/s_misc.c (exit_client): Use that when logging the client's + exit. + +2012-05-07 Michael Poole + + * ircd/gline.c (count_users): Use the client's real host, rather + than their masked host, for +x users. + +2012-04-29 Michael Poole + + * ircd/crule.c (crule_connected): Fix logic for ignoring + non-server Client structures. + (crule_via): Likewise. + +2012-04-29 Michael Poole + + * */.cvsignore: Rename to .gitignore. + + * ircd/.cvsignore: Likewise, and add *.o because git does not + ignore any patterns by default. + +2012-01-23 Michael Poole + + * ircd/ircd_res.c (proc_answer): Delete unread variable + query_class. + + * ircd/m_nick.c (m_nick): Delete unread variable client_name. + + * ircd/m_ping.c (m_ping): Delete unread variable origin. + + * ircd/m_whois.c (do_whois): Delete unread variable name. + + * ircd/parse.c (parse_client): Delete unread variable noprefix. + + * ircd/s_conf.c (killcomment): Delete unread variable tm. + + * ircd/s_stats.c (stats_configured_links): Delete unread variable + pass. + +2012-01-23 Michael Poole + + * ircd/gline.c (gline_modify): Notify opers using SNO_AUTO rather + than SNO_GLINE if a G-line had, and still has, an AUTO prefix. + +2012-01-19 Michael Poole + + * doc/readme.iauth: Document the new 'd' IAuth command. + + * ircd/s_auth.c (AuthRequestFlag): Add "soft done" flag. + (auth_ping_timeout): Do not impose Authorization Timeout on + clients with the "soft done" flag set. + (iauth_cmd_soft_done): New IAuth command handler. + (iauth_parse): Call it. + +2012-01-19 Michael Poole + + * ircd/s_auth.c (start_auth): Call start_dns_query() and + start_auth_query() after start_iauth_query() rather than + before. + +2011-08-17 Kevin L. Mitchell + + * include/client.h: Fix minor issue in IsLocOp() test + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel to 14 + +2011-05-15 Michael Poole + + * ircd/s_auth.c (iauth_cmd_done_account): Do not copy the + account's creation timestamp into the account name. + +2010-07-05 Kevin L. Mitchell + + * include/patchlevel.h (PATCHLEVEL): bump patchlevel from -rc2 to + actual 13 + + * ircd/ircd_features.c: bump MAXBANS from 45 to 50, and MAXSILES + from 15 to 25 + +2010-03-28 Michael Poole + + * ircd/gline.c: Replace CurrentTime with TStime(), and remove the + uses of TSoffset, so that all G-line-related times are assumed to + be in network time. + + * ircd/m_gline.c: Likewise. + +2010-03-08 Michael Poole + + * ircd/m_server.c (enum lh_type): New type. + (check_loop_and_lh): Use the enum instead of magic integers. + Make the error message a little clearer when neither "hub" nor + "maxhops" is specified for a server. Clean up the control flow + when we decide to reject the link. + +2010-03-08 Michael Poole + + * ircd/test/ircd_match_t.c (_SC_PAGE_SIZE): Default to + _SC_PAGESIZE if that is defined (as it is on some Unixes). + +2010-03-04 Kevin L. Mitchell + + * ircd/s_bsd.c: use feature_int() to get the integer value of the + feature...and don't try to set the TOS to its index! + +2010-02-02 Michael Poole + + * include/patchlevel.h (PATCHLEVEL): Bump to (u2.10.12.)13-rc2. + +2010-01-13 Michael Poole + + * ircd/m_burst.c (ms_burst): Do not clear keys or limit here -- + MODE_PARSE_WIPEOUT gets modebuf_flush() to do that for us. + +2010-01-06 Michael Poole + + * Makefile.in: Remove doc/Makefile from the build. + + * configure.in: Do not generate doc/Makefile. + + * configure: Regenerate. + + * doc/Makefile.in: Delete. + + * doc/irc.1: Delete. + + * doc/ircd.8: Delete. + + * libs: Delete. + +2010-01-06 Michael Poole + + * ircd/m_topic.c (ms_topic): When no topic timestamp is passed, + use the current time instead of the channel creation time. + +2010-01-06 Michael Poole + + * ircd/m_silence.c (m_silence): Only show the silence list for the + requesting client and for channel services, to help keep other + clients' servers hidden. + +2010-01-06 Michael Poole + + * ircd/gline.c (gline_add): If a forced G-line has already + expired, create it in a deactivated state. + +2010-01-06 Michael Poole + + * ircd/m_burst.c (ms_burst): Gracefully handle the case where a + server sends us a too-large oplevel. Forward oplevels whenever + they are in use, not just when the channel is +A. + +2010-01-04 Kevin L. Mitchell + + * ircd/m_xquery.c (ms_xquery): Resolving my patches with + Entrope's--log extension queries sent to us + + * ircd/m_xreply.c (ms_xreply): Resolving my patches with + Entrope's--swap order of findNUser() and FindNServer() + + * ircd/Makefile.in (IRCD_SRC): Resolving my patches with + Entrope's--swap order of m_xquery.c and m_xreply.c to maintain + alphabetic ordering + +2010-01-03 Kevin L. Mitchell + + * ircd/m_xreply.c (ms_xreply): swap order of numeric resolution so + we can deal with XR directed to users + + * configure: auto-rebuilt with Autoconf 2.63 (was 2.59) + + * ircd/m_xquery.c: need ircd_reply.h; fix a couple of + capitalization errors; log XQUERY directed to "me" + + * ircd/m_xreply.c: need ircd_reply.h and numnicks.h (how'd I miss + the latter??); fix a couple of capitalization errors + + * ircd/Makefile.in (IRCD_SRC): it'd be nice if we actually tried + to compile the two new commands... + + * ircd/s_auth.c: "serv" is passed to find_match_server(), which + does a collapse on the pattern, so it can't be const + +2010-01-03 Michael Poole + + * ircd/engine_devpoll.c: Make some variables that were local to + engine_loop() file-scoped so engine_delete() can see them. + (engine_delete): Discard unprocessed events for the deleted + socket. + (engine_loop): Update to use the new variable names. Change a + frequent debug statement to DEBUG_ENGINE. Fix the type of the + codesize variable. + + * ircd/engine_epoll.c: Same as ircd/engine_devpoll.c, but the + debug statement and codesize variable were already fixed. + + * ircd/engine_kqueue.c: Same as ircd/engine_devpoll.c, but also + fix a typo in an engine_signal() assertion, and get rid of dead + variables in engine_delete(). + +2010-01-03 Michael Poole + + * ircd/s_bsd.c (client_sock_callback): Invalidate cli_fd() when we + receive an EBADF error. + +2010-01-03 Michael Poole + + * ircd/engine_select.c (engine_loop): Remove a bogus assert() that + the structure's FD is correct after the event-handling callback + returns. Also fix a warning about the type of the last parameter + passed to getsockopt(). + +2010-01-03 Michael Poole + + * ircd/m_names.c (m_names): Terminate the buffer used for listing + clients who are not in any channel. + +2010-01-03 Michael Poole + + * ircd/channel.c (find_delayed_joins): Move earlier in the file. + (modebuf_flush_int): Move the checks for changing between +D and + +d to here... + (modebuf_flush): ... from here. + +2010-01-03 Michael Poole + + * ircd/m_server.c (check_loop_and_lh): Never return 1 when we kill + another server. Update the squit message text for maxhops and hub + violations. + +2010-01-03 Michael Poole + + * ircd/Makefile.in (IRCD_SRC): Add m_xquery.c and m_xreply.c to + the build. + + * ircd/m_xquery.c: Add missing include. + (mo_xquery): Fix spelling of struct Client. + (ms_xquery): Likewise. + + * ircd/m_xreply.c: Add missing includes. + (ms_xreply): Fix spelling of struct Client and findNUser(). + +2010-01-01 Kevin L. Mitchell + + * doc/readme.xquery: documentation for design and use of the + extension query mechanism + + * doc/readme.iauth: document X iauth message and X and x server + messages + + * include/msg.h: declare XQUERY/XQ and XREPLY/XR commands/tokens + + * include/handlers.h: declare mo_xquery(), ms_xquery(), and + ms_xreply() message handlers + + * include/s_auth.h: declare auth_send_xreply() to forward replies + to extension queries to the iauth instance + + * ircd/m_xquery.c: process extension queries + + * ircd/m_xreply.c: process replies to extension queries + + * ircd/parse.c: add XQUERY and XREPLY commands to the list + + * ircd/s_auth.c: add support for extension queries to iauth + protocol + +2010-01-01 Michael Poole + + * ircd/s_auth.c (iauth_do_spawn): Add debug output to diagnose + which system call might be failing. + (auth_spawn): Avoid reading past the end of iauth->i_argv[]. When + discarding an existing IAuth instance, use auth_close_unused() to + close the sockets and avoid leaking memory. + +2010-01-01 Michael Poole + + * ircd/channel.c (mode_process_bans): Bypass total ban count and + length checks for OPMODEs. + +2010-01-01 Michael Poole + + * ircd/ircd_features.c (feature_report): If sd->sd_funcdata is + non-zero, report even unchanged features (using prefix 'f'). + + * ircd/s_stats.c (statsinfo): Make "/stats f" case-sensitive, and + use the upper case variant to report all features. + +2009-07-30 Michael Poole + + * ircd/s_user.c (register_user): Move the default-usermodes call + to set_user_mode() to before SetUser(), so that the former does + not increment the UserStats fields. Add back the explicit + adjustments to UserStats for invisible and opered clients. + +2009-07-05 Michael Poole + + * ircd/s_user.c (register_user): Use correct parc for + set_user_mode(). Do not increment UserStats fields here, because + set_user_mode() handles that. + +2009-07-05 Michael Poole + + * ircd/m_gline.c (ms_gline): Fix the sense of the test for + strtoul() when parsing G-line lifetimes -- zero indicates failure. + +2009-07-05 Michael Poole + + * ircd/channel.c (mode_parse_client): Ignore anything after a + colon when the mode is CHFL_VOICE or the mode is being removed. + +2009-07-04 Michael Poole + + * ircd/s_auth.c (find_conf_client): New function. + (preregister_user): Use it to avoid assigning a second conf class + on client connection. + (auth_ping_timeout): Send the "T" message only if we do not kill + the client (and thus send a "D" message). + (auth_find_classs_conf): Do not allow IAuth to select a disabled + class. Unlink new conf items from GlobalConfList. + (iauth_cmd_done_client): Handle failures from attach_conf(). + (iauth_parse): Behave decently when a client is killed by the + message handler. + + * tools/iauth-test (%handlers): Add entries to help test this. + +2009-07-04 Michael Poole + + * include/channel.h (RevealDelayedJoinIfNeeded): Declare. + + * ircd/channel.c (RevealDelayedJoinIfNeeded): Implement. + + * ircd/ircd_relay.c (relay_channel_message): Only reveal the user + if he passes the check_target_limit() test. + (relay_channel_notice): Likewise. + + * ircd/m_wallchops.c (m_wallchops): Likewise. + + * ircd/m_wallvoices.c (m_wallvoices): Likewise. + + * ircd/s_user.c (check_target_limit): Micro-optimize to only check + the user's channel list for invites if we are about to deny it. + +2009-03-25 Michael Poole + + * ircd/ircd.c (main): Unconditionally set +6 flag on self. + +2009-03-25 Michael Poole + + * ircd/s_auth.c (iauth_cmd_hostname): Properly assign the spoofed + hostname (yea, even as the "real" host) in the hurry state. + + * tools/iauth-test: Add reminder about perl's RTMIN signal and a + new handler to exercise the N command in the hurry state. + +2009-03-25 Michael Poole + + * ircd/channel.c (mode_parse): Add Doxygen comment. When bouncing + a mode from a desynced U-lined server, do not set the modes or + send the change as a HACK(4) message. + +2009-03-17 Michael Poole + + * ircd/send.c (sendcmdto_match_butone): Move match_it() to the end + of the if() to minimize the number of expensive function calls. + +2009-03-17 Michael Poole + + * patches/diffs/antispambot.diff: Forward port a patch by Dianora + to add rudimentary spam bot detection to ircu. + +2009-02-08 Michael Poole + + * include/client.h (ClearHub): New macro. + + * ircd/ircd.c (main): Set IPv6 flag on &me if appropriate. + + * ircd/ircd_features.c (feature_notify_hub): New function. + (features[]): Register it for FEAT_HUB. + + * ircd/ircd_parser.y (connectblock): Do not default maxlinks to + 65535 unless "hub" is specified. + (clientblock): Reset maxlinks on cleanup. + +2009-02-08 Michael Poole + + * ircd/channel.c (clean_channelname): Delete this function; it is + no longer used, and had the same length-off-by-one bug. + + * ircd/m_join.c (m_join): Use > instead of >= with CHANNELLEN. + + * tests/ircd.conf: Set CHANNELLEN to make it easier to test this. + + * tests/bug-2328334.cmd: New file for regression testing. + +2009-02-08 Michael Poole + + * include/numeric.h (ERR_INVALIDKEY): Define new numeric. + + * ircd/s_err.c (ERR_INVALIDKEY): Give it a text string. + + * ircd/channel.c (is_clean_key): Rename from clean_key(), and make + this function responsible for sending error messages to the client + when necessary. + (mode_parse_key): Update to match the new is_clean_key() behavior. + (mode_parse_upass): Likewise. + (mode_parse_apass): Likewise. + + * tests/channel-keys.cmd: New file for regression testing. + +2009-02-08 Michael Poole + + * include/gline.h (gline_forward_deactivation): Undeclare. + + * ircd/m_gline.c (mo_gline): Remove the special case to call + gline_forward_deactivation(). + + * ircd/gline.c (gline_add): Mention if the new G-line is already + deactivated. + (gline_forward_deactivation): Delete implementation. + + * tests/glines.cmd: Update the expected output to match. + +2009-01-12 Michael Poole + + * ircd/m_topic.c (do_settopic): Just before sending the topic out, + check to see if the user is join-delayed and should be shown. + + * ircd/m_wallchops.c (m_wallchops): Allow this command to expose + join-delayed users. + (ms_wallchops): Likewise. + + * ircd/m_wallvoices.c (m_wallvoices): Allow this command to expose + join-delayed users. + (ms_wallvoices): Likewise. + +2009-01-12 Michael Poole + + * ircd/channel.c (modebuf_mode_uint): Fix bouncing of limit changes. + +2009-01-12 Michael Poole + + * ircd/gline.c (count_users): Accept "flags" mask to limit count + to local users. + (gline_add): Pass the flags to count_users(). + +2009-01-12 Michael Poole + + * include/gline.h (gline_forward_deactivation): Declare. + + * ircd/gline.c (count_users): Use ipmask-based checks too. + (gline_add): Require flags to have exactly one of the GLINE_GLOBAL + and GLINE_LOCAL bits set. + (gline_forward_deactivation): Implement new function. + (gline_find): Only require the GLINE_LOCAL flag to be set in the + gline structure; infer GLINE_GLOBAL when it is cleared. (This + matches the value and usage of GLINE_MASK.) + + * ircd/m_gline.c (ms_gline): Default lastmod to the known lastmod + time for GLINE_LOCAL_{DE,}ACTIVATE. + (mo_gline): Check that expiration times parse as expected. Reject + "*" as a target for GLINE_LOCAL_{DE,}ACTIVATE. Require reason and + expiration time for new G-lines. Allow deactivation of an unknown + G-line without creating it ("so-and-so ... creating new G-line" is + a confusing message for a deactivation). + + * tests/glines.cmd: New test script for G-line parsing tests. + + * tests/ircd.conf: Enable CONFIG_OPERCMDS for glines.cmd. + + * tests/ircd-2.conf: Likewise. + + * tests/readme.txt: Add section on command syntax. + + * tests/test-driver.pl: Report line numbers more clearly. + Fix (somewhat kludgily) the brokenness of consecutive "expect" + lines, as demonstrated by the numeric 219 and 281 expects in + glines.cmd. + 2008-11-17 Michael Poole * ircd/m_kick.c (ms_kick): Properly handle crossing net rider and