1 2000-04-26 Kevin L. Mitchell <klmitch@mit.edu>
3 * ircd/send.c (sendcmdto_flag_butone): explicitly send WALLOPS to
6 * ircd/s_serv.c (exit_new_server): rewrite exit_new_server to be a
9 * ircd/s_misc.c: use sendcmdto_one, sendrawto_one, and send_reply
11 * ircd/s_debug.c: use send_reply with RPL_EXPLICIT for
14 * ircd/res.c (cres_mem): use send_reply with RPL_EXPLICIT for
17 * ircd/list.c (send_listinfo): use send_reply with RPL_EXPLICIT
20 * ircd/m_pong.c: use RPL_EXPLICIT for ERR_BADPING
22 * ircd/ircd.c: use RPL_EXPLICIT for ERR_BADPING
24 * ircd/s_user.c (register_user): use RPL_EXPLICIT for
27 * ircd/ircd_reply.c (send_reply): support RPL_EXPLICIT
29 * include/ircd_reply.h (RPL_EXPLICIT): somewhat of a hack to mark
30 a numeric as needing to use an explicit pattern, which will be the
31 first argument in the variable argument list
33 * ircd/s_user.c: use sendrawto_one instead of sendto_one to send
34 non-prefixed nospoof PING
36 * ircd/s_bsd.c: use sendrawto_one instead of sendto_one to send
37 non-prefixed SERVER login
39 * ircd/ircd.c (check_pings): fix last sendto_one calls (except for
40 a numeric usage further up)
42 * include/send.h: declare sendrawto_one
44 * ircd/send.c (sendrawto_one): new function to use ONLY for
45 non-prefixed commands, like PING to client, or PASS/SERVER on
48 2000-04-25 Kevin L. Mitchell <klmitch@mit.edu>
50 * ircd/ircd_snprintf.c (doprintf): implement %H for possible
51 future expansion (channel numerics?)
53 * include/ircd_snprintf.h: added documentation to # to explain use
54 with %C; added documentation for : to explain use with %C; added
55 documentation for %H for channels
57 * ircd/whocmds.c: use send_reply
59 * ircd/userload.c: use sendcmdto_one
61 * ircd/uping.c: use sendcmdto_one
63 * ircd/send.c: use new flags to %C format string; ':' prefixes
64 client name with a colon for local connects, '#' uses
65 nick!user@host form for local connects
67 * ircd/s_user.c: use send_reply, sendto_opmask_butone,
68 sendcmdto_one, sendcmdto_serv_butone, sendcmdto_flag_butone
70 * ircd/s_serv.c: use sendcmdto_one, sendto_opmask_butone
72 * ircd/s_bsd.c: use sendto_opmask_butone, send_reply,
75 * ircd/s_auth.c: use sendto_opmask_butone
77 * ircd/res.c: use sendcmdto_one
79 * ircd/ircd_snprintf.c (doprintf): minor bug fixes and some
82 2000-04-24 Kevin L. Mitchell <klmitch@mit.edu>
84 * ircd/support.c: dumpcore is no longer used, so get rid of it
86 * ircd/parse.c: use send_reply, sendcmdto_one
88 * ircd/map.c: use send_reply
90 * ircd/listener.c: use send_reply
92 * ircd/jupe.c: use sendto_opmask_butone, send_reply
94 * ircd/ircd_reply.c: use send_reply
96 * ircd/ircd.c: use sendto_opmask_butone
98 * ircd/gline.c: use sendto_opmask_butone, send_reply
100 * ircd/ircd_snprintf.c (doprintf): make it deal with incompletely
101 registered clients; make FLAG_ALT print nick!user@host; make
102 FLAG_COLON print :blah
104 * ircd/class.c (report_classes): use send_reply instead of
107 * ircd/hash.c (m_hash): replace sendto_one with sendcmdto_one
109 * ircd/IPcheck.c (ip_registry_connect_succeeded): replace
110 sendto_one with sendcmdto_one
112 2000-04-21 Kevin L. Mitchell <klmitch@mit.edu>
114 * ircd/send.c: clean up logic in sendcmdto_channel_butone; use
115 MyConnect() instead of IsServer() in sendcmdto_flag_butone; define
116 sendcmdto_match_butone
118 * include/send.h: declare sendcmdto_match_butone
120 2000-04-20 Kevin L. Mitchell <klmitch@mit.edu>
122 * ircd/jupe.c: update to use send_reply()
124 * ircd/gline.c: update to use send_reply()
126 * include/ircd_reply.h: declare send_reply
128 * ircd/ircd_reply.c (send_reply): send_error_to_client, but for
129 replies; uses ircd_snprintf
131 * ircd/send.c: added comments to redirect searchers to appropriate
132 sendcmdto_* function; moved new functions to end of file; added
133 explanatory comments; reordered arguments; defined new functions
136 * ircd/m_jupe.c: reorder arguments to sendcmdto_* functions
138 * ircd/m_gline.c: reorder arguments to sendcmdto_* functions
140 * ircd/jupe.c: reorder arguments to sendcmdto_* functions
142 * ircd/gline.c: reorder arguments to sendcmdto_* functions
144 * include/send.h: reorder arguments, add explanatory comments,
145 declare new functions sendcmdto_flag_butone, sendto_opmask_butone,
146 and vsendto_opmask_butone
148 2000-04-19 Kevin L. Mitchell <klmitch@mit.edu>
150 * ircd/send.c: define sendcmdto_channel_butone, wrote a simplified
151 vsendto_op_mask that uses '*' instead of the receiving client
154 * include/send.h: declare sendcmdto_channel_butone; takes a skip
155 argument that allows you to skip (or not to skip) deaf users,
156 users behind bursting servers, and non channel operators
158 2000-04-17 Kevin L. Mitchell <klmitch@mit.edu>
160 * ircd/send.c: new sendcmdto_channel_butserv -- note that old
161 sendto_channel_butserv has a subtle bug; also wrote
162 sendcmdto_common_channels.
164 * include/send.h: declare new sendcmdto_* functions
166 * ircd/jupe.c: support local deactivations of jupes
168 * ircd/gline.c: support local deactivations of glines
170 * include/jupe.h: JUPE_LDEACT allows jupes to be locally
171 deactivated; if they aren't locally deactivated, then it slaves to
172 the net-wide activation status; JupeIsRemActive() tests only
173 whether the jupe is active everywhere else
175 * include/gline.h: GLINE_LDEACT allows glines to be locally
176 deactivated; if they aren't locally deactivated, then it slaves to
177 the net-wide activation status; GlineIsRemActive() tests only
178 whether the gline is active everywhere else
180 * ircd/gline.c: detect overlapping G-lines; if an existing, wider
181 gline expires after the new one will, we drop the new one,
182 otherwise we add the G-line after that one (so the wide one will
183 apply first); if the new one contains an existing G-line and if it
184 will expire after the existing one, we drop the existing one to
187 * ircd/m_gline.c (mo_gline): opers could issue remote local
188 glines when CONFIG_OPERCMDS was off; fixed
190 2000-04-16 Kevin L. Mitchell <klmitch@mit.edu>
192 * ircd/m_jupe.c (mo_jupe): allow target argument to be dropped if
195 * ircd/gline.c: add flags argument to gline_activate and
196 gline_deactivate for future expansion
198 * ircd/m_gline.c: pass flags to gline_activate and
201 * include/gline.h: add flags argument to gline_activate and
204 * ircd/jupe.c: add flags argument to jupe_activate and
205 jupe_deactivate for future expansion
207 * include/jupe.h: add flags argument to jupe_activate and
210 * ircd/m_jupe.c: pass a flags argument to jupe_add instead of
211 local, active; pass flags to jupe_activate and jupe_deactivate
213 * include/gline.h: remove dead code
215 * ircd/gline.c: make gline expire times relative to CurrentTime,
216 since that should be monotonically increasing, instead of
217 TStime(), which can be set backwards, and which can therefore
218 cause an expire time to increase; make local glines be removed
219 instead of just deactivated; don't let gline_find() look for
220 user@host glines if the mask being looked up is a channel mask
222 * ircd/send.c (vsendcmdto_one): forgot to account for the case
223 where origin is a server and destination is a user
225 * ircd/jupe.c: make jupe expire times relative to CurrentTime,
226 since that should be monotonically increasing, instead of
227 TStime(), which can be set backwards, and which can therefore
228 cause an expire time to increase; make local jupes be removed
229 instead of just deactivated
231 * ircd/ircd_snprintf.c: d'oh, thanks for catching that; short for
232 limit is fine. any other warnings I should know about?
234 2000-04-15 Thomas Helvey <tomh@inxpress.net>
236 * ircd/*.c: const correctness and type safety cleanups to
237 get code to compile with C++ compiler. Still has
238 signed/unsigned comparison warnings.
240 2000-04-15 Greg Sikorski <gte@atomicrevs.demon.co.uk>
242 * ircd/userload.c: change <sys/time.h> include to <time.h> for
245 2000-04-14 Kevin L. Mitchell <klmitch@mit.edu>
247 * ircd/m_gline.c (mo_gline): d'oh, target isn't a numeric; use %C
250 * ircd/s_user.c: move gline_lookup function call into
251 register_user, where it'll have a username to lookup!
253 * ircd/m_gline.c: modify to utilize new sendcmdto_* series of
254 functions; also stuff send_error_to_client into return clauses
256 * ircd/m_jupe.c: modify to utilize new sendcmdto_* series of
257 functions; also use send_error_to_client where that makes sense
259 * ircd/jupe.c: modify to utilize new sendcmdto_* series of
260 functions; also use send_error_to_client where that makes sense
262 * ircd/gline.c: modify to utilize new sendcmdto_* series of
263 functions; also fix gline_lookup() to deal properly with remote
264 clients--boy, do struct Client and struct User need to be cleaned
267 * ircd/ircd_snprintf.c (doprintf): a dest of &me is a server,
270 * ircd/send.c: wrote sendcmdto_one(), vsendcmdto_one(), and
271 sendcmdto_serv_butone(), all utilizing the %v conversion of
274 * include/send.h: define IRC_BUFSIZE, max size of a message;
275 declare sendcmdto_one(), vsendcmdto_one(), and
276 sendcmdto_serv_butone()
278 * include/msg.h: define all the CMD_* constants needed to utilize
279 the new sendcmdto_* series of functions
281 * ircd/Makefile.in (SRC): list ircd_snprintf.c; run make depend
283 * ircd/gline.c: remove old, dead code.
285 * ircd/m_gline.c (mo_gline): disallow setting of global G-lines
286 unless CONFIG_OPERCMDS is enabled; disallow listing of all G-lines
287 (don't advertise proxies); remove dead code
289 * ircd/parse.c: oper handler for JUPE only lists jupes unless
290 CONFIG_OPERCMDS is enabled
292 * ircd/m_jupe.c (mo_jupe): don't compile mo_jupe() if
293 CONFIG_OPERCMDS is not enabled; we'll disable it in parse.c
295 * ircd/m_opmode.c (mo_opmode): if CONFIG_OPERCMDS is not enabled,
296 always return ERR_DISABLED
298 * ircd/m_clearmode.c (mo_clearmode): if CONFIG_OPERCMDS is not
299 enabled, always return ERR_DISABLED
301 * ircd/s_err.c: add error message to indicate disabled commands
303 * include/numeric.h (ERR_DISABLED): to indicate disabled commands
305 * doc/Configure.help: add documentation for CONFIG_OPERCMDS
307 * config/config-sh.in: add CONFIG_OPERCMDS, default both it and
308 CONFIG_NEW_MODE to 'y' for now
310 * ircd/gline.c (gline_list): fix a minor formatting bogon
312 * BUGS: since I fixed that bug, might as well mark it fixed.
314 * ircd/m_join.c: look up badchans with GLINE_EXACT
316 * ircd/m_gline.c: fix parc count problems; look up existing
317 G-lines with GLINE_EXACT; only set new lastmod when
318 activating/deactivating existing glines if old lastmod was not 0
320 * ircd/gline.c: forgot to copy the gline reason over; don't
321 propagate a gline with 0 lastmod if origin is user; add
322 GLINE_EXACT to force exact matching of gline mask
324 * ircd/ircd_snprintf.c (doprintf): forgot to deal with the zero
327 * ircd/s_conf.c (find_kill): gline_find() takes a char *userhost,
328 but gline_lookup() actually takes a client--d'oh.
330 2000-04-13 Thomas Helvey <tomh@inxpress.net>
331 * ircd/IPcheck.c: Back port BLMet's bugfix from 2.10.10
333 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
335 * ircd/whocmds.c: Don't make idle flag default in /who, to prevent:
337 "Gte3 H*iwg Gte@212.49.240.217 :1 :0 I am the one that was."
340 * ircd/whocmds.c: Change idle time calc from socket idle to user
343 2000-04-13 Kevin L. Mitchell <klmitch@mit.edu>
345 * config/aclocal.m4 (unet_CHECK_TYPE_SIZES): check size of void *,
346 too, for ircd_snprintf.c
348 * include/ircd_snprintf.h: documentation for ircd_(v)snprintf, in
349 comments; mostly descended from the Linux manpage for printf, but
350 also documenting the extensions.
352 * ircd/ircd_snprintf.c: NULL dest is equivalent to going to a
353 client; make 'q' be the same as 'L'; remove __inline__; only
354 define EXTENSION if HAVE_LONG_LONG is defined
356 * include/handlers.h: declare m_gline()
358 * ircd/parse.c: gline can be called by users, but it only lists
361 * ircd/s_user.c (set_nick_name): resend gline if a remote server
362 introduces a glined client
364 * ircd/s_serv.c (server_estab): burst glines, too
366 * ircd/gline.c: fix up all the expire times to be offsets;
367 simplify gline_resend()
369 * ircd/m_gline.c: begin coding replacements for ms_gline(),
370 mo_gline(), and m_gline()
372 * ircd/gline.c (gline_add): allow *@#channel to work correctly;
373 also, prohibit local BADCHANs if LOCAL_BADCHAN not defined
375 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
377 * tools/Bouncer/*: Add comments/documentation/tags.
378 * tools/Bouncer/*: Add debug defines, make task fork().
380 2000-04-12 Thomas Helvey <tomh@inxpress.net>
381 * ircd/s_err.c: Cleanup s_err.c make one table so we
382 don't have to do anything tricky to get an error string.
384 2000-04-12 Greg Sikorski <gte@atomicrevs.demon.co.uk>
385 * Add port bouncer for http (x/w)
387 2000-04-12 Kevin L. Mitchell <klmitch@mit.edu>
389 * ircd/s_conf.c (find_kill): replaced call to find_gline() with a
390 call to gline_find(); also used GlineReason() instead of direct
391 reference to structure member
393 * ircd/m_join.c (m_join): replace bad_channel() calls with calls
394 to gline_find(name, GLINE_BADCHAN), and also check to see if gline
397 * ircd/channel.c: nothing seems to be called anywhere...
399 * ircd/s_err.c: update a couple of replies to dovetail with new
402 * ircd/gline.c: begin complete re-implementation of gline.c along
403 the lines of the final design of jupe.c
405 * include/gline.h: begin complete re-implementation of gline.c
406 along the lines of the final design of jupe.c
408 * ircd/channel.c (mode_process_clients): fix "Deop of +k user on
411 * ircd/ircd_snprintf.c: my new snprintf()-like functions
413 * include/ircd_snprintf.h: my new snprintf()-like functions
415 2000-04-11 Thomas Helvey <tomh@inxpress.net>
416 * ircd/IPcheck.c: removed old dead code
417 * ircd/s_user.c (send_user_info): removed non-standard
418 user not found message for userhost/userip
420 2000-04-11 Greg Sikorski <gte@atomicrevs.demon.co.uk>
422 * ircd/s_err.c: Added missing quotes to ERR_DONTCHEAT numeric.
423 * doc/p10.html: Work on chapter 4.
425 2000-04-10 Kevin L. Mitchell <klmitch@mit.edu>
427 * ircd/channel.c (mode_parse_client): fix coredump on /mode
428 #foobar +o nosuchnick
430 2000-04-10 Perry Lorier <Isomer@coders.net>
433 2000-04-09 Thomas Helvey <tomh@inxpress.net>
434 * include/IPcheck.h: fix prototype
435 * ircd/s_user.c: fix usage of IPcheck_remote_connect
436 * ircd/IPcheck.c: removed unused args
438 2000-04-09 Thomas Helvey <tomh@inxpress.net>
439 * include/IPcheck.h: add proto for IPcheck_expire
441 * ircd/IPcheck.c: Rewrote
443 * ircd/ircd.c: Add IPcheck_expire to main message loop
445 * ircd/s_user.c: Redo target hashing, refactor target code
447 * include/numeric.h: Cleaned up numerics, added which ones are
448 in use by other networks and what they are in use for.
450 * ircd/channel.c: cleaned can_join(), allow anyone through anything
451 if /invited, simplified the function. Opers overusing OPEROVERRIDE
452 will get a message explaining to them not to cheat.
454 * ircd/m_join.c: cleaned up the various join functions, should be
455 a lot more efficient. Still needs work. Now assumes that s<->s
456 won't send it a JOIN 0. Service coders - note this and tread with
459 * ircd/m_stats.c: added Gte-'s stats doc patch.
461 * ircd/m_version.c: /version now returns the 005 numeric as well.
462 as requested by Liandrin.
465 2000-04-07 Kevin L. Mitchell <klmitch@mit.edu>
467 * ircd/m_clearmode.c: add include for support.h for write_log()
469 * configure: move ircd/crypt/* to tools/*
471 2000-04-06 Thomas Helvey <tomh@inxpress.net>
472 * ircd/s_auth.c: Shorten auth connect timeout to 60 seconds
473 set client host to server alias if connection from localhost
475 2000-04-06 Perry Lorier <isomer@coders.net>
476 * ircd/ircd.c: Fix core during pinging (oops)
478 2000-04-06 Perry Lorier <isomer@coders.net>
479 * ircd/send.c: fixed wrong ident being sent to channels bug.
480 * include/numerics.h: Updated some of the numerics from other
481 networks. Flagged some as 'unused' by undernet.
483 2000-03-30 Perry Lorier <isomer@coders.net>
484 * ircd/ircd.c: Lets see if this helps the ping problem at all.
485 * ircd/whocmds.c, /doc/readme.who: Added %l specifier to get idle
486 time for local clients. (as requested), extended who now returns all
487 the flags (@+!) so you can tell the complete state of a client.
489 2000-03-30 Thomas Helvey <tomh@inxpress.net>
490 * m_rping.c m_rpong.c: add Gte's rping/rpong fixes
492 2000-03-30 Perry Lorier <isomer@coders.net>
493 * ircd/parse.c: oops, missed opers.
495 2000-03-30 Perry Lorier <isomer@coders.net>
496 * ircd/parse.c: fixed mystifying ping bug thats been plaguing us
497 for so long. Remember: m_ping MUST be in the parse array. :)
499 2000-03-30 Perry Lorier <isomer@coders.net>
500 * ircd/ircd.c: test in check_pings was wrong. I move that we
501 disallow cvs commit after 10pm localtime....
503 2000-03-30 Perry Lorier <isomer@coders.net>
504 * ircd/m_pong.c: Fix it for servers too.
506 2000-03-30 Perry Lorier <isomer@coders.net>
507 * ircd/m_pong.c: Fix ping timeout bugs
509 2000-03-30 Perry Lorier <isomer@coders.net>
510 * ircd/channel.c: Bans had CurrentTime in their when field instead
513 2000-03-31 Thomas Helvey <tomh@ixpress.net>
514 * ircd/numnicks.c (SetXYYCapacity): fix for extended
517 2000-03-30 Perry Lorier <isomer@coders.net>
518 * ircd/m_nick.c: send kills both ways so when we add nick change
519 on collision we don't desync the network.
521 * ircd/map.c: Fixup the map a bit more.
523 2000-03-31 Kevin L. Mitchell <klmitch@mit.edu>
525 * ircd/m_clearmode.c (do_clearmode): Log the CLEARMODE to OPATH
527 * ircd/m_opmode.c: Log the mode changes to OPATH
529 * ircd/channel.c (modebuf_flush_int): Log the mode changes to
532 * include/channel.h (MODEBUF_DEST_LOG): Log the mode changes to
535 * doc/Configure.help: help text for CONFIG_LOG_OPMODE / OPATH
537 * config/config-sh.in: added OPATH for opmode log file
539 * ircd/m_clearmode.c (do_clearmode): updated uses of
540 modebuf_mode_string() for the new usage
542 * ircd/channel.c: added flag MODE_FREE and an int argument to
543 modebuf_mode_string() to indicate that the string must be free'd;
544 updated calls to modebuf_mode_string() for the new usage; called
545 collapse(pretty_mask()) on the ban string and use allocated memory
546 for it; added ban list length accounting; fixed a number of small
547 bugs in ban processing
549 * include/channel.h: added flag MODE_FREE and an int argument to
550 modebuf_mode_string() to indicate that the string must be free'd
552 * ircd/m_clearmode.c (do_clearmode): made sure clearmode removed
553 keys and limits that are set
555 2000-03-30 Perry Lorier <isomer@coders.net>
556 * ircd/ircd.c: rewrote check_pings() for maintainability
557 and speed. Also changed quit msg's so they don't have
558 redundant nick[host] info in them.
560 * ircd/send.c: Changed write errors to report what error
561 occured (if possible).
563 * ircd/gline.c: added gline comment to the quit.
565 * ircd/m_server.c: Added suggestions to server quits mentioning
566 what went wrong so the admin can fix it earlier instead of asking
569 * ircd/map.c: Changed m_map() to hide numerics, show a * beside
570 servers that aren't fully burst yet. And show '(--s)' for servers
573 * doc/example.conf: Fixed wrapped U:
575 2000-03-30 Kevin L. Mitchell <klmitch@mit.edu>
577 * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
578 mode_parse() (version selectable at compile time)
580 * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
582 * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
584 * config/config-sh.in: add new config option to enable new m_mode
587 * doc/Configure.help: add documentation for new config option
590 * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
591 MODE -v : Not enough parameters
593 * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
594 +k and +l even if they weren't set...
596 * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
598 * ircd/channel.c: make mode_process_clients() clear the DEOPPED
599 flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
600 for; test the 0-th member, not the i-th member, of the client
603 * ircd/m_clearmode.c (do_clearmode): use the new
604 mode_invite_clear() function
606 * ircd/channel.c: cleared up all the compile-time warnings and
609 * include/channel.h: added declarations for mode_ban_invalidate()
610 and mode_invite_clear()
612 * ircd/channel.c: finished mode_parse(), then broke it up into a
613 dozen or so helper functions to make the code easier to read
615 2000-03-29 Thomas Helvey <tomh@inxpress.net>
616 * ircd/ircd.c: refactor server initialization a bit, use
617 getopt for parsing command line, refactor init_sys, main,
620 * ircd/s_bsd.c: add functions for initialization to clean
621 up logic a bit and remove duplicated code.
623 * include/ircd.h: add struct for server process related
626 2000-03-29 Kevin L. Mitchell <klmitch@mit.edu>
628 * ircd/channel.c: initial definition of mode_parse(); flags to
629 prevent doing the same thing multiple times; helper method
630 send_notoper() to send a "Not oper"/"Not on channel" notice
632 * include/channel.h: declare mode_parse() and helper flags
634 * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
635 sending to match the current action of set_mode() closely enough
636 that hopefully there won't be major conflicts
638 * ircd/channel.c (modebuf_flush_int): consolidated the mode string
639 building logic, reversed the order of the arguments to mode
640 commands to have '-' preceed '+'
642 2000-03-29 Thomas Helvey <tomh@inxpress.net>
643 * ircd/s_bsd.c (add_connection): don't disable socket options
644 let OS tune itself and allow important performance tweaks to
647 2000-03-28 Kevin L. Mitchell <klmitch@mit.edu>
649 * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
650 confused by set_mode, which is doing some really weird logic;
651 guess what I'm going to rewrite next? ;)
653 2000-03-28 Kevin L. Mitchell <klmitch@emc.com>
655 * include/channel.h: added MODE_SAVE for the bounds checking stuff
658 * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
659 make it do bounds checking on the buffer; all modes are sent only
660 if the all parameter is 1; modebuf_flush is the exported wrapper
662 * include/channel.h: add BOUNCE, renumber flags to get a little
665 * ircd/channel.c (modebuf_flush): don't overload HACK2, add
666 BOUNCE; send DESYNCH message
668 2000-03-27 Kevin L. Mitchell <klmitch@emc.com>
670 * ircd/m_clearmode.c (do_clearmode): only mark the modes the
671 channel actually has in effect for deletion
673 * ircd/channel.c: added explanatory comments to all added
674 functions; made flushing take place at the correct place even if
675 the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
676 to bash some stupid bugs; made modebuf_flush() return if ModeBuf
677 is empty, fixed the apparent source, removed some bogus string
678 termination code, properly terminate the mode strings, add support
679 for HACK2 and HACK3, made limit strings not be sent if the limit
680 is being removed, changed where '+' and '-' come from in sent
681 strings, added support for DEOP flag, set up bouncing code for
684 * ircd/Makefile.in: ran make depend
686 * include/channel.h: added new defines for future functionality,
687 made modebuf_flush() return int so I can use tail recursion
689 * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
690 to make it all compile
692 * ircd/m_opmode.c: add msg.h to includes...
694 * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
696 * ircd/channel.c (modebuf_flush): realized I forgot to
697 nul-terminate addbuf/rembuf properly...
699 * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
701 * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
702 sendto_serv_butone--blah^2
704 * ircd/send.c (sendto_serv_butone): stupid comments confused me
706 * ircd/channel.c (modebuf_flush): if there are no mode changes to
707 propagate, we're done...
709 * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
710 not sendto_all_butone
712 * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
714 * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
716 * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
719 * ircd/parse.c: added messages for opmode and clearmode
721 * include/handlers.h: added declarations for mo_opmode(),
722 ms_opmode(), mo_clearmode(), and ms_clearmode()
724 * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
727 * include/channel.h (MODEBUF_DEST_OPMODE): Define the
728 MODEBUF_DEST_OPMODE flag
730 * ircd/channel.c (modebuf_flush): added new flag,
731 MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
732 to originate from source's server (or source itself, if
733 IsServer(source)); also causes a server-level MODE to be sent as
736 * include/channel.h: defined MODEBUF_DEST_SERVER,
739 * ircd/channel.c: Add another argument to build_string() to handle
740 numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
741 servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
744 2000-03-27 Perry Lorier <isomer@coders.net>
746 * ircd/s_bsd.c: fixed missing 'u' typo.
748 2000-03-26 Kevin L. Mitchell <klmitch@emc.com>
750 * ircd/channel.c: implement modebuf_init(), _mode(), _mode_uint(),
751 _mode_string(), _mode_client(), _flush(); also implemented a
752 simple build_string()
754 * include/channel.h: added definition of ModeBuf, modebuf_*
755 manipulation functions, and a couple of helper macros
757 2000-03-24 Thomas Helvey <tomh@inxpress.net>
758 * numicks.c: convert extended numerics to use original mask version
761 2000-03-23 Thomas Helvey <tomh@inxpress.net>
762 * Merge in changes from production
763 2000-03-22 Thomas Helvey <tomh@inxpress.net>
764 * numicks.c: Tweak to numnick generator to reduce possibility of duplicates.
765 * rfc1459.unet: Add Maniac's documentation for /names 0
766 * Fix misc. jupe bugs that somehow made it into the tree
767 * Escape /names 0 to mean /names --Maniac
768 * Don't core when server asks for info --Maniac
769 * Add Kev's jupe patch --Bleep
770 * Add Maniacs squit patch --Bleep
771 * Merge in u2_10_10_beta07 changes --Bleep
772 * Merge in u2_10_10_beta06 changes --Bleep
773 * Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
774 #-----------------------------------------------------------------------------
776 # ChangeLog for ircu2.10.11
778 # $Id: ChangeLog,v 1.104 2000-04-26 20:58:37 kev Exp $
780 # Insert new changes at beginning of the change list.