1 2000-04-28 Kevin L. Mitchell <klmitch@mit.edu>
3 * ircd/s_serv.c (server_estab): SERVER should come from
4 acptr->serv->up, not &me
6 * ircd/m_lusers.c: accidentally left out sptr for a %C
8 * ircd/send.c: hack to support doing wallchops...
10 * ircd/m_whowas.c: convert to new send functions
12 * ircd/m_whois.c: convert to new send functions
14 * ircd/m_who.c: convert to new send functions
16 * ircd/m_wallops.c: convert to new send functions
18 * ircd/m_wallchops.c: convert to new send functions
20 * ircd/m_version.c: convert to new send functions
22 * ircd/m_userip.c: convert to new send functions
24 * ircd/m_userhost.c: convert to new send functions
26 * ircd/m_uping.c: convert to new send functions
28 * ircd/m_trace.c: convert to new send functions
30 * ircd/m_topic.c: convert to new send functions
32 * ircd/m_time.c: convert to new send functions
34 * ircd/m_squit.c: convert to new send functions
36 * ircd/m_silence.c: convert to new send functions
38 * ircd/m_settime.c: convert to new send functions
40 * ircd/m_restart.c: convert to new send functions
42 * ircd/m_rehash.c: convert to new send functions
44 * ircd/m_privmsg.c: convert to new send functions
46 * ircd/m_pong.c: convert to new send functions
48 * ircd/m_ping.c: convert to new send functions
50 * ircd/m_pass.c: convert to new send functions
52 * ircd/m_opmode.c: convert to new send functions
54 * ircd/m_oper.c: convert to new send functions
56 * ircd/m_notice.c: convert to new send functions
58 * ircd/m_nick.c: convert to new send functions
60 * ircd/m_names.c: convert to new send functions
62 * ircd/m_motd.c: convert to new send functions
64 * ircd/m_mode.c: convert to new send functions
66 * ircd/m_map.c: convert to new send functions
68 * ircd/m_lusers.c: convert to new send functions
70 * ircd/m_list.c: convert to new send functions
72 * ircd/m_links.c: convert to new send functions
74 * ircd/m_kill.c: convert to new send functions
76 * ircd/m_jupe.c: convert to new send functions
78 * ircd/m_invite.c: convert to new send functions
80 * ircd/m_info.c: convert to new send functions
82 * ircd/m_help.c: convert to new send functions
84 * ircd/m_gline.c: convert to new send functions
86 * ircd/m_error.c: convert to new send functions
88 * ircd/m_endburst.c: convert to new send functions
90 * ircd/m_die.c: convert to new send functions
92 * ircd/m_destruct.c: convert to new send functions
94 * ircd/m_defaults.c: convert to new send functions
96 * ircd/m_connect.c: convert to new send functions
98 2000-04-28 Perry Lorier <isomer@coders.net>
99 * RELEASE.NOTES: Describe a few more undocumented features.
100 * config/config-sh.in: change the default paths for logging
101 and the recommended number of channels.
102 * include/supported.h: Rearrange slightly, added CHANTYPE's
104 2000-04-27 Kevin L. Mitchell <klmitch@mit.edu>
106 * ircd/m_close.c: convert to send_reply
108 * ircd/m_clearmode.c: convert to send_reply, sendcmdto_serv_butone
110 * ircd/m_away.c: convert to send_reply and sendcmdto_serv_butone
112 * ircd/m_admin.c: convert to send_reply and hunt_server_cmd
114 * ircd/s_user.c (hunt_server_cmd): new hunt_server replacement
115 that takes cmd and tok arguments, etc. NOTE: THIS IMPLEMENTATION
116 HAS A MAJOR HACK!!! The whole hunt_server architecture should be
117 carefully rethought...
119 * ircd/s_stats.c (hunt_stats): use new hunt_server_cmd
121 * include/s_user.h: hunt_server_cmd -- replacement for hunt_server
123 * ircd/s_misc.c: *sigh* 2.10.10 doesn't support squitting by
124 numeric nick; therefore, we have to use the server name
126 * ircd/m_squit.c (ms_squit): allow to squit by server numeric nick
128 * ircd/send.c: fix minor bugs
130 * ircd/s_user.c (check_target_limit): mark dead code so I filter
133 * ircd/s_serv.c (exit_new_server): mark dead code so I filter it
136 * ircd/parse.c: mark dead code so I filter it when I grep
138 * ircd/map.c: mark dead code so I filter it when I grep
140 * ircd/ircd.c: mark dead code so I filter it when I grep
142 * ircd/ircd_relay.c: convert over to new sendcmdto_*, send_reply
145 * ircd/channel.c: mark dead code so I filter it when I grep
147 * ircd/s_stats.c: use send_reply instead of sendto_one w/rpl_str;
148 hope I'm not stepping on toes...
150 * ircd/s_conf.c: more sendto_opmask_butone / send_reply
151 conversions; use ircd_snprintf in a couple of cases to negate the
152 possibility of buffer overflow
154 2000-04-26 Kevin L. Mitchell <klmitch@mit.edu>
156 * ircd/channel.c: convert as much as possible to new send
159 * ircd/send.c (sendcmdto_common_channels): fix a subtle bug --
160 test member->user->from->fd, not from->fd
162 * ircd/gline.c (gline_add): go ahead and add badchans; we just
163 won't look for them in m_gline; this way, they always work...
165 * ircd/jupe.c: use ircd_vsnprintf conversion specifiers
167 * ircd/gline.c: since write_log now uses ircd_vsnprintf, use
168 ircd_vsnprintf conversion specifiers
170 * ircd/support.c (write_log): use ircd_vsnprintf for write_log, so
171 I have my conversion specifiers
173 * ircd/gline.c (do_gline): use send_reply for ERR_YOUREBANNEDCREEP
175 * ircd/send.c (sendcmdto_flag_butone): explicitly send WALLOPS to
178 * ircd/s_serv.c (exit_new_server): rewrite exit_new_server to be a
179 little less brain-dead
181 * ircd/s_misc.c: use sendcmdto_one, sendrawto_one, and send_reply
183 * ircd/s_debug.c: use send_reply with RPL_EXPLICIT for
186 * ircd/res.c (cres_mem): use send_reply with RPL_EXPLICIT for
189 * ircd/list.c (send_listinfo): use send_reply with RPL_EXPLICIT
192 * ircd/m_pong.c: use RPL_EXPLICIT for ERR_BADPING
194 * ircd/ircd.c: use RPL_EXPLICIT for ERR_BADPING
196 * ircd/s_user.c (register_user): use RPL_EXPLICIT for
199 * ircd/ircd_reply.c (send_reply): support RPL_EXPLICIT
201 * include/ircd_reply.h (RPL_EXPLICIT): somewhat of a hack to mark
202 a numeric as needing to use an explicit pattern, which will be the
203 first argument in the variable argument list
205 * ircd/s_user.c: use sendrawto_one instead of sendto_one to send
206 non-prefixed nospoof PING
208 * ircd/s_bsd.c: use sendrawto_one instead of sendto_one to send
209 non-prefixed SERVER login
211 * ircd/ircd.c (check_pings): fix last sendto_one calls (except for
212 a numeric usage further up)
214 * include/send.h: declare sendrawto_one
216 * ircd/send.c (sendrawto_one): new function to use ONLY for
217 non-prefixed commands, like PING to client, or PASS/SERVER on
220 2000-04-25 Kevin L. Mitchell <klmitch@mit.edu>
222 * ircd/ircd_snprintf.c (doprintf): implement %H for possible
223 future expansion (channel numerics?)
225 * include/ircd_snprintf.h: added documentation to # to explain use
226 with %C; added documentation for : to explain use with %C; added
227 documentation for %H for channels
229 * ircd/whocmds.c: use send_reply
231 * ircd/userload.c: use sendcmdto_one
233 * ircd/uping.c: use sendcmdto_one
235 * ircd/send.c: use new flags to %C format string; ':' prefixes
236 client name with a colon for local connects, '#' uses
237 nick!user@host form for local connects
239 * ircd/s_user.c: use send_reply, sendto_opmask_butone,
240 sendcmdto_one, sendcmdto_serv_butone, sendcmdto_flag_butone
242 * ircd/s_serv.c: use sendcmdto_one, sendto_opmask_butone
244 * ircd/s_bsd.c: use sendto_opmask_butone, send_reply,
247 * ircd/s_auth.c: use sendto_opmask_butone
249 * ircd/res.c: use sendcmdto_one
251 * ircd/ircd_snprintf.c (doprintf): minor bug fixes and some
254 2000-04-24 Kevin L. Mitchell <klmitch@mit.edu>
256 * ircd/support.c: dumpcore is no longer used, so get rid of it
258 * ircd/parse.c: use send_reply, sendcmdto_one
260 * ircd/map.c: use send_reply
262 * ircd/listener.c: use send_reply
264 * ircd/jupe.c: use sendto_opmask_butone, send_reply
266 * ircd/ircd_reply.c: use send_reply
268 * ircd/ircd.c: use sendto_opmask_butone
270 * ircd/gline.c: use sendto_opmask_butone, send_reply
272 * ircd/ircd_snprintf.c (doprintf): make it deal with incompletely
273 registered clients; make FLAG_ALT print nick!user@host; make
274 FLAG_COLON print :blah
276 * ircd/class.c (report_classes): use send_reply instead of
279 * ircd/hash.c (m_hash): replace sendto_one with sendcmdto_one
281 * ircd/IPcheck.c (ip_registry_connect_succeeded): replace
282 sendto_one with sendcmdto_one
284 2000-04-21 Kevin L. Mitchell <klmitch@mit.edu>
286 * ircd/send.c: clean up logic in sendcmdto_channel_butone; use
287 MyConnect() instead of IsServer() in sendcmdto_flag_butone; define
288 sendcmdto_match_butone
290 * include/send.h: declare sendcmdto_match_butone
292 2000-04-20 Kevin L. Mitchell <klmitch@mit.edu>
294 * ircd/jupe.c: update to use send_reply()
296 * ircd/gline.c: update to use send_reply()
298 * include/ircd_reply.h: declare send_reply
300 * ircd/ircd_reply.c (send_reply): send_error_to_client, but for
301 replies; uses ircd_snprintf
303 * ircd/send.c: added comments to redirect searchers to appropriate
304 sendcmdto_* function; moved new functions to end of file; added
305 explanatory comments; reordered arguments; defined new functions
308 * ircd/m_jupe.c: reorder arguments to sendcmdto_* functions
310 * ircd/m_gline.c: reorder arguments to sendcmdto_* functions
312 * ircd/jupe.c: reorder arguments to sendcmdto_* functions
314 * ircd/gline.c: reorder arguments to sendcmdto_* functions
316 * include/send.h: reorder arguments, add explanatory comments,
317 declare new functions sendcmdto_flag_butone, sendto_opmask_butone,
318 and vsendto_opmask_butone
320 2000-04-19 Kevin L. Mitchell <klmitch@mit.edu>
322 * ircd/send.c: define sendcmdto_channel_butone, wrote a simplified
323 vsendto_op_mask that uses '*' instead of the receiving client
326 * include/send.h: declare sendcmdto_channel_butone; takes a skip
327 argument that allows you to skip (or not to skip) deaf users,
328 users behind bursting servers, and non channel operators
330 2000-04-17 Kevin L. Mitchell <klmitch@mit.edu>
332 * ircd/send.c: new sendcmdto_channel_butserv -- note that old
333 sendto_channel_butserv has a subtle bug; also wrote
334 sendcmdto_common_channels.
336 * include/send.h: declare new sendcmdto_* functions
338 * ircd/jupe.c: support local deactivations of jupes
340 * ircd/gline.c: support local deactivations of glines
342 * include/jupe.h: JUPE_LDEACT allows jupes to be locally
343 deactivated; if they aren't locally deactivated, then it slaves to
344 the net-wide activation status; JupeIsRemActive() tests only
345 whether the jupe is active everywhere else
347 * include/gline.h: GLINE_LDEACT allows glines to be locally
348 deactivated; if they aren't locally deactivated, then it slaves to
349 the net-wide activation status; GlineIsRemActive() tests only
350 whether the gline is active everywhere else
352 * ircd/gline.c: detect overlapping G-lines; if an existing, wider
353 gline expires after the new one will, we drop the new one,
354 otherwise we add the G-line after that one (so the wide one will
355 apply first); if the new one contains an existing G-line and if it
356 will expire after the existing one, we drop the existing one to
359 * ircd/m_gline.c (mo_gline): opers could issue remote local
360 glines when CONFIG_OPERCMDS was off; fixed
362 2000-04-16 Kevin L. Mitchell <klmitch@mit.edu>
364 * ircd/m_jupe.c (mo_jupe): allow target argument to be dropped if
367 * ircd/gline.c: add flags argument to gline_activate and
368 gline_deactivate for future expansion
370 * ircd/m_gline.c: pass flags to gline_activate and
373 * include/gline.h: add flags argument to gline_activate and
376 * ircd/jupe.c: add flags argument to jupe_activate and
377 jupe_deactivate for future expansion
379 * include/jupe.h: add flags argument to jupe_activate and
382 * ircd/m_jupe.c: pass a flags argument to jupe_add instead of
383 local, active; pass flags to jupe_activate and jupe_deactivate
385 * include/gline.h: remove dead code
387 * ircd/gline.c: make gline expire times relative to CurrentTime,
388 since that should be monotonically increasing, instead of
389 TStime(), which can be set backwards, and which can therefore
390 cause an expire time to increase; make local glines be removed
391 instead of just deactivated; don't let gline_find() look for
392 user@host glines if the mask being looked up is a channel mask
394 * ircd/send.c (vsendcmdto_one): forgot to account for the case
395 where origin is a server and destination is a user
397 * ircd/jupe.c: make jupe expire times relative to CurrentTime,
398 since that should be monotonically increasing, instead of
399 TStime(), which can be set backwards, and which can therefore
400 cause an expire time to increase; make local jupes be removed
401 instead of just deactivated
403 * ircd/ircd_snprintf.c: d'oh, thanks for catching that; short for
404 limit is fine. any other warnings I should know about?
406 2000-04-15 Thomas Helvey <tomh@inxpress.net>
408 * ircd/*.c: const correctness and type safety cleanups to
409 get code to compile with C++ compiler. Still has
410 signed/unsigned comparison warnings.
412 2000-04-15 Greg Sikorski <gte@atomicrevs.demon.co.uk>
414 * ircd/userload.c: change <sys/time.h> include to <time.h> for
417 2000-04-14 Kevin L. Mitchell <klmitch@mit.edu>
419 * ircd/m_gline.c (mo_gline): d'oh, target isn't a numeric; use %C
422 * ircd/s_user.c: move gline_lookup function call into
423 register_user, where it'll have a username to lookup!
425 * ircd/m_gline.c: modify to utilize new sendcmdto_* series of
426 functions; also stuff send_error_to_client into return clauses
428 * ircd/m_jupe.c: modify to utilize new sendcmdto_* series of
429 functions; also use send_error_to_client where that makes sense
431 * ircd/jupe.c: modify to utilize new sendcmdto_* series of
432 functions; also use send_error_to_client where that makes sense
434 * ircd/gline.c: modify to utilize new sendcmdto_* series of
435 functions; also fix gline_lookup() to deal properly with remote
436 clients--boy, do struct Client and struct User need to be cleaned
439 * ircd/ircd_snprintf.c (doprintf): a dest of &me is a server,
442 * ircd/send.c: wrote sendcmdto_one(), vsendcmdto_one(), and
443 sendcmdto_serv_butone(), all utilizing the %v conversion of
446 * include/send.h: define IRC_BUFSIZE, max size of a message;
447 declare sendcmdto_one(), vsendcmdto_one(), and
448 sendcmdto_serv_butone()
450 * include/msg.h: define all the CMD_* constants needed to utilize
451 the new sendcmdto_* series of functions
453 * ircd/Makefile.in (SRC): list ircd_snprintf.c; run make depend
455 * ircd/gline.c: remove old, dead code.
457 * ircd/m_gline.c (mo_gline): disallow setting of global G-lines
458 unless CONFIG_OPERCMDS is enabled; disallow listing of all G-lines
459 (don't advertise proxies); remove dead code
461 * ircd/parse.c: oper handler for JUPE only lists jupes unless
462 CONFIG_OPERCMDS is enabled
464 * ircd/m_jupe.c (mo_jupe): don't compile mo_jupe() if
465 CONFIG_OPERCMDS is not enabled; we'll disable it in parse.c
467 * ircd/m_opmode.c (mo_opmode): if CONFIG_OPERCMDS is not enabled,
468 always return ERR_DISABLED
470 * ircd/m_clearmode.c (mo_clearmode): if CONFIG_OPERCMDS is not
471 enabled, always return ERR_DISABLED
473 * ircd/s_err.c: add error message to indicate disabled commands
475 * include/numeric.h (ERR_DISABLED): to indicate disabled commands
477 * doc/Configure.help: add documentation for CONFIG_OPERCMDS
479 * config/config-sh.in: add CONFIG_OPERCMDS, default both it and
480 CONFIG_NEW_MODE to 'y' for now
482 * ircd/gline.c (gline_list): fix a minor formatting bogon
484 * BUGS: since I fixed that bug, might as well mark it fixed.
486 * ircd/m_join.c: look up badchans with GLINE_EXACT
488 * ircd/m_gline.c: fix parc count problems; look up existing
489 G-lines with GLINE_EXACT; only set new lastmod when
490 activating/deactivating existing glines if old lastmod was not 0
492 * ircd/gline.c: forgot to copy the gline reason over; don't
493 propagate a gline with 0 lastmod if origin is user; add
494 GLINE_EXACT to force exact matching of gline mask
496 * ircd/ircd_snprintf.c (doprintf): forgot to deal with the zero
499 * ircd/s_conf.c (find_kill): gline_find() takes a char *userhost,
500 but gline_lookup() actually takes a client--d'oh.
502 2000-04-13 Thomas Helvey <tomh@inxpress.net>
503 * ircd/IPcheck.c: Back port BLMet's bugfix from 2.10.10
505 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
507 * ircd/whocmds.c: Don't make idle flag default in /who, to prevent:
509 "Gte3 H*iwg Gte@212.49.240.217 :1 :0 I am the one that was."
512 * ircd/whocmds.c: Change idle time calc from socket idle to user
515 2000-04-13 Kevin L. Mitchell <klmitch@mit.edu>
517 * config/aclocal.m4 (unet_CHECK_TYPE_SIZES): check size of void *,
518 too, for ircd_snprintf.c
520 * include/ircd_snprintf.h: documentation for ircd_(v)snprintf, in
521 comments; mostly descended from the Linux manpage for printf, but
522 also documenting the extensions.
524 * ircd/ircd_snprintf.c: NULL dest is equivalent to going to a
525 client; make 'q' be the same as 'L'; remove __inline__; only
526 define EXTENSION if HAVE_LONG_LONG is defined
528 * include/handlers.h: declare m_gline()
530 * ircd/parse.c: gline can be called by users, but it only lists
533 * ircd/s_user.c (set_nick_name): resend gline if a remote server
534 introduces a glined client
536 * ircd/s_serv.c (server_estab): burst glines, too
538 * ircd/gline.c: fix up all the expire times to be offsets;
539 simplify gline_resend()
541 * ircd/m_gline.c: begin coding replacements for ms_gline(),
542 mo_gline(), and m_gline()
544 * ircd/gline.c (gline_add): allow *@#channel to work correctly;
545 also, prohibit local BADCHANs if LOCAL_BADCHAN not defined
547 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
549 * tools/Bouncer/*: Add comments/documentation/tags.
550 * tools/Bouncer/*: Add debug defines, make task fork().
552 2000-04-12 Thomas Helvey <tomh@inxpress.net>
553 * ircd/s_err.c: Cleanup s_err.c make one table so we
554 don't have to do anything tricky to get an error string.
556 2000-04-12 Greg Sikorski <gte@atomicrevs.demon.co.uk>
557 * Add port bouncer for http (x/w)
559 2000-04-12 Kevin L. Mitchell <klmitch@mit.edu>
561 * ircd/s_conf.c (find_kill): replaced call to find_gline() with a
562 call to gline_find(); also used GlineReason() instead of direct
563 reference to structure member
565 * ircd/m_join.c (m_join): replace bad_channel() calls with calls
566 to gline_find(name, GLINE_BADCHAN), and also check to see if gline
569 * ircd/channel.c: nothing seems to be called anywhere...
571 * ircd/s_err.c: update a couple of replies to dovetail with new
574 * ircd/gline.c: begin complete re-implementation of gline.c along
575 the lines of the final design of jupe.c
577 * include/gline.h: begin complete re-implementation of gline.c
578 along the lines of the final design of jupe.c
580 * ircd/channel.c (mode_process_clients): fix "Deop of +k user on
583 * ircd/ircd_snprintf.c: my new snprintf()-like functions
585 * include/ircd_snprintf.h: my new snprintf()-like functions
587 2000-04-11 Thomas Helvey <tomh@inxpress.net>
588 * ircd/IPcheck.c: removed old dead code
589 * ircd/s_user.c (send_user_info): removed non-standard
590 user not found message for userhost/userip
592 2000-04-11 Greg Sikorski <gte@atomicrevs.demon.co.uk>
594 * ircd/s_err.c: Added missing quotes to ERR_DONTCHEAT numeric.
595 * doc/p10.html: Work on chapter 4.
597 2000-04-10 Kevin L. Mitchell <klmitch@mit.edu>
599 * ircd/channel.c (mode_parse_client): fix coredump on /mode
600 #foobar +o nosuchnick
602 2000-04-10 Perry Lorier <Isomer@coders.net>
605 2000-04-09 Thomas Helvey <tomh@inxpress.net>
606 * include/IPcheck.h: fix prototype
607 * ircd/s_user.c: fix usage of IPcheck_remote_connect
608 * ircd/IPcheck.c: removed unused args
610 2000-04-09 Thomas Helvey <tomh@inxpress.net>
611 * include/IPcheck.h: add proto for IPcheck_expire
613 * ircd/IPcheck.c: Rewrote
615 * ircd/ircd.c: Add IPcheck_expire to main message loop
617 * ircd/s_user.c: Redo target hashing, refactor target code
619 * include/numeric.h: Cleaned up numerics, added which ones are
620 in use by other networks and what they are in use for.
622 * ircd/channel.c: cleaned can_join(), allow anyone through anything
623 if /invited, simplified the function. Opers overusing OPEROVERRIDE
624 will get a message explaining to them not to cheat.
626 * ircd/m_join.c: cleaned up the various join functions, should be
627 a lot more efficient. Still needs work. Now assumes that s<->s
628 won't send it a JOIN 0. Service coders - note this and tread with
631 * ircd/m_stats.c: added Gte-'s stats doc patch.
633 * ircd/m_version.c: /version now returns the 005 numeric as well.
634 as requested by Liandrin.
637 2000-04-07 Kevin L. Mitchell <klmitch@mit.edu>
639 * ircd/m_clearmode.c: add include for support.h for write_log()
641 * configure: move ircd/crypt/* to tools/*
643 2000-04-06 Thomas Helvey <tomh@inxpress.net>
644 * ircd/s_auth.c: Shorten auth connect timeout to 60 seconds
645 set client host to server alias if connection from localhost
647 2000-04-06 Perry Lorier <isomer@coders.net>
648 * ircd/ircd.c: Fix core during pinging (oops)
650 2000-04-06 Perry Lorier <isomer@coders.net>
651 * ircd/send.c: fixed wrong ident being sent to channels bug.
652 * include/numerics.h: Updated some of the numerics from other
653 networks. Flagged some as 'unused' by undernet.
655 2000-03-30 Perry Lorier <isomer@coders.net>
656 * ircd/ircd.c: Lets see if this helps the ping problem at all.
657 * ircd/whocmds.c, /doc/readme.who: Added %l specifier to get idle
658 time for local clients. (as requested), extended who now returns all
659 the flags (@+!) so you can tell the complete state of a client.
661 2000-03-30 Thomas Helvey <tomh@inxpress.net>
662 * m_rping.c m_rpong.c: add Gte's rping/rpong fixes
664 2000-03-30 Perry Lorier <isomer@coders.net>
665 * ircd/parse.c: oops, missed opers.
667 2000-03-30 Perry Lorier <isomer@coders.net>
668 * ircd/parse.c: fixed mystifying ping bug thats been plaguing us
669 for so long. Remember: m_ping MUST be in the parse array. :)
671 2000-03-30 Perry Lorier <isomer@coders.net>
672 * ircd/ircd.c: test in check_pings was wrong. I move that we
673 disallow cvs commit after 10pm localtime....
675 2000-03-30 Perry Lorier <isomer@coders.net>
676 * ircd/m_pong.c: Fix it for servers too.
678 2000-03-30 Perry Lorier <isomer@coders.net>
679 * ircd/m_pong.c: Fix ping timeout bugs
681 2000-03-30 Perry Lorier <isomer@coders.net>
682 * ircd/channel.c: Bans had CurrentTime in their when field instead
685 2000-03-31 Thomas Helvey <tomh@ixpress.net>
686 * ircd/numnicks.c (SetXYYCapacity): fix for extended
689 2000-03-30 Perry Lorier <isomer@coders.net>
690 * ircd/m_nick.c: send kills both ways so when we add nick change
691 on collision we don't desync the network.
693 * ircd/map.c: Fixup the map a bit more.
695 2000-03-31 Kevin L. Mitchell <klmitch@mit.edu>
697 * ircd/m_clearmode.c (do_clearmode): Log the CLEARMODE to OPATH
699 * ircd/m_opmode.c: Log the mode changes to OPATH
701 * ircd/channel.c (modebuf_flush_int): Log the mode changes to
704 * include/channel.h (MODEBUF_DEST_LOG): Log the mode changes to
707 * doc/Configure.help: help text for CONFIG_LOG_OPMODE / OPATH
709 * config/config-sh.in: added OPATH for opmode log file
711 * ircd/m_clearmode.c (do_clearmode): updated uses of
712 modebuf_mode_string() for the new usage
714 * ircd/channel.c: added flag MODE_FREE and an int argument to
715 modebuf_mode_string() to indicate that the string must be free'd;
716 updated calls to modebuf_mode_string() for the new usage; called
717 collapse(pretty_mask()) on the ban string and use allocated memory
718 for it; added ban list length accounting; fixed a number of small
719 bugs in ban processing
721 * include/channel.h: added flag MODE_FREE and an int argument to
722 modebuf_mode_string() to indicate that the string must be free'd
724 * ircd/m_clearmode.c (do_clearmode): made sure clearmode removed
725 keys and limits that are set
727 2000-03-30 Perry Lorier <isomer@coders.net>
728 * ircd/ircd.c: rewrote check_pings() for maintainability
729 and speed. Also changed quit msg's so they don't have
730 redundant nick[host] info in them.
732 * ircd/send.c: Changed write errors to report what error
733 occured (if possible).
735 * ircd/gline.c: added gline comment to the quit.
737 * ircd/m_server.c: Added suggestions to server quits mentioning
738 what went wrong so the admin can fix it earlier instead of asking
741 * ircd/map.c: Changed m_map() to hide numerics, show a * beside
742 servers that aren't fully burst yet. And show '(--s)' for servers
745 * doc/example.conf: Fixed wrapped U:
747 2000-03-30 Kevin L. Mitchell <klmitch@mit.edu>
749 * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
750 mode_parse() (version selectable at compile time)
752 * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
754 * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
756 * config/config-sh.in: add new config option to enable new m_mode
759 * doc/Configure.help: add documentation for new config option
762 * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
763 MODE -v : Not enough parameters
765 * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
766 +k and +l even if they weren't set...
768 * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
770 * ircd/channel.c: make mode_process_clients() clear the DEOPPED
771 flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
772 for; test the 0-th member, not the i-th member, of the client
775 * ircd/m_clearmode.c (do_clearmode): use the new
776 mode_invite_clear() function
778 * ircd/channel.c: cleared up all the compile-time warnings and
781 * include/channel.h: added declarations for mode_ban_invalidate()
782 and mode_invite_clear()
784 * ircd/channel.c: finished mode_parse(), then broke it up into a
785 dozen or so helper functions to make the code easier to read
787 2000-03-29 Thomas Helvey <tomh@inxpress.net>
788 * ircd/ircd.c: refactor server initialization a bit, use
789 getopt for parsing command line, refactor init_sys, main,
792 * ircd/s_bsd.c: add functions for initialization to clean
793 up logic a bit and remove duplicated code.
795 * include/ircd.h: add struct for server process related
798 2000-03-29 Kevin L. Mitchell <klmitch@mit.edu>
800 * ircd/channel.c: initial definition of mode_parse(); flags to
801 prevent doing the same thing multiple times; helper method
802 send_notoper() to send a "Not oper"/"Not on channel" notice
804 * include/channel.h: declare mode_parse() and helper flags
806 * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
807 sending to match the current action of set_mode() closely enough
808 that hopefully there won't be major conflicts
810 * ircd/channel.c (modebuf_flush_int): consolidated the mode string
811 building logic, reversed the order of the arguments to mode
812 commands to have '-' preceed '+'
814 2000-03-29 Thomas Helvey <tomh@inxpress.net>
815 * ircd/s_bsd.c (add_connection): don't disable socket options
816 let OS tune itself and allow important performance tweaks to
819 2000-03-28 Kevin L. Mitchell <klmitch@mit.edu>
821 * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
822 confused by set_mode, which is doing some really weird logic;
823 guess what I'm going to rewrite next? ;)
825 2000-03-28 Kevin L. Mitchell <klmitch@emc.com>
827 * include/channel.h: added MODE_SAVE for the bounds checking stuff
830 * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
831 make it do bounds checking on the buffer; all modes are sent only
832 if the all parameter is 1; modebuf_flush is the exported wrapper
834 * include/channel.h: add BOUNCE, renumber flags to get a little
837 * ircd/channel.c (modebuf_flush): don't overload HACK2, add
838 BOUNCE; send DESYNCH message
840 2000-03-27 Kevin L. Mitchell <klmitch@emc.com>
842 * ircd/m_clearmode.c (do_clearmode): only mark the modes the
843 channel actually has in effect for deletion
845 * ircd/channel.c: added explanatory comments to all added
846 functions; made flushing take place at the correct place even if
847 the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
848 to bash some stupid bugs; made modebuf_flush() return if ModeBuf
849 is empty, fixed the apparent source, removed some bogus string
850 termination code, properly terminate the mode strings, add support
851 for HACK2 and HACK3, made limit strings not be sent if the limit
852 is being removed, changed where '+' and '-' come from in sent
853 strings, added support for DEOP flag, set up bouncing code for
856 * ircd/Makefile.in: ran make depend
858 * include/channel.h: added new defines for future functionality,
859 made modebuf_flush() return int so I can use tail recursion
861 * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
862 to make it all compile
864 * ircd/m_opmode.c: add msg.h to includes...
866 * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
868 * ircd/channel.c (modebuf_flush): realized I forgot to
869 nul-terminate addbuf/rembuf properly...
871 * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
873 * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
874 sendto_serv_butone--blah^2
876 * ircd/send.c (sendto_serv_butone): stupid comments confused me
878 * ircd/channel.c (modebuf_flush): if there are no mode changes to
879 propagate, we're done...
881 * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
882 not sendto_all_butone
884 * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
886 * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
888 * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
891 * ircd/parse.c: added messages for opmode and clearmode
893 * include/handlers.h: added declarations for mo_opmode(),
894 ms_opmode(), mo_clearmode(), and ms_clearmode()
896 * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
899 * include/channel.h (MODEBUF_DEST_OPMODE): Define the
900 MODEBUF_DEST_OPMODE flag
902 * ircd/channel.c (modebuf_flush): added new flag,
903 MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
904 to originate from source's server (or source itself, if
905 IsServer(source)); also causes a server-level MODE to be sent as
908 * include/channel.h: defined MODEBUF_DEST_SERVER,
911 * ircd/channel.c: Add another argument to build_string() to handle
912 numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
913 servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
916 2000-03-27 Perry Lorier <isomer@coders.net>
918 * ircd/s_bsd.c: fixed missing 'u' typo.
920 2000-03-26 Kevin L. Mitchell <klmitch@emc.com>
922 * ircd/channel.c: implement modebuf_init(), _mode(), _mode_uint(),
923 _mode_string(), _mode_client(), _flush(); also implemented a
924 simple build_string()
926 * include/channel.h: added definition of ModeBuf, modebuf_*
927 manipulation functions, and a couple of helper macros
929 2000-03-24 Thomas Helvey <tomh@inxpress.net>
930 * numicks.c: convert extended numerics to use original mask version
933 2000-03-23 Thomas Helvey <tomh@inxpress.net>
934 * Merge in changes from production
935 2000-03-22 Thomas Helvey <tomh@inxpress.net>
936 * numicks.c: Tweak to numnick generator to reduce possibility of duplicates.
937 * rfc1459.unet: Add Maniac's documentation for /names 0
938 * Fix misc. jupe bugs that somehow made it into the tree
939 * Escape /names 0 to mean /names --Maniac
940 * Don't core when server asks for info --Maniac
941 * Add Kev's jupe patch --Bleep
942 * Add Maniacs squit patch --Bleep
943 * Merge in u2_10_10_beta07 changes --Bleep
944 * Merge in u2_10_10_beta06 changes --Bleep
945 * Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
946 #-----------------------------------------------------------------------------
948 # ChangeLog for ircu2.10.11
950 # $Id: ChangeLog,v 1.110 2000-04-28 15:34:34 kev Exp $
952 # Insert new changes at beginning of the change list.