1 2000-05-02 Kevin L. Mitchell <klmitch@mit.edu>
3 * ircd/m_rping.c: convert to sendcmdto_one / send_reply /
6 * ircd/m_rpong.c: convert to sendcmdto_one / send_reply
8 2000-05-01 Kevin L. Mitchell <klmitch@mit.edu>
10 * ircd/m_stats.c: convert to sendcmdto_one / send_reply
12 * ircd/m_kick.c: Completely reimplement m_kick
14 * ircd/channel.c: send_user_joins removed; it was dead code,
17 2000-05-01 Perry Lorier <isomer@coders.net>
18 * ircd/m_invite.c: Fix for the rest of m_invite.c, and again.
19 * ircd/channels.c: My fix for the part problem. Untested, probably
20 won't work. Can't be much worse than the current problem.
21 it'll either work or core, take your pick.
24 2000-04-30 Perry Lorier <isomer@coders.net>
25 * config/config-sh.in: Fix for CONNEXIT
26 * ircd/s_{user,misc}.c: Fix for CONNEXIT
27 * ircd/m_invite.c: Fix for incorrectly numnickified invite.
28 (Kev: Want to come talk to me about this?)
30 2000-04-30 Steven M. Doyle <steven@doyle.net>
32 - general cleanups and readability enhancements
33 - rewrite of setuid/chroot code.
34 - server will no longer run as root
35 - -DPROFIL compile option removed
36 - Fixed IPcheck API calls
39 - Fixed up chroot compile options
40 - Added options for debug and profile compiles
42 * config/gen.ircd.Makefile
43 - Support for new debug/profile options
46 - Support for new debug/profile options
52 - Removed old API prototypes, added new ones
55 - Readability cleanups (well, I -think-...)
56 - Changed IPRegistryEntry.last_connect to a time_t. The previously
57 used unsigned short was probably causing interesting things after
58 a client had been connected longer than about 65,535 seconds...
59 - Removed old API functions.
62 - Removed IPcheck.h include
64 * Additionally modified IPcheck API calls in:
74 2000-04-30 Perry Lorier <isomer@coders.net>
75 * ircd/s_bsd.c: Sigh. :)
76 * ircd/m_mode.c: fix for modeless channels by poptix.
78 2000-04-29 Kevin L. Mitchell <klmitch@mit.edu>
80 * ircd/m_join.c: reimplement JOIN in terms of struct JoinBuf
82 * ircd/channel.c (clean_channelname): make clean_channelname also
83 truncate long channel names
85 2000-04-28 Kevin L. Mitchell <klmitch@mit.edu>
87 * ircd/m_create.c: reimplement CREATE in terms of struct JoinBuf
89 * ircd/channel.c: implemented joinbuf_init, joinbuf_join,
92 * include/channel.h: definitions and declarations for the struct
95 2000-04-29 Perry Lorier <isomer@coders.net>
96 * ircd/s_bsd.c: Ok, so I thought I compiled and tested this...
98 2000-04-29 Perry Lorier <isomer@coders.net>
99 * ircd/s_bsd.c: Add debugging code to IPcheck
101 2000-04-28 Kevin L. Mitchell <klmitch@mit.edu>
103 * include/ircd_reply.h (SND_EXPLICIT): use instead of RPL_EXPLICIT
105 * ircd/ircd_reply.c (send_reply): use SND_EXPLICIT instead of
108 * ircd/m_userhost.c (m_userhost): add a dead code comment
110 * ircd/m_desynch.c: forgot one...
112 * ircd/m_rehash.c (mo_rehash): er, duplicates :)
114 * ircd/m_proto.c (proto_send_supported): just change a comment so
115 it doesn't show up in my scans
117 * ircd/ircd_reply.c (send_reply): fix a slight bug...
119 * ircd/s_numeric.c (do_numeric): use new sendcmdto_* functions,
122 * ircd/parse.c (parse_server): argument wrangling to make
123 processing in do_numeric a little easier to deal with
125 * ircd/s_serv.c (server_estab): SERVER should come from
126 acptr->serv->up, not &me
128 * ircd/m_lusers.c: accidentally left out sptr for a %C
130 * ircd/send.c: hack to support doing wallchops...
132 * ircd/m_whowas.c: convert to new send functions
134 * ircd/m_whois.c: convert to new send functions
136 * ircd/m_who.c: convert to new send functions
138 * ircd/m_wallops.c: convert to new send functions
140 * ircd/m_wallchops.c: convert to new send functions
142 * ircd/m_version.c: convert to new send functions
144 * ircd/m_userip.c: convert to new send functions
146 * ircd/m_userhost.c: convert to new send functions
148 * ircd/m_uping.c: convert to new send functions
150 * ircd/m_trace.c: convert to new send functions
152 * ircd/m_topic.c: convert to new send functions
154 * ircd/m_time.c: convert to new send functions
156 * ircd/m_squit.c: convert to new send functions
158 * ircd/m_silence.c: convert to new send functions
160 * ircd/m_settime.c: convert to new send functions
162 * ircd/m_restart.c: convert to new send functions
164 * ircd/m_rehash.c: convert to new send functions
166 * ircd/m_privmsg.c: convert to new send functions
168 * ircd/m_pong.c: convert to new send functions
170 * ircd/m_ping.c: convert to new send functions
172 * ircd/m_pass.c: convert to new send functions
174 * ircd/m_opmode.c: convert to new send functions
176 * ircd/m_oper.c: convert to new send functions
178 * ircd/m_notice.c: convert to new send functions
180 * ircd/m_nick.c: convert to new send functions
182 * ircd/m_names.c: convert to new send functions
184 * ircd/m_motd.c: convert to new send functions
186 * ircd/m_mode.c: convert to new send functions
188 * ircd/m_map.c: convert to new send functions
190 * ircd/m_lusers.c: convert to new send functions
192 * ircd/m_list.c: convert to new send functions
194 * ircd/m_links.c: convert to new send functions
196 * ircd/m_kill.c: convert to new send functions
198 * ircd/m_jupe.c: convert to new send functions
200 * ircd/m_invite.c: convert to new send functions
202 * ircd/m_info.c: convert to new send functions
204 * ircd/m_help.c: convert to new send functions
206 * ircd/m_gline.c: convert to new send functions
208 * ircd/m_error.c: convert to new send functions
210 * ircd/m_endburst.c: convert to new send functions
212 * ircd/m_die.c: convert to new send functions
214 * ircd/m_destruct.c: convert to new send functions
216 * ircd/m_defaults.c: convert to new send functions
218 * ircd/m_connect.c: convert to new send functions
220 2000-04-28 Perry Lorier <isomer@coders.net>
221 * RELEASE.NOTES: Describe a few more undocumented features.
222 * config/config-sh.in: change the default paths for logging
223 and the recommended number of channels.
224 * include/supported.h: Rearrange slightly, added CHANTYPE's
226 2000-04-27 Kevin L. Mitchell <klmitch@mit.edu>
228 * ircd/m_close.c: convert to send_reply
230 * ircd/m_clearmode.c: convert to send_reply, sendcmdto_serv_butone
232 * ircd/m_away.c: convert to send_reply and sendcmdto_serv_butone
234 * ircd/m_admin.c: convert to send_reply and hunt_server_cmd
236 * ircd/s_user.c (hunt_server_cmd): new hunt_server replacement
237 that takes cmd and tok arguments, etc. NOTE: THIS IMPLEMENTATION
238 HAS A MAJOR HACK!!! The whole hunt_server architecture should be
239 carefully rethought...
241 * ircd/s_stats.c (hunt_stats): use new hunt_server_cmd
243 * include/s_user.h: hunt_server_cmd -- replacement for hunt_server
245 * ircd/s_misc.c: *sigh* 2.10.10 doesn't support squitting by
246 numeric nick; therefore, we have to use the server name
248 * ircd/m_squit.c (ms_squit): allow to squit by server numeric nick
250 * ircd/send.c: fix minor bugs
252 * ircd/s_user.c (check_target_limit): mark dead code so I filter
255 * ircd/s_serv.c (exit_new_server): mark dead code so I filter it
258 * ircd/parse.c: mark dead code so I filter it when I grep
260 * ircd/map.c: mark dead code so I filter it when I grep
262 * ircd/ircd.c: mark dead code so I filter it when I grep
264 * ircd/ircd_relay.c: convert over to new sendcmdto_*, send_reply
267 * ircd/channel.c: mark dead code so I filter it when I grep
269 * ircd/s_stats.c: use send_reply instead of sendto_one w/rpl_str;
270 hope I'm not stepping on toes...
272 * ircd/s_conf.c: more sendto_opmask_butone / send_reply
273 conversions; use ircd_snprintf in a couple of cases to negate the
274 possibility of buffer overflow
276 2000-04-26 Kevin L. Mitchell <klmitch@mit.edu>
278 * ircd/channel.c: convert as much as possible to new send
281 * ircd/send.c (sendcmdto_common_channels): fix a subtle bug --
282 test member->user->from->fd, not from->fd
284 * ircd/gline.c (gline_add): go ahead and add badchans; we just
285 won't look for them in m_gline; this way, they always work...
287 * ircd/jupe.c: use ircd_vsnprintf conversion specifiers
289 * ircd/gline.c: since write_log now uses ircd_vsnprintf, use
290 ircd_vsnprintf conversion specifiers
292 * ircd/support.c (write_log): use ircd_vsnprintf for write_log, so
293 I have my conversion specifiers
295 * ircd/gline.c (do_gline): use send_reply for ERR_YOUREBANNEDCREEP
297 * ircd/send.c (sendcmdto_flag_butone): explicitly send WALLOPS to
300 * ircd/s_serv.c (exit_new_server): rewrite exit_new_server to be a
301 little less brain-dead
303 * ircd/s_misc.c: use sendcmdto_one, sendrawto_one, and send_reply
305 * ircd/s_debug.c: use send_reply with RPL_EXPLICIT for
308 * ircd/res.c (cres_mem): use send_reply with RPL_EXPLICIT for
311 * ircd/list.c (send_listinfo): use send_reply with RPL_EXPLICIT
314 * ircd/m_pong.c: use RPL_EXPLICIT for ERR_BADPING
316 * ircd/ircd.c: use RPL_EXPLICIT for ERR_BADPING
318 * ircd/s_user.c (register_user): use RPL_EXPLICIT for
321 * ircd/ircd_reply.c (send_reply): support RPL_EXPLICIT
323 * include/ircd_reply.h (RPL_EXPLICIT): somewhat of a hack to mark
324 a numeric as needing to use an explicit pattern, which will be the
325 first argument in the variable argument list
327 * ircd/s_user.c: use sendrawto_one instead of sendto_one to send
328 non-prefixed nospoof PING
330 * ircd/s_bsd.c: use sendrawto_one instead of sendto_one to send
331 non-prefixed SERVER login
333 * ircd/ircd.c (check_pings): fix last sendto_one calls (except for
334 a numeric usage further up)
336 * include/send.h: declare sendrawto_one
338 * ircd/send.c (sendrawto_one): new function to use ONLY for
339 non-prefixed commands, like PING to client, or PASS/SERVER on
342 2000-04-25 Kevin L. Mitchell <klmitch@mit.edu>
344 * ircd/ircd_snprintf.c (doprintf): implement %H for possible
345 future expansion (channel numerics?)
347 * include/ircd_snprintf.h: added documentation to # to explain use
348 with %C; added documentation for : to explain use with %C; added
349 documentation for %H for channels
351 * ircd/whocmds.c: use send_reply
353 * ircd/userload.c: use sendcmdto_one
355 * ircd/uping.c: use sendcmdto_one
357 * ircd/send.c: use new flags to %C format string; ':' prefixes
358 client name with a colon for local connects, '#' uses
359 nick!user@host form for local connects
361 * ircd/s_user.c: use send_reply, sendto_opmask_butone,
362 sendcmdto_one, sendcmdto_serv_butone, sendcmdto_flag_butone
364 * ircd/s_serv.c: use sendcmdto_one, sendto_opmask_butone
366 * ircd/s_bsd.c: use sendto_opmask_butone, send_reply,
369 * ircd/s_auth.c: use sendto_opmask_butone
371 * ircd/res.c: use sendcmdto_one
373 * ircd/ircd_snprintf.c (doprintf): minor bug fixes and some
376 2000-04-24 Kevin L. Mitchell <klmitch@mit.edu>
378 * ircd/support.c: dumpcore is no longer used, so get rid of it
380 * ircd/parse.c: use send_reply, sendcmdto_one
382 * ircd/map.c: use send_reply
384 * ircd/listener.c: use send_reply
386 * ircd/jupe.c: use sendto_opmask_butone, send_reply
388 * ircd/ircd_reply.c: use send_reply
390 * ircd/ircd.c: use sendto_opmask_butone
392 * ircd/gline.c: use sendto_opmask_butone, send_reply
394 * ircd/ircd_snprintf.c (doprintf): make it deal with incompletely
395 registered clients; make FLAG_ALT print nick!user@host; make
396 FLAG_COLON print :blah
398 * ircd/class.c (report_classes): use send_reply instead of
401 * ircd/hash.c (m_hash): replace sendto_one with sendcmdto_one
403 * ircd/IPcheck.c (ip_registry_connect_succeeded): replace
404 sendto_one with sendcmdto_one
406 2000-04-21 Kevin L. Mitchell <klmitch@mit.edu>
408 * ircd/send.c: clean up logic in sendcmdto_channel_butone; use
409 MyConnect() instead of IsServer() in sendcmdto_flag_butone; define
410 sendcmdto_match_butone
412 * include/send.h: declare sendcmdto_match_butone
414 2000-04-20 Kevin L. Mitchell <klmitch@mit.edu>
416 * ircd/jupe.c: update to use send_reply()
418 * ircd/gline.c: update to use send_reply()
420 * include/ircd_reply.h: declare send_reply
422 * ircd/ircd_reply.c (send_reply): send_error_to_client, but for
423 replies; uses ircd_snprintf
425 * ircd/send.c: added comments to redirect searchers to appropriate
426 sendcmdto_* function; moved new functions to end of file; added
427 explanatory comments; reordered arguments; defined new functions
430 * ircd/m_jupe.c: reorder arguments to sendcmdto_* functions
432 * ircd/m_gline.c: reorder arguments to sendcmdto_* functions
434 * ircd/jupe.c: reorder arguments to sendcmdto_* functions
436 * ircd/gline.c: reorder arguments to sendcmdto_* functions
438 * include/send.h: reorder arguments, add explanatory comments,
439 declare new functions sendcmdto_flag_butone, sendto_opmask_butone,
440 and vsendto_opmask_butone
442 2000-04-19 Kevin L. Mitchell <klmitch@mit.edu>
444 * ircd/send.c: define sendcmdto_channel_butone, wrote a simplified
445 vsendto_op_mask that uses '*' instead of the receiving client
448 * include/send.h: declare sendcmdto_channel_butone; takes a skip
449 argument that allows you to skip (or not to skip) deaf users,
450 users behind bursting servers, and non channel operators
452 2000-04-17 Kevin L. Mitchell <klmitch@mit.edu>
454 * ircd/send.c: new sendcmdto_channel_butserv -- note that old
455 sendto_channel_butserv has a subtle bug; also wrote
456 sendcmdto_common_channels.
458 * include/send.h: declare new sendcmdto_* functions
460 * ircd/jupe.c: support local deactivations of jupes
462 * ircd/gline.c: support local deactivations of glines
464 * include/jupe.h: JUPE_LDEACT allows jupes to be locally
465 deactivated; if they aren't locally deactivated, then it slaves to
466 the net-wide activation status; JupeIsRemActive() tests only
467 whether the jupe is active everywhere else
469 * include/gline.h: GLINE_LDEACT allows glines to be locally
470 deactivated; if they aren't locally deactivated, then it slaves to
471 the net-wide activation status; GlineIsRemActive() tests only
472 whether the gline is active everywhere else
474 * ircd/gline.c: detect overlapping G-lines; if an existing, wider
475 gline expires after the new one will, we drop the new one,
476 otherwise we add the G-line after that one (so the wide one will
477 apply first); if the new one contains an existing G-line and if it
478 will expire after the existing one, we drop the existing one to
481 * ircd/m_gline.c (mo_gline): opers could issue remote local
482 glines when CONFIG_OPERCMDS was off; fixed
484 2000-04-16 Kevin L. Mitchell <klmitch@mit.edu>
486 * ircd/m_jupe.c (mo_jupe): allow target argument to be dropped if
489 * ircd/gline.c: add flags argument to gline_activate and
490 gline_deactivate for future expansion
492 * ircd/m_gline.c: pass flags to gline_activate and
495 * include/gline.h: add flags argument to gline_activate and
498 * ircd/jupe.c: add flags argument to jupe_activate and
499 jupe_deactivate for future expansion
501 * include/jupe.h: add flags argument to jupe_activate and
504 * ircd/m_jupe.c: pass a flags argument to jupe_add instead of
505 local, active; pass flags to jupe_activate and jupe_deactivate
507 * include/gline.h: remove dead code
509 * ircd/gline.c: make gline expire times relative to CurrentTime,
510 since that should be monotonically increasing, instead of
511 TStime(), which can be set backwards, and which can therefore
512 cause an expire time to increase; make local glines be removed
513 instead of just deactivated; don't let gline_find() look for
514 user@host glines if the mask being looked up is a channel mask
516 * ircd/send.c (vsendcmdto_one): forgot to account for the case
517 where origin is a server and destination is a user
519 * ircd/jupe.c: make jupe expire times relative to CurrentTime,
520 since that should be monotonically increasing, instead of
521 TStime(), which can be set backwards, and which can therefore
522 cause an expire time to increase; make local jupes be removed
523 instead of just deactivated
525 * ircd/ircd_snprintf.c: d'oh, thanks for catching that; short for
526 limit is fine. any other warnings I should know about?
528 2000-04-15 Thomas Helvey <tomh@inxpress.net>
530 * ircd/*.c: const correctness and type safety cleanups to
531 get code to compile with C++ compiler. Still has
532 signed/unsigned comparison warnings.
534 2000-04-15 Greg Sikorski <gte@atomicrevs.demon.co.uk>
536 * ircd/userload.c: change <sys/time.h> include to <time.h> for
539 2000-04-14 Kevin L. Mitchell <klmitch@mit.edu>
541 * ircd/m_gline.c (mo_gline): d'oh, target isn't a numeric; use %C
544 * ircd/s_user.c: move gline_lookup function call into
545 register_user, where it'll have a username to lookup!
547 * ircd/m_gline.c: modify to utilize new sendcmdto_* series of
548 functions; also stuff send_error_to_client into return clauses
550 * ircd/m_jupe.c: modify to utilize new sendcmdto_* series of
551 functions; also use send_error_to_client where that makes sense
553 * ircd/jupe.c: modify to utilize new sendcmdto_* series of
554 functions; also use send_error_to_client where that makes sense
556 * ircd/gline.c: modify to utilize new sendcmdto_* series of
557 functions; also fix gline_lookup() to deal properly with remote
558 clients--boy, do struct Client and struct User need to be cleaned
561 * ircd/ircd_snprintf.c (doprintf): a dest of &me is a server,
564 * ircd/send.c: wrote sendcmdto_one(), vsendcmdto_one(), and
565 sendcmdto_serv_butone(), all utilizing the %v conversion of
568 * include/send.h: define IRC_BUFSIZE, max size of a message;
569 declare sendcmdto_one(), vsendcmdto_one(), and
570 sendcmdto_serv_butone()
572 * include/msg.h: define all the CMD_* constants needed to utilize
573 the new sendcmdto_* series of functions
575 * ircd/Makefile.in (SRC): list ircd_snprintf.c; run make depend
577 * ircd/gline.c: remove old, dead code.
579 * ircd/m_gline.c (mo_gline): disallow setting of global G-lines
580 unless CONFIG_OPERCMDS is enabled; disallow listing of all G-lines
581 (don't advertise proxies); remove dead code
583 * ircd/parse.c: oper handler for JUPE only lists jupes unless
584 CONFIG_OPERCMDS is enabled
586 * ircd/m_jupe.c (mo_jupe): don't compile mo_jupe() if
587 CONFIG_OPERCMDS is not enabled; we'll disable it in parse.c
589 * ircd/m_opmode.c (mo_opmode): if CONFIG_OPERCMDS is not enabled,
590 always return ERR_DISABLED
592 * ircd/m_clearmode.c (mo_clearmode): if CONFIG_OPERCMDS is not
593 enabled, always return ERR_DISABLED
595 * ircd/s_err.c: add error message to indicate disabled commands
597 * include/numeric.h (ERR_DISABLED): to indicate disabled commands
599 * doc/Configure.help: add documentation for CONFIG_OPERCMDS
601 * config/config-sh.in: add CONFIG_OPERCMDS, default both it and
602 CONFIG_NEW_MODE to 'y' for now
604 * ircd/gline.c (gline_list): fix a minor formatting bogon
606 * BUGS: since I fixed that bug, might as well mark it fixed.
608 * ircd/m_join.c: look up badchans with GLINE_EXACT
610 * ircd/m_gline.c: fix parc count problems; look up existing
611 G-lines with GLINE_EXACT; only set new lastmod when
612 activating/deactivating existing glines if old lastmod was not 0
614 * ircd/gline.c: forgot to copy the gline reason over; don't
615 propagate a gline with 0 lastmod if origin is user; add
616 GLINE_EXACT to force exact matching of gline mask
618 * ircd/ircd_snprintf.c (doprintf): forgot to deal with the zero
621 * ircd/s_conf.c (find_kill): gline_find() takes a char *userhost,
622 but gline_lookup() actually takes a client--d'oh.
624 2000-04-13 Thomas Helvey <tomh@inxpress.net>
625 * ircd/IPcheck.c: Back port BLMet's bugfix from 2.10.10
627 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
629 * ircd/whocmds.c: Don't make idle flag default in /who, to prevent:
631 "Gte3 H*iwg Gte@212.49.240.217 :1 :0 I am the one that was."
634 * ircd/whocmds.c: Change idle time calc from socket idle to user
637 2000-04-13 Kevin L. Mitchell <klmitch@mit.edu>
639 * config/aclocal.m4 (unet_CHECK_TYPE_SIZES): check size of void *,
640 too, for ircd_snprintf.c
642 * include/ircd_snprintf.h: documentation for ircd_(v)snprintf, in
643 comments; mostly descended from the Linux manpage for printf, but
644 also documenting the extensions.
646 * ircd/ircd_snprintf.c: NULL dest is equivalent to going to a
647 client; make 'q' be the same as 'L'; remove __inline__; only
648 define EXTENSION if HAVE_LONG_LONG is defined
650 * include/handlers.h: declare m_gline()
652 * ircd/parse.c: gline can be called by users, but it only lists
655 * ircd/s_user.c (set_nick_name): resend gline if a remote server
656 introduces a glined client
658 * ircd/s_serv.c (server_estab): burst glines, too
660 * ircd/gline.c: fix up all the expire times to be offsets;
661 simplify gline_resend()
663 * ircd/m_gline.c: begin coding replacements for ms_gline(),
664 mo_gline(), and m_gline()
666 * ircd/gline.c (gline_add): allow *@#channel to work correctly;
667 also, prohibit local BADCHANs if LOCAL_BADCHAN not defined
669 2000-04-13 Greg Sikorski <gte@atomicrevs.demon.co.uk>
671 * tools/Bouncer/*: Add comments/documentation/tags.
672 * tools/Bouncer/*: Add debug defines, make task fork().
674 2000-04-12 Thomas Helvey <tomh@inxpress.net>
675 * ircd/s_err.c: Cleanup s_err.c make one table so we
676 don't have to do anything tricky to get an error string.
678 2000-04-12 Greg Sikorski <gte@atomicrevs.demon.co.uk>
679 * Add port bouncer for http (x/w)
681 2000-04-12 Kevin L. Mitchell <klmitch@mit.edu>
683 * ircd/s_conf.c (find_kill): replaced call to find_gline() with a
684 call to gline_find(); also used GlineReason() instead of direct
685 reference to structure member
687 * ircd/m_join.c (m_join): replace bad_channel() calls with calls
688 to gline_find(name, GLINE_BADCHAN), and also check to see if gline
691 * ircd/channel.c: nothing seems to be called anywhere...
693 * ircd/s_err.c: update a couple of replies to dovetail with new
696 * ircd/gline.c: begin complete re-implementation of gline.c along
697 the lines of the final design of jupe.c
699 * include/gline.h: begin complete re-implementation of gline.c
700 along the lines of the final design of jupe.c
702 * ircd/channel.c (mode_process_clients): fix "Deop of +k user on
705 * ircd/ircd_snprintf.c: my new snprintf()-like functions
707 * include/ircd_snprintf.h: my new snprintf()-like functions
709 2000-04-11 Thomas Helvey <tomh@inxpress.net>
710 * ircd/IPcheck.c: removed old dead code
711 * ircd/s_user.c (send_user_info): removed non-standard
712 user not found message for userhost/userip
714 2000-04-11 Greg Sikorski <gte@atomicrevs.demon.co.uk>
716 * ircd/s_err.c: Added missing quotes to ERR_DONTCHEAT numeric.
717 * doc/p10.html: Work on chapter 4.
719 2000-04-10 Kevin L. Mitchell <klmitch@mit.edu>
721 * ircd/channel.c (mode_parse_client): fix coredump on /mode
722 #foobar +o nosuchnick
724 2000-04-10 Perry Lorier <Isomer@coders.net>
727 2000-04-09 Thomas Helvey <tomh@inxpress.net>
728 * include/IPcheck.h: fix prototype
729 * ircd/s_user.c: fix usage of IPcheck_remote_connect
730 * ircd/IPcheck.c: removed unused args
732 2000-04-09 Thomas Helvey <tomh@inxpress.net>
733 * include/IPcheck.h: add proto for IPcheck_expire
735 * ircd/IPcheck.c: Rewrote
737 * ircd/ircd.c: Add IPcheck_expire to main message loop
739 * ircd/s_user.c: Redo target hashing, refactor target code
741 * include/numeric.h: Cleaned up numerics, added which ones are
742 in use by other networks and what they are in use for.
744 * ircd/channel.c: cleaned can_join(), allow anyone through anything
745 if /invited, simplified the function. Opers overusing OPEROVERRIDE
746 will get a message explaining to them not to cheat.
748 * ircd/m_join.c: cleaned up the various join functions, should be
749 a lot more efficient. Still needs work. Now assumes that s<->s
750 won't send it a JOIN 0. Service coders - note this and tread with
753 * ircd/m_stats.c: added Gte-'s stats doc patch.
755 * ircd/m_version.c: /version now returns the 005 numeric as well.
756 as requested by Liandrin.
759 2000-04-07 Kevin L. Mitchell <klmitch@mit.edu>
761 * ircd/m_clearmode.c: add include for support.h for write_log()
763 * configure: move ircd/crypt/* to tools/*
765 2000-04-06 Thomas Helvey <tomh@inxpress.net>
766 * ircd/s_auth.c: Shorten auth connect timeout to 60 seconds
767 set client host to server alias if connection from localhost
769 2000-04-06 Perry Lorier <isomer@coders.net>
770 * ircd/ircd.c: Fix core during pinging (oops)
772 2000-04-06 Perry Lorier <isomer@coders.net>
773 * ircd/send.c: fixed wrong ident being sent to channels bug.
774 * include/numerics.h: Updated some of the numerics from other
775 networks. Flagged some as 'unused' by undernet.
777 2000-03-30 Perry Lorier <isomer@coders.net>
778 * ircd/ircd.c: Lets see if this helps the ping problem at all.
779 * ircd/whocmds.c, /doc/readme.who: Added %l specifier to get idle
780 time for local clients. (as requested), extended who now returns all
781 the flags (@+!) so you can tell the complete state of a client.
783 2000-03-30 Thomas Helvey <tomh@inxpress.net>
784 * m_rping.c m_rpong.c: add Gte's rping/rpong fixes
786 2000-03-30 Perry Lorier <isomer@coders.net>
787 * ircd/parse.c: oops, missed opers.
789 2000-03-30 Perry Lorier <isomer@coders.net>
790 * ircd/parse.c: fixed mystifying ping bug thats been plaguing us
791 for so long. Remember: m_ping MUST be in the parse array. :)
793 2000-03-30 Perry Lorier <isomer@coders.net>
794 * ircd/ircd.c: test in check_pings was wrong. I move that we
795 disallow cvs commit after 10pm localtime....
797 2000-03-30 Perry Lorier <isomer@coders.net>
798 * ircd/m_pong.c: Fix it for servers too.
800 2000-03-30 Perry Lorier <isomer@coders.net>
801 * ircd/m_pong.c: Fix ping timeout bugs
803 2000-03-30 Perry Lorier <isomer@coders.net>
804 * ircd/channel.c: Bans had CurrentTime in their when field instead
807 2000-03-31 Thomas Helvey <tomh@ixpress.net>
808 * ircd/numnicks.c (SetXYYCapacity): fix for extended
811 2000-03-30 Perry Lorier <isomer@coders.net>
812 * ircd/m_nick.c: send kills both ways so when we add nick change
813 on collision we don't desync the network.
815 * ircd/map.c: Fixup the map a bit more.
817 2000-03-31 Kevin L. Mitchell <klmitch@mit.edu>
819 * ircd/m_clearmode.c (do_clearmode): Log the CLEARMODE to OPATH
821 * ircd/m_opmode.c: Log the mode changes to OPATH
823 * ircd/channel.c (modebuf_flush_int): Log the mode changes to
826 * include/channel.h (MODEBUF_DEST_LOG): Log the mode changes to
829 * doc/Configure.help: help text for CONFIG_LOG_OPMODE / OPATH
831 * config/config-sh.in: added OPATH for opmode log file
833 * ircd/m_clearmode.c (do_clearmode): updated uses of
834 modebuf_mode_string() for the new usage
836 * ircd/channel.c: added flag MODE_FREE and an int argument to
837 modebuf_mode_string() to indicate that the string must be free'd;
838 updated calls to modebuf_mode_string() for the new usage; called
839 collapse(pretty_mask()) on the ban string and use allocated memory
840 for it; added ban list length accounting; fixed a number of small
841 bugs in ban processing
843 * include/channel.h: added flag MODE_FREE and an int argument to
844 modebuf_mode_string() to indicate that the string must be free'd
846 * ircd/m_clearmode.c (do_clearmode): made sure clearmode removed
847 keys and limits that are set
849 2000-03-30 Perry Lorier <isomer@coders.net>
850 * ircd/ircd.c: rewrote check_pings() for maintainability
851 and speed. Also changed quit msg's so they don't have
852 redundant nick[host] info in them.
854 * ircd/send.c: Changed write errors to report what error
855 occured (if possible).
857 * ircd/gline.c: added gline comment to the quit.
859 * ircd/m_server.c: Added suggestions to server quits mentioning
860 what went wrong so the admin can fix it earlier instead of asking
863 * ircd/map.c: Changed m_map() to hide numerics, show a * beside
864 servers that aren't fully burst yet. And show '(--s)' for servers
867 * doc/example.conf: Fixed wrapped U:
869 2000-03-30 Kevin L. Mitchell <klmitch@mit.edu>
871 * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
872 mode_parse() (version selectable at compile time)
874 * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
876 * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
878 * config/config-sh.in: add new config option to enable new m_mode
881 * doc/Configure.help: add documentation for new config option
884 * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
885 MODE -v : Not enough parameters
887 * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
888 +k and +l even if they weren't set...
890 * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
892 * ircd/channel.c: make mode_process_clients() clear the DEOPPED
893 flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
894 for; test the 0-th member, not the i-th member, of the client
897 * ircd/m_clearmode.c (do_clearmode): use the new
898 mode_invite_clear() function
900 * ircd/channel.c: cleared up all the compile-time warnings and
903 * include/channel.h: added declarations for mode_ban_invalidate()
904 and mode_invite_clear()
906 * ircd/channel.c: finished mode_parse(), then broke it up into a
907 dozen or so helper functions to make the code easier to read
909 2000-03-29 Thomas Helvey <tomh@inxpress.net>
910 * ircd/ircd.c: refactor server initialization a bit, use
911 getopt for parsing command line, refactor init_sys, main,
914 * ircd/s_bsd.c: add functions for initialization to clean
915 up logic a bit and remove duplicated code.
917 * include/ircd.h: add struct for server process related
920 2000-03-29 Kevin L. Mitchell <klmitch@mit.edu>
922 * ircd/channel.c: initial definition of mode_parse(); flags to
923 prevent doing the same thing multiple times; helper method
924 send_notoper() to send a "Not oper"/"Not on channel" notice
926 * include/channel.h: declare mode_parse() and helper flags
928 * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
929 sending to match the current action of set_mode() closely enough
930 that hopefully there won't be major conflicts
932 * ircd/channel.c (modebuf_flush_int): consolidated the mode string
933 building logic, reversed the order of the arguments to mode
934 commands to have '-' preceed '+'
936 2000-03-29 Thomas Helvey <tomh@inxpress.net>
937 * ircd/s_bsd.c (add_connection): don't disable socket options
938 let OS tune itself and allow important performance tweaks to
941 2000-03-28 Kevin L. Mitchell <klmitch@mit.edu>
943 * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
944 confused by set_mode, which is doing some really weird logic;
945 guess what I'm going to rewrite next? ;)
947 2000-03-28 Kevin L. Mitchell <klmitch@emc.com>
949 * include/channel.h: added MODE_SAVE for the bounds checking stuff
952 * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
953 make it do bounds checking on the buffer; all modes are sent only
954 if the all parameter is 1; modebuf_flush is the exported wrapper
956 * include/channel.h: add BOUNCE, renumber flags to get a little
959 * ircd/channel.c (modebuf_flush): don't overload HACK2, add
960 BOUNCE; send DESYNCH message
962 2000-03-27 Kevin L. Mitchell <klmitch@emc.com>
964 * ircd/m_clearmode.c (do_clearmode): only mark the modes the
965 channel actually has in effect for deletion
967 * ircd/channel.c: added explanatory comments to all added
968 functions; made flushing take place at the correct place even if
969 the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
970 to bash some stupid bugs; made modebuf_flush() return if ModeBuf
971 is empty, fixed the apparent source, removed some bogus string
972 termination code, properly terminate the mode strings, add support
973 for HACK2 and HACK3, made limit strings not be sent if the limit
974 is being removed, changed where '+' and '-' come from in sent
975 strings, added support for DEOP flag, set up bouncing code for
978 * ircd/Makefile.in: ran make depend
980 * include/channel.h: added new defines for future functionality,
981 made modebuf_flush() return int so I can use tail recursion
983 * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
984 to make it all compile
986 * ircd/m_opmode.c: add msg.h to includes...
988 * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
990 * ircd/channel.c (modebuf_flush): realized I forgot to
991 nul-terminate addbuf/rembuf properly...
993 * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
995 * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
996 sendto_serv_butone--blah^2
998 * ircd/send.c (sendto_serv_butone): stupid comments confused me
1000 * ircd/channel.c (modebuf_flush): if there are no mode changes to
1001 propagate, we're done...
1003 * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
1004 not sendto_all_butone
1006 * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
1008 * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
1010 * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
1013 * ircd/parse.c: added messages for opmode and clearmode
1015 * include/handlers.h: added declarations for mo_opmode(),
1016 ms_opmode(), mo_clearmode(), and ms_clearmode()
1018 * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
1021 * include/channel.h (MODEBUF_DEST_OPMODE): Define the
1022 MODEBUF_DEST_OPMODE flag
1024 * ircd/channel.c (modebuf_flush): added new flag,
1025 MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
1026 to originate from source's server (or source itself, if
1027 IsServer(source)); also causes a server-level MODE to be sent as
1030 * include/channel.h: defined MODEBUF_DEST_SERVER,
1033 * ircd/channel.c: Add another argument to build_string() to handle
1034 numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
1035 servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
1038 2000-03-27 Perry Lorier <isomer@coders.net>
1040 * ircd/s_bsd.c: fixed missing 'u' typo.
1042 2000-03-26 Kevin L. Mitchell <klmitch@emc.com>
1044 * ircd/channel.c: implement modebuf_init(), _mode(), _mode_uint(),
1045 _mode_string(), _mode_client(), _flush(); also implemented a
1046 simple build_string()
1048 * include/channel.h: added definition of ModeBuf, modebuf_*
1049 manipulation functions, and a couple of helper macros
1051 2000-03-24 Thomas Helvey <tomh@inxpress.net>
1052 * numicks.c: convert extended numerics to use original mask version
1055 2000-03-23 Thomas Helvey <tomh@inxpress.net>
1056 * Merge in changes from production
1057 2000-03-22 Thomas Helvey <tomh@inxpress.net>
1058 * numicks.c: Tweak to numnick generator to reduce possibility of duplicates.
1059 * rfc1459.unet: Add Maniac's documentation for /names 0
1060 * Fix misc. jupe bugs that somehow made it into the tree
1061 * Escape /names 0 to mean /names --Maniac
1062 * Don't core when server asks for info --Maniac
1063 * Add Kev's jupe patch --Bleep
1064 * Add Maniacs squit patch --Bleep
1065 * Merge in u2_10_10_beta07 changes --Bleep
1066 * Merge in u2_10_10_beta06 changes --Bleep
1067 * Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
1068 #-----------------------------------------------------------------------------
1070 # ChangeLog for ircu2.10.11
1072 # $Id: ChangeLog,v 1.126 2000-05-02 20:09:30 kev Exp $
1074 # Insert new changes at beginning of the change list.