Author: Bleep <tomh@inxpress.net>
[ircu2.10.12-pk.git] / ChangeLog
1 2000-04-13  Thomas Helvey <tomh@inxpress.net>
2         * ircd/IPcheck.c: Back port BLMet's bugfix from 2.10.10
3
4 2000-04-13  Greg Sikorski <gte@atomicrevs.demon.co.uk>
5
6         * ircd/whocmds.c: Don't make idle flag default in /who, to prevent:
7           "/who * x"
8           "Gte3 H*iwg Gte@212.49.240.217 :1 :0 I am the one that was."
9           (Found by Plexus).
10
11         * ircd/whocmds.c: Change idle time calc from socket idle to user
12           idle.
13
14 2000-04-13  Kevin L. Mitchell  <klmitch@mit.edu>
15
16         * config/aclocal.m4 (unet_CHECK_TYPE_SIZES): check size of void *,
17         too, for ircd_snprintf.c
18
19         * include/ircd_snprintf.h: documentation for ircd_(v)snprintf, in
20         comments; mostly descended from the Linux manpage for printf, but
21         also documenting the extensions.
22
23         * ircd/ircd_snprintf.c: NULL dest is equivalent to going to a
24         client; make 'q' be the same as 'L'; remove __inline__; only
25         define EXTENSION if HAVE_LONG_LONG is defined
26
27         * include/handlers.h: declare m_gline()
28
29         * ircd/parse.c: gline can be called by users, but it only lists
30         the glines.
31
32         * ircd/s_user.c (set_nick_name): resend gline if a remote server
33         introduces a glined client
34
35         * ircd/s_serv.c (server_estab): burst glines, too
36
37         * ircd/gline.c: fix up all the expire times to be offsets;
38         simplify gline_resend()
39
40         * ircd/m_gline.c: begin coding replacements for ms_gline(),
41         mo_gline(), and m_gline()
42
43         * ircd/gline.c (gline_add): allow *@#channel to work correctly;
44         also, prohibit local BADCHANs if LOCAL_BADCHAN not defined
45
46 2000-04-13  Greg Sikorski <gte@atomicrevs.demon.co.uk>
47
48         * tools/Bouncer/*: Add comments/documentation/tags.
49         * tools/Bouncer/*: Add debug defines, make task fork().
50
51 2000-04-12  Thomas Helvey <tomh@inxpress.net>
52         * ircd/s_err.c: Cleanup s_err.c make one table so we
53         don't have to do anything tricky to get an error string.
54
55 2000-04-12  Greg Sikorski <gte@atomicrevs.demon.co.uk>
56         * Add port bouncer for http (x/w)
57
58 2000-04-12  Kevin L. Mitchell  <klmitch@mit.edu>
59
60         * ircd/s_conf.c (find_kill): replaced call to find_gline() with a
61         call to gline_find(); also used GlineReason() instead of direct
62         reference to structure member
63
64         * ircd/m_join.c (m_join): replace bad_channel() calls with calls
65         to gline_find(name, GLINE_BADCHAN), and also check to see if gline
66         is active
67
68         * ircd/channel.c: nothing seems to be called anywhere...
69
70         * ircd/s_err.c: update a couple of replies to dovetail with new
71         semantics
72
73         * ircd/gline.c: begin complete re-implementation of gline.c along
74         the lines of the final design of jupe.c
75
76         * include/gline.h: begin complete re-implementation of gline.c
77         along the lines of the final design of jupe.c
78
79         * ircd/channel.c (mode_process_clients): fix "Deop of +k user on
80         %s by %s" message...
81
82         * ircd/ircd_snprintf.c: my new snprintf()-like functions
83
84         * include/ircd_snprintf.h: my new snprintf()-like functions
85
86 2000-04-11  Thomas Helvey <tomh@inxpress.net>
87         * ircd/IPcheck.c: removed old dead code
88         * ircd/s_user.c (send_user_info): removed non-standard
89           user not found message for userhost/userip
90
91 2000-04-11  Greg Sikorski <gte@atomicrevs.demon.co.uk>
92
93         * ircd/s_err.c: Added missing quotes to ERR_DONTCHEAT numeric.
94         * doc/p10.html: Work on chapter 4.
95
96 2000-04-10  Kevin L. Mitchell  <klmitch@mit.edu>
97
98         * ircd/channel.c (mode_parse_client): fix coredump on /mode
99         #foobar +o nosuchnick
100
101 2000-04-10  Perry Lorier  <Isomer@coders.net>
102         * BUGS: Added bug.
103
104 2000-04-09  Thomas Helvey <tomh@inxpress.net>
105         * include/IPcheck.h: fix prototype
106         * ircd/s_user.c: fix usage of IPcheck_remote_connect
107         * ircd/IPcheck.c: removed unused args
108
109 2000-04-09  Thomas Helvey <tomh@inxpress.net>
110         * include/IPcheck.h: add proto for IPcheck_expire
111
112         * ircd/IPcheck.c: Rewrote
113
114         * ircd/ircd.c: Add IPcheck_expire to main message loop
115
116         * ircd/s_user.c: Redo target hashing, refactor target code
117
118         * include/numeric.h: Cleaned up numerics, added which ones are
119         in use by other networks and what they are in use for.
120
121         * ircd/channel.c: cleaned can_join(), allow anyone through anything
122         if /invited, simplified the function.  Opers overusing OPEROVERRIDE
123         will get a message explaining to them not to cheat.
124
125         * ircd/m_join.c: cleaned up the various join functions, should be
126         a lot more efficient.  Still needs work.  Now assumes that s<->s
127         won't send it a JOIN 0.  Service coders - note this and tread with
128         care.
129
130         * ircd/m_stats.c: added Gte-'s stats doc patch.
131
132         * ircd/m_version.c: /version now returns the 005 numeric as well.
133         as requested by Liandrin.
134
135
136 2000-04-07  Kevin L. Mitchell  <klmitch@mit.edu>
137
138         * ircd/m_clearmode.c: add include for support.h for write_log()
139
140         * configure: move ircd/crypt/* to tools/*
141
142 2000-04-06  Thomas Helvey <tomh@inxpress.net>
143         * ircd/s_auth.c: Shorten auth connect timeout to 60 seconds
144           set client host to server alias if connection from localhost
145
146 2000-04-06  Perry Lorier <isomer@coders.net>
147         * ircd/ircd.c: Fix core during pinging (oops)
148         
149 2000-04-06  Perry Lorier <isomer@coders.net>
150         * ircd/send.c: fixed wrong ident being sent to channels bug.
151         * include/numerics.h: Updated some of the numerics from other
152         networks.  Flagged some as 'unused' by undernet.
153
154 2000-03-30  Perry Lorier <isomer@coders.net>
155         * ircd/ircd.c: Lets see if this helps the ping problem at all.
156         * ircd/whocmds.c, /doc/readme.who: Added %l specifier to get idle
157         time for local clients. (as requested), extended who now returns all
158         the flags (@+!) so you can tell the complete state of a client.
159
160 2000-03-30  Thomas Helvey <tomh@inxpress.net>
161         * m_rping.c m_rpong.c: add Gte's rping/rpong fixes
162
163 2000-03-30  Perry Lorier <isomer@coders.net>
164         * ircd/parse.c: oops, missed opers.
165
166 2000-03-30  Perry Lorier <isomer@coders.net>
167         * ircd/parse.c: fixed mystifying ping bug thats been plaguing us
168         for so long.  Remember: m_ping MUST be in the parse array. :)
169
170 2000-03-30  Perry Lorier <isomer@coders.net>
171         * ircd/ircd.c: test in check_pings was wrong.  I move that we
172         disallow cvs commit after 10pm localtime....
173
174 2000-03-30  Perry Lorier <isomer@coders.net>
175         * ircd/m_pong.c: Fix it for servers too.
176
177 2000-03-30  Perry Lorier <isomer@coders.net>
178         * ircd/m_pong.c: Fix ping timeout bugs
179
180 2000-03-30  Perry Lorier <isomer@coders.net>
181         * ircd/channel.c: Bans had CurrentTime in their when field instead
182         of TStime()
183
184 2000-03-31  Thomas Helvey <tomh@ixpress.net>
185         * ircd/numnicks.c (SetXYYCapacity): fix for extended
186         numerics.
187
188 2000-03-30  Perry Lorier <isomer@coders.net>
189         * ircd/m_nick.c: send kills both ways so when we add nick change
190         on collision we don't desync the network.
191
192         * ircd/map.c: Fixup the map a bit more.
193
194 2000-03-31  Kevin L. Mitchell  <klmitch@mit.edu>
195
196         * ircd/m_clearmode.c (do_clearmode): Log the CLEARMODE to OPATH
197
198         * ircd/m_opmode.c: Log the mode changes to OPATH
199
200         * ircd/channel.c (modebuf_flush_int): Log the mode changes to
201         OPATH
202
203         * include/channel.h (MODEBUF_DEST_LOG): Log the mode changes to
204         OPATH
205
206         * doc/Configure.help: help text for CONFIG_LOG_OPMODE / OPATH
207
208         * config/config-sh.in: added OPATH for opmode log file
209
210         * ircd/m_clearmode.c (do_clearmode): updated uses of
211         modebuf_mode_string() for the new usage
212
213         * ircd/channel.c: added flag MODE_FREE and an int argument to
214         modebuf_mode_string() to indicate that the string must be free'd;
215         updated calls to modebuf_mode_string() for the new usage; called
216         collapse(pretty_mask()) on the ban string and use allocated memory
217         for it; added ban list length accounting; fixed a number of small
218         bugs in ban processing
219
220         * include/channel.h: added flag MODE_FREE and an int argument to
221         modebuf_mode_string() to indicate that the string must be free'd
222
223         * ircd/m_clearmode.c (do_clearmode): made sure clearmode removed
224         keys and limits that are set
225
226 2000-03-30  Perry Lorier <isomer@coders.net>
227         * ircd/ircd.c: rewrote check_pings() for maintainability
228         and speed.  Also changed quit msg's so they don't have
229         redundant nick[host] info in them.
230
231         * ircd/send.c: Changed write errors to report what error
232         occured (if possible).
233
234         * ircd/gline.c: added gline comment to the quit.
235
236         * ircd/m_server.c: Added suggestions to server quits mentioning
237         what went wrong so the admin can fix it earlier instead of asking
238         questions...
239
240         * ircd/map.c: Changed m_map() to hide numerics, show a * beside
241         servers that aren't fully burst yet.  And show '(--s)' for servers
242         where its not sure.
243
244         * doc/example.conf: Fixed wrapped U:
245
246 2000-03-30  Kevin L. Mitchell  <klmitch@mit.edu>
247
248         * ircd/m_mode.c (ms_mode): implemented a new m_mode in terms of
249         mode_parse() (version selectable at compile time)
250
251         * ircd/m_clearmode.c (mo_clearmode): clean_channelname(parv[1])
252
253         * ircd/m_opmode.c (mo_opmode): clean_channelname(parv[1])
254
255         * config/config-sh.in: add new config option to enable new m_mode
256         implementation
257
258         * doc/Configure.help: add documentation for new config option
259         CONFIG_NEW_MODE
260
261         * ircd/channel.c (mode_parse_client): /opmode #foobar -o -- 461
262         MODE -v : Not enough parameters
263
264         * ircd/m_clearmode.c (do_clearmode): do_clearmode() would remove
265         +k and +l even if they weren't set...
266
267         * ircd/m_opmode.c: implement the OPMODE command using mode_parse()
268
269         * ircd/channel.c: make mode_process_clients() clear the DEOPPED
270         flag; fix +s+p exclusivity; add MODE_ADD/MODE_DEL to flag list
271         for; test the 0-th member, not the i-th member, of the client
272         change state stuff
273
274         * ircd/m_clearmode.c (do_clearmode): use the new
275         mode_invite_clear() function
276
277         * ircd/channel.c: cleared up all the compile-time warnings and
278         errors
279
280         * include/channel.h: added declarations for mode_ban_invalidate()
281         and mode_invite_clear()
282
283         * ircd/channel.c: finished mode_parse(), then broke it up into a
284         dozen or so helper functions to make the code easier to read
285
286 2000-03-29  Thomas Helvey <tomh@inxpress.net>
287         * ircd/ircd.c: refactor server initialization a bit, use
288         getopt for parsing command line, refactor init_sys, main,
289         and other bits.
290
291         * ircd/s_bsd.c: add functions for initialization to clean
292         up logic a bit and remove duplicated code.
293
294         * include/ircd.h: add struct for server process related
295         variables.
296
297 2000-03-29  Kevin L. Mitchell  <klmitch@mit.edu>
298
299         * ircd/channel.c: initial definition of mode_parse(); flags to
300         prevent doing the same thing multiple times; helper method
301         send_notoper() to send a "Not oper"/"Not on channel" notice
302
303         * include/channel.h: declare mode_parse() and helper flags
304
305         * ircd/channel.c (modebuf_flush_int): fiddled with timestamp
306         sending to match the current action of set_mode() closely enough
307         that hopefully there won't be major conflicts
308
309         * ircd/channel.c (modebuf_flush_int): consolidated the mode string
310         building logic, reversed the order of the arguments to mode
311         commands to have '-' preceed '+'
312
313 2000-03-29  Thomas Helvey <tomh@inxpress.net>
314         * ircd/s_bsd.c (add_connection): don't disable socket options
315         let OS tune itself and allow important performance tweaks to 
316         work.
317
318 2000-03-28  Kevin L. Mitchell  <klmitch@mit.edu>
319
320         * ircd/channel.c (modebuf_flush_int): use %d, not %-15d; I got
321         confused by set_mode, which is doing some really weird logic;
322         guess what I'm going to rewrite next?  ;)
323
324 2000-03-28  Kevin L. Mitchell  <klmitch@emc.com>
325
326         * include/channel.h: added MODE_SAVE for the bounds checking stuff
327         in modebuf_flush
328
329         * ircd/channel.c: make modebuf_flush into modebuf_flush_int and
330         make it do bounds checking on the buffer; all modes are sent only
331         if the all parameter is 1; modebuf_flush is the exported wrapper
332
333         * include/channel.h: add BOUNCE, renumber flags to get a little
334         more space
335
336         * ircd/channel.c (modebuf_flush): don't overload HACK2, add
337         BOUNCE; send DESYNCH message
338
339 2000-03-27  Kevin L. Mitchell  <klmitch@emc.com>
340
341         * ircd/m_clearmode.c (do_clearmode): only mark the modes the
342         channel actually has in effect for deletion
343
344         * ircd/channel.c: added explanatory comments to all added
345         functions; made flushing take place at the correct place even if
346         the MODEBUF_DEST_DEOP flag is set; rewrote build_string() helper
347         to bash some stupid bugs; made modebuf_flush() return if ModeBuf
348         is empty, fixed the apparent source, removed some bogus string
349         termination code, properly terminate the mode strings, add support
350         for HACK2 and HACK3, made limit strings not be sent if the limit
351         is being removed, changed where '+' and '-' come from in sent
352         strings, added support for DEOP flag, set up bouncing code for
353         HACK2
354
355         * ircd/Makefile.in: ran make depend
356
357         * include/channel.h: added new defines for future functionality,
358         made modebuf_flush() return int so I can use tail recursion
359
360         * ircd/m_clearmode.c: add msg.h to includes; other misc cleanups
361         to make it all compile
362
363         * ircd/m_opmode.c: add msg.h to includes...
364
365         * ircd/m_clearmode.c: implemented mo_clearchan()/ms_clearchan()
366
367         * ircd/channel.c (modebuf_flush): realized I forgot to
368         nul-terminate addbuf/rembuf properly...
369
370         * ircd/m_clearmode.c (do_clearmode): wrote do_clearmode()...
371
372         * ircd/channel.c (modebuf_flush): correct sendto_server_butone to
373         sendto_serv_butone--blah^2
374
375         * ircd/send.c (sendto_serv_butone): stupid comments confused me
376
377         * ircd/channel.c (modebuf_flush): if there are no mode changes to
378         propagate, we're done...
379
380         * ircd/channel.c (modebuf_flush): duh; it's sendto_server_butone,
381         not sendto_all_butone
382
383         * ircd/m_clearmode.c: define skeleton for m{o,s}_clearmode
384
385         * ircd/m_opmode.c: define skeleton for m{o,s}_opmode
386
387         * ircd/Makefile.in (SRC): added m_opmode() and m_clearmode() to
388         the list
389
390         * ircd/parse.c: added messages for opmode and clearmode
391
392         * include/handlers.h: added declarations for mo_opmode(),
393         ms_opmode(), mo_clearmode(), and ms_clearmode()
394
395         * include/msg.h: define MSG_OPMODE, TOK_OPMODE, MSG_CLEARMODE, and
396         TOK_CLEARMODE
397
398         * include/channel.h (MODEBUF_DEST_OPMODE): Define the
399         MODEBUF_DEST_OPMODE flag
400
401         * ircd/channel.c (modebuf_flush): added new flag,
402         MODEBUF_DEST_OPMODE; causes channel MODE/HACK(4) notice to appear
403         to originate from source's server (or source itself, if
404         IsServer(source)); also causes a server-level MODE to be sent as
405         OPMODE instead
406
407         * include/channel.h: defined MODEBUF_DEST_SERVER,
408         MODEBUF_DEST_HACK4
409
410         * ircd/channel.c: Add another argument to build_string() to handle
411         numeric nicks; implemented MODEBUF_DEST_SERVER to send MODEs to
412         servers; implemented MODEBUF_DEST_HACK4 to cause HACK(4) notices
413         to be sent out
414
415 2000-03-27  Perry Lorier <isomer@coders.net>
416
417         * ircd/s_bsd.c: fixed missing 'u' typo.
418
419 2000-03-26  Kevin L. Mitchell  <klmitch@emc.com>
420
421         * ircd/channel.c: implement modebuf_init(), _mode(), _mode_uint(),
422         _mode_string(), _mode_client(), _flush(); also implemented a
423         simple build_string()
424
425         * include/channel.h: added definition of ModeBuf, modebuf_*
426         manipulation functions, and a couple of helper macros
427
428 2000-03-24 Thomas Helvey <tomh@inxpress.net>
429   * numicks.c: convert extended numerics to use original mask version
430   * numnicks.h: ""
431   * s_user.c:
432 2000-03-23 Thomas Helvey <tomh@inxpress.net>
433   * Merge in changes from production
434 2000-03-22 Thomas Helvey <tomh@inxpress.net>
435   * numicks.c: Tweak to numnick generator to reduce possibility of duplicates.
436   * rfc1459.unet: Add Maniac's documentation for /names 0
437 * Fix misc. jupe bugs that somehow made it into the tree
438 * Escape /names 0 to mean /names --Maniac
439 * Don't core when server asks for info --Maniac 
440 * Add Kev's jupe patch --Bleep
441 * Add Maniacs squit patch --Bleep
442 * Merge in u2_10_10_beta07 changes --Bleep
443 * Merge in u2_10_10_beta06 changes --Bleep
444 * Start ircu2.10.11 development, beta branch u2_10_10 --Bleep
445 #-----------------------------------------------------------------------------
446 #
447 # ChangeLog for ircu2.10.11
448 #
449 # $Id: ChangeLog,v 1.81 2000-04-14 02:56:22 bleep Exp $
450 #
451 # Insert new changes at beginning of the change list.
452 #