]>
Commit | Line | Data |
---|---|---|
189935b1 | 1 | # |
2 | # ChangeLog for ircu2.10.10 | |
3 | # | |
4 | # $Id: ChangeLog.10,v 1.2 2003/01/08 03:17:18 klmitch Exp $ | |
5 | # | |
6 | # Insert new changes at beginning of the change list. | |
7 | # | |
8 | -------------------------- Released 2.10.10.pl15 | |
9 | * Fiddle with /KILL and various exits to make the user experience uniform, | |
10 | no matter who's doing the killing or where. Previously, differences in | |
11 | QUITs and in the messages sent to the killed client could help make a | |
12 | partial map of the network; now that these messages are all uniform, there | |
13 | is no way to tell. -Kev | |
14 | * Split ISUPPORT numeric into two numerics, so as not to exceed the 15 | |
15 | parameter limit imposed by the RFC -Kev | |
16 | * Turn on HEAD_IN_SAND_REMOTE...oops -Kev | |
17 | * Send prefixed error messages to other servers, so ERROR doesn't get | |
18 | interpreted as a prefix -Kev | |
19 | * Reverse sense of HEAD_IN_SAND_WHO_HOPCOUNT to do what was intended; use a | |
20 | hopcount of 0 if user is using /who on him/herself -Kev | |
21 | * Allow a user to see his/her own idle time without having to do | |
22 | /whois <nick> <nick>; correct spelling of HEAD_IN_SAND_IDLETIME to | |
23 | HEAD_IN_SAND_WHOIS_IDLETIME -Kev | |
24 | * Fix a missing ')' in the idle time stuff -Kev | |
25 | * Include ircd_policy.h in whocmds.c -Kev | |
26 | * Fixed bug in idle time, thanks hektik -- Isomer | |
27 | * Update 005 to be compliant with other networks -- Isomer | |
28 | * Hide hop count -- Isomer | |
29 | * Hide idletime unless you explicitly ask for it -- Isomer | |
30 | * /wallops and /wallusers would dump core because of the previous change--my | |
31 | bad. Now only include user@host when sptr is a client. -Kev | |
32 | * /wallops and /wallusers would leave out the user@host--noticed because | |
33 | pl14 broke my script. Fixed. -Kev | |
34 | * Fix several compile warnings, including the one in table_gen.c -Kev | |
35 | * Fix a bug in m_silence.c that rendered it uncompilable -Kev | |
36 | * Hopefully make mode clears during bursts appear to originate from local | |
37 | server -Kev | |
38 | * Fix several things to send server<->server protocol messages with numeric | |
39 | origins -Kev | |
40 | * Rework directed notices and mass-messages to use numerics and tokens | |
41 | as appropriate; the latter required the modifications to | |
42 | sendto_match_butone() -Kev | |
43 | * Redefined how sendto_match_butone() works, since it's only used with | |
44 | PRIVMSG or NOTICE -Kev | |
45 | * Bumped patchlevel to pl15(development) -Kev | |
46 | * Corrected reverse-sense of HEAD_IN_SAND_REMOTE test in m_whois() -Kev | |
47 | * Clean up logic in m_whowas(), corrected numeric reply -Kev | |
48 | * Finally fixed /whois to tell you what your own server is -Kev | |
49 | * Clean up logic in add_banid() with some well-placed DupString()'s -Kev | |
50 | * Hide which server performed a nick collision kill -- Isomer | |
51 | * To allow for remote whois not giving away the remote server, all remote | |
52 | numerics to clients are remapped to come from the local server :/ -- Isomer | |
53 | * All remote queries are disabled for users, except /whois -- Isomer | |
54 | (/whois now uses the second parameter for which server to use, ie: | |
55 | /whois <ignored> <nick> will query <nick>'s server.) | |
56 | * Fixed /who showing server name -- Isomer | |
57 | * Fixed burst showing linking server -- Isomer | |
58 | * Fixed burst bans showing linked server -- Isomer | |
59 | * Fixed /whowas showing server name -- Isomer | |
60 | -------------------------- Released 2.10.10.pl14 (You got any issues with that punk?) | |
61 | * Changed (then fixed) /LINKS to output an empty links list -- Isomer | |
62 | * Make netsplit server notice say the right thing | |
63 | * Final fix for HEAD_IN_SAND_WHOIS_SERVERNAME | |
64 | * Fix a bug with implementation of HEAD_IN_SAND_NETSPLIT | |
65 | * Permit users to find out what server they're on, since they already | |
66 | know -- Kev | |
67 | * Added HEAD_IN_SAND_WHO_SERVERNAME to cover final source of server | |
68 | names -- Kev | |
69 | * Fixed wallops, wallusers now sends wallops to local clients, | |
70 | wallusers to servers. | |
71 | * Added host to /kill messages -- Isomer | |
72 | * Fixed whois (opers can see server names) -- Isomer | |
73 | * Implement walluser -- Bleep | |
74 | * stats fixed -- Isomer | |
75 | * trace disabled from non opers -- Isomer | |
76 | * server name removed from whois (but not /who, shrug!) -- Isomer | |
77 | * netsplits are now represented with "*.net *.split" -- Isomer | |
78 | * Done /links -- Isomer | |
79 | * Modifications to map as suggested by nighty -- Isomer | |
80 | * Wallops is the only code that uses sendto_ops_butone now, this | |
81 | isolates wallops entirely. No server notices sent by wallops. | |
82 | * HEAD_IN_SAND_SNOTICES done -- Bleep | |
83 | * HEAD_IN_SAND_WALLOPS done -- Bleep | |
84 | * HEAD_IN_SAND_DESYNC done -- Bleep | |
85 | * HEAD_IN_SAND_MAP done -- Isomer | |
86 | * According to CFV-165, buring our head in the sand to try and | |
87 | * hide from DoS - First pass -- Isomer | |
88 | * As requested by hop: hidden keys are shown as "*" not "" -- Isomer | |
89 | * As requested by Buff: allow admins to *disable* below behavour -- Isomer | |
90 | * As requested by Adriel, compile time option to disable mo_wallops | |
91 | -- Isomer | |
92 | -------------------------- Released 2.10.10.pl13 | |
93 | * Don't allow two copies of the server to start -- Isomer/Kev | |
94 | -------------------------- Released 2.10.10.pl12 | |
95 | * Release 2.10.10.pl12 before Mr_RIP threatens physical violence -- Isomer | |
96 | * Don't 'hubhide' nick's in /trace (oops!) -- Isomer | |
97 | * Allow K:line by realname, updated client connection logging -- Gte- | |
98 | * ircd/m_join.c: use ERR_BANNEDFROMCHAN instead of ERR_BADCHANNAME -- Kev | |
99 | --------------------------- Released 2.10.10.pl11.(release) | |
100 | * Fixed G-lined (reason), thanks to dfx -- Isomer | |
101 | * Added reason to the "G-lined (reason)" quit messages. -- Isomer | |
102 | * Removed 'for nick[1.2.3.4]' from quit messages, they're redundant | |
103 | and make hub hiding more reliable --Isomer | |
104 | * ircd/s_user.c (hunt_server): add 'No such server' message back | |
105 | --Isomer | |
106 | * ircd/s_bsd.c: remove ALWAYSFLUSH - the problem wasn't ircu's fault | |
107 | -- Isomer | |
108 | * ircd/m_names.c (m_names): don't add a space if the user's a | |
109 | zombie; fixes an overrun where we generate a huge number of spaces | |
110 | in the names reply without length-checking them properly -- Kev | |
111 | * added 'ALWAYSFLUSH', if you thought the furgeson flusher was bad... | |
112 | --Isomer | |
113 | * Fixed /USERHOST again. Horribly embarrased. Thanks again Liandrin | |
114 | --Isomer | |
115 | * Added extra field to /stats Y showing how many people are in that class. | |
116 | Information was previously available via /trace, however tended to flood | |
117 | you off if you weren't on a good connection. Requested by Mr_RIP | |
118 | -- Isomer | |
119 | * Fixed 'BADCHAN' resetting itself to 'Y', reported by Gator --Isomer | |
120 | --------------------------- Released 2.10.10.pl10 | |
121 | * Released 2.10.10.pl10 | |
122 | * Backported /names optimisation from 2.10.11. | |
123 | '/names 0' now returns verbose listing, '/names' simply returns | |
124 | ENDOFNAMES. Disallow harmfull /names usage. --Gte | |
125 | * Fixed ERR_NOSUCHNICK bug in userhost, thanks to Liandrin --Isomer | |
126 | * Conceal more bugs in IPcheck --Isomer | |
127 | * Add 'POST' as a unregistered command to disconnect people abusing web | |
128 | proxies --Isomer. | |
129 | * Conceal bugs in IPcheck --Isomer | |
130 | * Fix for changing the wrong define --Isomer | |
131 | * Fix for the easter buggy. --Isomer | |
132 | * Fix for rpong --Run | |
133 | * Fix for other IPcheck bug, thanks BLMet. --Bleep | |
134 | * Fix for IPcheck bug, rewrite IPcheck from scratch (mostly), | |
135 | add changes for new code to s_user.c, ircd.c --Bleep | |
136 | * Shorten connection timeout for auth queries to 60 seconds | |
137 | If connection is from localhost use the server alias for the | |
138 | client host. --Bleep | |
139 | * Fix for ident bug --Isomer | |
140 | * Fix for rping/rpong --Gte | |
141 | * Add m_pong to parser handler --Bleep | |
142 | * Fix for EXTENDED_NUMERICS bug doh!!! --Bleep | |
143 | * Fix for Max Undernet Server bug --Bleep | |
144 | * Fix for PRIVMSG<->NOTICE translation from hubs --Bleep | |
145 | * Fix for Bogus protocol strings for P9 servers --Bleep | |
146 | * Hookup UPING code again, cleanups --Bleep | |
147 | * Convert numerics back to mask and shift extended numerics | |
148 | follow same mechanism --Bleep | |
149 | * Fixed bogus errno return on Solaris --Bleep | |
150 | * Fixed core on RPING bug, tokenized RPING --Bleep | |
151 | * Remove add_local_domain entirely, unused --Bleep | |
152 | * Merge u2_10_10_beta06 create branch u2_10_10_beta07 --Bleep | |
153 | * Remove size_t from socket calls, audit usage of size_t | |
154 | values. --Bleep | |
155 | * Fix for OSF1, RES_NOALIASES not defined there. --Bleep | |
156 | * Don't bother doing hostname lookup or setting me.sockhost | |
157 | since we never want to display it there is really no reason | |
158 | to have the info. --Bleep | |
159 | * Bugfix broken N:line check in chkconf --Maniac | |
160 | * Bugfix, fix clients occasionally getting stuck in IPcheck | |
161 | code. Add note to members in client struct that aren't used | |
162 | for any remote client code, didn't want to actually move them | |
163 | this close to release (paranoia) --Bleep | |
164 | * A few little cleanups in check_pings, removed yet another | |
165 | address display. --Bleep | |
166 | * Bugfix, autoconnects displaying server IP address to opers. | |
167 | --Bleep | |
168 | * Remove names from /stats p, since its always the server | |
169 | name from the M:line anyhow, (redundant information) | |
170 | --Bleep | |
171 | * Unborked throttling. --Bleep | |
172 | * Fix two stupid bugs, related to IP mismatch kills. --Bleep | |
173 | * Clean up configuration, make it a bit easier for admins to | |
174 | turn off asserts and heap checking code. Moved host name dns | |
175 | query for listener virtual host ports to dead code and use | |
176 | me.name for the listener name (no sense in looking up the name | |
177 | if we don't want to display it). Change direct bump of unknowns | |
178 | in s_bsd.c to Count_newunknowns(UserStats) for consistency. | |
179 | --Bleep | |
180 | * Added option to kill any connecting client with a forward and | |
181 | reverse DNS mismatch. Fixed bug in s_auth that that caused | |
182 | incorrect counts for unknown clients. Replaced missing server | |
183 | notice for SNO_IPMISMATCH. --Bleep | |
184 | * Added a few more little name tweaks, no sense in looking up | |
185 | the hostname in the conf if no one knows it. --Bleep | |
186 | * Moved to beta archive, bumped patchlevel, fixed message for | |
187 | lost C:line in s_conf.c (I don't think I've ever seen this happen) | |
188 | --Bleep | |
189 | * Finished host hiding changes, it should not be possible for any | |
190 | online user to discover the real hostname or IP address of any | |
191 | connected or unconnected server listed in the configuration. This | |
192 | applies to opers and regular users. The name in the M:line is the | |
193 | name used for connecting and all informational messages. --Bleep | |
194 | * Removed code in dbuf.c that flushes the dbufs if the server runs out | |
195 | it looks like a fully loaded server may not be able to handle a net | |
196 | break without shedding a few clients. --Bleep | |
197 | * Finish IP address cleanup, alpha should be clean for not displaying | |
198 | server hosts or IP addresses to users now. This needs to be verified. | |
199 | Changed version to u2.10.10 per Isomers suggestion. --Bleep | |
200 | * Remove server IP address from info line for connecting servers. | |
201 | This almost completes the IP address hiding changes for alpha, there | |
202 | are still a few stats commands available to users that will show the | |
203 | server addresses, but they can be easily disabled or only show '*'s | |
204 | to non-opers. --Bleep | |
205 | * Fix possible (but not likely) memory leak in debug allocator, couldn't | |
206 | find the "meg a minute" problem, using the debug allocator on the | |
207 | production network with more than 1000 clients on a server may cause | |
208 | problems if you don't have a lot of memory. (This does not seem to | |
209 | be a problem with non-debug builds) --Bleep | |
210 | * Captialisation fixes, just to keep certain ppl quiet. --Isomer | |
211 | * Removed +s channels from /list. They were shown sometimes, but not | |
212 | others, and the information that was shown about them was inconsistant. | |
213 | list is not an effective way to gain information anyway. Reformatted | |
214 | and touched up readme.who as well. --Isomer | |
215 | * Added MAP to ISUPPORT, added doc/features.txt --Isomer | |
216 | * Added suggestions made by scripters. more info for ISUPPORT, and | |
217 | added stuff to 'TODO' --Isomer | |
218 | * More TODO items 'done'. P:'s now ignore '*'s. ping shouldn't do funky | |
219 | stuff with mirc anymore, needs discussion --Isomer | |
220 | * Typo fixed. Now I'm annoyed. --Isomer | |
221 | * Right, Makefile's gonna work now or I'm going to get REALLY annoyed at it. | |
222 | --Isomer | |
223 | * TODO, m_ping, ircd/Makefile.in: Added note to TODO, added info to | |
224 | m_ping, and fixed Makefile bug using bsdmake. --Isomer | |
225 | * s_bsd.c, listener.c, s_user.c, s_serv.c, s_bsd.h: | |
226 | Set receive and send buffers in correct order to enable flow | |
227 | control for clients and support fat pipes better for servers. | |
228 | Finally got it right :) | |
229 | See Stevens "Unix Network Programming" v1 p 191-193 | |
230 | --Bleep | |
231 | * ircd.c (main): added idiot checking to make sure MAXCONNECTIONS | |
232 | is sane. --Bleep | |
233 | * send.c: Don't let negative fd's break stuff, audit sentalong | |
234 | usage for sillyness. --Bleep | |
235 | * send.c (sendto_common_channels): bug fix, code assumed client | |
236 | local, file descriptor is only in local client struct | |
237 | --Bleep | |
238 | * table_gen.c, channel.c: make FIXME changes, removed | |
239 | FIXME code from table_gen, readd FIXME code to channel.c, | |
240 | I hope I got this right. --Bleep | |
241 | * Makefile.in: Add purify def, fix so CFLAGS don't error | |
242 | off when using Solaris compiler --Bleep | |
243 | * fda.c (fda_free): fix compile error on Solaris --Bleep | |
244 | * configure.in: add SunOS case to detect Solaris --Bleep | |
245 | * os_solaris.c (os_send_nonb): fix solaris compile error --Bleep | |
246 | * exaconf.2: add file from conf design to docs directory to | |
247 | have it available for new conf parser development --Bleep | |
248 | * fda.c (fda_free): fix memory leak, doh!!! --Bleep | |
249 | * hash.c (addNickJupes): fix buffer overrun --Bleep | |
250 | * s_bsd.c (read_message(poll)): fix uninitialized memory read | |
251 | bogosity in poll macros. --Bleep | |
252 | * channel.c (send_user_modes): change to send XXX:ov instead | |
253 | of XXX:o:v doesn't send XXX: if no modes set. --Bleep | |
254 | * s_bsd.c (connect_server): bugfix for connect/rehash/connect | |
255 | multiple outstanding dns query core. --Bleep | |
256 | * channel.c (send_user_modes): bugfix for burst not sending modes | |
257 | when burst line is created. --Gte | |
258 | * m_gline.c: change NumServ(cptr) to NumServ(sptr) found by Gte | |
259 | --Bleep | |
260 | * config-sh.in: add WildThangs BADCHAN config fix --Bleep | |
261 | * config-sh.in: add Runs restart bugfix --Bleep | |
262 | * Makefile.in: make sure version.c gets regenerated when checksums | |
263 | change --Bleep | |
264 | * Makefile.in: remove hash.c/crypt/sums idiocy, all of the ridiculous | |
265 | anti-hack stuff is already done in version.c anyhow. | |
266 | "Shhh..., don't tell the admins ( .)( .) you're being watched" | |
267 | --Bleep | |
268 | * hash.c (m_hash): fix count bugs --Bleep | |
269 | * m_squit.c (mo_squit): fix off by one, /quote SQUIT bug --Bleep | |
270 | * ircd_relay.c: oops, changed the wrong one. Fixed previous fix. --Isomer | |
271 | * Makefile.in, ircd_relay.c: Fixed 'make depend', added dependancies, fixed | |
272 | bug where server would core on sending a server notice --Isomer | |
273 | * m_kick.c (ms_kick): fix core on kick message coming from | |
274 | server --Bleep | |
275 | * config.in: remove CRYPT_LINK_PASSWORD option --Bleep | |
276 | * doc/readme.www: Applied Runs' doc patch --Bleep | |
277 | * client.h: Add member to client struct to try to aggravate the | |
278 | bug found by Jesus --Bleep | |
279 | * client.h: Remove IsListening macros and flags, add FLAGS_UPUNG | |
280 | and IsUPing/GetUPing/SetUPing macros --Bleep | |
281 | * m_silence.c, m_create.c: check for IsServer(sptr) don't | |
282 | allow X SILENCE X +*@*.com or X C #blah 947477407 core the | |
283 | server. --Bleep | |
284 | * os_*.c, res.c: clean interface for os_recvfrom_nonb --Bleep | |
285 | * uping.c, uping.h: new files for UDP pings, these aren't hooked up yet, or | |
286 | finished or tested. | |
287 | --Bleep | |
288 | * channel.c: find_member_link(): Fail fast for Servers, prevents core when | |
289 | servers set a channel mode. --Isomer | |
290 | * channel.c, channel.h, various.c: Changed find_member_link() to take | |
291 | a chptr instead of the first member, and special case'd +k users | |
292 | (see comment in code for more details) --Isomer | |
293 | * ircd/Makefile.in: Changed gnu specific $^ for $< in table_gen | |
294 | rules --Bleep | |
295 | * INSTALL: Explained about CVS --Isomer | |
296 | * example.conf: Point to coder-com@ for help configuring the server. --Isomer | |
297 | * INSTALL: Make things a bit more plain. --Isomer | |
298 | * s_bsd.c (read_message (poll)): removed local_cptr array using | |
299 | this temp made possible a bug where if a client lower in the list | |
300 | managed to exit a client higher in the list, a dangling reference | |
301 | to the already exited client would be left in the local_cptr array. | |
302 | Found by Quantum by loading 100's of clones with the same nick. | |
303 | --Bleep | |
304 | * INSTALL: Added instructions for -lcrypt FAQ --Isomer | |
305 | * INSTALL: Added instructions for -lresolv FAQ --Isomer | |
306 | * INSTALL: Added instructions for making ./configure executable --Isomer | |
307 | * numeric.h: Merged in some more numerics that other ircds user --Isomer | |
308 | * IPcheck.c: Fix gramatical error to keep pedants happy. --Isomer | |
309 | * IPcheck.c: Allow -DNOTHROTTLE for debugging purposes. --Isomer | |
310 | * m_stats.c: make stats c available to opers only, TEMP_HACK --Bleep | |
311 | * IPcheck.c: Fixed outdated comment. Thanks Quantum --Isomer | |
312 | * ircd_reply.c: Fix the fix, silly typo. thanks Bleep --Isomer | |
313 | * ircd_reply.c: added check for people without nicks. --Isomer | |
314 | * doc/Authors, ircd/version.c.SH: updated /info and maintainer | |
315 | lists. --Isomer | |
316 | * channel.h, channel.c, m_join.c, m_mode.c: add David M's | |
317 | lchanmode patch update --Bleep | |
318 | * s_auth.c: fix ident bug, comment code for rule. --Bleep | |
319 | * m_invite.c (m_invite): Fix syntax error, missing ')'. -- Isomer. | |
320 | * m_invite.c (m_invite): tokenize invites, change from accidental | |
321 | broadcast to directed message (bug fix). --Bleep | |
322 | * m_time.c (m_time): send tokenized time messages --Bleep | |
323 | * s_user.c (set_user_mode): Send wallops to everyone by default | |
324 | allow compile option WALLOPS_OPER_ONLY for networks that want | |
325 | to disable wallops for users. --Bleep | |
326 | * s_misc.c (exit_one_client): tokenize client quit message to other servers. | |
327 | --Gte | |
328 | * m_kick.c: you would have thought I'd fix all of them the first time, but | |
329 | no... -- Isomer | |
330 | * m_kick.c: Fixed missing space after TOK_KICK -- Isomer | |
331 | * m_burst.c: Fixed netrider kick bugs -- Isomer | |
332 | * s_user.c: Bug fix --Bleep | |
333 | * s_user.c: only send wallops to opers --Bleep | |
334 | * s_user.c: enforced undernet policy. -- Isomer | |
335 | * s_user.c: replace user_modes with struct UserMode array | |
336 | change code to use new struct. --Bleep | |
337 | * s_user.c (set_user_mode): clean up switch statement --Bleep | |
338 | * channel.c (set_mode): fixed -k foo bug, extra == 0 typo in | |
339 | conditional. --Bleep | |
340 | * dbuf.c (dbuf_alloc): fixed count bug, we _have_ to count it in | |
341 | the branches. --Bleep | |
342 | * dbuf.c, send.c, s_bsd.c, send.h: bahh finally did it right, | |
343 | if a dbuf allocation fails, attempt to flush all send buffers except | |
344 | for the one we are trying to build (we're twiddling with the list etc..) | |
345 | if the allocation fails a second time, _then_ bail. --Bleep | |
346 | * s_bsd.c, send.c: if dbuf_put fails for send or receive buffers, | |
347 | call flush connections to free up some buffers (safe here). --Bleep | |
348 | * dbuf.c (dbuf_put): back out previous change, afaict it would fail | |
349 | spectacularly --Bleep | |
350 | * dbuf.c (dbuf_put): call flush_connections(0) if we can't allocate | |
351 | a dbuf the first time, this may prevent the server from dropping | |
352 | connections during netbursts. --Bleep | |
353 | * m_privmsg.c: fix IDLE_ON_MSG fix -- Isomer | |
354 | * m_privmsg.c, parse.c: fix IDLE_ON_MSG bug --Bleep | |
355 | * m_ison.c (m_ison): Temp hack to fix missing null terminator. --Bleep | |
356 | * m_nick.c (m_nick): fix null nick reply bug --Bleep | |
357 | * ircd_string.c, match.c: fix a couple possible issues with | |
358 | the character attribute changes --Bleep | |
359 | * s_auth.c, ircd.c: turn off connection status messages for | |
360 | connections to server ports. --Bleep | |
361 | * ircd.c, s_conf.c, m_server.c, ircd.h, s_conf.h: | |
362 | removed portnum and server_port global variables, server port | |
363 | in M:lines is ignored, server ports now need to be defined in | |
364 | the P:lines. Add SERVER_PORT config option to allow: | |
365 | '/connect server.net.dom' without specifying the port. --Bleep | |
366 | * config-sh.in: change PORTNUM to SERVER_PORT now used for | |
367 | default server port for outgoing connections in m_connect. | |
368 | --Bleep | |
369 | * example.conf: document changes to M:line for server port --Bleep | |
370 | * ircd_chattr.h, ircd_string.h, ircd_string.c, table_gen.c: | |
371 | put Nemesi's table generation code and macros back in, the | |
372 | tables are now automagically generated whenever the table_gen.c | |
373 | file is modified, use a slightly different mechanism to get the | |
374 | tables in the executable. Add reference data file to test dir | |
375 | for character attributes. --Bleep | |
376 | * s_auth.c (check_ident_reply): add function that implements | |
377 | auth reply undernet rules checking. --Bleep | |
378 | * s_misc.c (date): added Runs Y2K patch --Bleep | |
379 | * m_privmsg.c: work on server handlers, hookup new code to parser, | |
380 | test, fixed a couple bugs, fixed username bug in server NICK | |
381 | processing --Bleep | |
382 | * ircd_chattr.c, m_privmsg.c: Work on privmsg code a bit more, | |
383 | commit for review, still a bit more to do --Bleep | |
384 | * os_bsd.c, configure.in: add os dependency file for bsd | |
385 | --Bleep | |
386 | * m_privmsg.c, ircd_string.c: little cleanups for privmsg | |
387 | work on prototype handler for new parser. --Bleep | |
388 | * m_connect.c, s_conf.c: clean up /connect handling code | |
389 | --Bleep | |
390 | * m_away.c, m_admin.c, m_close.c, m_connect.c: | |
391 | start cleaning up handlers --Bleep | |
392 | * whocmds.c, whowas.c, *.c: split out handlers from whocmds.c | |
393 | and whowas.c --Bleep | |
394 | * s_serv.c, m_*.c: split out handlers from s_serv.c | |
395 | --Bleep | |
396 | * querycmds.c, m_*.c: split out handlers from querycmds.c | |
397 | --Bleep | |
398 | * opercmds.c, m_stats.c, m_connect.c, parse.c, handlers.h, *.c | |
399 | add new command handlers --Bleep | |
400 | * channel.c, m_names.c: new file for names handler --Bleep | |
401 | * channel.c, m_list.c: new file for list handler --Bleep | |
402 | * channel.c, m_topic.c: new file for topic handler --Bleep | |
403 | * channel.c, m_burst.c: new file for burst handler --Bleep | |
404 | * channel.c, m_create.c: new file for create handler --Bleep | |
405 | * channel.c, m_destroy.c: new file for destroy handler --Bleep | |
406 | * channel.c, send.c, m_join.c: new file for join handler, | |
407 | const fixups for send.c --Bleep | |
408 | * channel.c, m_mode.c: new file for mode command handler, | |
409 | clean up file scope buffer mess. --Bleep | |
410 | * m_silence.c: split out SILENCE handler to a new file, | |
411 | cleanup --Bleep | |
412 | * m_ison.c: split out ISON handler to a new file, cleanup --Bleep | |
413 | * m_userip.c: split out to new file, change userhost and userip | |
414 | to use same algorithm with different formatting functions --Bleep | |
415 | * m_userhost.c: split out to new file --Bleep | |
416 | * send.c: add new function send_buffer, cleanup godemode ick a bit | |
417 | --Bleep | |
418 | * m_wallchops.c: split out wallchops handler --Bleep | |
419 | * m_cprivmsg.c: split out m_cprivmsg and m_cnotice. | |
420 | * m_pass.c, s_user.c: split out m_pass, pass message handler | |
421 | --Bleep | |
422 | * m_oper.c: split out m_oper.c from s_user.c, setup to use | |
423 | new parser. --Bleep | |
424 | * m_pong.c, m_ping.c, parse.c, s_user.c, channel.c: | |
425 | Add new file for pong messages, convert ping and pong to use | |
426 | numerics. Test pings and pongs on testnet. Fix numeric | |
427 | nick bug in channel.c. --Bleep | |
428 | * m_ping.c, s_serv.c, parse.c: new file for pings, fixed a | |
429 | minor bug in ping handling. --Bleep | |
430 | * m_nick.c, m_kill.c: clean up nick code for servers, still needs work | |
431 | fix string formatting bug in m_kill --Bleep | |
432 | * m_nick.c, s_user.c, ircd_chattr.c: add new file for NICK command, | |
433 | clean up local client registration for nicks. --Bleep | |
434 | * m_away.c, s_user.c, parse.c: split out m_away handlers for client, | |
435 | add user_set_away function. --Bleep | |
436 | * m_kill.c, ircd_reply: Rework handling of kill from server, add new error | |
437 | message formatter. --Bleep | |
438 | * m_kill.c (mo_kill): Rework handling for kill from operator on server | |
439 | kill originated from --Bleep | |
440 | * m_kill.c: new message handler file for kill --Bleep | |
441 | * configure.in, ircd/Makefile.in: added automatic os checking to autoconf | |
442 | checked --Gte | |
443 | * m_quit.c: new message handler file for quit --Bleep | |
444 | * m_privmsg.c: new message handler file for privmsg --Bleep | |
445 | * ircd_string.c, support.c, support.h, *.c: moved strtoken to ircd_string | |
446 | and renamed ircd_strtok --Bleep | |
447 | * channel.c, s_user.c, s_debug.c, send.c, channel.h: finish membership code | |
448 | --Bleep | |
449 | * channel.c, more cleanups of membership code and macros --Bleep | |
450 | * channel.c, s_misc.c: more cleanup in channel link code, most likely | |
451 | still a bit broken yet, more to come. --Bleep | |
452 | * querycmds.h (Count_remoteclientquits): fix minor bug --Bleep | |
453 | * ircd.h, querycmds.h, struct.h, channel.c, list.c, map.c, opercmds.c, | |
454 | s_err.c, s_serv.c, s_user.c, s_misc.c: Add Isomers passivelag0-1.patch | |
455 | fixed minor bug in macros --Bleep | |
456 | * channel.h, channel.c, s_user.c, s_debug.c, s_user.c: | |
457 | added Membership struct for channel associations, change user/channel | |
458 | lookups to use new struct. --Bleep | |
459 | * channel.c, channel.h, s_user.c: cleanup channel and user code | |
460 | a bit, new function find_no_nickchange_channel --Bleep | |
461 | * parse.c, m_defaults.c: added default handlers and hooked up new | |
462 | message handlers --Bleep | |
463 | * *.c, struct.h: added Isomer's passivelag patch and, the second | |
464 | p10 patch --Bleep | |
465 | * ircd_reply.[ch]: new files for commonly used replies --Bleep | |
466 | * m_proto.[ch]: new file for protocol command support, needed for zip | |
467 | links --Bleep | |
468 | * client.h, parse.c, msg.h: add code to support multiple message handlers | |
469 | depending on client status. --Bleep | |
470 | * s_bsd.c, packet.c: code cleanup prep for zip links --Bleep | |
471 | * channel.c, opercmds.c, ircd.c, s_serv.c, s_user.c, querycmds.c, | |
472 | whocmds.c, whowas.c: Add Isomers p10ify patch, tokenize server to | |
473 | server commands --Bleep | |
474 | * s_user.c (m_nick): killed goto --Bleep | |
475 | * client.h, *.c: moved client stuff to client.h --Bleep | |
476 | * version.c.SH, patchlevel.h, .patches: change version string | |
477 | generation, patch level is now set in patchlevel.h by simply | |
478 | bumping the number in the PATCHLEVEL string. --Bleep | |
479 | * ircd_alloc.c, channel.c: fixup warnings in release build (NDEBUG) | |
480 | --Bleep | |
481 | * fda.h, ircd_alloc.h, fda.c, ircd_alloc.c, fda_t.c: new files, | |
482 | runmalloc was core dumping on squits and unable to handle or | |
483 | detect double frees, the memory debug code can be disabled by | |
484 | compiling with NDEBUG defined --Bleep | |
485 | * channel.c (remove_user_from_channel): refactor function --Bleep | |
486 | * channel.c (m_kick): refactor function a bit, put all checks at top | |
487 | move code out to new function (make_zombie) --Bleep | |
488 | * s_bsd.c (completed_connection): fixed stupid | |
489 | "Write error to blah: Socket not connected" bug --Bleep | |
490 | * struct.h, send.h, send.c, s_bsd.c, IPcheck.c, s_user.c, *: | |
491 | More socket code cleanup, move file descriptor to local part of | |
492 | client struct, use cptr->error to handle the errno of any socket | |
493 | error, fix bug in IPcheck that ends up only disallowing every | |
494 | 256th clone, Add more ipcheck forgiveness to s_user.c (needs work). | |
495 | Changed IPcheck_local_connect and IPcheck_connect_fail interfaces to | |
496 | use struct in_addrs instead of client structs to allow delaying the | |
497 | allocation of the client struct till after the check was done. | |
498 | Added can_send function to send.c (should be called before work is done | |
499 | but right now it's called just before trying to send (needs work)) | |
500 | * channel.c: Added Isomers netride2.patch, still needs a config option | |
501 | to turn it on (NO_INVITE_NETRIDE) --Bleep | |
502 | * parse.c, msg.h: Added silent ignores for notices so connect progress | |
503 | messages do not cause connecting server to spew ERR_REGISTER_FIRST | |
504 | messages at the server it's connecting to. --Bleep | |
505 | * s_serv.c, s_user.c, channel.c, send.c: Tokenised BURST, NICK, | |
506 | END_OF_BURST, EOB_ACK, PRIVMSG and NOTICE Server to Server. | |
507 | About 8-10% Bandwidth saving on BURSTS. --Gte | |
508 | * channel.c (m_join): servjoin patch --Isomer | |
509 | * ircd_osdep.h, os_*.c, s_bsd.c, send.c: more cleanups in socket code, | |
510 | use enumeration for IO results. --Bleep | |
511 | * s_bsd.c: clean up select and poll code a bit more, fixed message pacing bug | |
512 | in poll. --Bleep | |
513 | * supported.h, numeric.h, s_user.c, s_err.c: Added Isomers features | |
514 | patch. Use numeric 005 RPL_ISSUPPORT to convey server features to | |
515 | clients. --Bleep | |
516 | * s_user.c (m_nick): IP differ patch, use IP address instead of host | |
517 | name to determine different user@host for nick collides. --Isomer | |
518 | * hash.c (hChangeClient): Bug fix. Fixed bug that caused stale entries | |
519 | to be left in client hash table after a name change. Discovered by | |
520 | Quant and Isomer. --Bleep | |
521 | * hash.c (hSeekClient): fixed bug I introduced when reversing my hash | |
522 | table code changes, thanks Quant and Isomer --Bleep | |
523 | * opercmds.c (m_lusers): send limited luser info to remote | |
524 | clients --Isomer | |
525 | * numeric.h, channel.c, s_err.c: Changed invite list numerics | |
526 | from 283/284 to 346/347 to match IRCnet numerics --Bleep | |
527 | * config-sh.in, gline.h, numeric.h, gline.c, opercmds.c, s_debug.c, s_err.c: | |
528 | Add badchan patch by WildThang --Bleep | |
529 | * config-sh.in, channel.h, numeric.h, channel.c, s_debug.c, s_err.c: | |
530 | Add lchanmode patch by David M --Bleep | |
531 | * channel.c (cancel_mode): removed incorrect assert --Bleep | |
532 | * *.c: removed P9 support, not everything is completely gone but most | |
533 | of it is, the server builds and connects to other servers, but thats | |
534 | as far as it's been tested so far. --Bleep | |
535 | * ircd.h, ircd.c, s_bsd.c: | |
536 | removed BOOT_INETD/BOOT_CONSOLE code, unused non-functional --Bleep | |
537 | * struct.h, ircd.h, ircd.c, s_user.c, s_bsd.c: | |
538 | removed BOOT_OPER/STAT_MASTER code, original patch by Isomer --Bleep | |
539 | * s_user.c (m_nick): removed redundant check for acptr | |
540 | * hash.c (hSeekClient, hSeekChannel): roll back some of hash.c changes | |
541 | * hash.c (hSeekClient, hSeekChannel): removed unused variable from previous | |
542 | changes. | |
543 | * hash.c (hSeekClient, hSeekChannel): fix compile error from status changes, | |
544 | fix logic bug that caused the first client that matched the mask to be | |
545 | returned regardless of whether or not it's name matched, this can result | |
546 | in wierd problems where the wrong server/client could be returned from the | |
547 | hash table lookup. Removed code that moved client to head of hash table | |
548 | chain for it's bucket when it's looked up, if the hash table is working | |
549 | reasonably well this just wastes cpu. | |
550 | * hash.c, list.c: added code to zero out cptr->hnext when client removed | |
551 | from hash table, added assert for hnext == 0 in list.c to make sure that | |
552 | client was actually removed from the hash table before freeing it's memory. | |
553 | * various: misc cleanups | |
554 | * support.c: removed dead code | |
555 | * configure.in: remove unneeded checks for minix, aix, ansi/posix headers | |
556 | these things are handled by porting layer code. | |
557 | * res.c: remove calls to add_local_domain, these were causing incorrect | |
558 | behavior | |
559 | * opercmds.c: cleanups in gline code | |
560 | * s_bsd.c: increase socket buffers to 65535 for server connections | |
561 | * crypt/mkpasswd.c: mutter correct runes to get file to compile without warnings | |
562 | * gline.c, gline.h: add new files to attempt to encapsulate glines a bit, | |
563 | some code from opercmds.c needs to be moved here still | |
564 | * opercmds.c (m_gline): fix local gline bug | |
565 | * s_conf.c (initconf): add password change on rehash fix | |
566 | * s_conf.c (rehash): fix rehash freeing and reloading the motd/rmotd files for | |
567 | every client connected. | |
568 | * ircd_log.c: use 2K fixed buffer instead of vsnprintf, nothing we write to | |
569 | the log should ever exceed 512 bytes, but it doesn't hurt to be paranoid. | |
570 | * res.c: change resolver timeouts to 5 seconds, per RFC1123 | |
571 | * channel.c: more little cleanups, no code changes | |
572 | * channel.c: a) stops iterating over /invite list | |
573 | b) adds /invite to list the channels you're currently invited to. | |
574 | c) adds lotsa new numerics --Isomer | |
575 | * ircd_signal.c, ircd.c: fix bug in signals | |
576 | * channel.c (can_send) add Isomer's changes | |
577 | * channel.c: add send_ban_list, cleanup a few names, reformat some parts to make | |
578 | more readable, fix bug introduced by name changes | |
579 | * ircd_chattr.[ch]: add new macro for checking K:line time chars vs comments | |
580 | * listener.c (show_ports): add code to show client/server and hidden status | |
581 | * s_conf.c: bug fixes, cleanups, add code to set server port and hidden | |
582 | status for listeners (P:lines) | |
583 | * s_conf.c (initconf): add interface selection code to P:lines so ports can | |
584 | be set on a single interface or multiple interfaces (multi-homed hosts) | |
585 | * s_conf.c: rewrote C/N line code, removed N:lines entirely, clean up server | |
586 | conf line code. | |
587 | * s_conf.c (check_server): move ip checks out of resolved or not so they can | |
588 | be checked for worse case situations on server connects | |
589 | * res.c (resolver_read): add Isomer's debug info for failed resolver queries | |
590 | * opercmds.c (m_stats): remove call to time(0) for each local client in | |
591 | stats l command, use CurrentTime instead | |
592 | * s_conf.c (initconf): only do lookups on C:lines instead of both C/N lines | |
593 | * res.c: fix resolver hang bugs | |
594 | * s_conf.c (rehash): remove extra semicolin that was causing c/n lines to | |
595 | accumulate | |
596 | * s_conf.c (rehash): add portnum back to the listener list so we don't loose | |
597 | the server port on a rehash | |
598 | * s_auth.c, listener.c: remove warnings for normal errors | |
599 | * s_auth.c, listener.c: use osdep non-blocking calls instead of locals | |
600 | * s_auth.c, listener.c: add code for non-blocking recovery for listeners and | |
601 | auth queries | |
602 | * s_auth.c (auth_error): call IPcheck_connect_fail if the client socket dies | |
603 | during the auth check so the reference count doesn't get borked in the | |
604 | IPcheck code. | |
605 | * numnicks.c: yet another extended numerics bug fix... sheesh | |
606 | * s_bsd.c, s_conf.c: move conf line code from s_bsd.c to s_conf.c, cleanup | |
607 | cleanup check_server, check_client (still not completely tested, may be | |
608 | a bit buggy yet). | |
609 | * parse.h, parse.c, s_debug.c: remove privmsg logging code | |
610 | * numnicks.c (FindXNServer): fix off by one bug | |
611 | * common.h, common.c: removed unused files | |
612 | * s_bsd.c (net_connect_completed): new function, called after connection | |
613 | establishment for servers and clients, release reference count for | |
614 | the dns reply and set the socket buffer size to IRCD_READBUF_SIZE | |
615 | for servers and 2K for clients. | |
616 | * channel.c, crule.c: cleanup bogus casts | |
617 | * listener.h (add_listener): fix bug that caused server a server port listener | |
618 | to think it was a client port listener. | |
619 | * s_user.c, s_serv.c: release reference to dns_reply when connection is | |
620 | established. | |
621 | * s_bsd.c (completed_connection): removed call to start_auth for connects | |
622 | the auth module expects connections not to be linked anywhere and owns | |
623 | the client struct until it's done. | |
624 | * listener.c (release_listener): fix inverted assert client exit bug | |
625 | * ircd_chattr.c: fix signed/unsigned warnings with Sun Workshop (+w) | |
626 | * ircd_chattr.c, ircd_chattr.h: new files for character attributes and case | |
627 | translation, hopefully they will be a bit easier to maintain. | |
628 | * s_conf.c (rehash): fixed logic bug that caused and infinite loop, | |
629 | fix port update bug (needed to call mark_listeners_closing before initconf) | |
630 | * *.c, runmalloc.[ch]: change the way the server deals with out of memory | |
631 | conditions. On server startup a no-memory handler is installed which | |
632 | calls server_restart if an allocation fails. Allocations are now checked | |
633 | in the memory allocation functions. Added asserts after every allocation | |
634 | to verify for debug. | |
635 | * *.c *.h: move authentication and dns to authentication module rename a few | |
636 | globals, const correctness fixes, add ircd_string code, rework network | |
637 | code, use dns callbacks, removed a lot of redundant code | |
638 | * s_bsd.c: finish this stage of net code work | |
639 | * *.c, *.h: rewrite select and poll code, add listener.[ch] net.code overhaul | |
640 | in progress, prepare for adding auth module | |
641 | * s_bsd.h, struct.h: moved client struct macros back into struct.h for now, | |
642 | the last place they belonged was in the network code... feh | |
643 | * ircd.c (open_debugfile): removed client for debug file | |
644 | * ircd_string.h, ircd_string.c: new files for string processing, add | |
645 | ircd_strncpy function | |
646 | * *.c, *.h: rename ircstp to ServerStats | |
647 | * *.c, *.h: rename now to CurrentTime | |
648 | * listener.h, listener.c: new files for listener ports | |
649 | * include/ircd_defs.h: new file for global definitions (HOSTLEN, USERLEN) | |
650 | * struct.h: add local_flag to client struct, to make local/remote detection simpler | |
651 | * s_bsd.c (read_message): split out separate versions for select and poll | |
652 | * s_bsd.h, various source files: remove the rest of the unix domain socket | |
653 | support this removes a number of comparisons that were unneeded in | |
654 | code that should run reasonably fast. | |
655 | * os_*.c, res.c, ircd_osdep.h: add os_recvfrom_nonb for resolver | |
656 | * os_*.c, s_bsd.c, s_auth.c, ircd_osdep.h: add os_get_sockname, os_get_peername | |
657 | * bsd.h, bsd.c: merge into s_bsd | |
658 | * ircd_osdep.h, os_generic.c, os_linux.c, ircd_osdep.h: move os variable stuff | |
659 | to separate compilation units, os generic contains the original code | |
660 | (start here). | |
661 | * s_bsd.c, send.c, struct.h: remove pyr (pyramid) finally | |
662 | * res.h, res.c, s_misc.c: cleanup headers/dependencies in res.h | |
663 | * match.h: include sys/types.h before netinet/in.h, broken BSD system headers | |
664 | * ircd/Makefile.in: remove CFLAGS from link line, use LDFLAGS instead | |
665 | * ircd.c: add missing include for sys/socket.h | |
666 | * common.h (strChattr, strCasediff): remove pointless non-portable inline | |
667 | decls. The functions are complex enough that inlining just bloats the code | |
668 | * ircd_xopen.h, ircd_xopen.c, s_user.c, s_serv.c: porting layer for crypt and | |
669 | other xopen library calls, moved crypt to ircd_xopen. | |
670 | * s_uping.c, s_uping.h, s_bsd.c, s_misc.c, s_bsd.h, ircd.c, s_debug.c: | |
671 | Removed s_ping. There are much better tools available that actually work | |
672 | correctly. The s_ping code was a waste of resources, and has historically | |
673 | given incorrect results (it never worked correctly). | |
674 | * ircd/s_bsd.c, res.c, s_user.c, s_serv.c: little fixups to allow code to | |
675 | build on Solaris, still have some warnings there. | |
676 | TODO: wrap crypt and things that depend on _XOPEN_SOURCE in their own | |
677 | file so it doesn't bother the network code. | |
678 | * ircd/s_bsd.c: cast option arg to const char* for setsockopt (solaris) | |
679 | * ircd/Makefile.in: removed hard coded dependencies for hash.o chkconfig.o, | |
680 | let the automatic stuff take care of it, it does it better than humans. | |
681 | * *.c *.h: remove register keywords, attribute macro junk, cleanup | |
682 | dependencies, rename MIN and MAX to IRCD_MIN IRCD_MAX all headers in | |
683 | C files are sorted, removed as many duplicate includes as I could find | |
684 | (dozens) general cleanups. Mutter the correct runes to get the protoype | |
685 | for crypt included where it was needed. | |
686 | * *.c *.h: dependency cleanups up to querycmds.c | |
687 | * ircd.c, bsd.c, s_bsd.c: move signal handling code to ircd_signal.c | |
688 | * ircd_signal.c, ircd_signal.h: new files, use only POSIX signals remove | |
689 | support for unreliable signals. | |
690 | * *.h *.c: include guards, dependency cleanups | |
691 | * Configure.in, setup-sh.in: include guards, config.h includes setup.h | |
692 | add config dir to include path | |
693 | * sys.h: include guards, remove hard coded path to config.h | |
694 | * s_user.c (hunt_server): fix logic bug | |
695 | * numnicks.c (SetServerYXX): fix off by one error | |
696 | * multiple files (n2k patch): add code to handle extended numerics |