1/*
2 * ChangeLog: Dealing with the actual changes of code in ircII, leaving
3 * NEWS for actual user changes.
4 *
5 * Matthew Green, 1993.
6 *
7 * Copyright(c) 1993-2021
8 *
9 * See the COPYRIGHT file, or do a HELP IRCII COPYRIGHT
10 *
11 * @(#)$eterna: ChangeLog,v 2.812 2021/03/14 18:22:30 mrg Exp $
12 */
13
1420210314
15Sun Mar 14 11:19:32 PDT 2021 - matthew green <mrg@eterna.com.au>
16	 configure, configure.in, include/defs.h.in, include/irc_std.h:
17		finish removing RFC2553 / addrinfo checks.
18	 source/ctcp.c:
19		call sl_free() in do_clientinfo().  from michael ortmann
20		<ortmann@posteo.de>.
21	 source/ircaux.c, source/server.c:
22		be sure to free addrinfo structures.  picked up by the
23		leak sanitizer.
24
2520210302
26Tue Mar  2 13:43:11 PST 2021 - matthew green <mrg@eterna.com.au>
27	source/ctcp.c, source/edit.c, source/mail.c, source/menu.c:
28		make sure final character is \n before removing it.
29		ensure that ctime() does not return NULL.  reported by
30		michael ortmann <ortmann@posteo.de>.
31
32Tue Mar  2 13:02:05 PST 2021 - matthew green <mrg@eterna.com.au>
33	source/ctcp.c:
34		avoid accessing a variable after it goes out of scope.
35		from sanitizer, via michael ortmann <ortmann@posteo.de>.
3620210301
37Tue Mar  2 03:03:05 PST 2021 - matthew green <mrg@eterna.com.au>
38	Makefile.in, configure, configure.in, include/defs.h.in,
39	source/getaddrinfo.c, source/getnameinfo.c, source/inet_ntop.c,
40	source/inet_pton.c, source/snprintf.c:
41		assume host provides working implementations of
42		functions getnameinfo()/getaddrinfo()/snprintf().
43
44Tue Mar  2 02:14:31 PST 2021 - matthew green <mrg@eterna.com.au>
45	source/exec.c:
46		in close_all_exec() call kill_process() before
47		delete_process() so that kill_process() can find info
48		about the process before it is removed.
49	source/ircaux.c:
50		convert from sigblock() to sigprocmask().  also block
51		SIGUSR2 as well as SIGUSR1, and also block them when
52		calling malloc() and realloc() as well as free().
53
54Sun Feb 28 23:46:10 UTC 2021 - matthew green <mrg@eterna.com.au>
55	configure.in, configure:
56		support combining sanitizers.  asan+ubsan, lsan+ubsan
57		are ok, but since asan includes lsan, including both
58		crashes, so don't allow that.  allow calling them
59		asan/address, lsan/leak, and ubsan/undefined.
60
61Sun Feb 28 22:43:32 UTC 2021 - matthew green <mrg@eterna.com.au>
62	help/bind/refresh_window_lastlog:
63		add missing documentation for new-in-2017 bindable key.
64
65Sat Feb 27 15:02:39 PST 2021 - matthew green <mrg@eterna.com.au>
66	source/crypt.c:
67		avoid C99's "for (type var = 0; ...)" feature.  this trips
68		up defaults on older GCCs while can compile the rest of
69		the C99-using parts of ircii without any fault.
70
71Sat Feb 27 14:36:30 PST 2021 - matthew green <mrg@eterna.com.au>
72	include/debug.h, include/irc.h, source/debug.c, source/irc.c:
73		remove get_log_fp() and move all the log handling into
74		debug.c.  avoid wanting a static definition of 'stderr'
75		and fix compliation issues on some platforms.
76
7720210226
78Fri Feb 26 23:54:16 PST 2021 - matthew green <mrg@eterna.com.au>
79	include/irc.h, source/debug.c, source/irc.c:
80		convert open_log_file() to not override what 'stderr' is,
81		since this conflicts with address sanitizer's use of stderr.
82		add get_log_fp() and use it in debug.c to find the FILE *
83		for the log now that 'stderr' is not it.
84
85Fri Feb 26 23:49:15 PST 2021 - matthew green <mrg@eterna.com.au>
86	source/window.c:
87		fix a memory leak triggered by wrapped lines and the
88		cursor indent is missing or is too long, found by
89		by -fsanitize=address leak sanitizer.
90
91Fri Feb 26 23:11:14 PST 2021 - matthew green <mrg@eterna.com.au>
92	fix four bugs reported by michael ortmann <ortmann@posteo.de>:
93	source/icb.c:
94		fix a logic error that would crash if hit.
95	source/newio.c:
96		avoid overflowing the buffer passed to dgets() by 1 byte.
97	source/parse.c:
98		avoid underflowing the buffer passed to irc2_parse_server()
99		by 1 byte, if it sees a line with just "\n".
100	source/queue.c:
101		fix a crash in "/queue -delete <queue>" by defining this
102		operation as delete all the entries in the named queue.
103
104Wed Feb 24 23:35:54 UTC 2021 - matthew green <mrg@eterna.com.au>
105	configure.in, configure:
106		add support for the leak sanitizer.  fix the
107		getaddrinfo() works test which was leaking memory.
108
109Wed Feb 24 23:24:40 UTC 2021 - matthew green <mrg@eterna.com.au>
110	source/alias.c, source/irc.c, source/hook.c:
111		make sure numerics are in valid range, and buffers are
112		impossible to overrun (shouldn't happen, but the
113		compiler/sanitizer can't tell from what it can see.)
114
115Wed Feb 24 11:53:38 PST 2021 - matthew green <mrg@eterna.com.au>
116	configure.in, configure:
117		add --with-sanitizer[=<asan|ubsan>] support to configure.
118	source/ircflush.c:
119		avoid an extremely unlikely buffer overflow.
120	source/ircaux.c:
121		appease undefined sanitizer and ensure a format passed to
122		vsnprintf() is not NULL.
123
124Wed Feb 24 11:52:02 PST 2021 - matthew green <mrg@eterna.com.au>
125	source/parse.c:
126		make sure all unused elements of TrueArgs[] are NULL.
127
12820210224
129Wed Feb 24 02:25:44 PST 2021 - matthew green <mrg@eterna.com.au>
130	include/parse.h, source/funny.c, source/notice.c, source/numbers.c,
131	source/parse.c, source/whois.c:
132		consolidate most of the arg checking and calls to new
133		irc2_odd_server_stuff() into check_params().  fix the check
134		in p_kick().
135
136Wed Feb 24 02:00:11 PST 2021 - matthew green <mrg@eterna.com.au>
137	include/edit.h, include/funny.h, include/notice.h, include/numbers.h,
138	include/parse.h, include/whois.h, source/edit.c, source/funny.c,
139	source/notice.c, source/numbers.c, source/parse.c, source/whois.c:
140		avoid NULL derefs, and accessing previous stack contents,
141		triggerable by a malicious IRC server.  fix the do_hook()
142		call in whoreply_check() to not pass potentially random,
143		but likely duplicated data to /ON WHO.  ensure that
144		break_args() always NULL-ends the array, a zero length input
145		would leave the ArgList uninitialised.  check all consumers
146		in irc2_parse_server() and numbered_command() properly check
147		the arguments they expect before using them, and document
148		the assumptions and requirements.  original issues reported
149		by michael ortmann <ortmann@posteo.de>, with further
150		investigation by mrg.  i was only able to trigger crashes
151		with NULL dereferences, not control any other effect.
152	source/edit.c:
153		rename version() to e_version() to avoid human-conflict
154		with the also static version() in irc.c.
155
156Wed Feb 24 01:13:10 PST 2021 - matthew green <mrg@eterna.com.au>
157	source/numbers.c:
158		call save_message_from() before calling
159		restore_message_from() when handling non-special numerics.
160
161Wed Feb 24 00:57:43 PST 2021 - matthew green <mrg@eterna.com.au>
162	source/exec.c, source/icb.c:
163		use my_strcmp() and my_strlen() to avoid warnings.
164	source/numbers.c:
165		consistently use ArgList[0] over *ArgList.
166
167Tue Feb 16 18:37:13 PST 2021 - matthew green <mrg@eterna.com.au>
168	source/icb.c:
169		avoid reading one byte beyond "" in two places.
170		picked up by -fsanitize=address.
171
172Tue Feb 16 17:50:36 PST 2021 - matthew green <mrg@eterna.com.au>
173	source/exec.c:
174		avoid one byte buffer underflow write of a 0 byte,
175		picked up by -fsanitize=address.  looking at a couple
176		of stack layouts for this function, the written byte
177		is currently dead space so very unlikely exploitable.
178
17920201117
180Tue Nov 17 00:22:18 PST 2020 - matthew green <mrg@eterna.com.au>
181	source/aes.c, source/cast.c, source/crypt.c:
182		introduce crypt_get_random_data() and use it to obtain
183		more than one byte at a time if available.
184
185Tue Nov 17 00:05:45 PST 2020 - matthew green <mrg@eterna.com.au>
186	include/exec.h, include/signals.h, source/exec.c, source/irc.c,
187	source/mksignals.pl, source/signals.c:
188		move all the signal data into signals.c, and access it
189		via new get_signal().
190	source/alias.c, source/hook.c, source/server.c, source/term.c,
191	source/translat.c, source/window.c:
192		mark local variables static.
193
194Fri Jul 31 13:22:28 PDT 2020 - matthew green <mrg@eterna.com.au>
195	source/server.c:
196		display SSL information in the server list.
197	configure.in, configure:
198		fix indentation and display of [] in --help.  fix error
199		handling message when looking for socks5.
200
201Thu Apr 30 20:13:04 PDT 2020 - matthew green <mrg@eterna.com.au>
202	source/dcc.c:
203		initialised buf to NULL.  fixes free() of random data,
204		and thus likely crash.  reported by michael ortmann
205		<ortmann@posteo.de>.
206
207Fri Mar 13 05:13:38 PDT 2020 - matthew green <mrg@eterna.com.au>
208	source/status.c:
209		avoid negative hour/minutes causing buffer overflow.
210
211Thu Apr 25 17:06:08 PDT 2019 - matthew green <mrg@eterna.com.au>
212	source/newio.c:
213		initialise nfds to avoid the case where no FDs are
214		persent in the fd_sets.
215	source/server.c:
216		fix 13 year old bug: $IRCSERVERS tries to new_free()
217		data in the environment which does not work.
218
219Tue Mar 12 19:45:15 PDT 2019 - glen mccready <gkm@pobox.com>
220	source/newio.c:
221		mac os didn't like unsigned < (int)-1 with the
222		change below. slight change to how we calculate
223		nfds.
224
225Sat Mar  9 16:19:16 PST 2019 - matthew green <mrg@eterna.com.au>
226	source/newio.c:
227		use unsigned for array index.
228
229Mon Feb  4 17:35:12 PST 2019 - matthew green <mrg@eterna.com.au>
230	source/hook.c, source/ircflush.c, source/server.c:
231		fix potential snprintf() truncation issues.
232
23320190117
234Thu Jan 17 17:16:10 PST 2019 - matthew green <mrg@eterna.com.au>
235	doc/ircii.spec:
236		fix help file list.
237
238Thu Jan 17 15:59:25 PST 2019 - matthew green <mrg@eterna.com.au>
239	source/lastlog.c:
240		make lastlog_line_back_alloc() allocate an actual
241		LastlogLineBackInfo structure not a pointer to it.
242		fixes random issues in other code as it would
243		overflow other allocations.  found by leot@netbsd
244		with the help of electric-fence.
245
24620190116
247Wed Jan 16 20:27:43 PST 2019 - matthew green <mrg@eterna.com.au>
248	include/config.h.dist, source/hook.c, source/sl.c:
249		avoid using identifiers starting with _.
250
251Wed Jan 16 02:01:57 PST 2019 - matthew green <mrg@eterna.com.au>
252	source/input.c:
253		add a hack to fix the input line scrolling to keep
254		some prior context.
255
256Tue Jan 15 23:44:07 PST 2019 - matthew green <mrg@eterna.com.au>
257	Makefile.in:
258		installhelp target depends upon installdirs.  from
259		Christian Weisgerber <naddy@mips.inka.de>.
260	help/for:
261		add a help page to link to foreach, where for is
262		actually documented. PR#608.
263
264Tue Jan 15 23:32:02 PST 2019 - matthew green <mrg@eterna.com.au>
265	source/dcc.c:
266		don't allow closing dcc from within a dcc hook.
267		fixes PR#643.
268
269Tue Jan 15 22:25:41 PST 2019 - matthew green <mrg@eterna.com.au>
270	source/mksignals.pl, source/signals.c:
271		add support for handling aliases by eliding them.  mark
272		IOT as maybe an alias for ABRT.  fixes clang warning.
273	source/vars.c:
274		fix some paren placement to be valid, found by clang.
275
276Tue Jan 15 16:31:54 PST 2019 - matthew green <mrg@eterna.com.au>
277	configure.in, configure, include/defs.h.in, include/irc.h,
278		assume getcwd() and strerror() always exist.
279		fix a comment error.
280	include/irc_std.h, include/ircterm.h:
281		move SVR4 specific code into ircterm.h
282	source/exec.c:
283		fix a compile error with new my_sigstr().
284
28520190115
286Tue Jan 15 02:59:55 PST 2019 - matthew green <mrg@eterna.com.au>
287	include/signals.h, source/exec.c, source/mksignals.pl,
288	source/signals.c:
289		be more safe around the signals[] array, and always use
290		the accessor which has been updated to be safe for empty
291		signals.  allow runtime to add "SIG<n> to the signal
292		list if it is empty.  convert to u_char.
293
294Tue Jan 15 02:29:58 PST 2019 - matthew green <mrg@eterna.com.au>
295	doc/help2htmp.pl:
296		fix the output a little.  avoid extra blank lines and
297		convert leading spaces into &nbsp;.
298
299Tue Jan 15 01:30:29 PST 2019 - matthew green <mrg@eterna.com.au>
300	configure.in, configure:
301		move default paths in prefix under new ./configure option
302		--with-prefix-paths.  fix --help output alignment.
303
304Tue Jan 15 00:57:24 PST 2019 - matthew green <mrg@eterna.com.au>
305	Makefile.in:
306		remove support for irc.old binary.  remove umask setting.
307		both from pkgsrc.
308	configure.in, configure, include/irc.h:
309		if setting -L path, set -I path too.  don't bother checking
310		for limits.h, just always include it.  it was checked, but
311		not ever included.
312
313Tue Jan 15 00:21:53 PST 2019 - matthew green <mrg@eterna.com.au>
314	Makefile.in, include/signals.h, source/exec.c, source/ircaux.c,
315	source/signals.c, source/mkmksiginc.pl, source/mksiginc.c,
316	source/mksignals.pl:
317		replace mkmksiginc.pl and mksiginc.c with mksignals.pl
318		and signals.c that does not require run-time support
319		and should allow ircii to be cross compiled sanely.
320
32120190114
322Mon Jan 14 23:32:35 PST 2019 - matthew green <mrg@eterna.com.au>
323	script/nicksearch:
324		don't hard code "Sec" but use $N.  don't overrite
325		client_info value.
326	Makefile.in, source/strcasestr.c, include/strcasestr.h,
327	source/lastlog.c:
328		copy netbsd's strcasestr() and use it for /lastlog,
329		which has been case-sensitive since 20161207.
330	source/strsep.c:
331		update copyright to 3-clause BSD.
332
33320180609
334Sat Jun  9 19:23:13 PDT 2018 - matthew green <mrg@eterna.com.au>
335	help/ircii/command_line_args, help/ircii/environment_vars,
336	help/ircii/programming, help/ircii/server_lists:
337		new help files.
338	help/on/send_talk help/on/talk
339		remove obsolete for 16 years help files.
340	help/*:
341		fix a lot of wrong links such that help2html.pl
342		now generations a a tree without missing links.
343
344Sat Jun  9 17:11:11 PDT 2018 - matthew green <mrg@eterna.com.au>
345	Makefile.in, doc/help2html.pl:
346		add a way to build html copies of the help files.
347	help/alias/alias:
348		fix link to set input_aliases.
349	include/names.h, source/names.c:
350		make channel modes u_int not u_long.
351	source/whois.c:
352		redo whois_ignore_msgs() to be less indented.
353	source/window.c:
354		move many variables in windowcmd() into the used
355		scope.  restore a lost error report.  plus some
356		memory leaks in error handling.
357	source/irc.c:
358		new vesrion.
359
360Mon Jun  4 12:21:52 PDT 2018 - matthew green <mrg@eterna.com.au>
361	configure.in, configure, source/translat.c:
362		add -Wformat-security to the default warnings list.
363		fix the three problems found.  idea from diz.
364
365Thu Mar 29 01:49:50 PDT 2018 - matthew green <mrg@eterna.com.au>
366	source/edit.c:
367		fix a bug in command completion.  the irc_command[] array
368		has "" first and NULL last entry and must be accounted for.
369		pointed out by leot@netbsd.org who provided an initial fix.
370		move the special case into find_command() itself.
371
372Tue Feb  6 12:22:15 PST 2018 - matthew green <mrg@eterna.com.au>
373	source/window.c:
374		fix an identation error.
375
376Wed Nov  8 13:59:10 PST 2017 - matthew green <mrg@eterna.com.au>
377	script/silent:
378		ensure there's a space between the messages and status.
379		from leot.
380	help/window/where:
381		fix a typo.  from leot.
382
38320171101
384Wed Nov  1 17:33:48 PDT 2017 - matthew green <mrg@eterna.com.au>
385	revert most of this change:
386	source/ctcp.c, source/lastlog.c, source/mail.c, source/notice.c,
387	source/numbers.c, source/parse.c, source/whois.c:
388		avoid set_lastlog_msg_level() when already using
389		save_message_from().  it's not necessary.  in
390		parse_server_notice() always restore the level.  this may have
391		been the cause of messages going to the wrong place occasionlly.
392		few minor other clean ups related to message levels.
393	as it fails to set the lastlog level correctly, leading to lastlog
394	failing to save many messages.
395
396Tue Oct 31 14:32:03 PDT 2017 - matthew green <mrg@eterna.com.au>
397	source/status.c:
398		use my_strcpy() again, now it handles overlapping strings.
399
400Tue Oct 31 13:15:06 PDT 2017 - matthew green <mrg@eterna.com.au>
401	revert this change:
402	Wed Sep 13 17:56:00 PDT 2017 - matthew green <mrg@eterna.com.au>
403	source/dcc.c, source/icb.c:
404		avoid set_lastlog_msg_level() when already using
405		save_message_from().  it's not necessary.
406	as it fails to set the lastlog level correctly, leading to lastlog
407	failing to save many messages.
408
409Mon Oct 30 14:28:42 PDT 2017 - matthew green <mrg@eterna.com.au>
410	include/irc_std.h, include/ircaux.h, source/dcc.c, source/ircaux.c,
411	source/lastlog.c, source/notice.c, source/numbers.c, source/parse.c:
412		make my_strcpy() and my_strncpy() first class local functions
413		that do not have non-overlapping requirements.
414
415Thu Sep 14 14:59:47 PDT 2017 - matthew green <mrg@eterna.com.au>
416	source/ctcp.c, source/dcc.c, source/lastlog.c, source/mail.c,
417	source/notice.c, source/numbers.c, source/parse.c, source/whois.c,
418	source/window.c:
419		avoid set_lastlog_msg_level() when already using
420		save_message_from().  it's not necessary.  in
421		parse_server_notice() always restore the level.  this may have
422		been the cause of messages going to the wrong place occasionlly.
423		few minor other clean ups related to message levels.
424	source/mail.c:
425		remove redundant #ifdef.
426
42720170913
428Wed Sep 13 17:56:00 PDT 2017 - matthew green <mrg@eterna.com.au>
429	source/dcc.c, source/icb.c:
430		avoid set_lastlog_msg_level() when already using
431		save_message_from().  it's not necessary.
432	source/edit.c:
433		use strcmp() instead of open coding.
434	source/parse.c:
435		fix an unlikely memory leak.
436
437Wed Sep 13 14:25:15 PDT 2017 - matthew green <mrg@eterna.com.au>
438	source/numbers.c:
439		display_msg() shouldn't check for : prefixes, the callers
440		all take care of this.  from dholland@netbsd.  clean up a
441		little as well.
442
443Wed Sep 13 14:04:10 PDT 2017 - matthew green <mrg@eterna.com.au>
444	source/ircaux.c:
445		fix rework of double_quote() to ensure nul termination.
446		avoids tabkey adding "gcnt" or similar to the end of
447		nicks 8-11 chars long.
448
449Tue Sep  5 21:44:36 PDT 2017 - matthew green <mrg@eterna.com.au>
450	source/names.c:
451		revert part of 20161214 commit:
452		>fix add_channel() in some reconnecting case where the
453		>channel should go back to the current window.
454		that makes /join #foo not connect the channel to the
455		current window.
456
457Tue Sep  5 21:41:25 PDT 2017 - matthew green <mrg@eterna.com.au>
458	include/output.h, include/window.h, source/keys.c, source/window.c:
459		rename refresh_window_lastlog() as window_refresh_lastlog(),
460		and move the frontend for the current window into
461		window_refresh_lastlog_key().
462
46320170708
464Sun Jul  9 00:54:48 PDT 2017 - matthew green <mrg@eterna.com.au>
465	source/lastlog.c:
466		handle lastlog buffer realloc issues and fix a potential
467		memory leak.
468
469Sat Jul  8 23:56:22 PDT 2017 - matthew green <mrg@eterna.com.au>
470	source/help.c:
471		use sl_iter_fwd() instead of directly access the
472		StringList.
473
474Sat Jul  8 23:43:36 PDT 2017 - matthew green <mrg@eterna.com.au>
475	include/sl_irc.h, source/sl_irc.c:
476		add sl_iter_fwd() / sl_iter_rev() methods to traverse
477		the string list.
478	include/keys.h, include/output.h, source/keys.c, source/window.c:
479		add REFRESH_WINDOW_LASTLOG bindable function.  it
480		refreshes the current window with information from
481		the lastlog, filling the screen as much as possible.
482
483Sat Jul  8 23:41:45 PDT 2017 - matthew green <mrg@eterna.com.au>
484	include/window.h, source/window.c:
485		remove unused islogged types.  it's yes/no.
486
487Sat Jul  8 20:54:01 PDT 2017 - matthew green <mrg@eterna.com.au>
488	include/window.h, source/menu.c, source/window.c:
489		remove ShrinkInfo and just return "int bottom"
490		part of it, the only part used.  adjust both
491		redraw_resized() and resize_display() to match.
492		redraw_resized() loses unused AnchorTop param.
493
494Sat Jul  8 05:05:49 PDT 2017 - matthew green <mrg@eterna.com.au>
495	help/lastlog:
496		document (old) -save, and new -saveall/-loadall.
497
498Sat Jul  8 04:49:47 PDT 2017 - matthew green <mrg@eterna.com.au>
499	source/lastlog.c:
500		add two new commands to /lastlog:  -saveall and
501		-loadall.  these save or load the full lastlog
502		into a special file that includes a timestamp and
503		the log level.  this allows lastlog to be reload
504		upon restarting.  early basic version so far.
505		don't ignore lines less than 2 chars - "> " is
506		not always the output or should be ignored.
507
508Sat Jul  8 00:22:25 PDT 2017 - matthew green <mrg@eterna.com.au>
509	include/lastlog.h, source/lastlog.c, source/window.c:
510		push the function-static data in lastlog_line_back()
511		into an allocated/freed per call value.  introduce
512		lastlog_line_back_alloc()/lastlog_line_back_free()
513		to deal with the dynamic nature.
514
51520170704
516Tue Jul  4 18:55:39 PDT 2017 - matthew green <mrg@eterna.com.au>
517	source/status.c:
518		fix overlapping strcpy() issue.
519
520Tue Jul  4 05:29:50 PDT 2017 - matthew green <mrg@eterna.com.au>
521	source/help.c:
522		fix missing restore_message_from() in /help.
523	source/ctcp.c:
524		ensure ctcp_quote_it() doesn't overrun it's buffer.
525		convert do_clientinfo() to sl_init() and pals.  fix
526		a memory leak.
527
528Tue Jul  4 05:08:07 PDT 2017 - matthew green <mrg@eterna.com.au>
529	source/help.c:
530		convert help to use sl_init() and pals.
531	source/ircaux.c:
532		in malloc_*snprintf() avoid writing to the old
533		pointer until we're done.
534
535Tue Jul  4 04:39:54 PDT 2017 - matthew green <mrg@eterna.com.au>
536	source/help.c:
537		put some common code into functions and generally
538		clean up a little.
539
540Tue Jul  4 01:04:29 PDT 2017 - matthew green <mrg@eterna.com.au>
541	source/hook.c, source/ignore.c, source/names.c, source/server.c:
542		rework several functions to use sl_concat() instead of
543		writing into a stack buffer.  rewrite most of
544		ignore_info() to use a common function, saving 88 out
545		of 138 lines in total.
546
547Mon Jul  3 22:38:46 PDT 2017 - matthew green <mrg@eterna.com.au>
548	include/sl_irc.h, source/sl_irc.c:
549		add sl_size() to return number of entries.  fix
550		the length calculation for sl_concat() to not
551		include the separator the first time.
552	source/edit.c, source/funny.c, source/help.c:
553		replace BIG_BUFFER_SIZE usage with sl_concat().
554		clean up help some more.  fix a bug in funny_list
555		when /list -wide or /names -wide was given.  this
556		now works again (busted 3.5 years ago.)
557
558Mon Jul  3 21:05:14 PDT 2017 - matthew green <mrg@eterna.com.au>
559	source/dcc.c, source/menu.c, source/sl.c:
560		avoid direct calls to malloc/free.
561
562Mon Jul  3 20:53:34 PDT 2017 - matthew green <mrg@eterna.com.au>
563	include/debug.h, source/debug.c:
564		add "misc" debug entry, for random stuff that may not
565		end up being commited.
566	Makefile.in, include/sl_irc.h, source/sl_irc.c:
567		add new sl_concat() routine on top of sl.c, that
568		concatenates a string list with a separator.
569	source/notify.c:
570		use sl_concat() in do_notify(), instead of the hard
571		coded BIG_BUFFER_SIZE buffer.
572
573Mon Jul  3 20:06:16 PDT 2017 - matthew green <mrg@eterna.com.au>
574	source/dcc.c:
575		remove BIG_BUFFER_SIZE usage in process_incoming_chat().
576	help/ircii/copyright, source/help.c:
577		fix copyright.  remove one BIG_BUFFER_SIZE in help_me().
578
579Mon Jul  3 19:36:16 PDT 2017 - matthew green <mrg@eterna.com.au>
580	source/ctcp.c, source/dcc.c, source/edit.c, source/funny.c,
581	source/help.c, source/hook.c, source/ignore.c, source/input.c,
582	source/names.c, source/notify.c, source/server.c,
583	source/status.c, source/window.c:
584		mark BIG_BUFFER_SIZE usages that need to be fixed.
585		fix a potential overflow issue in proxy handling.
586		add attempted fix at overlapping strcpy in
587		make_status_one().
588
58920170703
590Mon Jul  3 07:02:50 PDT 2017 - matthew green <mrg@eterna.com.au>
591	include/debug.h, source/debug.c, source/help.c:
592		introduce DB_HELP debug level.  mostly useless so
593		far.  rework help_topic() to both avoid using
594		BIG_BUFFER_SIZE as well as simplify the zcat logic.
595
596Mon Jul  3 06:16:06 PDT 2017 - matthew green <mrg@eterna.com.au>
597	source/funny.c, source/irc.c, source/server.c:
598		avoid BIG_BUFFER_SIZE in a few minor places.
599
600Mon Jul  3 05:59:59 PDT 2017 - matthew green <mrg@eterna.com.au>
601	source/dcc.c, source/history.c, source/mail.c, source/menu.c:
602		use FS_BUFFER_SIZE for disk IO.
603	source/dcc.c:
604		check send(2) return in process_outgoing_file().
605		put_it()/say() have taken floats for along time,
606		remove ancient stupid workaround.
607
608Mon Jul  3 05:10:59 PDT 2017 - matthew green <mrg@eterna.com.au>
609	include/alias.h, source/alias.c, source/edit.c, source/if.c:
610		add free_alias() to clean up after match_alias().
611	include/irc.h, source/dcc.c, source/edit.c, source/help.c:
612		add FS_BUFFER_SIZE for IO buffers.  use it instead
613		of BIG_BUFFER_SIZE in a few places.  use PATH_MAX
614		where relevant.
615	source/dcc.c:
616		rework dcc_filesend() to avoid BIG_BUFFER_SIZE.
617	source/edit.c:
618		pull the alias and command printing out of
619		command_completion() into subroutines.  rework them
620		all to avoid using BIG_BUFFER_SIZE.
621	source/dcc.c, source/edit.c, source/history.c,
622	source/ircaux.c, source/lastlog.c, source/log.c, source/vars.c:
623		adjust expand_twiddle() to always return non NULL.
624
625Mon Jul  3 04:14:37 PDT 2017 - matthew green <mrg@eterna.com.au>
626	Makefile.in:
627		update depends list.
628	configure, configure.in, source/hook.c, source/output.c,
629	include/buffer.h:
630		remove PUTBUF_* and just use malloc_vsnprintf().
631		don't check for unused vasprintf() anymore.
632
63320170702
634Sun Jul  2 09:25:06 PDT 2017 - matthew green <mrg@eterna.com.au>
635	source/alias.c:
636		rewrite expander_addition() and avoid BIG_BUFFER_SIZE.
637	source/ircaux.c:
638		rework double_quote() to avoid BIG_BUFFER_SIZE by
639		double pass on the string.
640
641Sun Jul  2 07:22:54 PDT 2017 - matthew green <mrg@eterna.com.au>
642	source/ctcp.c:
643		adjust send_ctcp() and send_ctcp_reply() to avoid
644		BIG_BUFFER_SIZE.   remove dead code in
645		send_ctcp_reply().
646
647Sun Jul  2 06:55:19 PDT 2017 - matthew green <mrg@eterna.com.au>
648	source/edit.c:
649		avoid BIG_BUFFER_SIZE in waitcmd(), really_save(),
650		save_settings(), redirect_msg(), show_timer(), and
651		pingcmd().
652	source/ignore.c:
653		remove BIG_BUFFER_SIZE in ignore_nickname().
654
655Sun Jul  2 06:29:29 PDT 2017 - matthew green <mrg@eterna.com.au>
656	source/help.c:
657		avoid BIG_BUFFER_SIZE in help_prompt(),
658		help_pause_add_line(), help_show_paused_topic(),
659
660Sun Jul  2 06:08:00 PDT 2017 - matthew green <mrg@eterna.com.au>
661	source/edit.c, source/ircaux.c, source/names.c:
662		adjust path_search() to return a malloced() value.
663		avoid BIG_BUFFER_SIZE in expand_twiddle() and
664		recreate_mode().
665
666Sun Jul  2 05:50:54 PDT 2017 - matthew green <mrg@eterna.com.au>
667	source/server.c:
668		remove easy BIG_BUFFER_SIZE usages in close_server(),
669		login_to_server(), and display_server_list().
670
671Sun Jul  2 05:23:58 PDT 2017 - matthew green <mrg@eterna.com.au>
672	source/status.c:
673		remove some easy BIG_BUFFER_SIZE usages in most
674		status_*() backends.  one easy but large one left,
675		plus 4 not so easy ones.
676
677Sun Jul  2 04:56:59 PDT 2017 - matthew green <mrg@eterna.com.au>
678	source/notice.c, source/numbers.c, source/screen.c:
679		remove more BIG_BUFFER_SIZE in load_ircrc*(),
680		cannot_join_channel(), numbered_command(),
681		window_redirect() and add_to_screen().
682
683Fri Jun 30 22:12:32 PDT 2017 - matthew green <mrg@eterna.com.au>
684	configure, configure.in:
685		fix efence support in the modern shlib world.
686	include/ircaux.h, source/ircaux.c:
687		add malloc_vsnprintf().
688	source/vars.c, source/whois.c, source/window.c:
689		remove most BIG_BUFFER_SIZE uses.  using either
690		malloc_snprintf() or similar in most places.
691
692Fri Jun 30 20:57:47 PDT 2017 - matthew green <mrg@eterna.com.au>
693	source/alias.c:
694		unbreak aliases in the form of foo[bar][baz] (ie, with
695		two or more [] sequences.)
696
697Thu Jun 29 19:16:17 PDT 2017 - matthew green <mrg@eterna.com.au>
698	include/ircaux.h, source/alias.c, source/edit.c, source/history.c,
699	source/ircaux.c, source/whois.c:
700		remove ignored 2nd arg to malloc_snprintf().
701
70220170606
703Tue Jun  6 15:01:47 PDT 2017 - matthew green <mrg@eterna.com.au>
704	configure, configure.in, include/defs.h.in source/output.c:
705		add --with-default-resize-method[=type] (either "old" or
706		"new") to choose the old or new window resize method.
707		the default is the new one.  note that /window balance
708		remains using the old method as a direct command.
709
710Mon Jun  5 16:42:42 PDT 2017 - matthew green <mrg@eterna.com.au>
711	source/window.c:
712		make recalculate_windows() work, including when windows
713		are resized too tiny.  a few extra checks and some fall
714		back to normal window_balance() when failure is detected,
715		perhaps automatically first hiding some windows first.
716
717Mon Jun  5 15:32:56 PDT 2017 - matthew green <mrg@eterna.com.au>
718	source/window.c:
719		fix recalculate_windows() some.  remove redundant code.
720		still has some minor issues, but works most of the time now.
721
722Mon Jun  5 15:06:19 PDT 2017 - matthew green <mrg@eterna.com.au>
723	source/screen.c:
724		check against current, not old, window sizes, to determine
725		if the screen size changed.  fixes random window rebalance
726		upon ^L after "/window new new".
727	source/window.c:
728		remove some redundant code from recalculate_windows().
729
730Mon Jun  5 14:28:26 PDT 2017 - matthew green <mrg@eterna.com.au>
731	configure, configure.in, include/defs.h.in, source/help.c:
732		check alphasort()'s arg type and use that for the
733		scandir() comparision function.  enables both old
734		and new style scandir() types to pass warning
735		enabled builds.  adjust the help code to suit.
736	source/irc.h:
737		on linux, define _GNU_SOURCE very early.
738	source/debug.h:
739		force a type to unsigned.
740
74120170424
742Mon Apr 24 22:06:40 PDT 2017 - matthew green <mrg@eterna.com.au>
743	source/edit.c source/keys.c source/translat.c:
744		remove some unnecessary casts.
745
746Mon Apr 24 20:08:18 PDT 2017 - matthew green <mrg@eterna.com.au>
747	source/alias.c:
748		use the new bracket_to_dot() again in /alias handling, as it
749		has the same bug as the prior fix.
750
75120170128
752Sat Jan 28 16:43:39 PST 2017 - matthew green <mrg@eterna.com.au>
753	source/alias.c:
754		strcat() can't be used on overlapping strings says opengroup
755		and OSX triggers a fault.  pull the code to convert eg
756		"foo[bar][baz]" into "foo.bar.baz" into its own function and
757		manually strcat as necessary.
758
759Mon Jan  9 12:32:10 PST 2017 - matthew green <mrg@eterna.com.au>
760	source/names.c:
761		don't pass NULL pointers to window_get_server_group().
762
76320161214
764Wed Dec 14 22:28:52 PST 2016 - matthew green <mrg@eterna.com.au>
765	configure, configure.in:
766		it's spelled "-lssl -lcrypto", not the reverse.  fixes
767		static linking.
768	source/input.c:
769		handle current_irc_encoding() returning NULL.
770	source/names.c:
771		fix add_channel() in some reconnecting case where the
772		channel should go back to the current window.
773	source/server.c:
774		only set proxyname/port when they're used.
775
77620161207
777Wed Dec  7 09:09:13 PST 2016 - glen mccready <gkm@pobox.com>
778	include/ircaux.h:
779		add malloc_snprintf.
780	source/ircaux.c:
781		fix strmcat_ue. optimize strmcat. remove scanstr.
782		add malloc_snprintf. optimize expand_twidle.
783	source/dcc.c, source/lastlog.c:
784		use strstr instead of scanstr.
785	source/alias.c, source/edit.c, source/history.c, source/whois.c:
786		use malloc_snprintf instead of malloc/strcpy/strcat/strcat
787		sequences.
788
78920161204
790Fri Dec  2 15:06:41 PST 2016 - glen mccready <gkm@pobox.com>
791	include/alias.h, include/menu.h, include/parse.h, include/server.h,
792	source/alias.c, source/edit.c, source/exec.c, source/funny.c,
793	source/help.c, source/hook.c, source/if.c, source/ignore.c,
794	source/input.c, source/ircaux.c, source/ircsig.c, source/keys.c,
795	source/menu.c, source/names.c, source/notice.c, source/numbers.c,
796	source/output.c, source/parse.c, source/queue.c, source/screen.c,
797	source/server.c, source/snprintf.c, source/status.c,
798	source/translat.c, source/whois.c, source/window.c:
799		coding conventions. spaces to tabs. (u_char)0 -> '\0'
800	source/help.c:
801		update compar() prototype
802
80320151120
804Fri Nov 20 01:16:10 PST 2015 - matthew green <mrg@eterna.com.au>
805	source/lastlog.c:
806		extra the lastlog printing into its own function and add a
807		hack to remove any present trailing ALL_OFF.
808	source/log.c:
809		remove an #ifdef.
810	source/output.c, source/screen.c:
811		remove calls to add_to_log() from output.c functions and
812		rely entirely on add_to_screen() to do this.  add missing
813		calls to add_to_log() in the missing screen and basic
814		terminal support sections of add_to_screen().
815	script/nicksearch:
816		add new script to search for nicks.
817
81820151111
819Wed Nov 11 15:00:48 PST 2015 - matthew green <mrg@eterna.com.au>
820	Makefile.in:
821		make sure we only create sig.inc if successful.
822	source/server.c:
823		make sure we assign the ssl level to something in servercmd().
824
82520151002
826Fri Oct  2 21:14:39 PDT 2015 - matthew green <mrg@eterna.com.au>
827	source/translat.c:
828		give invalid utf-8 sequences a length of 1, so that we are
829		actually able to advance beyond them instead of an infinite
830		loop.
831
83220150903
833Thu Sep  3 12:34:00 PDT 2015 - matthew green <mrg@eterna.com.au>
834	include/ircterm.h, source/output.c, source/screen.c, source/status.c,
835	source/term.c, source/window.c:
836		use the final column of the display.  provide a way to get
837		the old behaviour via TERM_USE_LAST_COLUMN.  adjust a few
838		Debug()s to remove the (now provided) function name, and
839		add a Debug about screen size setting and also if
840		output_line() skips any text.
841
84220150513
843Wed May 13 15:44:36 PDT 2015 - matthew green <mrg@eterna.com.au>
844	contrib/README, contrib/noansi.c:
845		add a small program to strip DOS ansi codes.  from
846		cstone@pobox.com.
847	include/screen.h, source/screen.c, source/status.c, source/window.c:
848		add a size_t len parameter to my_strcpy_ci().
849	include/server.h, source/server.c:
850		make ssl_level_to_sa_flags() public as server.c wants to
851		use it.  fix it to use comparision instead of bitwise checks,
852		as the values are not bitwise values.  add an SSL_UNKNOWN
853		value to server_ssl_level and use it to avoid overriding
854		user-set values when deriving a server name in
855		parse_server_info().  fixes a bug reported Jim Westfall.
856	include/translat.h, source/input.c, source/screen.c, source/translat.c:
857		decode_mb() gains a size_t destlen parameter.
858	source/window.c,
859		expand split_up_line()'s internal outputs[] array, and make
860		sure we don't overrun it.
861	source/term.c:
862		add a new TERM_IGNORE_LAST_COLOMN define, and start to begin
863		to use the final column.
864
86520150222
866Sun Feb 22 04:41:48 PST 2015 - matthew green <mrg@eterna.com.au>
867	include/ctcp.h, include/debug.h, include/hook.h, include/output.h,
868	source/alias.c, source/edit.c, source/irc.c, source/server.c,
869	source/whois.c:
870		add format checking to all varargs functions that
871		resolve to normal printf arguments, and fix the various
872		problems found.
873
874Sat Feb 21 17:42:52 PST 2015 - matthew green <mrg@eterna.com.au>
875	include/server.h, source/edit.c, source/irc.c, source/server.c:
876		add GCC format checking attribute to send_to_server()
877		and fix the two places it was wrong.  now irc realname
878		is properly sent again, and we fix an old error in
879		redirect handling.
880
881Sat Feb 21 16:46:31 PST 2015 - matthew green <mrg@eterna.com.au>
882	source/translat.c:
883		don't set irc/display/input_encoding if they're
884		unable to iconv_open() with it.  avoids leaving
885		the system more non-functional.
886
88720141220
888Sat Dec 20 12:31:10 PST 2014 - matthew green <mrg@eterna.com.au>
889	source/names.c:
890		fix SWITCH_CHANNELS binding, which was calling the
891		backend twice, and switch to and then back to the
892		previous channel, appearing to do nothing.
893
894Wed Nov 26 13:42:34 PST 2014 - matthew green <mrg@eterna.com.au>
895	configure, configure.in:
896		for --with-openssl and no argument, don't look in
897		the "yes" directory for openssl, but assume it is
898		in the default path, as expected below.
899
90020141122
901Sat Nov 22 13:25:17 PST 2014 - matthew green <mrg@eterna.com.au>
902	source/edit.c:
903		fix find_command() to not have potential array bounds issues.
904	source/output.c, source/window.c, include/window.h:
905		use balance_windows() for now on SIGWINCH, etc.
906		recalculate_windows() still has a problem.
907
90820141028
909Tue Oct 28 18:31:45 PDT 2014 - matthew green <mrg@eterna.com.au>
910	source/debug.c:
911		tm_year offset is 1900, not 0.
912	source/window.c:
913		don't allow 'extra' to become negative, or to adjust
914		windows via the change percentage after the first loop.
915		abort() if extra ends up negative.  fixes various
916		issues seen when some types of resizing are performed.
917
91820141018
919Sat Oct 18 06:36:19 PDT 2014
920	source/output.c:
921		fix a -1 array index introduced recently.
922
923Sat Oct 18 06:26:34 PDT 2014 - matthew green <mrg@eterna.com.au>
924	Makefile.in, doc/ircii.spec, doc/ircii.spec.in, source/irc.c:
925		make 'dist' target set the version for ircii.spec.
926
92720140831
928Sun Aug 31 23:34:55 PDT 2014 - matthew green <mrg@eterna.com.au>
929	source/term.c, include/ircterm.h:
930		return void for tputs_x(), term_beep(), term_cr(),
931		term_underline_on(), term_underline_off(),
932		term_standout_on(), term_standout_off(),
933		term_clear_screen(), term_move_cursor(),
934		term_newline(), term_bold_on(), and term_bold_off().
935		fixes build issues on NetBSD 5.x.
936
937Mon Aug 25 12:19:46 PDT 2014 - matthew green <mrg@eterna.com.au>
938	doc/ircII.1:
939		convert to mandoc format.  from Thomas Klausner
940		<tk@giga.or.at>.  fix a couple of errors while there.
941
942Mon Aug 25 11:48:55 PDT 2014 - matthew green <mrg@eterna.com.au>
943	source/input.c, source/translat.c:
944		fix compliation issues when iconv can't be found.
945
946Mon Aug 25 11:21:20 PDT 2014 - matthew green <mrg@eterna.com.au>
947	source/server.c:
948		fix argument order in connect_to_server_direct.
949		from Jared McNeill.
950	source/irc.c:
951		various fixes to option parsing.  from Jared McNeill.
952
95320140824
954Sun Aug 24 21:40:26 PDT 2014 - matthew green <mrg@eterna.com.au>
955	source/ssl.c:
956		rewrite ssl_setup_certs() to keep track of what paths/files
957		it has seen before, and only update stuff when they change.
958		if neither SSL_CA_PATH nor SSL_CA_FILE are set, call
959		SSL_CTX_set_default_verify_paths().  this enables the default
960		ssl certificates to be used, freeing the end-user from having
961		to know the paths to set.
962	help/set/ssl_ca_path:
963		add an example for SET SSL_CA_PATH.
964
965Sun Aug 24 20:41:30 PDT 2014 - matthew green <mrg@eterna.com.au>
966	doc/ircii.spec:
967		make this actually work with sources from today that come
968		in a tarball with todays date.
969
970Sun Aug 24 20:28:01 PDT 2014 - matthew green <mrg@eterna.com.au>
971	Makefile.in:
972		avoid double $(DESTDIR) for mandir setting.
973
974Sun Aug 24 14:35:26 PDT 2014 - matthew green <mrg@eterna.com.au>
975	doc/ircii.spec:
976		updates from Jared McNeill and myself.
977
978Wed Aug 20 22:27:39 PDT 2014 - matthew green <mrg@eterna.com.au>
979	include/server.h, source/server.c:
980		finish HTTP proxy support by parsing the HTTP reply.
981
982Thu Aug 14 01:02:28 PDT 2014 - matthew green <mrg@eterna.com.au>
983	doc/ircII.1, include/debug.h, include/server.h, include/window.h,
984	source/debug.c, source/edit.c, source/irc.c, source/server.c,
985	source/window.c:
986		add HTTP proxy support.  new "proxy" debug level, add
987		proxy name and port arguments to parse_server_info() and
988		window_get_connected().  new default proxy server/port
989		available via "-R server:port" option.  each server can
990		also take "NO_PROXY/" prefix (similar to ICB/, etc.) or
991		take a "PROXY/<server>:<port>/" to enforce a particular
992		proxy usage for this server.  /server and /window server
993		also gain a "-proxy server port" option.
994		currently, this does not wait for the valid HTTP response
995		before attempting to connect, but works otherwise.
996
997Wed Aug 13 18:55:47 PDT 2014 - matthew green <mrg@eterna.com.au>
998	source/window.c:
999		bring back the old recalculate_windows() but call it
1000		balance_windows(), and use it for /window balance.
1001
1002Wed Aug 13 18:48:58 PDT 2014 - matthew green <mrg@eterna.com.au>
1003	include/irccrypt.h, source/crypt.c, source/dcc.c:
1004		move CRYPT_BUFFER_SIZE into irccrypt.h from both crypt.c
1005		and dcc.c.  adjust code to use "long long" type now we
1006		demand c99, and remove some XXXs.
1007	source/numbers.c:
1008		use parsing_server() like the XXX comment says.
1009
1010Wed Aug 13 18:44:57 PDT 2014 - matthew green <mrg@eterna.com.au>
1011	source/irc.c:
1012		ensure help text goes to stderr, even if we've parsed
1013		a "-o log" debug option.
1014
1015Tue Aug 12 17:22:05 PDT 2014 - matthew green <mrg@eterna.com.au>
1016	source/irc.c:
1017		alpha-order the help text options.
1018
101920140806
1020Wed Aug  6 18:16:33 PDT 2014 - matthew green <mrg@eterna.com.au>
1021	include/debug.h, source/debug.c:
1022		add DB_WINDOW debug level.
1023	include/screen.h, source/screen.c:
1024		add screen_get_old_co() and screen_get_old_li() accessors.
1025	source/window.c:
1026		rewrite recalculate_windows() to attempt to keep the same
1027		proportionality.
1028
1029Wed Aug  6 13:11:14 PDT 2014 - matthew green <mrg@eterna.com.au>
1030	source/window.c:
1031		fix the "channel already bound" message to tell you which
1032		window has it bound, rather than this window.
1033
1034Wed Aug  6 12:46:33 PDT 2014 - matthew green <mrg@eterna.com.au>
1035	script/icb:
1036		add /stats command support
1037	include/ircaux.h, source/ircaux.c, source/alias.c:
1038		make my_str*icmp() use const.
1039	include/server.h, source/icb.c, source/server.c:
1040		introduce private server data, with a call back to
1041		free it.  use this in icb to make the
1042		icb_got_group_waiting_for_members variable per-server.
1043		apply some const.
1044
104520140711
1046Fri Jul 11 04:29:33 PDT 2014 - matthew green <mrg@eterna.com.au>
1047	help/set/ssl_ca_chain_file, help/set/ssl_ca_file,
1048	help/set/ssl_ca_path, help/set/ssl_ca_private_key_file,
1049	include/config.h.dist, include/ssl.h, include/vars.h,
1050	source/ssl.c, source/vars.c:
1051		add 4 variables to control the inputs to
1052		SSL_CTX_load_verify_locations() - SSL_CA_FILE and
1053		SSL_CA_PATH, SSL_CTX_use_certificate_chain_file() -
1054		SSL_CA_CHAIN_FILE, and SSL_CTX_use_PrivateKey_file() -
1055		SSL_CA_PRIVATE_KEY_FILE.  they have NULL defaults so
1056		that the normal defaults are loaded.  not tested against
1057		a real server etc, yet.
1058
1059Fri Jul 11 03:45:49 PDT 2014 - matthew green <mrg@eterna.com.au>
1060	include/server.h, source/server.c:
1061		add 2 new server flags CONNECTED and SSL_DONE, use them
1062		to distinguish between when we've finished the non-blocking
1063		connect and when SSL negotiation has completed to avoid
1064		spinning the CPU.  call login_to_server() instead of
1065		server_check_ssl() in the fd is readable section of
1066		do_server(), which now ensures SSL_connect() is not called
1067		after it returns success.  move some non blocking code
1068		around to suit this separation as well.
1069
1070Fri Jul 11 02:50:36 PDT 2014 - matthew green <mrg@eterna.com.au>
1071	include/ssl.h, source/ircio.c, source/newio.c, source/ssl.c:
1072		remove unnecessary ssl_is_pending().
1073
1074Fri Jul 11 02:01:29 PDT 2014 - matthew green <mrg@eterna.com.au>
1075	include/ssl.h, source/server.c, source/ssl.c:
1076		change ssl init status returns into a tri-state OK, FAIL,
1077		and PENDING.  use this in ssl_init_connection() and also
1078		in server_check_ssl() to not cpu-spin calling SSL_connect()
1079		until it works.  however, select() seems to continue to
1080		return readable for the fd, and we do loop anyway, but with
1081		other events still handled.  still a CPU issue, but no
1082		longer a hangs everything issue.
1083	source/server.c, source/dcc.c, source/irc.c, source/ircio.c,
1084	source/newio.c:
1085		convert dgets() to return -2 in the case of "retry again"
1086		later returns for SSL_read() and SSL_write() calls, bubble
1087		this upto many dgets() callers and allow them to continue.
1088
1089Thu Jul 10 19:23:24 PDT 2014 - matthew green <mrg@eterna.com.au>
1090	source/server.c:
1091		move the guts of the code to reestablish the old server if
1092		a new server can't connect into a new function, and call
1093		that if ssl init fails hard (verify fails), leaving us
1094		still connected to the original server.
1095
1096Wed Jul  9 21:19:47 PDT 2014 - matthew green <mrg@eterna.com.au>
1097	doc/ircII.1:
1098		add missing options, including debug-only options.
1099	source/server.c:
1100		change server_check_ssl() to return a status.  use this to
1101		avoid calling close_server() on the previous server, so we
1102		can return to it.
1103	source/ssl.c:
1104		only create one SSL_CTX.
1105
1106Wed Jul  9 20:20:47 PDT 2014 - matthew green <mrg@eterna.com.au>
1107	doc/ircII.1:
1108		alpha-order the option list and descriptions.
1109
1110Wed Jul  9 20:07:44 PDT 2014 - matthew green <mrg@eterna.com.au>
1111	source/ssl.c:
1112		enable SSL verification support.  fix a bug in the error path.
1113	doc/ircII.1:
1114		document the SSLIRC*/ server prefixes.  reorder the nickname
1115		and servername for reality.
1116
111720140709
1118Wed Jul  9 06:40:13 PDT 2014 - matthew green <mrg@eterna.com.au>
1119	include/server.h, source/edit.c, source/irc.c, source/server.c,
1120	doc/ircII.1, help/server,help/window/server:
1121		add new server_default_encryption() to set the default
1122		encryption level for a particular protocol.  so far only
1123		IRC is supported.  valid values are "check", "nocheck"
1124		and "off".  make sure server_ssl_level values are properly
1125		initialised before use.  make the default for irc use
1126		new irc_ssl_level.  update help files for ssl support,
1127		and some older /window server options.
1128	source/irc.c:
1129		alpha-order parse_arg() switch.
1130
1131Fri Jul  4 22:06:46 PDT 2014 - matthew green <mrg@eterna.com.au>
1132	include/config.h.dist, source/irc.c:
1133		remove PAUSE_AFTER_MOTD options; always enable this code.
1134		redo input_pause() to not use irc_io() and clean up irc_io()
1135		and its' helper functions now that one_key is never true.
1136	include/output.h, include/screen.h, include/server.h,
1137	source/output.c, source/server.c:
1138		constify the first argument to put_it(), send_to_server(),
1139		say(), yell(), help_put_it() and output_line().
1140
1141Fri Jul  4 20:05:34 PDT 2014 - matthew green <mrg@eterna.com.au>
1142	Makefile.inc, configure, configure.in, include/defs.h.in, source/ssl.c:
1143		add support for --with-openssl switch.  it defaults to on
1144		and expects to find libcrypto and libssl.  enable support
1145		for building without openssl by eliding most of ssl.c.
1146
1147Fri Jul  4 06:51:19 PDT 2014 - matthew green <mrg@eterna.com.au>
1148	source/ssl.c:
1149		handle errors properly when trying to setup the connection.
1150		don't leak memory.
1151	source/server.c:
1152		only close the connection if we actually were trying
1153		to use SSL here.
1154
115520140704
1156Fri Jul  4 05:28:46 PDT 2014 - matthew green <mrg@eterna.com.au>
1157	source/server.c:
1158		goto real_continue when continuing the main do_server()
1159		loop, to ensure the dgets separater is reset.  fix a
1160		comment to match the code (from rtr.)
1161	include/ssl.h, source/ircio.c, source/newio.c, source/ssl.c:
1162		introduce ssl_is_pending() wrapper around SSL_pending()
1163		and use it in new_select() to make sure we read from
1164		the SSL socket.  expand ssl_print_error_queue() to take
1165		a const char *msg as well.  set SSL_MODE_AUTO_RETRY.
1166
1167Fri Jul  4 05:11:40 PDT 2014 - matthew green <mrg@eterna.com.au>
1168	source/debug.c:
1169		include date/time in the debugging messages.
1170
1171Thu Jul  3 09:57:38 PDT 2014 - tyler retzlaff <rtr@crt0.ca>
1172	source/ssl.c:
1173		use SSLv2_client_method when establishing a context
1174		for connection to a server.
1175		properly evaluate SSL_connect return value 0 is also
1176		an error.
1177
1178Tue Jul  1 21:59:33 PDT 2014 - matthew green <mrg@eterna.com.au>
1179	source/newio.c:
1180		clean up some.
1181
1182Tue Jul  1 21:37:27 PDT 2014 - matthew green <mrg@eterna.com.au>
1183	source/crypt.c:
1184		use size_t over int in a few places
1185
1186Tue Mar 18 17:26:59 PDT 2014 - matthew green <mrg@eterna.com.au>
1187	include/debug.h, include/ssl.h, source/debug.c, source/ircio.c,
1188	source/newio.c, source/server.c, source/ssl.c:
1189		add newio, ssl and server debug levels.  expand the
1190		ssl_read()/ssl_write() functions to also take an fd,
1191		and use it instead of keeping it in the SslInfo.  fix
1192		the ircio build.  call init_io() from init_io_rec().
1193		only call dgets_clear_ssl_info()/ssl_close_connection()
1194		if the ssl info actually exists.  move the call to
1195		ssl_init_connection() into new server_check_ssl() and
1196		call this from a couple of places.  actually use
1197		ssl_read() and ssl_write().
1198
1199Mon Mar 17 17:29:15 PDT 2014 - matthew green <mrg@eterna.com.au>
1200	Makefile.in, include/newio.h, include/server.h, include/window.h,
1201	source/edit.c, source/newio.c, source/server.c, source/window.c:
1202		SSL support stage 1.  this works for non-SSL still, but
1203		has trouble connecting to SSL servers.  there are some
1204		new switches, etc.  /window server and /server both have
1205		new -ssl, -nossl, and -sslnocheck options.  server names
1206		can now have SSLIRC/ and SSLIRCNOCHECK/ prefixes in
1207		addition to the existing IRC/ and ICB/ prefixes.  expand
1208		dgets() and server to deal with calling the SSL functions.
1209		todo:
1210		- configure support to find openssl
1211		- if SSL init fails, revert to previous server
1212		- send_to_server() needs help
1213		- close_server() needs help
1214		- actually verify the certificate against something (we
1215		  have no methods to pass cert files/dirs in yet)
1216		- documentation updates
1217
121820140317
1219Mon Mar 17 13:51:05 PDT 2014 - matthew green <mrg@eterna.com.au>
1220	source/edit.c:
1221		make meta4 sticky again.
1222	configure.in, configure:
1223		use AC_PREREQ([2.69]).
1224
1225Mon Mar 17 11:46:32 PDT 2014 - matthew green <mrg@eterna.com.au>
1226	configure, configure.in, include/defs.h.in, include/irc.h,
1227	include/irc_std.h, include/ircterm.h, source/crypt.c, source/irc.c,
1228	source/ircflush.c, source/status.c, source/term.c, source/wserv.c:
1229		retire RETSIGTYPE and the AC_TYPE_SIGNAL test that has
1230		actually been obsolete in ircii since 2004.
1231
123220140314
1233Fri Mar 14 14:17:48 PDT 2014 - matthew green <mrg@eterna.com.au>
1234	Makefile.in, include/crypt.h, include/irccrypt.h,
1235	source/cipher-test.c, source/crypt.c, source/ctcp.c, source/dcc.c,
1236	source/edit.c, source/parse.c, source/vars.c
1237		rename include/crypt.h as include/irccrypt.h to avoid
1238		<crypt.h> including this header, not the header that
1239		defines crypt(3).
1240
1241Fri Mar 14 12:14:10 PDT 2014 - matthew green <mrg@eterna.com.au>
1242	doc/example_menu, help/!, help/input, help/menus, help/wait,
1243	help/alias/special, include/input.h, include/irc.h,
1244	include/keys.h, include/server.h, script/autoquery,
1245	script/bigcheese, script/kickmenu, script/log, script/time,
1246	script/troy, script/version, source/alias.c, source/edit.c,
1247	source/exec.c, source/help.c, source/input.c, source/irc.c,
1248	source/keys.c, source/server.c:
1249		remove support for $"..." expansions and /wait without
1250		-cmd, and convert all the remaining distribution scripts
1251		and menus to use /input and /wait -cmd.  remove
1252		documentation for both.  move the input_pause() function
1253		into irc.c.  this removes all irc_io() abuse.  remove
1254		a lot of no longer necessary code in irc_io() including
1255		the ability to be called recursively, and make it static
1256		to irc.c.  more could go if input_pause() is reworked.
1257		remove get_send_line(), change_send_line(), server_waiting(),
1258		server_waiting_inc(), server_waiting_dec(), lame_wait_nick[],
1259		wait_index, set_wait_process(), and break_io_processing(),
1260		and the waiting member of Server structure.
1261
1262Fri Mar 14 01:11:59 PDT 2014 - matthew green <mrg@eterna.com.au>
1263	configure, configure.in, include/cast_sbox.h, include/defs.h.in,
1264	include/irc_std.h, source/cast.c, source/dcc.c:
1265		stop finding a 32 bit integer in configure and just assume
1266		that uint32_t exists from <stdint.h>.  remove tests for
1267		missing errno and sys_errlist[] declarations; these systems
1268		probably stopped working with C89 was enforced 10 years ago.
1269
1270Fri Mar 14 01:04:03 PDT 2014 - matthew green <mrg@eterna.com.au>
1271	include/debug.h, source/debug.c, source/edit.c, source/history.c,
1272	source/input.c, source/irc.c, source/lastlog.c, source/output.c,
1273	source/screen.c, source/status.c, source/window.c:
1274		remove the old K&R/C89 compatible Debug() macros and
1275		re-implement it with C99 varadic macro support.  use this
1276		to easily add the function/line number to the output.
1277		convert debug level to debug sets, and implement sets for
1278		scroll, load, history, cursor, ircio, lastlog, window
1279		create and the status bar.
1280
1281Thu Mar 13 21:14:09 PDT 2014 - matthew green <mrg@eterna.com.au>
1282	doc/Copyright, help/ircii/copyright, help/note/antiwall,
1283	help/note/deny, help/note/flag, help/note/key, help/note/news,
1284	help/note/note, help/note/save, help/note/sent, help/note/service,
1285	help/note/stats, help/note/wall, help/note/wallops, source/help.c:
1286		remove support for /help files knowing whether you're an
1287		IRC operator or not, and adjust the help files to show the
1288		same information to everyone, but note that some
1289		functionality is likely restricted.  updated copyrights,
1290		and add the copyrights for sl.[ch].
1291
1292Wed Mar 12 16:18:45 PDT 2014 - matthew green <mrg@eterna.com.au>
1293	configure, configure.in, Makefile.in, include/irc.h:
1294		use datarootdir over datadir.  move the AIX specific code
1295		into irc.h out of configure, it doesn't need to be a
1296		configure-time test.
1297
1298Wed Mar 12 15:40:33 PDT 2014 - matthew green <mrg@eterna.com.au>
1299	configure, configure.in, include/defs.h.in, include/irc.h,
1300	include/irc_std.h, include/scandir.h, source/aes.c, source/alias.c,
1301	source/crypt.c, source/ctcp.c, source/dcc.c, source/debug.c,
1302	source/edit.c, source/exec.c, source/funny.c, source/getaddrinfo.c,
1303	source/getnameinfo.c, source/help.c, source/hook.c, source/irc.c,
1304	source/ircaux.c, source/ircflush.c, source/ircio.c, source/log.c,
1305	source/mail.c, source/mksiginc.c, source/newio.c, source/notice.c,
1306	source/numbers.c, source/output.c, source/scandir.c, source/server.c,
1307	source/snprintf.c, source/term.c, source/translat.c, source/window.c,
1308	source/wserv.c:
1309		major clean up of old compatibility code:
1310		- don't bother checking for unistd.h, string.h, sys/wait.h
1311		  or termios.h as we demand they exist for a while now.
1312		- assume uname(3).
1313		- convert all remaining index/rindex/bcopy/bzero calls into
1314		  my_index/memcopy/memset calls, and remove any compat code.
1315		- make the scandir compat code depend upon 'struct dirent'
1316		  and stop forcing it to exist for some platforms, and call
1317		  it 'irc_scandir' to avoid potential conflicts.
1318		- remove repeated #includes of standard headers.
1319		- assume a standard <sys/stat.h>.
1320		- remove "LYNX_STUFF" code for actions.
1321		- use  the right types for scandir functions.
1322		- remove /*VARARGS*/ and unused functions.
1323		- always include SERVERS_FILE support.
1324		- remove last vestigates of _IBMR2 and M_UNIX support, and
1325		  BROKEN_SCANF support.
1326		- remove dead code in wserv.
1327		-- remove dead and broken CORECATCH and ALLOC_DEBUG code.
1328
132920140311
1330Wed Mar 12 01:48:44 PDT 2014 - matthew green <mrg@eterna.com.au>
1331	acconfig.h, configure, configure.in, include/defs.h.in, source/irc.c:
1332		convert to autoconf 2.69.  use AC_CHECK_TYPES(), and fix the
1333		output path for AC_CONFIG_HEADER().  remove now obsolete
1334		acconfig.h.
1335
1336Wed Mar 12 01:41:39 PDT 2014 - matthew green <mrg@eterna.com.au>
1337	acconfig.h, configure, configure.in, include/defs.h.in:
1338		move the all but 'ssize_t' out of acconfig.h, there
1339		doesn't seem to be an easy way to deal with this for
1340		autoconf-2.6x and 2.13 from the same configure.in.
1341
1342Wed Mar 12 01:28:41 PDT 2014 - matthew green <mrg@eterna.com.au>
1343	acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h,
1344	source/newio.c:
1345		remove unset MAIL_DIR.
1346		assume 'struct linger' exists.
1347		move most configure define descriptions into configure.in
1348		from acconfig.h.
1349		make a comment about using <stdint.h> when forcing c99.
1350
1351Wed Mar 12 01:14:26 PDT 2014 - matthew green <mrg@eterna.com.au>
1352	acconfig.h, configure, configure.in, include/defs.h.in,
1353	include/irc_std.h:
1354		remove several unnecessary #undef lines from acconfig.h.
1355		move description for HAVE_GETADDRINFO, HAVE_GETNAMEINFO,
1356		and HAVE_RFC2553_NETDB into configure.in
1357		move the _AIX / COMPAT_43 definition into irc_std.h.
1358
1359Wed Mar 12 01:03:43 PDT 2014 - matthew green <mrg@eterna.com.au>
1360	acconfig.h, configure, configure.in, include/defs.h.in,
1361	include/icb.h, include/irc.h, include/irc_std.h, source/irc.c,
1362	source/ircsig.c, source/mail.c, source/term.c, source/wserv.c:
1363		remove AMS_MAIL (andrew) support.
1364		remove unused BROKEN_GETPGRP.
1365		assume we always have sigaction() and setsid().
1366
1367Wed Mar 12 00:30:10 PDT 2014 - matthew green <mrg@eterna.com.au>
1368	acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h:
1369		begin to prepare for modern autoconf.  move many define
1370		descriptions into configure.in out of acconfig.h.  use
1371		AC_CHECK_FUNCS().  move the non blocking check after the
1372		socks check, as socks turns it off.  move the defines for
1373		socks into a socks_compat.h, rather than having things be
1374		mostly hard coded in configure.in and acconfig.h.
1375
1376Wed Mar 12 00:25:34 PDT 2014 - matthew green <mrg@eterna.com.au>
1377	configure, configure.in:
1378		add -Wformat to warning options.
1379
1380Wed Mar 12 00:16:55 PDT 2014 - matthew green <mrg@eterna.com.au>
1381	source/edit.c:
1382		break out the extremely deeply nested parts of load() into
1383		a new load_a_file() function.
1384
1385Wed Mar 12 00:14:01 PDT 2014 - matthew green <mrg@eterna.com.au>
1386	include/hook.h, source/edit.c, source/hook.c, source/screen.c:
1387		convert set_in_on_who() to return the old in_on_who value,
1388		and use this to reduce the number of lines in some other code.
1389
1390Tue Mar 11 23:14:55 PDT 2014 - matthew green <mrg@eterna.com.au>
1391	source/alias.c, source/crypt.c, source/edit.c, source/exec.c,
1392	source/funny.c, source/getnameinfo.c, source/help.c,
1393	source/history.c, source/hook.c, source/if.c, source/ignore.c,
1394	source/input.c, source/irc.c, source/keys.c, source/lastlog.c,
1395	source/notify.c, source/numbers.c, source/output.c, source/parse.c,
1396	source/server.c, source/status.c, source/vars.c, source/whois.c,
1397	source/window.c:
1398		remove /*ARGSUSED*/ markers.
1399	source/edit.c:
1400		turn metaX_hit into an array, and adjust the code to use
1401		this to its advantage.
1402
1403Tue Mar 11 22:59:09 PDT 2014 - matthew green <mrg@eterna.com.au>
1404	include/irc.h, include/server.h, source/alias.c, source/dcc.c,
1405	source/edit.c, source/exec.c, source/help.c, source/hook.c,
1406	source/icb.c, source/irc.c, source/names.c, source/notify.c,
1407	source/numbers.c, source/parse.c, source/screen.c, source/server.c,
1408	source/status.c, source/whois.c, source/window.c:
1409		hide from_server.  move 'environ' extern into exec.c.
1410		always call set_from_server() with a timer's server.
1411		fix a missing re-set of from_server in some commented out
1412		code in bind_channel().
1413
1414Tue Mar 11 04:18:57 PDT 2014 - matthew green <mrg@eterna.com.au>
1415	include/irc.h, source/alias.c, source/ctcp.c, source/dcc.c,
1416	source/edit.c, source/exec.c, source/help.c, source/history.c,
1417	source/hook.c, source/icb.c, source/if.c, source/ignore.c,
1418	source/input.c, source/irc.c, source/ircaux.c, source/keys.c,
1419	source/menu.c, source/names.c, source/notice.c, source/notify.c,
1420	source/numbers.c, source/output.c, source/parse.c, source/queue.c,
1421	source/screen.c, source/server.c, source/status.c, source/term.c,
1422	source/vars.c, source/whois.c, source/window.c:
1423		fix zero[] and one[] to be persistent.  convert
1424		empty_string[] into empty_string().
1425
1426Tue Mar 11 04:15:14 PDT 2014 - matthew green <mrg@eterna.com.au>
1427	include/irc.h, source/alias.c, source/input.c, source/irc.c:
1428		remove use_input global that was always 1.
1429
1430Tue Mar 11 02:38:02 PDT 2014 - matthew green <mrg@eterna.com.au>
1431	include/irc.h, source/edit.c, source/irc.c, source/notice.c:
1432		hide ircrc_file.
1433
1434Tue Mar 11 02:07:54 PDT 2014 - matthew green <mrg@eterna.com.au>
1435	include/irc.h, source/alias.c, source/dcc.c, source/edit.c,
1436	source/irc.c, source/ircaux.c, source/names.c, source/parse.c,
1437	source/window.c:
1438		make zero[] and one[] into zero() and one().
1439
1440Tue Mar 11 01:59:08 PDT 2014 - matthew green <mrg@eterna.com.au>
1441	include/edit.h, include/irc.h, include/server.h, source/alias.c,
1442	source/dcc.c, source/edit.c, source/exec.c, source/icb.c,
1443	source/irc.c, source/names.c, source/notice.c, source/notify.c,
1444	source/numbers.c, source/parse.c, source/server.c, source/status.c,
1445	source/whois.c, source/window.c:
1446		hide invite_channel, ircquick_file and primary_server.
1447		remove now never non-zero break_io_processing, and export
1448		new break_io_processing() for now hidden irc_io_loop.
1449
1450Tue Mar 11 00:04:38 PDT 2014 - matthew green <mrg@eterna.com.au>
1451	source/cipher-test.c, source/dcc.c, source/debug.c, source/edit.c,
1452	source/help.c, source/if.c, source/ircflush.c, source/ircsig.c,
1453	source/keys.c, source/log.c, source/mail.c, source/menu.c,
1454	source/output.c, source/reg.c, source/term.c, source/translat.c,
1455	source/vars.c, source/wserv.c:
1456		apply static to various variables that are already only
1457		accessed locally.  update copyrights.
1458
1459Mon Mar 10 23:39:44 PDT 2014 - matthew green <mrg@eterna.com.au>
1460	doc/ircII.1, include/irc.h, include/server.h, source/alias.c,
1461	source/dcc.c, source/edit.c, source/help.c, source/input.c,
1462	source/irc.c, source/notice.c, source/numbers.c, source/parse.c,
1463	source/screen.c, source/server.c, source/status.c, source/term.c,
1464	source/window.c:
1465		rename "dumb" mode as "non full screen" mode.  hide the
1466		old "dumb" variable as term_basic().  make oper_command
1467		a per-server function, allowing multiple concurrent
1468		/oper and server connections to occur.  hide args_str()
1469		and nickname.  server_[gs]et_who_info() don't need an
1470		"int server" argument.
1471
1472Mon Mar 10 23:38:34 PDT 2014 - matthew green <mrg@eterna.com.au>
1473	include/hook.h, include/irc.h, source/edit.c, source/exec.c,
1474	source/hook.c, source/irc.c:
1475		hide send_text_flag.
1476
1477Mon Mar 10 23:10:41 PDT 2014 - matthew green <mrg@eterna.com.au>
1478	include/server.h, source/alias.c, source/ctcp.c, source/exec.c,
1479	source/funny.c, source/icb.c, source/names.c, source/notice.c,
1480	source/numbers.c, source/parse.c, source/server.c, source/whois.c:
1481		hide parsing_server_index via parsing_server().
1482
1483Mon Mar 10 12:25:48 PDT 2014 - matthew green <mrg@eterna.com.au>
1484	include/edit.h, include/irc.h, source/alias.c, source/ctcp.c,
1485	source/dcc.c, source/edit.c, source/icb.c, source/input.c,
1486	source/irc.c, source/ircaux.c, source/mail.c, source/numbers.c,
1487	source/parse.c, source/server.c, source/vars.c, source/whois.c:
1488		move alias_buffer() and cut_buffer[] into edit.c and make
1489		cut_buffer static in there.  hide hostname[], username[],
1490		realname[], away_set, irc_lib and source_host, send_umode.
1491		move set_realname() into irc.c.  delete obsolete do_fork.
1492		mark some previously missed variables static.
1493
1494Sun Mar  9 17:16:26 PDT 2014 - matthew green <mrg@eterna.com.au>
1495	include/irc.h, source/irc.c, source/ircaux.c, source/mail.c:
1496		hide my_path() and add some missing static.
1497
1498Sun Mar  9 01:35:41 PST 2014 - matthew green <mrg@eterna.com.au>
1499	include/edit.h, include/irc.h, include/server.h, source/edit.c,
1500	source/irc.c, source/numbers.c, source/parse.c, source/server.c,
1501	source/term.c:
1502		convert who_mask, who_name, who_host, who_server, who_file,
1503		who_nick, who_real and cannot_open into per-server values
1504		under a WhoInfo structure hidden inside edit.c.  move a big
1505		chunk of whoreply() from numbers.c into edit.c.  this enables
1506		/who -<options> to work concurrently on multiple servers as
1507		well.  hide use_flow_control, tflag, qflag and bflag.  fix a
1508		bug in /disconnect where it would cause irc to exit.
1509
1510Thu Mar  6 17:54:55 PST 2014 - matthew green <mrg@eterna.com.au>
1511	include/dcc.h, include/irc.h, include/notify.h, include/server.h,
1512	source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c,
1513	source/irc.c, source/notify.c, source/screen.c, source/server.c,
1514	source/status.c, source/vars.c:
1515		hide irc_version, last_notify_nick, program_name, idle_time,
1516		client_default_icb and dcc_source_host.  move set_dcchost()
1517		into dcc.c where it belongs.  convert 'waiting' into a
1518		per-server thing with real accessors.
1519
152020140306
1521Thu Mar  6 15:38:13 PST 2014 - matthew green <mrg@eterna.com.au>
1522	source/ircaux.c, source/server.c:
1523		let connect_by_number() keep errno a valid number if it
1524		fails to call socket() or bind().  remove bind_local_addr()'s
1525		unused 2nd argument.  support IPv6 addresses and port numbers
1526		in here as well.  in connect_to_server_direct(), if
1527		connect_by_number() returns -1, keep errno, and save it around
1528		a ouple of other calls that might reset it.
1529
1530Thu Mar  6 13:46:07 PST 2014 - matthew green <mrg@eterna.com.au>
1531	include/screen.h, source/alias.c, source/ctcp.c, source/dcc.c,
1532	source/edit.c, source/hook.c, source/if.c, source/irc.c,
1533	source/ircaux.c, source/names.c, source/newio.c, source/queue.c,
1534	source/screen.c, source/server.c, source/term.c, source/whois.c,
1535	source/window.c:
1536		hide in_redirect and in_ctcp_flag.  remove 'extern'
1537		declarations where they're not needed.
1538
1539
1540Mon Mar  3 10:48:15 PST 2014 - matthew green <mrg@eterna.com.au>
1541	include/alias.h, include/irc.h, include/output.h, include/server.h,
1542	include/window.h, source/alias.c, source/edit.c, source/exec.c,
1543	source/help.c, source/hook.c source/icb.c, source/if.c, source/irc.c,
1544	source/output.c, source/parse.c, source/server.c, source/window.c:
1545		hide joined_nick, public_nick, using_server_process
1546		and window_display.
1547
1548Sun Mar  2 02:47:30 PST 2014 - matthew green <mrg@eterna.com.au>
1549	include/screen.h, source/edit.c, source/help.c, source/input.c,
1550	source/irc.c, source/output.c, source/screen.c, source/server.c,
1551	source/status.c, source/term.c, source/translat.c, source/window.c:
1552		hide to_window, current_screen, main_screen and
1553		last_input_screen.
1554
1555
1556Sat Mar  1 21:42:55 PST 2014 - matthew green <mrg@eterna.com.au>
1557	include/ignore.h, source/icb.c, source/ignore.c, source/notice.c,
1558	source/parse.c, source/whois.c:
1559		hide ignore_usernames and highlight_char.  remove code that
1560		assumed that highlight_char was followed by a nul byte.
1561
1562Sat Mar  1 21:27:27 PST 2014 - matthew green <mrg@eterna.com.au>
1563	include/translat.h, include/window.h, source/input.c, source/names.c,
1564	source/output.c, source/screen.c, source/translat.c, source/window.c:
1565		hide irc_encoding, display_encoding, input_encoding,
1566		who_level and who_from.  obsolete in_window_command by always
1567		calling update_all_windows() in windowcmd().
1568
156920140228
1570Fri Feb 28 19:57:13 PST 2014 - matthew green <mrg@eterna.com.au>
1571	include/hook.h, include/parse.h, source/alias.c, source/ctcp.c,
1572	source/edit.c, source/exec.c, source/hook.c, source/icb.c,
1573	source/notice.c, source/parse.c, source/screen.c:
1574		hide in_on_who, FromUserHost and doing_privmsg.
1575
1576Fri Feb 28 17:23:17 PST 2014 - matthew green <mrg@eterna.com.au>
1577	include/edit.h, include/output.h, include/translat.h, include/vars.h,
1578	include/whois.h, source/alias.c, source/ctcp.c, source/dcc.c,
1579	source/edit.c, source/hook.c, source/icb.c, source/irc.c,
1580	source/keys.c, source/log.c, source/notice.c, source/output.c,
1581	source/parse.c, source/screen.c, source/status.c, source/translat.c,
1582	source/vars.c, source/whois.c, source/window.c:
1583		convert loading_global and var_settings into a functions.
1584		move the code to load "global" into its own function called
1585		from two source files.  hide irclog_fp, load_depth,
1586		my_echo_set_message_from and beep_on_level.  change
1587		add_to_log() to convert fp == NULL internal to set fp equal
1588		irclog_fp, removing the need for it to be public.
1589		remove unnecessary externs for dig_table_*[] and move
1590		DIG_TABLE_SIZE into translat.c itself.
1591
1592Fri Feb 28 15:32:35 PST 2014 - matthew green <mrg@eterna.com.au>
1593	include/irc.h, include/numbers.h, source/alias.c, source/edit.c,
1594	source/funny.c, source/irc.c, source/numbers.c, source/whois.c:
1595		hide background, irc_path, whois_nick and current_numeric.
1596		remove unused whois_nick and move wait_nick into edit.c.
1597
1598Fri Feb 28 02:40:17 PST 2014 - matthew green <mrg@eterna.com.au>
1599	include/ctcp.h, include/ircterm.h, include/output.h,
1600	include/window.h, source/ctcp.c, source/irc.c, source/notice.c,
1601	source/output.c, source/parse.c, source/screen.c, source/term.c,
1602	source/whois.c, source/window.c:
1603		hide ctcp_was_crypted, term_reset_flag, underline,
1604		do_refresh_screen and in_help.  remove redirect_nick[].
1605		convert the term_*() function pointers into real
1606		functions with the pointer variables local to term.c.
1607
1608Fri Feb 28 02:34:02 PST 2014 - matthew green <mrg@eterna.com.au>
1609	source/edit.c:
1610		fix the handling of promptlist insertion in add_wait_prompt().
1611
1612Fri Feb 28 02:14:10 PST 2014 - matthew green <mrg@eterna.com.au>
1613	source/edit.c:
1614		fix the handling of edit_char() and the promptlist.
1615
1616Thu Feb 27 17:20:23 PST 2014 - matthew green <mrg@eterna.com.au>
1617	include/ctcp.h, include/debug.h, include/exec.h, include/icb.h,
1618	include/irc.h, include/irc_std.h, include/screen.h, include/server.h,
1619	source/alias.c, source/ctcp.c, source/dcc.c, source/debug.c,
1620	source/edit.c, source/exec.c, source/icb.c, source/irc.c,
1621	source/lastlog.c, source/mkmksiginc.pl, source/mksiginc.c,
1622	source/names.c, source/notice.c, source/numbers.c, source/parse.c,
1623	source/screen.c, source/server.c, source/status.c, source/window.c:
1624		hide ctcp_type[], debuglevel, signals[], max_signo, icb_port,
1625		irc_port, screen_list, connected_to_server, and never_connected.
1626		introduce an ARRAY_SIZE() macro and use it in 4 places.  some
1627		minor constification.
1628
1629Wed Feb 26 13:42:02 PST 2014 - matthew green <mrg@eterna.com.au>
1630	include/edit.h, include/newio.h, include/server.h, include/status.h,
1631	source/alias.c, source/dcc.c, source/edit.c, source/icb.c,
1632	source/irc.c, source/names.c, source/newio.c, source/numbers.c,
1633	source/parse.c, source/server.c, source/status.c, source/window.c:
1634		convert number_of_servers into a function call.  hide
1635		sent_nick, sent_body and recv_nick.  move all the processing
1636		around do_status_alarmed into status.c, and rename
1637		real_status_alarmed() as check_status_alarmed().  convert
1638		dgets_errno into a function call.
1639
1640Tue Feb 25 16:59:37 PST 2014 - matthew green <mrg@eterna.com.au>
1641	Makefile.in, configure, configure.in:
1642		add three new configure flags:
1643		  --with-debugging[=flags]       Build with debugging support.
1644		  --with-warnings[=flags]        Build with GCC warnings.
1645		  --with-warning-errors[=flags]  Turn warnings into errors.
1646		that really are just extra CFLAGS, with sane defaults.
1647
1648Tue Feb 25 15:24:14 PST 2014 - matthew green <mrg@eterna.com.au>
1649	include/ircterm.h, include/keys.h, include/translat.h, include/window.h,
1650	source/edit.c, source/keys.c, source/term.c:
1651		convert term macros into real functions, and hide the termcap
1652		values all inside term.c.  move the accesses of key_names[],
1653		keys[] and meta[1-8]_keys[] into keys.c directly with a couple
1654		of accessors.  remove no longer present variable externs.
1655		put the keys*[] arrays at the start of keys.c where i've always
1656		looked for them, and they're now needed to avoid forward decls.
1657
1658Tue Feb 25 09:59:54 PST 2014 - matthew green <mrg@eterna.com.au>
1659	include/edit.h, include/screen.h, source/alias.c, source/edit.c,
1660	source/funny.c, source/help.c, source/input.c, source/irc.c,
1661	source/menu.c, source/output.c, source/screen.c, source/status.c,
1662	source/term.c, source/translat.c, source/window.c:
1663		hide Screen entirely inside screen.c.  move a bunch of
1664		the data inside edit.c as EditInfo, add accessor for
1665		the remaining members: promptlist, next, window_stack,
1666		curosr_window, and size info.  remove unused prev member.
1667		replace "screen_get_redirect_token(current_screen)" with
1668		"get_redirect_token()".  simplify promptlist handling.
1669
1670Tue Feb 25 02:49:36 PST 2014 - matthew green <mrg@eterna.com.au>
1671	Makefile.in, include/config.h.dist, include/vars.h, source/screen.c,
1672	source/vars.c:
1673		make WSERV_PATH a real variable you can /set.
1674	source/wserv.c:
1675		fix bugs in SIGWINCH handler that no longer exits upon
1676		select(2) returning EINTR.
1677
1678Tue Feb 25 01:46:07 PST 2014 - matthew green <mrg@eterna.com.au>
1679	include/screen.h, include/window.h, source/output.c, source/screen.c,
1680	source/status.c, source/window.c:
1681		hide more of Screen:
1682		- hide current_window, last_window_refnum, cursor_window,
1683		  visible_windows, fdin, fpout
1684		- remove fpin, as it is set but unused otherwise
1685		- use number_of_windows() in several places
1686		fix problems with Debug() code since Window was hidden
1687	source/screen.c:
1688		fix a fd leak if accept() fails in /window create.  handle
1689		the case of fdopen() fails in /window create (fixes crash.)
1690		set program_name, for when screen/wserv want to use it.
1691		for now, remove the not ready code in wserv.c for screen
1692		that is causing it to crash.
1693	source/irc.c:
1694		add usage info for -DDEBUG compiles as well
1695
1696Mon Feb 24 23:00:39 PST 2014 - matthew green <mrg@eterna.com.au>
1697	include/screen.h, include/window.h, source/alias.c, source/edit.c,
1698	source/help.c, source/input.c, source/irc.c, source/output.c,
1699	source/screen.c, source/window.c:
1700		begin to hide Screen:
1701		- fpin/fdout - already hidden
1702		- renames wservio to wserv_fd and hides it
1703		- redirect_* - already hidden
1704		- hides screennum, current_window, alive, visible_windows,
1705		  window_list, window_list_end and inputdata
1706		- make curr_scr_win a macro in front of
1707		  screen_get_current_window() and introduce
1708		  set_curr_scr_win() macro.
1709		- add window_get_prev()
1710
171120140221
1712Fri Feb 21 05:54:40 PST 2014 - matthew green <mrg@eterna.com.au>
1713	source/server.c:
1714		fix a bug in server_get_whois_stuff() that was
1715		causing crashes.
1716
1717Fri Feb 21 03:53:52 PST 2014 - matthew green <mrg@eterna.com.au>
1718	source/irc.c:
1719		check USER before the password file.  it's 2014.
1720
172120140220
1722Fri Feb 21 03:20:42 PST 2014 - matthew green <mrg@eterna.com.au>
1723	include/window.h, source/help.c, source/irc.c, source/names.c,
1724	source/output.c, source/screen.c, source/status.c, source/window.c:
1725		move Window into window.c itself.  add missing accessors
1726		for hold_mode, nicks, hold_info and a passthrough for
1727		nicks_has_who_from().
1728
1729Fri Feb 21 03:05:50 PST 2014 - matthew green <mrg@eterna.com.au>
1730	include/window.h, source/alias.c, source/help.c, source/hold.c,
1731	source/menu.c, source/output.c, source/window.c:
1732		add accessors for Window's top, bottom, cursor, line_cnt,
1733		scroll, display-size, visible and update members.
1734
1735Fri Feb 21 02:17:39 PST 2014 - matthew green <mrg@eterna.com.au>
1736	include/window.h, source/hold.c, source/output.c, source/status.c,
1737	source/window.c:
1738		add accessors for Window's status_line, double_status,
1739		hold_mode, hold_on_next_rite, scrolled_lines and
1740		new_scrolled_lines.
1741
1742Thu Feb 20 17:02:17 PST 2014 - matthew green <mrg@eterna.com.au>
1743	include/irc.h, include/output.h, include/screen.h, include/window.h,
1744	source/output.c, source/screen.c, source/window.c:
1745		move several functions out of screen.c into window.c or
1746		output.c, based upon who structures they operate on.
1747		output.c gains display_highlight(), display_bold(),
1748		display_colours(), and rite().
1749		window.c gains Display, ShrinkInfo, scroll_window().
1750		add_to_window(), scrollback_forwards(), scrollback_backwards(),
1751		scrollback_end(), scrollback_start(), redraw_resized(),
1752		recalculate_windows(), clear_window(), clear_all_windows(),
1753		recalculate_window_positions(), redraw_all_windows(),
1754		resize_display(), free_display(), erase_display(),
1755		split_up_line_alloc(), and window_add_display_line(), plus
1756		some other static functions only used by these.
1757
1758Thu Feb 20 15:43:12 PST 2014 - matthew green <mrg@eterna.com.au>
1759	source/lastlog.c:
1760		fix a segv when scrollback back from some contexts.
1761	include/hold.h, include/window.h, source/edit.c, source/hold.c,
1762	source/menu.c, source/screen.c, source/status.c, source/window.c:
1763		move several parts of Window* into HoldInfo* only visible
1764		in hold.c.  several new window functions to wrap the new
1765		or changed hold functions are introduced.
1766
1767Thu Feb 20 02:17:09 PST 2014 - matthew green <mrg@eterna.com.au>
1768	include/names.h, include/window.h, source/menu.c, source/names.c,
1769	source/screen.c, source/status.c, source/window.c:
1770		move all window nick list handling into names.c.
1771		add and use accessors for miscflags, current_channel,
1772		window_level and menu members of Window.  create a
1773		window_menu_lines() front end to menu_lines().
1774	source/crypt.c, source/ignore.c, source/names.c, source/notify.c:
1775		remove verbose uses of negative flags for list operations.
1776		just use zero.
1777
1778Thu Feb 20 01:30:12 PST 2014 - matthew green <mrg@eterna.com.au>
1779	include/lastlog.h, include/window.h, source/lastlog.c,
1780	source/screen.c, source/window.c:
1781		encapsulate the lastlog info in Window into a new
1782		LastlogInfo, and hide accesses to it inside lastlog.c.
1783		add new accessors as needed.
1784
1785Thu Feb 20 00:59:27 PST 2014 - matthew green <mrg@eterna.com.au>
1786	include/window.h, source/alias.c, source/lastlog.c, source/screen.c,
1787	source/server.c, source/status.c, source/window.c:
1788		hide Window's name, prev_server, bound_channel, query_nick,
1789		notify_level, and log*.
1790
1791Tue Feb 18 06:51:07 PST 2014 - matthew green <mrg@eterna.com.au>
1792	include/screen.h, include/window.h, source/alias.c, source/names.c,
1793	source/screen.c, source/server.c, source/status.c, source/window.c:
1794		add window_get_refnum(), window_get_sticky(),
1795		window_set_sticky(), window_get_next() and window_get_screen()
1796		accessors, hiding several Window * members.
1797		move new_window() and create_refnum() into window.c.
1798
1799Mon Feb 17 22:34:42 PST 2014 - matthew green <mrg@eterna.com.au>
1800	include/window.h, source/alias.c, source/edit.c, source/exec.c,
1801	source/names.c, source/screen.c, source/server.c, source/status.c,
1802	source/window.c:
1803		begin to hide Window references.  add 3 new functions:
1804		window_get_server(), window_get_server_group(), and
1805		window_server_delete() that return this windows server
1806		or server_group, and deal with reallocating server
1807		numbers after one is deleted.
1808		several clean ups: remove unnecessary braces, fit in
1809		80 cols for many places again.
1810
1811Mon Feb 17 18:13:05 PST 2014 - matthew green <mrg@eterna.com.au>
1812	include/server.h, source/alias.c, source/edit.c, source/icb.c,
1813	source/notice.c, source/parse.c, source/server.c, source/whois.c,
1814	source/window.c:
1815		remove ircd 2.5 support.
1816
1817Sat Feb 15 06:04:17 PST 2014 - matthew green <mrg@eterna.com.au>
1818	Makefile.in, include/alias.h, include/edit.h, include/hook.h,
1819	include/irc.h, include/irc_std.h, include/output.h,
1820	include/server.h, include/stack.h, include/whois.h,
1821	source/edit.c, source/hook.c, source/stack.c:
1822		remove stack.c, and its invasive unfinished hooks in to
1823		the rest of the code.
1824		remove unused struct ArgPosTag.
1825		move Hook, HookFunc and NumericList definitions into hook.c.
1826		stop exporting numeric_list and hook_functions.
1827		move load_depth externs into edit.h.
1828		move WhoisQueue/WhoisStuff typedefs, and struct whois_stuff_stru
1829		into whois.h.
1830		move struct hook_stru, hook_func_stru and numeric_list_stru
1831		into hook.c.
1832		remove some old select(), getenv() and errno compat that
1833		was only good for truly ancient platforms we don't support.
1834
1835Sat Feb 15 04:52:47 PST 2014 - matthew green <mrg@eterna.com.au>
1836	include/window.h, source/alias.c, source/names.c, source/screen.c,
1837	source/server.c, source/status.c, source/window.c:
1838		convert all traverse_all_windows() users to
1839		window_traverse() (ie, the recursively OK version).
1840		rename Win_Trav::flag to Win_Traf::init to more properly
1841		reflect what it means.  delete traverse_all_windows().
1842
1843Fri Feb 14 06:06:40 PST 2014 - matthew green <mrg@eterna.com.au>
1844	include/alias.h, include/crypt.h, include/ctcp.h, include/edit.h,
1845	include/hook.h, include/irc.h, include/keys.h, include/server.h,
1846	include/window.h, source/alias.c, source/ctcp.c, source/edit.c,
1847	source/irc.c, source/server.c, source/whois.c:
1848		make Alias structure private to alias.c.  make CtcpFlood
1849		structure private to ctcp.c.  move TimerTimeout() into
1850		edit.c as timer_timeout() and make TimerList structure
1851		private to edit.c.  make WhoisQueue structure private
1852		to whois.c.  make SGroup structure private to server.c.
1853		remove "global" WhoisQueue head/tail, and only allow
1854		whois queue actions on a valid server.  fix the one
1855		caller of server_get_qhead() that wasn't prepared to
1856		accept NULL return.
1857
185820140205
1859Wed Feb  5 05:57:20 PST 2014 - matthew green <mrg@eterna.com.au>
1860	source/window.c:
1861		fix window_kill_swap(), it already knows that the window
1862		will exist.  don't delete_window() the current window if
1863		passed NULL, just ignore it.
1864
1865Tue Feb  4 23:15:00 PST 2014 - matthew green <mrg@eterna.com.au>
1866	include/irc.h, include/notice.h, include/parse.h:
1867		split out the functions in notice.c and parse.c to their
1868		respective headers, creating notice.h in the process.
1869
1870Tue Feb  4 22:44:18 PST 2014 - matthew green <mrg@eterna.com.au>
1871	include/ctcp.h, include/server.h, source/ctcp.c, source/server.c:
1872		move the per-server ctcp flood info into ctcp.c itself
1873		and access it via struct ctcp_flood_stru / CtcpFlood.
1874		move Server type and struct into server.c itself now
1875		that it is only accessed from server.c.
1876
1877Tue Feb  4 19:33:55 PST 2014 - matthew green <mrg@eterna.com.au>
1878	include/parse.h, include/server.h, source/alias.c, source/ctcp.c,
1879	source/dcc.c, source/edit.c, source/funny.c, source/help.c,
1880	source/icb.c, source/irc.c, source/names.c, source/notice.c,
1881	source/notify.c, source/numbers.c, source/parse.c, source/server.c,
1882	source/status.c, source/whois.c, source/window.c:
1883		move almost all accesses of server_list[] into server.c.
1884		move parse_server() into server.c.  rename all
1885		[gs]_server_foo() functions as server_[gs]et_foo() and
1886		introduced many more.  replace get_server_localaddr()
1887		and get_server_localaddrlen() with new
1888		server_get_local_ip_info().
1889
1890Tue Feb  4 04:05:16 PST 2014 - matthew green <mrg@eterna.com.au>
1891	Makefile.in, include/irc.h, include/struct.h:
1892		retire struct.h.  move the 3 remaining typedefs into irc.h
1893		itself.
1894
1895Tue Feb  4 03:55:06 PST 2014 - matthew green <mrg@eterna.com.au>
1896	include/edit.h, include/hold.h, include/input.h, include/lastlog.h,
1897	include/menu.h, include/screen.h, include/status.h, include/struct.h,
1898	include/window.h:
1899		move Hold, Lastlog, WindowMenu, WindowStack, Prompt, and
1900		ScreenInputData types into their respective headers.
1901
1902Tue Feb  4 03:29:17 PST 2014 - matthew green <mrg@eterna.com.au>
1903	include/screen.h, include/struct.h, include/window.h:
1904		move struct screen_stru and struct window_stru into
1905		screen.h and window.h respectively.
1906
1907Tue Feb  4 03:11:23 PST 2014 - matthew green <mrg@eterna.com.au>
1908	include/names.h, include/struct.h, source/names.c, source/window.c:
1909		convert ChannelList.connected and ChannelList.status types
1910		into new enums ChanListConnected and ChanListStatus.  move
1911		realloc_channels() and swap_channels_win_ptr() from window.c
1912		into names.c (the latter as channel_swap_win_ptr().)
1913		move struct channel_stru into names.c itself now it is only
1914		access from names.c directly.
1915
1916Tue Feb  4 02:48:52 PST 2014 - matthew green <mrg@eterna.com.au>
1917	include/names.h, source/edit.c, source/names.c, source/window.c:
1918		rename channel_is_current() to channel_is_current_window().
1919		move a big chunk of is_current_channel() into names.c
1920		as channel_is_on_window().  move two chunks of
1921		window_set_server() into names.c as
1922		channels_move_server_simple() and
1923		channels_move_server_complex().  move win_list_channels()
1924		into names.c as window_list_channels().
1925
1926Tue Feb  4 01:42:19 PST 2014 - matthew green <mrg@eterna.com.au>
1927	include/names.h, source/edit.c, source/names.c, source/screen.c:
1928		move ChannelList handling from do_channel() and
1929		add_to_screen() into names.c, using 2 new functions
1930		channel_window() and channel_is_current().
1931
1932Tue Feb  4 01:09:19 PST 2014 - matthew green <mrg@eterna.com.au>
1933	include/names.h, source/funny.c, source/names.c, source/numbers.c:
1934		move lookup/set for ChannelList status into names.c, with
1935		new channel_mode_lookup().
1936
1937Tue Feb  4 00:12:41 PST 2014 - matthew green <mrg@eterna.com.au>
1938	include/screen.h, include/struct.h, source/window.c:
1939		move ShrinkInfo into screen.h.  move WindowStack
1940		into window.c.
1941
1942Mon Feb  3 23:54:53 PST 2014 - matthew green <mrg@eterna.com.au>
1943	include/names.h, include/struct.h, source/alias.c, source/menu.c,
1944	source/names.c, source/screen.c, source/whois.c, source/window.c:
1945		move NickList handling all into names.c.  add new
1946		display_nicks_info(), nicks_add_to_window(), and
1947		nicks_remove_from_window(), and move free_nicks()
1948		and function_chanusers() into names.c.
1949		rename some struct names to standardise them.
1950	source/window.c:
1951		remove the code in set_query_nick() that tries to
1952		change the current window nick list based up on /query.
1953		it was redundant and would remove users after a
1954		/query nick, /query <nothing> sequence.
1955
1956Mon Feb  3 22:42:02 PST 2014 - matthew green <mrg@eterna.com.au>
1957	include/hold.h, include/list.h, include/struct.h, source/hold.c,
1958	source/screen.c, source/window.c:
1959		move Hold definition into hold.c, with free_hold().
1960		move List definition into list.h.  document it a little.
1961
1962Mon Feb  3 22:24:42 PST 2014 - matthew green <mrg@eterna.com.au>
1963	source/cast.c:
1964		keep encryption/decryption state per-key and clear
1965		it when we don't need it.  clean up a little.
1966
1967Mon Feb  3 21:29:49 PST 2014 - matthew green <mrg@eterna.com.au>
1968	include/struct.h, source/ctcp.c:
1969		move struct _ctcp_entry into ctcp.c itself as
1970		struct ctcp_stru, as it is already only used here.
1971
1972Mon Feb  3 20:59:22 PST 2014 - matthew green <mrg@eterna.com.au>
1973	include/edit.h, include/struct.h, source/edit.c, source/input.c,
1974	source/screen.c:
1975		move the prompt list handling all into edit.c, including
1976		the renamed struct prompt_list definition, leaving just
1977		pointers around for the per-screen entry.  consolidate
1978		the processing of an input prompt into the new
1979		prompt_check_input().  move add_wait_prompt() to edit.c,
1980		and export new prompt_current_prompt() and
1981		prompt_active_count() functions.
1982		clean up input_do_check_prompt() a little.
1983
1984Mon Feb  3 06:35:45 PST 2014 - matthew green <mrg@eterna.com.au>
1985	include/dcc.h, include/struct.h, source/alias.c, source/dcc.c:
1986		move DCC_list internal to dcc.c, including ClientList.
1987		move the guts of both function_dcclist() and
1988		function_chatpeers() into dcc.c as new functions
1989		dcc_list_func() and dcc_chatpeers_func().
1990		make dcc_searchlist() and dcc erase() static.
1991		make many function_*() functions static.
1992
1993Sat Feb  1 20:19:00 PST 2014 - matthew green <mrg@eterna.com.au>
1994	include/menu.h, include/struct.h, include/window.h, source/menu.c,
1995	source/screen.c, source/window.c:
1996		move struct MenuOptionTag, MenuOption, struct MenuTag,
1997		Menu, and struct WindowMenuTag into menu.c itself, and
1998		only export MenuWindow * type externally.  convert uses
1999		to interfaces exported by menu.c.
2000		update DISPLAY_AFTER_SCROLL code to be less ugly.
2001
200220140201
2003Sat Feb  1 18:51:26 PST 2014 - matthew green <mrg@eterna.com.au>
2004	source/input.c:
2005		compare input position with cursor_x not cursor_y.
2006
2007Fri Jan 31 04:30:13 PST 2014 - matthew green <mrg@eterna.com.au>
2008	include/ircaux.h, source/aes.c, source/alias.c, source/cast.c,
2009	source/cipher-test.c, source/crypt.c, source/ctcp.c, source/dcc.c,
2010	source/edit.c, source/exec.c, source/flood.c, source/funny.c,
2011	source/history.c, source/hold.c, source/hook.c, source/icb.c,
2012	source/ignore.c, source/input.c, source/irc.c, source/ircaux.c,
2013	source/ircio.c, source/lastlog.c, source/menu.c, source/names.c,
2014	source/newio.c, source/notify.c, source/parse.c, source/queue.c,
2015	source/scandir.c, source/screen.c, source/server.c, source/stack.c,
2016	source/whois.c, source/window.c:
2017		convert new_malloc(), new_realloc() and new_free() to return
2018		and take void * instead of u_char *.  update all the callers
2019		to not cast the return value, and also use sizeof(*var) over
2020		sizeof(type).
2021
2022Thu Jan 30 22:42:27 PST 2014 - matthew green <mrg@eterna.com.au>
2023	include/input.h, include/screen.h, include/struct.h, source/input.c,
2024	source/screen.c:
2025		move ScreenInputBufferData and ScreenInputData inside
2026		input.c directly, and only access them in input.c.
2027		change Screen to take a pointer to an opaque type (it's
2028		already all setup and accessed in input.c.)
2029
2030Thu Jan 30 21:02:05 PST 2014 - matthew green <mrg@eterna.com.au>
2031	source/input.c, source/screen.c, source/window.c:
2032		if iconv(3) returns an error, always be sure to end
2033		processing, regardless of errno itself.  fixes hangs
2034		when a conversion fails in some cases.  when unsetting
2035		any of the utf-8 variables, set them to latin1.  fixes
2036		segv with eg, /set -display_encoding.
2037
203820140130
2039Thu Jan 30 03:23:16 PST 2014 - matthew green <mrg@eterna.com.au>
2040	source/input.c:
2041		rename a variable to better reflect its use.
2042
2043Thu Jan 30 02:08:16 PST 2014 - matthew green <mrg@eterna.com.au>
2044	source/input.c, source/screen.c, source/window.c:
2045		don't call cursor_to_input() before calling
2046		update_input().  it's useless and moves the cursor.
2047	source/input.c:
2048		set old_cursor_pos to 0 if it's ahead of cursor_y.
2049		fixes input line scrolling issues.
2050
2051Sat Jan 11 12:30:12 PST 2014 - matthew green <mrg@eterna.com.au>
2052	source/edit.c, source/help.c, source/names.c, source/screen.c,
2053	source/translat.c:
2054		remove set but unused variables.
2055
2056Sat Jan 11 22:51:01 PST 2014 - matthew green <mrg@eterna.com.au>
2057	include/buffer.h, source/alias.c, source/crypt.c, source/dcc.c,
2058	source/edit.c, source/exec.c, source/history.c, source/ircaux.c,
2059	source/ircflush.c, source/ircio.c, source/screen.c, source/server.c,
2060	source/wserv.c:
2061		fix various issues found by newer GCC on ubuntu.
2062
206320131230
2064Mon Dec 30 05:16:19 PST 2013 - matthew green <mrg@eterna.com.au>
2065	source/input.c:
2066		cursor_to_input() should only operate on the current
2067		screen.  copy old behaviour of update_input() and
2068		only write the new part of the display with
2069		UPDATE_FROM_CURSOR calls.
2070	source/screen.c:
2071		fix a merge error with utf-8 patch.
2072
2073Sun Dec 29 20:08:54 PST 2013 - matthew green <mrg@eterna.com.au>
2074	source/lastlog.c
2075		notice when the screen width changes and
2076		recalculate the per-line array.
2077	source/term.c:
2078		use the current screen's lines/colums in
2079		copy_window_size().  now lastlog notices screen
2080		size changes.
2081
2082Sun Dec 29 19:53:31 PST 2013 - matthew green <mrg@eterna.com.au>
2083	include/lastlog.h, include/struct.c, source/lastlog.c,
2084	source/screen.c:
2085		make lastlog_stru only visible in lastlog.c.
2086		move next_line_back() into lastlog.c and call
2087		it lastlog_line_back().
2088
2089Sun Dec 29 19:40:03 PST 2013 - matthew green <mrg@eterna.com.au>
2090	source/lastlog.c:
2091		fix the pointer type in free_lastlog_entry().
2092
2093Sun Dec 29 19:41:33 PST 2013 - matthew green <mrg@eterna.com.au>
2094	Makefile.in, acconfig.h, configure, configure.in,
2095	help/set/display_encoding, help/set/input_encoding,
2096	help/set/irc_encoding, help/set/translation, include/config.h.dist,
2097	include/defs.h.in, include/input.h, include/irc.h, include/ircterm.h,
2098	include/screen.h, include/struct.h, include/translat.h, include/vars.h,
2099	source/alias.c, source/edit.c, source/exec.c, source/input.c,
2100	source/irc.c, source/screen.c, source/status.c, source/term.c,
2101	source/translat.c, source/vars.c:
2102		reapply the UTF-8 patch.  original description:
2103
2104	Wed Sep 21 08:49:58 EST 2005 - Joel Yliluoma <bisqwit@iki.fi>
2105		Replaced the ancient TRANSLATION feature
2106		and the hackish japanese support features
2107		and all the hardcoded latin1-related stuff
2108		with iconv-based full character set support
2109		for input, output and display. Supports all
2110		the singlebyte and multibyte encodings supported
2111		by iconv, with or without shift codes.
2112		As a consequence, the following settings are
2113		no longer used: TRANSLATION, ISO2022_SUPPORT
2114		Instead, INPUT_ENCODING, DISPLAY_ENCODING
2115		and IRC_ENCODING are used for input, terminal
2116		and network encodings respectively.
2117		All conversions are done transparently.
2118		If the system does not have iconv library,
2119		only ISO-8859-1 is supported (built-in).
2120		Note that if EIGHT_BIT_CHARACTERS is not set,
2121		all 7th bits of bytes will be stripped. (Why??)
2122
2123Sun Dec 29 17:48:35 PST 2013 - matthew green <mrg@eterna.com.au>
2124	source/input.c:
2125		fix DEBUG build.
2126	source/screen.c:
2127		outputline(): avoid modifying strings just so strlen()
2128		will work when we already have the length handy.
2129		split_up_line_alloc(): alloc space for NULL, too.
2130		next_line_back(): remove static ScreenLines[] since we
2131		can now use the lastlog entry's.
2132
2133Sun Dec 29 06:46:11 PST 2013 - matthew green <mrg@eterna.com.au>
2134	include/lastlog.h, source/lastlog.c, source/screen.c:
2135		make add_to_lastlog() return the u_char ** it split
2136		up, if it happened to do that.  fix comments in it
2137		that have been wrong for over 20 years.
2138		make split_up_line_alloc() NULL terminate the list.
2139		use the pre-split list in add_to_window().
2140
2141Sun Dec 29 06:05:06 PST 2013 - matthew green <mrg@eterna.com.au>
2142	include/lastlog.h, include/screen.h, include/struct.h,
2143	source/lastlog.c, source/screen.c, source/window.c:
2144		begin to store split up messages in the lastlog.
2145		move free_lastlog() to lastlog.c. and move the
2146		main guts of it into free_lastlog_entry(), that
2147		is reused during normal scrolling.
2148		add a new split_up_line_alloc() that has the same
2149		signature as split_up_line(), but returns a
2150		dynamically allocated array of pointers, and
2151		clears the pointers from split_up_line()'s static
2152		array.
2153	source/term.c:
2154		make copy_window_size() cope with NULL inputs.
2155
2156Sun Dec 29 03:59:03 PST 2013 - matthew green <mrg@eterna.com.au>
2157	include/screen.h, include/struct.h, include/window.h,
2158	source/screen.c, source/window.c:
2159		make the definition of Display local to screen.c.
2160
216120131228
2162Sat Dec 28 18:16:39 PST 2013 - matthew green <mrg@eterna.com.au>
2163	doc/ircII.1:
2164		update to describe -l option.
2165	source/screen.c:
2166		use macros not magic numbers.
2167	source/window.c:
2168		clean up, and fix a bug in bind_channel().
2169
2170Sat Dec 28 18:23:03 PST 2013 - matthew green <mrg@eterna.com.au>
2171	source/lastlog.c, source/parse.c:
2172		avoid leaking FILE *'s.
2173	source/server.c:
2174		avoid leaking memory.
2175	source/dcc.c, source/exec.c, source/irc.c, source/ircio.c,
2176	source/mail.c, source/newio.c, source/screen.c,
2177	source/server.c:
2178		remove the unused 4th parameter to dgets() and
2179		cleanup dgets() itself for this.
2180
2181Thu Feb 21 14:01:23 PST 2013 - matthew green <mrg@eterna.com.au>
2182	configure.in, configure:
2183		avoid re-setting libexecdir if it is set on the
2184		command line.
2185
218620111115
2187Tue Nov 15 01:25:01 PST 2011 - matthew green <mrg@eterna.com.au>
2188	source/irc.c:
2189		properly bump version.
2190
219120111114
2192Mon Nov 14 15:12:09 PST 2011 - matthew green <mrg@eterna.com.au>
2193	source/edit.c, help/nuser:
2194		add a /NUSER command to change your irc and user names.
2195		largely from Hendrix/zDm via tMH.
2196	doc/ircii.spec:
2197		rpm-style spec file, contributed by lukem
2198	source/edit.c:
2199		disable "TZ" hack, it fails weirdly with multitime.
2200
2201Sat Jul  9 22:58:33 PDT 2011 - matthew green <mrg@eterna.com.au>
2202	configure, configure.ac, Makefile.in, ...:
2203		install ircio and wserv into libexec dir.
2204
220520110428
2206Thu Apr 28 15:13:02 PDT 2011 - matthew green <mrg@eterna.com.au>
2207	source/mkmksiginc.pl, source/mksiginc.c:
2208		adjust the C/CPP for each signal to allow eg SIGRTMAX
2209		to be a C expression not just a CPP one.  fixes a
2210		problem on modern centos reported by rob windsor.
2211
221220110228
2213Tue Feb  1 02:57:58 PST 2011 - matthew green <mrg@eterna.com.au>
2214	source/screen.c:
2215		avoid trying to print high-bit unprintable chars
2216	source/window.c:
2217		avoid implicit int
2218	include/ignore.h, source/ignore.c, source/edit.c:
2219		add /SAVE -IGNORE support
2220
2221Tue Jan 26 20:59:24 PST 2010 - matthew green <mrg@eterna.com.au>
2222	source/edit.c:
2223		match "TZ" not "TV".  ooops.
2224
222520090520
2226Wed May 20 22:17:27 PDT 2009 - matthew green <mrg@eterna.com.au>
2227	source/exec.c, source/crypt.c:
2228		order alarm/signal correctly to avoid spurious SIGALRM
2229		causing irc to exit.
2230
2231Fri May  1 17:56:12 PDT 2009 - matthew green <mrg@eterna.com.au>
2232	configure, configure.in:
2233		check for getaddrinfo/getnameinfo in -lmedia, for qnx.
2234
2235Fri May  1 00:35:38 PDT 2009 - matthew green <mrg@eterna.com.au>
2236	include/cast_sbox.h:
2237		remove K&R C support.
2238	include/keys.h, include/hook.h, include/vars.h:
2239		remove trailing , from enum lists.
2240
2241Mon Apr 27 19:02:10 PDT 2009 - matthew green <mrg@eterna.com.au>
2242	include/irc.h, source/irc.c, source/term.c, source/wserv.c:
2243		add a new MY_SIGNAL_REINIT() that expands to
2244		nothing on BSD platforms.
2245
2246Mon Apr 27 18:26:02 PDT 2009 - matthew green <mrg@eterna.com.au>
2247	acconfig.h, configure, configure.in, include/defs.h.in,
2248	include/exec.h, include/irc.h, include/ircterm.h,
2249	include/scandir.h, source/exec.c, source/irc.c, source/ircaux.c,
2250	source/scandir.c, source/term.c, source/wserv.c:
2251		remove support the following systems:
2252			DGUX, Interactive UNIX 2/3, UNICOS, AIX 3,
2253			MUNIX/M_UNIX, NeXT, SVR3, ULTRIX, Dynix/ptx,
2254			HPUX7, HPUX8
2255		remove support for the follow features:
2256			<sgtty.h>, <termio.h>, non POSIX wait,
2257			non POSIX nonblocking
2258
2259Sun Apr 26 01:30:12 PDT 2009 - matthew green <mrg@eterna.com.au>
2260	source/ircaux.c:
2261		if bind_local_addr() fails, notify the user that
2262		IRCHOST is probably wrong
2263
226420081115
2265Sun Nov 16 00:18:05 PST 2008 - matthew green <mrg@eterna.com.au>
2266	translation/*
2267		re-add these, missed in 20080314
2268
2269Tue Oct 28 09:21:11 PDT 2008 - matthew green <mrg@eterna.com.au>
2270	include/config.h.dist:
2271		bump the default lastlog size to 440
2272
227320080414
2274Mon Apr 14 14:45:10 PDT 2008 - matthew green <mrg@eterna.com.au>
2275	sourec/icb.c:
2276		maintain the channel list for icb as well.  this makes
2277		/on nickname, /on channel_nick, $chanusers() and
2278		$onchannel() work for icb.
2279
228020080314
2281Fri Mar 14 10:06:58 PDT 2008 - matthew green <mrg@eterna.com.au>
2282	Makefile.in, acconfig.h, configure, configure.in,
2283	help/set/display_encoding, help/set/input_encoding,
2284	help/set/irc_encoding, help/set/translation, include/config.h.dist,
2285	include/defs.h.in, include/input.h, include/irc.h,
2286	include/ircterm.h, include/screen.h, include/struct.h,
2287	include/translat.h, include/vars.h, source/alias.c, source/edit.c,
2288	source/exec.c, source/input.c, source/irc.c, source/newio.c,
2289	source/screen.c, source/status.c, source/term.c, source/translat.c,
2290	source/vars.c:
2291		revert the utf-8 changes.  they cause way too much
2292		cpu time / slowness when lastlog gets large.  there
2293		should be a re-implementation coming in the future.
2294
2295Tue Jun 26 13:31:29 EST 2007 - matthew green <mrg@eterna.com.au>
2296	help/on/icb_who:
2297		describe /on icb_who, not something else
2298	script/icb:
2299		understand /annoy
2300
2301Wed Jun 20 13:14:31 PDT 2007 - matthew green <mrg@eterna.com.au>
2302	source/names.c:
2303		fix a bug in walk_channels() i introduced in late 93.
2304		symptom was /on channel_signoff not working.
2305Mon Mar 12 13:20:59 PDT 2007 - matthew green <mrg@eterna.com.au>
2306	source/exec.c:
2307		rename _child_died to waitpid_child_died.
2308
2309Tue Jan 30 12:17:30 EST 2007 - matthew green <mrg@eterna.com.au>
2310	source/icb.c:
2311		in icb_put_public(), split the line at a space boundary
2312		if it exists within the last 10 characters.
2313
2314Wed Sep 27 17:26:35 EST 2006 - matthew green <mrg@eterna.com.au>
2315	source/server.c:
2316		in connect_to_server_direct() reorder some code to avoid
2317		using from_server when it is -1.  mostly from Bernd
2318		Eckenfels <ecki@lina.inka.de>.
2319	include/ircterm.h, source/crypt.c, source/dcc.c, source/log.c,
2320	source/newio.c, source/server.c:
2321		remove final remaining _Windows code.
2322
2323Sat Sep  2 12:12:20 PDT 2006 - matthew green <mrg@eterna.com.au>
2324	source/input.c:
2325		don't reduce the screen zone by WIDTH twice.  this fixes
2326		a problem where the input line would scroll to the next
2327		part at 20 chars before the end of line.
2328
2329Mon Aug 28 12:51:32 PDT 2006 - matthew green <mrg@eterna.com.au>
2330	Makefile.in, source/wterm.c:
2331		make wterm.c be a real file that defines STTY_ONLY and
2332		then includes term.c.
2333
2334Sun Aug 27 16:04:39 PDT 2006 - matthew green <mrg@eterna.com.au>
2335	include/buffer.h, include/irc.h, include/irc_std.h, source/alias.c,
2336	source/ctcp.c, source/edit.c, source/help.c, source/hook.c,
2337	source/irc.c, source/ircaux.c, source/keys.c, source/output.c:
2338		remove all windows and msdos code, and some other unused
2339		things as well.
2340
234120060821
2342Tue Aug 22 05:57:18 EST 2006 - matthew green <mrg@eterna.com.au>
2343	source/edit.c: disallow these commands in ICB mode:
2344		ADMIN CONNECT CTCC CTCP DCC DEOP DIE HASH HOST ISONLUSERS
2345		NOTE NOTICE OPER REDIRECT REHASH REQUEST RESTART USERHOST
2346		WALL WALLOPS WHOWAS.
2347	source/hook.c:
2348		be much safer about access the hook_functions[] list and
2349		bounds check it in several places.  note via XXX a place
2350		where ircii will fail when when more than 2048 hooks are
2351		installed for a particular lists.  re-factor some code to
2352		avoid deep indentation.
2353	source/parse.c:
2354		as the XXX comment said over 10 years ago, only pass
2355		numbered commands from 1 to 999 to numbered_command().
2356
2357Tue Aug  8 18:13:21 EST 2006 - matthew green <mrg@eterna.com.au>
2358	source/vars.c, source/input.c:
2359		rework the input prompt bug fix, based on work from flier.
2360	source/input.c:
2361		fix update_input() when term_echo is not set.  from flier.
2362
2363Fri Aug  4 10:24:39 EST 2006 - matthew green <mrg@eterna.com.au>
2364	script/icb:
2365		for /ping on ICB, use /msg server ping.
2366
236720060725
2368Tue Jul 25 19:03:57 PDT 2006 - matthew green <mrg@eterna.com.au>
2369	script/listidle:
2370		update this from http://tris.net/software/listidle.irc
2371
2372Tue Jul 25 03:52:10 PDT 2006 - matthew green <mrg@eterna.com.au>
2373	Makefile.in, include/Makefile.in, include/config.h.dist,
2374	include/hook.h, include/hook.h.proto, include/keys.h,
2375	include/keys.h.proto, include/vars.h, include/vars.h.proto,
2376	incldue/count.l, source/vars.c:
2377		add a new check in init_variables() to ensure that the
2378		irc_variable[] table is properly sorted.  we still depend
2379		on the list on vars.h to also be sorted, but this is at
2380		least one step better.  sort the entries that were not
2381		properly sorted.  delete include/*.h.proto,
2382		include/count.l, include/Makefile.in and convert the
2383		generated lists into enum's.  no longer require lex to
2384		build.  remove LEX and LEXLIB.
2385	configure, configure.in:
2386		remove AC_PROG_LEX and don't output include/Makefile.
2387	help/set/use_old_msg:
2388		delete USE_OLD_MSG variable as the support for it has not
2389		been available for some time.
2390	help/set/iso2022_support:
2391		delete, was an empty file.
2392
2393Tue Jul 25 02:42:19 PDT 2006 - matthew green <mrg@eterna.com.au>
2394	configure.in, configure:
2395		adjust the iconv "const" check to match more cases.
2396
2397Sun Jul 23 03:00:53 PDT 2006 - matthew green <mrg@eterna.com.au>
2398	help/digraph, help/bind/enter_digraph, help/set/eight_bit_characters:
2399		replace references to /set translation with updated ones
2400	source/vars.c:
2401		properly reorder irc_encoding and irchost.
2402
240320060721
2404Fri Jul 21 19:25:30 PDT 2006 - matthew green <mrg@eterna.com.au>
2405	include/config.h.dist, include/vars.h.proto, include/vars.h,
2406	source/vars.c:
2407		add defaults for STATUS_SCROLLED and STATUS_SCROLLED_LINES
2408		variables.  add %P%s to the default status format.
2409	source/status.c:
2410		add two new status format functions: %P for STATUS_SCROLLED
2411		and %s for STATUS_SCROLLED_LINES.  increase MAX_FUNCTIONS
2412		(really should fix this properly.)  clean up some obsolete
2413		code.
2414	source/screen.c:
2415		update the status bar when scrolling.
2416	help/set/status_scrolled, help/set/status_scrolled_lines,
2417	help/set/status_format:
2418		document the new status features.
2419	help/set/status_hold_lines:
2420		fix a typo.
2421
242220060718
2423Tue Jul 18 21:46:59 PDT 2006 - matthew green <mrg@eterna.com.au>
2424	source/edit.c:
2425		call set_input_raw() from get_history(), not set_input().
2426		now ^V/^B/etc work properly from history.
2427	source/irc.c:
2428		fix a sign issue in the DEBUG code.
2429
2430Tue Jul 18 17:54:29 EST 2006 - matthew green <mrg@eterna.com.au>
2431	script/redirx:
2432		update this to v1.3 from http://tris.net/software/redirx.irc.
2433
243420060705
2435Wed Jul  5 16:34:25 PDT 2006 - matthew green <mrg@eterna.com.au>
2436	include/hook.h, include/hook.h.proto, source/alias.c, source/cast.c,
2437	source/hook.c, source/input.c, source/names.c, source/screen.c,
2438	source/server.c, source/stack.c, source/translat.c, source/whois.c,
2439	source/window.c:
2440		change a few variables type to properly match their usage.
2441		remove a whole bunch of casts, and, unfortunately add a few
2442		more.
2443
244420060704
2445Tue Jul  4 18:05:48 PDT 2006 - matthew green <mrg@eterna.com.au>
2446	source/input.c, source/vars.c:
2447		ensure that the INPUT_PROMPT is properly initialised
2448		otherwise a default empty INPUT_PROMPT will cause
2449		temporary input prompts (such as "Help?") to become
2450		the input prompt.
2451
2452Thu Sep 22 08:14:11 EST 2005 - matthew green <mrg@eterna.com.au>
2453	source/alias.c, source/crypt.c, source/dcc.c, source/edit.c,
2454	source/exec.c, source/help.c, source/icb.c, source/ignore.c,
2455	source/input.c, source/irc.c, source/ircaux.c, source/mail.c,
2456	source/names.c, source/notice.c, source/screen.c, source/server.c,
2457	source/status.c, source/term.c, source/translat.c, source/vars.c,
2458	source/window.c:
2459		fix signed verses unsigned problems.  fix int verses
2460		socklen_t problems.
2461
2462Thu Sep 22 06:16:06 EST 2005 - matthew green <mrg@eterna.com.au>
2463	configure, configure.in, source/translat.c, source/input.c,
2464	source/screen.c, include/irc.h:
2465		add a test to see whether the 2nd argument to iconv()
2466		is const or not, rather than hard coding it cost for
2467		NetBSD and not for everything else.
2468
246920050921
2470Wed Sep 21 08:49:58 EST 2005 - Joel Yliluoma <bisqwit@iki.fi>
2471	Makefile.in, configure.in, include/defs.h.in,
2472	include/config.h.dist,
2473	help/set/display_encoding, help/set/irc_encoding,
2474	help/set/input_encoding, help/set/translation,
2475	help/set/iso2022_support,
2476	include/input.h, include/irc.h, include/screen.h,
2477	include/struct.h, include/translat.h, include/ircterm.h,
2478	include/vars.h.proto, include/vars.h,
2479	source/alias.c, source/edit.c,
2480	source/input.c, source/screen.c, source/status.c,
2481	source/term.c, source/translat.c, source/vars.c,
2482	translation/*, ChangeLog:
2483		Replaced the ancient TRANSLATION feature
2484		and the hackish japanese support features
2485		and all the hardcoded latin1-related stuff
2486		with iconv-based full character set support
2487		for input, output and display. Supports all
2488		the singlebyte and multibyte encodings supported
2489		by iconv, with or without shift codes.
2490		As a consequence, the following settings are
2491		no longer used: TRANSLATION, ISO2022_SUPPORT
2492		Instead, INPUT_ENCODING, DISPLAY_ENCODING
2493		and IRC_ENCODING are used for input, terminal
2494		and network encodings respectively.
2495		All conversions are done transparently.
2496		If the system does not have iconv library,
2497		only ISO-8859-1 is supported (built-in).
2498		Note that if EIGHT_BIT_CHARACTERS is not set,
2499		all 7th bits of bytes will be stripped. (Why??)
2500	source/exec.c:
2501		include unistd.h if exists
2502		- compiles cleaner with -Wall
2503	source/keys.c:
2504		^U mapped to ERASE_TO_BEG_OF_LINE instead
2505		of ERASE_LINE - now analogous to how ^K works;
2506		bash does the same.
2507
2508Fri Jul  8 18:55:06 EST 2005 - matthew green <mrg@eterna.com.au>
2509	configure, configure.in:
2510		don't pass -Xc to sunpro on solaris.  from grant@netbsd.org.
2511
2512Sat Jan 22 23:11:12 EST 2005 - matthew green <mrg@eterna.com.au>
2513	source/lastlog.c:
2514		in bits_to_lastlog_level(), add spaces before all but
2515		the first level, not after each of them.
2516
2517Mon Jan  3 22:13:47 EST 2005 - matthew green <mrg@eterna.com.au>
2518	source/names.c:
2519		call set_channel_by_refnum() in rename_channel(), so that
2520		the window->current_channel changes as well.
2521
252220050101
2523Sat Jan  1 18:29:46 EST 2005 - matthew green <mrg@eterna.com.au>
2524	include/server.h:
2525		add comments to describe the difference between
2526		from_server and parsing_server_index variables.
2527	source/keys.c, source/edit.c, include/keys.h.proto, include/keys.h:
2528		change the function echo() to echocmd(), mirroring most other
2529		commands being foocmd().
2530	source/status.c:
2531		change a type to u_char to avoid a warning.
2532	source/server.c, doc/ircII.1:
2533		add support for $IRCSERVERSFILE, that replaces the
2534		default LIBDIR/ircII.servers.
2535	source/edit.c, source/server.c, help/msg:
2536		add a -server flag to /msg, to allow one to send a
2537		message to a server in a different window.
2538	source/icb.c, source/names.c, source/names.h:
2539		add a new rename_channel() instead of abusing the
2540		add_channel() interface, for when ICB groups are
2541		renamed.
2542	source/server.c:
2543		in get_server_localaddrlen() and get_server_localaddr()
2544		properly bounds check against number_of_servers.
2545
254620040820
2547Fri Aug 20 12:16:35 EST 2004 - matthew green <mrg@eterna.com.au>
2548	include/config.h.dist:
2549		include status_user[123] in DEFAULT_STATUS_FORMAT.
2550
255120040711
2552Sun Jul 11 03:06:51 EST 2004 - matthew green <mrg@eterna.com.au>
2553	source/icb.c:
2554		be sure to save the ICB group status for reconnection time.
2555
2556Thu Jul  8 23:19:03 EST 2004 - matthew green <mrg@eterna.com.au>
2557	source/edit.c:
2558		set sent_nick in ICB mode as well.  makes /msg . work for ICB.
2559
2560Sun Jul  4 00:53:46 EST 2004 - matthew green <mrg@eterna.com.au>
2561	source/ctcp.c:
2562		in do_ctcp() don't skip leading ':' like we used to long ago.
2563
256420040703
2565Sat Jul  3 20:23:17 EST 2004 - matthew green <mrg@eterna.com.au>
2566	configure.in, configure:
2567		add a comment. ircio needs snprintf* too
2568	include/irc_std.h:
2569		fix a prototype.
2570	configure.in, configure, Makefile.in:
2571		fix pax -s call: it takes BRE's not ERE's.  should remove a
2572		NetBSD pkgsrc patch..
2573	include/ircaux.h, source/ircaux.c, source/term.c:
2574		remove "new_stty()".
2575
2576Wed Apr 14 23:59:40 EST 2004 - matthew green <mrg@eterna.com.au>
2577	script/listidle:
2578		make sort-of work.  partially from tristan.
2579
2580Mon Feb 16 21:01:16 EST 2004 - matthew green <mrg@eterna.com.au>
2581	source/mkmksiginc.pl, source/mksiginc.c, source/exec.c, source/exec.h:
2582		remove (most) uses of NSIG - auto generate the array max size
2583		instead.  should fix solaris builds.
2584	help/topic, script/default:
2585		document ICB topic support, and make the default /topic work.
2586
258720040216
2588Mon Feb  9 22:43:03 EST 2004 - matthew green <mrg@eterna.com.au>
2589	help/expressions:
2590		document A++ and A-- binary operators
2591	help/foreach:
2592		begin to document /for
2593	source/alias.c:
2594		remove OLD_ALIAS_ALLOC method
2595
259620040106
2597Tue Jan  6 19:08:39 EST 2004 - matthew green <mrg@eterna.com.au>
2598	acconfig.h, configure, configure.in, include/buffer.h, include/ctcp.h,
2599	include/debug.h, include/defs.h.in, include/hook.h,
2600	include/hook.h.proto, include/irc.h, include/output.h, include/server.h,
2601	include/whois.h, source/crypt.c, source/ctcp.c, source/debug.c,
2602	source/help.c, source/hook.c, source/if.c, source/ignore.c,
2603	source/menu.c, source/notify.c, source/output.c, source/server.c,
2604	source/stack.c, source/whois.c, INSTALL:
2605		remove any non-<stdarg.h> style varadic function support.
2606		ircii now require an ANSI C compiler.
2607
2608Tue Jan  6 00:53:50 EST 2004 - matthew green <mrg@eterna.com.au>
2609	include/vars.h.proto, include/vars.h, include/config.h.dist,
2610	source/names.c, source/vars.c:
2611		add new /SET SWITCH_TO_QUIET_CHANNELS that allows
2612		SWITCH_CHANNELS binding to ignore "quiet" channels.
2613		from Magnus Tjernstrom <d92-mtm@ludd.luth.se>.
2614
2615Wed Dec 17 01:33:29 EST 2003 - matthew green <mrg@eterna.com.au>
2616	source/irc.c:
2617		set ircquick_file not ircrc_file, if $IRCQUICK is set.
2618	source/server.c:
2619		fix a few bugs with server process code, partially
2620		inspired by PR#647.
2621	source/window.c:
2622		don't send PART to ICB servers.
2623
262420031208
2625Mon Dec  8 21:30:39 EST 2003 - matthew green <mrg@eterna.com.au>
2626	source/newio.c:
2627		be defensive about accessing rec_io[] out of bounds.
2628		should stop PR#643.
2629
2630Mon Dec  8 18:39:13 EST 2003 - matthew green <mrg@eterna.com.au>
2631	source/ircio.c:
2632		initialise res.  from mats@snowbee.dyns.cx in PR#647.
2633	source/screen.c:
2634		turn back on bold/highlight/underline if any of them
2635		are toggled, as termcap may turn off everything.  idea
2636		from Rado Smiljanic <am3a035@math.uni-hamburg.de> in PR#609.
2637
2638Mon Dec  8 12:51:51 EST 2003 - matthew green <mrg@eterna.com.au>
2639	source/server.c:
2640		remove \n from a say().
2641	acconfig.h, configure, configure.in, include/defs.h.in,
2642	source/edit.c:
2643		look for tzset(3), and use it when setting/unsetting
2644		the TZ environment variable.
2645	script/icb:
2646		add a /hush alias.
2647	configure, configure.in:
2648		don't always enable emacs meta keys, from sec@42.org
2649		in PR#683.
2650	source/edit.c:
2651		reapply a change from march 1997 that got lost in 2002:
2652			don't send "NAMES" for hostmasked channels (eg,
2653			#foo:*.edu).  fixes PR#187
2654		fixes PR#675.
2655	script/redirx:
2656		new script from tristan@ethereal.net.  automatically
2657		shortens urls seen on channel.
2658	source/term.c:
2659		do nothing if (dumb) in set_term_eight_bit(). PR#651
2660	help/assign, help/echo, help/exec, help/server, help/squit, help/wait,
2661	help/alias/functions, help/load/edit, help/load/netsplit,
2662	help/load/repeat, help/on/on, help/set/full_status_line,
2663	help/set/help_pager, script/compl.mods, script/imap, script/netsplit,
2664	script/nocolour, source/ctcp.c, source/exec.c, source/status.c,
2665	source/term.c, source/window.c:
2666		fix spelling of "its" vs "it's".  from splite@purdue.edu
2667		in PR#654.
2668
2669Tue Dec  2 16:38:08 EST 2003 - matthew green <mrg@eterna.com.au>
2670	script/multichan:
2671		add an example script for maintaining multiple server
2672		and channel configurations.
2673
2674Wed Oct 22 11:12:20 EST 2003 - matthew green <mrg@eterna.com.au>
2675	source/cast.c, source/crypt.c, source/aes.c, include/crypt.h:
2676		change crypt functions to take size_t not int.
2677	script/icb:
2678		add an icb /away frontend.
2679
2680Wed Jul 16 15:22:47 EST 2003 - matthew green <mrg@eterna.com.au>
2681	help/on/icb_cmdout, help/on/icb_motd, include/hook.h,
2682	include/hook.h.proto source/hook.c source/icb.c:
2683		rename /on icb_motd to icb_cmdout and also make sure that
2684		if the hook fires, we don't print a spurious not understood
2685		message.
2686
2687Wed Jul 16 09:23:00 EST 2003 - matthew green <mrg@eterna.com.au>
2688	source/icb.c:
2689		add /on TOPIC support.
2690
2691Sun Jul 13 05:25:02 EST 2003 - matthew green <mrg@eterna.com.au>
2692	aclocal.m4, configure, configure.in:
2693		check if we can use "-Xc" on solaris..
2694
2695Sat Jul 12 16:55:41 EST 2003 - matthew green <mrg@eterna.com.au>
2696	source/cast.c:
2697		don't regenerate the key for every message.
2698	Makefile.in, include/crypt.h, source/aes.c, source/cipher-test.c,
2699	source/crypt.c, source/ctcp.c, source/rijndael.c:
2700		rename rijndael cipher to AES.
2701
2702Sat Jul 12 16:45:17 EST 2003 - matthew green <mrg@eterna.com.au>
2703	Makefile.in, doc/crypto, help/encrypt, include/ctcp.h,
2704	source/cipher-test.c, source/crypt.c, source/ctcp.c, source/irc.c,
2705	source/notice.c, source/parse.c, source/sed.c, source/whois.c:
2706		remove "SED" cipher support entirely..
2707
2708Sat Jul 12 14:41:59 EST 2003 - matthew green <mrg@eterna.com.au>
2709	include/irc_std.h, source/cast.c, source/rijndael.c, source/sed.c:
2710		add a new IRCII_RCSID_NAMED() macro that can set the name
2711		of the rcsid string.  redefined IRCII_RCSID in terms of
2712		this, and use the new one in the included sources files.
2713	Makefile.in, source/cipher-test.c:
2714		add a new test-rig for the /crypt ciphers..
2715
2716Sat Jul 12 14:25:23 EST 2003 - matthew green <mrg@eterna.com.au>
2717	include/irc.h, include/status.h, source/irc.c, source/status.c,
2718	source/vars.c:
2719		avoid the final gcc warning by splitting the variable
2720		list functions into two classes.
2721
2722Sat Jul 12 05:18:58 EST 2003 - matthew green <mrg@eterna.com.au>
2723	configure, configure.in:
2724		add -lnsl -lsocket unconditionally on solaris.
2725
272620030709
2727Wed Jul  9 13:43:35 EST 2003 - matthew green <mrg@eterna.com.au>
2728	source/names.c:
2729		avoid using -1 as an array index.  fixes some
2730		core dumps pointed out by bisqwit.
2731
2732Wed Jul  9 02:30:34 EST 2003 - Joel Yliluoma <bisqwit@iki.fi>
2733	include/vars.h.proto, include/vars.h, source/vars.c,
2734	include/config.h.proto, include/config.h, source/dcc.c,
2735	help/set/bind_local_dcchost, help/set/dcchost:
2736		Add /set bind_local_dcchost feature to select
2737		whether outgoing dcc requests should be bound
2738		to a local net interface.
2739
2740Wed Jul  9 02:16:16 EST 2003 - matthew green <mrg@eterna.com.au>
2741	source/edit.c:
2742		/DCC does not require a server (/dcc raw)
2743
2744Wed Jul  9 01:03:28 EST 2003 - Joel Yliluoma <bisqwit@iki.fi>
2745	include/vars.h.proto, include/vars.h, source/vars.c,
2746	include/config.h.proto, include/config.h, source/dcc.c,
2747	help/set/dccport, help/set/dcchost:
2748		Added /set dccport feature to select the
2749		TCP port to use in dcc requests.
2750	source/newio.c
2751		Enabled SO_REUSEADDR, which makes it faster to
2752		regain access to a previously listened port.
2753	help/timer:
2754		expand.
2755
275620030706
2757Mon Jul  7 01:28:08 EST 2003 - matthew green <mrg@eterna.com.au>
2758	include/irc.h, source/irc.c, source/term.c:
2759		turn on_signal_occured into an array and stack
2760		signals up (overflow at 16 signals; it should be
2761		enough and avoids any soft of malloc in signal
2762		handlers..)
2763
2764Mon Jul  7 00:31:31 EST 2003 - matthew green <mrg@eterna.com.au>
2765	source/mkmksiginc.pl, source/mksiginc.c, Makefile.in,
2766	configure, configure.in:
2767		add a perl program to generate a C program that we
2768		compile and run on the target to generate a list of
2769		valid signal names.  this replaces the generation
2770		of sig.inc in configure.
2771	source/exec.c:
2772		reverse test of SIGCLD/SIGCHLD.  this code needsa
2773		an enema... we should de-support old systems...
2774
2775Sun Jul  6 19:16:16 EST 2003 - matthew green <mrg@eterna.com.au>
2776	source/irc.c:
2777		move a big chunk of irc_io() into a new function to
2778		process one screen irc_do_a_screen().
2779	source/screen.c:
2780		actually avoid dumping core in an error condition, not
2781		just have a comment that says /* error */.
2782
2783Sun Jul  6 18:49:42 EST 2003 - matthew green <mrg@eterna.com.au>
2784	help/on/os_signal:
2785		new documentation.
2786
2787Sun Jul  6 18:40:22 EST 2003 - matthew green <mrg@eterna.com.au>
2788	configure, configure.in:
2789		also try looking in /usr/include/asm/signal.h.  fixes
2790		problems on linux.  from jorgenam@ifi.uio.no.
2791	include/hook.h, include/hook.h.in, source/hook.c, source/irc.c,
2792	source/status.c:
2793		add support for /on OS_SIGNAL_LIST.  from jorgenam@ifi.uio.no.
2794	include/irc.h, source/irc.c:
2795		various clean ups.
2796	include/irc_std.h, include/ircterm.h, source/crypt.c, source/irc.c,
2797	source/ircflush.c, source/status.c, source/term.c, source/wserv.c:
2798		change sigfunc from void (func *)(void) to void (func *)(int)
2799		and change all signal-handler functions accordingly.
2800
2801Thu Mar 27 15:14:47 EST 2003 - matthew green <mrg@eterna.com.au>
2802	source/icb.c:
2803		fix long messages in /msg.
2804
2805Tue Mar 18 18:07:06 EST 2003 - matthew green <mrg@eterna.com.au>
2806	source/icb.c:
2807		implement/honour /set beep_on_msg in ICB.
2808
2809Sun Mar 16 15:36:00 EST 2003 - matthew green <mrg@eterna.com.au>
2810	configure, configure.in:
2811		turn off emacs meta keys by default, it hurts non-english
2812		speakers too much.
2813	source/keys.c:
2814		fix the emacs meta key bindings for M-b and M-d.
2815
281620030315
2817Sat Mar 15 16:25:09 EST 2003 - matthew green <mrg@eterna.com.au>
2818	source/status.c:
2819		more new bugs - status_make_printable() over the entire
2820		string, not all but the last 3 chars.  process the removal
2821		of \f for right justification even if we have filled the
2822		status bar width already.
2823
2824Sat Mar 15 01:10:00 EST 2003 - matthew green <mrg@eterna.com.au>
2825	source/names.c:
2826		fix another error from recreate_modes().
2827
282820030314
2829Fri Mar 14 23:09:29 EST 2003 - matthew green <mrg@eterna.com.au>
2830	source/status.c:
2831		fix some errors introduced recently.
2832
2833Fri Mar 14 10:45:53 EST 2003 - matthew green <mrg@eterna.com.au>
2834	source/status.c:
2835		clean up make_status(); split it the guts into a
2836		make_status_one().
2837	source/names.c:
2838		fix an error introduced in recreate_modes().
2839
284020030313
2841Thu Mar 13 21:52:42 EST 2003
2842	source/ircaux.c:
2843		don't strcpy the empty_string; just assign a nul.
2844	source/alias.c, source/dcc.c, source/edit.c, source/help.c,
2845	source/ignore.c, source/names, source/notify.c, source/numbers.c,
2846	source/server.c, source/whois.c:
2847		avoid potential buffer overflows by using the
2848		nul-terminating my_strm*() routines.
2849	source/names.c:
2850		rewrite recreate_mode() to be more friendly.
2851	source/ctcp.c:
2852	source/status.c:
2853		avoid buffer overflows in ctcp and status buffers.
2854		noted by Timo Sirainen <tss@iki.fi> in PR#617.
2855
2856Thu Mar 06 13:49:30 EST 2003 - matthew green <mrg@eterna.com.au>
2857	source/alias.c:
2858		next_unit(): '|' should use C '|' not '||'.  from ?.
2859	source/edit.c:
2860		use \ as a quote character to /msg, so that one can
2861		/msg \/oink and avoid the /oink alias.
2862
2863Sun Feb 16 13:13:20 EST 2003 - matthew green <mrg@eterna.com.au>
2864	help/@:
2865		add missing help file.  PR#605
2866	source/server.c:
2867		don't remove fake entries, it causes trouble!
2868
286920030106
2870Tue Jan  7 04:39:05 EST 2003 - matthew green <mrg@eterna.com.au>
2871	source/reg.c:
2872		just call it "my_tolower" and be done with it.
2873	source/exec.c:
2874		for EXEC -OUT, make sure that public messages are treated
2875		like public (not private) messages.  fixes exec -out on ICB.
2876
287720021226
2878Thu Dec 26 20:06:59 EST 2002 - matthew green <mrg@eterna.com.au>
2879	source/keys.c:
2880		don't bind char 231 to EMACS_FORWARD_CHAR but to
2881		SELF_INSERT, noted by moof.
2882	source/edit.c:
2883		don't look for comma's in ICB group or usernames as they
2884		are legal.  PR#602.  don't reset the command to "NOTICE"
2885		before ICB may want to check it for being "PRIVMSG".
2886	source/edit.c, help/msg:
2887		if we are doing a /msg, don't check if the channel name is
2888		the same as the target, but instead send a message, as they
2889		have separate name spaces.
2890
2891Sun Dec  8 13:57:31 EST 2002 - matthew green <mrg@eterna.com.au>
2892	contrib/japanese_support, contrib/README:
2893		the japanese (iso2022) support has been integrated,
2894		so remove the patch.
2895
2896Sat Dec  7 22:08:17 EST 2002 - matthew green <mrg@eterna.com.au>
2897	source/server.c:
2898		fix a bug in /on raw_send, from bisqwit.
2899	source/numbers.c:
2900		reset_nickname() doens't need a ArgList argument.
2901		PargsArgs() for 432, 433 and 437 numbers.
2902
290320021207
2904Sat Dec  7 02:08:54 EST 2002 - matthew green <mrg@eterna.com.au>
2905	source/edit.c:
2906		make timers run in level crap by default
2907	source/parse.c:
2908		make the final /notify output level crap by default,
2909		this and the above are part of PR#563.
2910
2911Sat Dec  7 01:26:42 EST 2002 - matthew green <mrg@eterna.com.au>
2912	source/window.c:
2913		use the server.h API for get_server_nickname().
2914	source/numbers.c:
2915		remove nickname_in_use().  move the broken functionality
2916		to reset_nickname() and fix it.  should fix PR#588.
2917	source/notice.c:
2918		reset attempting_to_connect to 0, don't decrememnt it.
2919	source/server.c:
2920		add new reconnect_to_server(server, prev_server) function
2921		and use it.  in connect_to_server(), don't overwrite the
2922		server_index value with the return value from
2923		connect_to_server_{direct,process}().  avoids a potential
2924		data segment smashing bug.
2925
2926Fri Dec  6 19:32:30 EST 2002 - matthew green <mrg@eterna.com.au>
2927	source/dcc.c:
2928		dcc_raw_connect(): ipv4 sockaddr is 'struct sockaddr_in',
2929		not 'struct in_addr'.  initialise "res".  both from bisqwit.
2930
2931Sun Nov 17 22:46:43 EST 2002 - matthew green <mrg@eterna.com.au>
2932	configure.in, configure:
2933		also look for tgetent() in -lncurses.
2934
293520021117
2936Sun Nov 17 18:30:30 EST 2002 - matthew green <mrg@eterna.com.au>
2937	source/dcc.c, include/dcc.h:
2938		re-sync the dcc_types[] array and the DCC_TYPES defines,
2939		fixing PR#597.
2940
2941Sun Nov 17 13:20:24 EST 2002 - matthew green <mrg@eterna.com.au>
2942	source/ircaux.c:
2943		fix -h.  don't listen() always!  PR#598 & PR#600.
2944
294520021103
2946Sun Nov  3 01:01:15 EST 2002 - matthew green <mrg@eterna.com.au>
2947	source/mail.c:
2948		back out removal of message_from(.., LOG_CURRENT).  mail
2949		stuff should probably go there anyway.
2950
295120021101
2952Thu Oct 31 23:05:10 EST 2002 - matthew green <mrg@eterna.com.au>
2953	source/edit.c:
2954		disable KICK, KILL, LEAVE, LINKS, PART, SERVLIST, SQUERY,
2955		STATS, SUMMON, TIME, TRACE and USERS for ICB.
2956
2957Thu Oct 31 15:00:55 EST 2002 - matthew green <mrg@eterna.com.au>
2958	source/icb.c:
2959		notice the new style icb group name change message.  PR#596.
2960
296120021031
2962Thu Oct 31 01:21:46 EST 2002 - matthew green <mrg@eterna.com.au>
2963	help/on/icb_who, help/on/icb_motd:
2964		new help pages
2965	source/hook.c, source/icb.c:
2966		rework /on icb_who so that it actually works and is useful.
2967	Makefile:
2968		actually build sl.c
2969
2970Thu Oct 31 00:55:20 EST 2002 - matthew green <mrg@eterna.com.au>
2971	help/on/icb_error, help/on/icb_status:
2972		these document the right hook, not /help on notice.
2973	include/hook.h, include/hook.h.proto, source/hook.c, source/icb.c:
2974		implement /on icb_who and /on /icb_motd.
2975
297620021012
2977Sat Oct 12 22:09:05 EST 2002 - matthew green <mrg@eterna.com.au>
2978	source/screen.c, source/status.c, source/term.c:
2979		filter a few more chars that affect terminal output.  PR#593.
2980
2981Fri Oct  4 15:30:36 EST 2002 - matthew green <mrg@eterna.com.au>
2982	source/edit.c:
2983		reset & check meta[5678]_hit if we use them, just like
2984		everything else except meta4_hit.
2985
2986Fri Oct  4 14:46:35 EST 2002 - matthew green <mrg@eterna.com.au>
2987	source/sl.c, include/sl.h:
2988		stringlist handling functions, from netbsd-current.
2989	source/help.c:
2990		replace help_paused_lines with a stringlist.  this not only
2991		stops core dumps for non-standard terminal sizes (as reported
2992		in debian PR#66446), but also reduces memory usage.
2993
299420020912
2995Fri Sep 13 05:22:38 EST 2002 - matthew green <mrg@eterna.com.au>
2996	source/cast.c, source/screen.c:
2997		fix a couple more portability bogons.
2998
2999Thu Sep 12 16:23:02 EST 2002 - matthew green <mrg@eterna.com.au>
3000	include/cast_sbox.h:
3001		make this build with K&R C again.
3002	source/exec.c:
3003		don't redefine killpg().
3004	source/getaddrinfo.c:
3005		remove ANSI-only C code.
3006	source/getnameinfo.c:
3007		fix an error in the function header.
3008	source/window.c:
3009		avoid redefining MAXINT.
3010
3011Tue Sep 10 21:49:57 EST 2002 - matthew green <mrg@eterna.com.au>
3012	include/irc_std.h:
3013		protect prototypes on new functions.
3014	include/cast_sbox.h:
3015		force all the constants to unsigned.
3016	source/irc.c, source/getaddrinfo.c, source/getnameinfo.c,
3017	source/inet_pton.c, source/inet_ntop.c, include/irc_std.h,
3018	source/hook.c, source/screen.c, source/icb.c:
3019		convert ANSI-only C to portable code.
3020
3021Tue Sep 10 20:32:07 EST 2002 - matthew green <mrg@eterna.com.au>
3022	Makefile.in:
3023		fix a few spurious issues picked up by IRIX make.
3024
302520020908
3026Sun Sep  8 22:38:47 EST 2002 - matthew green <mrg@eterna.com.au>
3027	source/dcc.c:
3028		remove one use of getnameinfo().  just convert the 32 bit
3029		value into a "a.b.c.d" IP address and let getaddrinfo()
3030		deal with it later.. dcc works again now.
3031
3032Sun Sep  8 22:09:29 EST 2002 - matthew green <mrg@eterna.com.au>
3033	source/dcc.c:
3034		fix a 64-bit problem with dcc.
3035
3036Sun Sep  8 16:03:37 EST 2002 - matthew green <mrg@eterna.com.au>
3037	script/icb, source/edit.c, source/icb.c:
3038		support IBC /join -invite and /join -force.
3039
3040Sun Sep  8 15:08:27 EST 2002 - matthew green <mrg@eterna.com.au>
3041	configure, configure.in:
3042		fix an informative message that was listed as an error.
3043	source/icb.c, source/edit.c, include/edit.h:
3044		make do_channel() public, not static.  in icb_put_group(),
3045		call do_channel() before randomly sending a join to the
3046		server.  should check for -force.
3047	source/dcc.c:
3048		more type clean up in register_dcc_offer().
3049
305020020907
3051Sat Sep  7 17:16:11 EST 2002 - matthew green <mrg@eterna.com.au>
3052	source/edit.c, source/mail.c, source/numbers.c, source/window.c:
3053		remove message_from(..., LOG_CURRENT) in a few places.  remove
3054		some comments that say to remove a couple of other instances
3055		of these as well.  inspired by PR#563 (not fixed.)
3056
3057Sat Sep  7 16:59:55 EST 2002 - matthew green <mrg@eterna.com.au>
3058	source/screen.c:
3059		don't be smart when parsing screen bold, underline, inverse
3060		or "off" markers - it doesn't work.  fixes PR#519.
3061
3062Sat Sep  7 09:26:25 EST 2002 - matthew green <mrg@eterna.com.au>
3063	source/dcc.c:
3064		clean up register_dcc_offer() some.  properly set
3065		Client->remname so that dcc works properly.
3066
306720020906
3068Sat Sep  7 01:44:49 EST 2002 - matthew green <mrg@eterna.com.au>
3069	configure.in, configure:
3070		accept --with-non-blocking=none.
3071	include/irc.h, include/irc_std.h:
3072		move the RFC2553 / addrinfo / etc code to irc_std.h.  add new
3073		source_host and dcc_source_host extern u_char *'s.  define a
3074		SOCKADDR_STORAGE and SS_FAMILY define, based on INET6.
3075	include/server.h:
3076		remove local_addr from Server struct.  add a SOCKADDR_STORAGE
3077		and int length.  change get_server_localaddr() to return this,
3078		and add a get_server_localaddrlen().
3079	include/struct.h:
3080		remove struct in_addr remote and replace it with a u_char
3081		*remname that we lookup when necessary.
3082	include/vars.h.proto, include/vars.h, source/vars.c, source/irc.c,
3083	help/set/dcchost:
3084		add /set dcchost.  changes what "irc -H" set.
3085	source/dcc.c, source/irc.c, source/ircaux.c, source/server.c:
3086		remove MyHostName, MyHostAddr, forced_ip_addr and
3087		forced_ip_addr_storage.  add dcc_source_host.  remove
3088		process_hostname().  defer "irc -H" lookup until later.
3089		cleanup lots of INET6.  store the full sockaddr in the
3090		server_list[] rather than just the IP address.  remove any
3091		DCC means IPv4 code.  simplify connect_by_number() and
3092		bind_local_addr() now that they don't do DCC listens.
3093	source/dcc.c:
3094		add a new dcc_sockname() to dcc.c and use it to print the IP &
3095		port for a given connection.  add new listen_dcc() to handle
3096		dcc send/chat initiation.  change dcc_open() drastically to
3097		suite.  handle a failure to accept() in process_incoming_chat().
3098		lots of little cleanup.  we can now support IPv6 DCC.
3099
3100Thu Sep  5 14:09:35 EST 2002 - matthew green <mrg@eterna.com.au>
3101	acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h:
3102		always provide a socklen_t.
3103
3104Thu Sep  5 13:16:21 EST 2002 - matthew green <mrg@eterna.com.au>
3105	acconfig.h, configure, configure.in, include/defs.h.in,
3106	source/inet_pton.c, source/inet_ntop.c:
3107		always provide inet_pton(3) and inet_ntop(3).
3108	source/ircaux.c:
3109		fix struct sockaddr_storage vs. INET6 build problem.
3110
3111Thu Sep  5 12:12:03 EST 2002 - matthew green <mrg@eterna.com.au>
3112	Makefile.in:
3113		let ircio get at getaddrinfo.o.
3114	acconfig.h, configure.in, configure, incldue/defs.h.in:
3115		don't bother looking for gethostbyname() in -lresolv anymore.
3116		look for gethostbyname2() for our getaddrinfo().
3117	source/getaddrinfo.c, source/getnameinfo.c:
3118		define our own "myoffsetof" macro.
3119	source/ircaux.c:
3120		only set sockaddr.sa_len if it exsists...
3121
312220020904
3123Thu Sep  5 02:35:28 EST 2002 - matthew green <mrg@eterna.com.au>
3124	Makefile.in:
3125		regen depends.
3126	acconfig.h, aclocal.m4, configure, configure.in, source/getaddrinfo.c,
3127	source/getnameinfo.c, include/irc.h, include/defs.h.in, source/dcc.c:
3128		restructure ipv6 & getaddrinfo() tests.  always provide a
3129		version of getaddrinfo() and getnameinfo(), and use these
3130		everywhere.  a lot of the configure work was taken from
3131		lukemftp.
3132	help/alias/functions, help/dcc/talk help/dcc/tmsg, include/dcc.h,
3133	include/struct.h, include/talkd.h, script/tabkey, source/alias.c,
3134	source/dcc.c, source/edit.c:
3135		remove /dcc talk, /dcc tmsg and /dcc summon.
3136	include/ircaux.h, source/ircaux.c, source/irc.c, source/server.c:
3137		now we have getaddrinfo always, switch to a single
3138		connect_by_number() implementation.
3139
314020020903
3141Tue Sep  3 11:44:58 EST 2002 - matthew green <mrg@eterna.com.au>
3142	help/on/ctcp_reply, help/on/flood, help/on/notice, include/flood.h,
3143	script/bigcheese, script/columns, script/default, script/mudlike,
3144	script/oldping, script/service, script/traces, source/ctcp.c,
3145	source/flood.c, source/icb.c, source/notice.c, source/parse.c,
3146	source/whois.c:
3147		change /on flood, /on ctcp_reply, /on notice and /on
3148		encrypted_notice to all show the "target" as $1.  this is
3149		a backwards incompatible change but sripts can use
3150		"if (V > 20020902)" to check for the changed interface.
3151		update all scripts to cope.  fixes PR#587.
3152
315320020902
3154Mon Sep  2 12:20:30 EST 2002 - matthew green <mrg@eterna.com.au>
3155	source/edit.c
3156		reset new my_echo_set_who_level hack variable at the end
3157		of my_echo().
3158	configure.in, configure:
3159		don't look for -lresolv on *bsd.  fix --with-non-blocking.
3160
316120020830
3162Fri Aug 30 15:44:13 EST 2002 - matthew green <mrg@eterna.com.au>
3163	source/window.c:
3164		reset who_level to LOG_CRAP not 0.
3165	source/screen.c, source/edit.c, include/edit.h:
3166		GC some unused code.  in add_to_screen(), if who_level was set by
3167		my_echo(), use it in preference to who_from, so that xecho -level
3168		works for channel data as well.  fixes PR#575.
3169	source/parse.c:
3170		call message_from() with the right log level, not LOG_MSG always.
3171
3172Fri Aug 30 14:21:02 EST 2002 - matthew green <mrg@eterna.com.au>
3173	source/term.c:
3174		only decrement screen->co for the main screen; the value given
3175		to us by wserv for non-main screen's is already adjusted and
3176		was being decreased once per refresh_screen() call.
3177
3178Fri Aug 30 12:50:40 EST 2002 - matthew green <mrg@eterna.com.au>
3179	acconfig.h, include/defs.h.in:
3180		add #undef WITH_EMACS_META_KEYS
3181	configure.in, configure:
3182		add a --with-emacs-meta-keys switch to enable meta key support
3183	source/keys.c:
3184		support --with-emacs-meta-keys.
3185
3186Fri Aug 30 11:21:33 EST 2002 - matthew green <mrg@eterna.com.au>
3187	configure.in, configure:
3188		add an "int" return type to a main() test program.  warn about
3189		non blocking in one missing case.
3190	include/ircaux.h:
3191		add connect_by_number2() in INET6 case.  move SA_LEN compat here.
3192	include/server.h:
3193		add "struct addrinfo *res, *res0" elements in INET6 case.
3194	source/irc.c:
3195		cleanup INET6 code.
3196	source/ircaux.c:
3197		restructure INET6 version connect_by_number() into
3198		connect_by_number2(), and make the former call the new function.
3199		the new function takes pointers to struct addrinfo pointers for
3200		the res0 and current res0.  this allows non blocking connects to
3201		work with multi-homed servers that do not listen on all interfaces
3202		or network protocols (IPv4/IPv6).  fixes PR#533.
3203	source/server.c:
3204		pass a server_index to connect_to_server_{process,direct}() and
3205		use this to determine if we already have a res/res0 for this
3206		server, and pass these to connect_by_number2() appropriately.
3207		in do_server(), fix a INET6 getpeername() issue.  also, if we
3208		lose connection to a server we haven't logged into, and we have
3209		res/res0, call connect_to_server() again directly. initialise/clean
3210		up the res0 in add_to_server_list(), remove_from_server_list()
3211		and in new login_to_server_nonnblocking().  INET6/nonblocking
3212		code clean up.
3213
3214Thu Aug 29 21:31:55 EST 2002 - matthew green <mrg@eterna.com.au>
3215	acconfig.h, configure, configure.in, include/defs.h.in, source/edit.c:
3216		look for setenv(3) and unsetenv(3) and add ircii commands
3217		/setenv and /unsetenv if they exist.
3218	source/alias.c, include/status.h, source/status.c:
3219		add a new format_clock() that contains part of the guts of
3220		update_clock(), which now uses format_clock().  call format_clock()
3221		instead of update_clock() in alias_date() ($Z).
3222
322320020829
3224Thu Aug 29 19:49:28 EST 2002 - matthew green <mrg@eterna.com.au>
3225	source/ircaux.c:
3226		split connect_by_number() into new/old socket API versions
3227		(#ifdef INET6), and remove the ESIX crap from the new one.
3228		fix a bug in the multiple-host records case where we would
3229		not notice a connection had succeeded but try everything
3230		and report success or failure for the last.
3231	include/log.h, source/log.c, source/window.c:
3232		change the signature on do_log() so that the passed in FILE *
3233		becomes a FILE ** we can modify, rather than return.  fixes
3234		core dumps when using /log.  from flier <flier@scrollz.com>.
3235	source/server.c:
3236		avoid from_server overflows (Matt Dunford <zoot@zotikos.com>)
3237	help/on/ctcp, help/on/dcc_raw, help/on/exec, help/on/exec_errors,
3238	help/on/exec_exit, help/on/exec_prompt, help/on/flood, help/on/hook,
3239	help/on/notify_signoff, help/on/notify_signon:
3240		fixes from Matt Dunford <zoot@zotikos.com>, with a couple of
3241		minor touchups by myself.
3242
3243Tue Aug 27 20:46:14 EST 2002 - matthew green <mrg@eterna.com.au>
3244	configure.in, configure:
3245		detect linux /usr/include/ncurses earlier so that
3246		we actually find <termcap.h>.
3247
3248Tue Aug 27 00:06:01 EST 2002 - matthew green <mrg@eterna.com.au>
3249	help/basics, help/cat, help/commands, help/connect:
3250		minor fixes from Matt Dunford <zoot@zotikos.com>.
3251
325220020822
3253Thu Aug 22 23:12:10 EST 2002 - matthew green <mrg@eterna.com.au>
3254	source/names.c:
3255		fix !channel handling.  fixes PR#571.
3256
3257Thu Aug 22 16:59:10 EST 2002 - matthew green <mrg@eterna.com.au>
3258	configure.in, configure:
3259		don't check for v?snprintf twice.
3260	Makefile.in:
3261		don't build rijndael library (yet).
3262	source/server.c:
3263		fix some pedantic C issues picked up by the HPUX C compiler.
3264	script/fkeys:
3265		new script to make function keys work.  it's gross but it
3266		works.  from Stefan `Sec` Zehl <sec@42.org> in PR#574.
3267	script/2.8script, script/default, script/newaway
3268		unify & backwards compat-ify alias "n.o".  from "Mario
3269		'BitKoenig' Holbe" <Mario.Holbe@RZ.TU-Ilmenau.DE> in PR#580.
3270	source/irc.c:
3271		avoid core dumps with "irc --- nick".  from Oleg Drokin
3272		<green@linuxhacker.ru> in PR#576.
3273
3274Thu Aug 22 04:04:38 EST 2002 - matthew green <mrg@eterna.com.au>
3275	source/icb.c:
3276		split up the message properly; we were not including the
3277		length of our nickname.
3278
3279Fri Jun 21 11:40:10 EST 2002 - matthew green <mrg@eterna.com.au>
3280	source/irc.c, doc/ircII.1:
3281		irc -t is now the default.  use -T to get ti/te sequences.
3282
328320020403
3284Wed Apr  3 16:37:16 EST 2002 - matthew green <mrg@eterna.com.au>
3285	help/cat:
3286		change literal ^_ and ^B into control chars.  from William
3287		Katz <druid@dorsai.org>.
3288
328920020402
3290Tue Apr  2 19:10:57 EST 2002 - matthew green <mrg@eterna.com.au>
3291	source/dcc.c:
3292		use the size of the buffer, not sizeof (char *).  fixes PR#569.
3293
3294Tue Apr  2 17:42:06 EST 2002 - matthew green <mrg@eterna.com.au>
3295	include/status.h, source/alias.c, source/irc.c, source/status.c:
3296		back out most of the previous; redo it via adding a new
3297		UPDATE_TIME flag for update_clock(); only when this is
3298		passed do we update the local min/hour and check for timers
3299		going off, etc.
3300	include/hook.h.proto, include/hook.h, source/dcc.c, help/on/dcc_list:
3301		add new /on dcc_list, ala window_list.
3302
3303Thu Mar 28 23:52:17 EST 2002 - matthew green <mrg@eterna.com.au>
3304	source/window.c:
3305		don't call add_channel() with a key of "".
3306	source/names.c:
3307		don't create a mode if we just have an empty key.
3308	source/server.c:
3309		fix a warning from no nonblocking connects.
3310
331120020328
3312Thu Mar 28 01:59:34 EST 2002 - matthew green <mrg@eterna.com.au>
3313	include/status.h, source/alias.c, source/irc.c, source/status.c:
3314		move the static int hour/min from update_clock() to irc_io(),
3315		and add a pair of int * arguments to update_clock() to pass
3316		them in.  use these only if provided.  update all callers.
3317		i believe this fixes the status-clock-does-not-update bug.
3318
3319Thu Mar 28 01:06:55 EST 2002 - matthew green <mrg@eterna.com.au>
3320	configure.in, configure:
3321		add a --enable-non-blocking=[no|posix|bsd|sysv] to force the
3322		type of non blocking connects used, or to disable it entirely.
3323
3324Thu Mar 28 00:15:39 EST 2002 - matthew green <mrg@eterna.com.au>
3325	script/autoquery, help/load/autoquery:
3326		new script from Friedrich Delgado Friedrichs
3327		<friedel@nomaden.org> that causes ircII to create
3328		new /query windows for each nick involved in /msg.
3329	include/strsep.h, source/strsep.c, Makefile.in, source/edit.c,
3330	source/irc.c, source/numbers.c, source/screen.c, source/window.c:
3331		copy netbsd libc/strsep.c and borg it into my_strsep().
3332		use this to replace using strtok() everywhere, except for
3333		a few places next_arg() fit instead.
3334	source/ircaux.c:
3335		look for EAI_FAMILY if EAI_ADDRFAMILY is missing.  BSD/OS,
3336		from PR#566.
3337	include/names.h, source/names.c, source/window.c, source/edit.c,
3338	source/icb.c, source/irc.c, source/parse.c, source/window.c:
3339		add a u_char *key argument to add_channel() and use it in
3340		/window channel.
3341	source/window.c:
3342		fix /set xterm_options/screen_options.
3343
3344Tue Mar 26 04:44:56 EST 2002 - matthew green <mrg@eterna.com.au>
3345	source/icb.c:
3346		call message_from() for the icb group, in the default case
3347		of an info message, so that they go to the group.
3348
3349Mon Mar 25 15:47:26 EST 2002 - matthew green <mrg@eterna.com.au>
3350	source/window.c:
3351		set default nick and port in window_get_connected() before
3352		we call add_to_server_list().  fixes core dump in /window
3353		server new.server.
3354
335520020325
3356Mon Mar 25 01:47:38 EST 2002 - matthew green <mrg@eterna.com.au>
3357	include/server.h, source/server.c, source/window.c:
3358		add a new "fake server" concept that new servers are
3359		added as, until connect_to_server_*() returns some sort
3360		of success and enters the server.  after these return,
3361		we garbage collect all fake server entries.  this keeps
3362		the server list as clean as before.
3363
3364Mon Mar 25 00:57:07 EST 2002 - matthew green <mrg@eterna.com.au>
3365	include/alias.h, include/dcc.h, include/hook.h.proto,
3366	include/hook.h, include/input.h, include/whois.c:
3367		remove unused extern globals.  XXX mark some others.
3368	source/edit.c:
3369		fix /whois for ICB.
3370	source/server.c:
3371		fix "irc -icb nick icb.server.com" again.
3372
3373Mon Mar 25 00:13:12 EST 2002 - matthew green <mrg@eterna.com.au>
3374	include/server.h, include/window.h, source/edit.c, source/notice.c,
3375	source/numbers.c, source/server.c, source/window.c:
3376		move `int attempting_to_connect;' inside the server_list[]
3377		and maintain it on a per-server basis.  remove the
3378		connect_next_nick, connect_next_password,
3379		connect_next_icbgroup, connect_next_icbmode,
3380		connect_next_server_group, connect_next_as_icb and
3381		connect_next_as_irc globals.  to keep the functionality always
3382		add /server entries to the server list when processing them so
3383		we can store this information there from the start.  modify
3384		CHOOSE_PORT to take a server argument as a version.  make
3385		/window server pay attention to multiple -flags.
3386
3387Sun Mar 24 21:26:42 EST 2002 - matthew green <mrg@eterna.com.au>
3388	help/window/where:
3389		very old missing help file.
3390
3391Sat Mar 23 16:25:34 EST 2002 - matthew green <mrg@eterna.com.au>
3392	include/window.h, source/server.c, source/window.c:
3393		add a new window_set_prev_server(int server) function, that
3394		sets the prev_server for every window whose server is the
3395		same as "server".  call this from login_to_server().
3396
3397Sat Mar 23 15:24:33 EST 2002 - glen mccready <gkm@pobox.com>
3398	include/server.h, source/server.c, source/window.c:
3399		unstatic add_server_to_server_group().  implement
3400		`/window server .'.  still doesn't quite work as the
3401		prev_server isn't set properly yet.
3402
340320020322
3404Fri Mar 22 02:48:54 EST 2002 - matthew green <mrg@eterna.com.au>
3405	source/alias.c:
3406		revert change from Tue Mar 19 00:28:36 EST 2002 to:
3407		alias_server_version(), function_querynick(),
3408		function_winserver(), function_winservergroup(),
3409		function_winvisible(), function_winnum(), function_winnam(),
3410		function_winrows(), function_wincols() and function_channels().
3411
341220020321
3413Thu Mar 21 14:16:01 EST 2002 - matthew green <mrg@eterna.com.au>
3414	doc/ircII.1:
3415		document server server groups, and expand the examples.
3416
3417Thu Mar 21 14:03:10 EST 2002 - matthew green <mrg@eterna.com.au>
3418	source/edit.c:
3419		ensure that "/save -all" works.  PR#559.
3420
3421Thu Mar 21 13:48:02 EST 2002 - matthew green <mrg@eterna.com.au>
3422	source/alias.c, include/defs.h.in, configure, configure.in:
3423		look for and include <crypt.h> for crypt(3) prototype.
3424	include/window.h, include/server.h, source/window.c, source/server.c:
3425		integrate server groups more tightly.  allow one to express
3426		them in the $IRCSERVER format as ``:group:'' before the
3427		server name.  eg, IRC/:group:server.name:port.
3428
3429Thu Mar 21 03:58:58 EST 2002 - matthew green <mrg@eterna.com.au>
3430	source/edit.c:
3431		add a new NOICB command flag and reject any such commands
3432		attempted on an ICB server.  don't send an info command
3433		to the ICB server, but do still allow it locally.
3434
3435Thu Mar 21 02:36:54 EST 2002 - matthew green <mrg@eterna.com.au>
3436	source/names.c:
3437		in both lookup_channel() and has_voice(), verify that our
3438		arguments are sane, and return failure if they aren't. PR#560.
3439
3440Thu Mar 21 00:38:27 EST 2002 - matthew green <mrg@eterna.com.au>
3441	help/server, source/server.c, include/server.h:
3442		implement /server -group <group> <server>, which sets the
3443		server group for the name <server> to <group>.  <group> is
3444		handled just as window server groups, and infact uses the
3445		same data structures.
3446	help/window/addgroup:
3447		reference help/window/delgroup.
3448	source/ircaux.c:
3449		minor optimisations for malloc_str*().
3450	source/ircflush.c, source/ircio.c, source/wserv.c:
3451		add prototypes for main() so we get no warnings.
3452	source/server.c, source/whois.c:
3453		work around -Wuninitalised breakage.
3454
3455Wed Mar 20 03:20:08 EST 2002 - matthew green <mrg@eterna.com.au>
3456	script/tabkey:
3457		fix $tk.followadd().  from Mario.Holbe@RZ.TU-Ilmenau.DE
3458		in PR#565.
3459
3460Tue Mar 19 00:28:36 EST 2002 - matthew green <mrg@eterna.com.au>
3461	source/alias.c:
3462		fix alias_chanop(), alias_modes() (from PR#562),
3463		alias_server_version(), function_querynick(),
3464		function_winserver(), function_winservergroup(),
3465		function_winvisible(), function_winnum(), function_winnam(),
3466		function_winrows(), function_wincols() and function_channels()
3467		to use the correct server, not the current windows server.
3468	include/ignore.h, source/ignore.c, help/alias/functions:
3469		new ignore_list_string() function.  rearrange ignore_list(),
3470		add a new external ignore_list_string(), and update
3471		ignore_list() callers.  document.
3472
3473Mon Mar 18 23:52:11 EST 2002 - matthew green <mrg@eterna.com.au>
3474	source/ircaux.c, include/ircaux.c:
3475		add malloc_strncpy() and malloc_strncat() functions that
3476		have an "size_t extra" parameter, indicating how much
3477		extra space to allocate for this string.  useful for
3478		replacing two calls to malloc_str*() with one and a
3479		call to my_str*(), and avoiding the extra malloc.
3480
3481Mon Mar 18 01:16:42 EST 2002 - matthew green <mrg@eterna.com.au>
3482	help/set/tab, help/set/decrypt_program, help/set/show_stars,
3483	help/set/iso2022_support:
3484		add missing help docs.  PR#558.
3485	help/set/pause_after_motd help/set/status_dquery:
3486		remove obsolete docs.  PR#558.
3487	incldue/alias.h:
3488		remove unused alias_illegals extern.
3489
3490Mon Mar 11 23:50:42 EST 2002 - matthew green <mrg@eterna.com.au>
3491	help/on/window_list, include/hook.h, include/hook.h.proto,
3492	source/hook.c, source/window.c:
3493		add a new /on window_list that hooks into the output of
3494		/window list.  part of PR#551.
3495
3496Mon Mar 11 20:25:46 EST 2002 - matthew green <mrg@eterna.com.au>
3497	source/screen.c, source/window.c, include/window.h:
3498		change create_additional_screen() to take an "int" arg of the
3499		screen type (ST_xxx), and to use this when determining the
3500		type of screen to create..  change /window create to look for
3501		either a -xterm or -screen option to force one or the other.
3502		add some more debug output.  now one can open new xterm's from
3503		a screen session.
3504
3505Mon Mar 11 01:00:41 EST 2002 - matthew green <mrg@eterna.com.au>
3506	help/expressions:
3507		add a note warning about the dangers of ircII expression
3508		evaluation, and to use ( and ) to properly force the correct
3509		association.
3510	source/icb.c:
3511		add /on flood support to ICB.  PR#524.
3512
351320020310
3514Sun Mar 10 20:10:51 EST 2002 - matthew green <mrg@eterna.com.au>
3515	source/numbers.c:
3516		password_sendline: server index is in data not line: PR#547.
3517	source/server.c:
3518		add_to_server_list: be careful not to clear valid passwords:
3519		PR#547.
3520
3521Sun Mar 10 19:14:11 EST 2002 - matthew green <mrg@eterna.com.au>
3522	configure.in, configure:
3523		if we don't find gethostbyname in -lresolv, try -lnsl. PR#537.
3524
3525Sun Mar 10 18:16:23 EST 2002 - matthew green <mrg@eterna.com.au>
3526	source/notice.c:
3527		fix a bug from 8 years ago: don't send flooded notices as
3528		public notices.  fixes PR#549.
3529	source/edit.c:
3530		display sub-second timer information, from flier in PR#554.
3531	source/numbers.c:
3532		add a hack to fix PR#552: set the nick on numeric 001 if
3533		it is wrong.
3534
3535Sun Mar 10 01:55:57 EST 2002 - matthew green <mrg@eterna.com.au>
3536	source/hook.c:
3537		add fuzzy matching so that, eg, "/on send" will show all the
3538		current hooks starting with "send".  idea from poxaV.
3539
354020020309
3541Sat Mar  9 02:34:44 EST 2002 - matthew green <mrg@eterna.com.au>
3542	source/ctcp.c, source/dcc.c:
3543		add some beep support, if beep_on_level has CTCP or
3544		DCC.  from dive@endersgame.net.
3545	Makefile.in:
3546		regen depends.
3547
3548Sat Mar  9 02:05:25 EST 2002 - matthew green <mrg@eterna.com.au>
3549	source/irc.c, source/input.c, source/screen.c:
3550		add some debug code.  in input_update() don't overwrite
3551		buffer_pos or str_start on resize.  use set_current_screen(),
3552		don't set current_screen manually.  clean up
3553		screen_wserv_message() some.
3554
355520020306
3556Wed Mar  6 21:18:30 EST 2002 - matthew green <mrg@eterna.com.au>
3557	source/irc.c:
3558		fix a Debug().
3559	source/term.c:
3560		restructure term_resize() slightly.
3561	source/screen.c:
3562		add some debugging to create_additional_screen(). clean up unix
3563		sockets.  default screen size from the master, not 80x24.
3564		call recalculate_windows after getting a wserv message.
3565	source/wserv.c:
3566		remove ircIIpid and related code, obsolete.  include some more
3567		headers so we find TIOCGWINSZ where it can be.  fix got_sigwinch()
3568		bugs.  fixed arg checking bugs.  fixed control socket path bug.
3569		don't perror with our tty.  call got_sigwinch() at startup.
3570
3571Tue Jan 22 20:24:56 EST 2002 - matthew green <mrg@eterna.com.au>
3572	source/vars.c:
3573		set the default IRCHOST variable.  from flier.
3574
3575Tue Jan 22 13:46:53 EST 2002 - matthew green <mrg@eterna.com.au>
3576	script/autoop:
3577		fix from Bernd Eckenfels <ecki@lina.inka.de> for nicks
3578		ending in backslash.
3579	help/alias/special:
3580		fix an example. from David Murn <davey@doa.org> in
3581		debian PR#113884.
3582
3583Tue Jan 22 03:05:27 EST 2002 - matthew green <mrg@eterna.com.au>
3584	source/irc.c:
3585		only look at wservin for non-main screen's.
3586	source/screen.c:
3587		implement screen_wserv_message().
3588	source/term.c:
3589		modify term_resize() to cope with wserv messages.
3590
3591Tue Jan 22 01:15:29 EST 2002 - matthew green <mrg@eterna.com.au>
3592	Makefile.in:
3593		link ircII.1 to irc.1, finally.
3594	include/screen.h, include/struct.h, source/irc.c, source/wserv.c,
3595	source/screen.c:
3596		add a new control socket for WSERV sessions, for coping with
3597		screen size changes.
3598	include/config.h.dist, include/var.h, include/var.h.proto,
3599	include/hook.h, include/hook.h.proto, include/keys.h,
3600	include/keys.h.proto, source/crypto.c, source/vars.c:
3601		add a new /set decrypt_program. from flier.
3602	source/icb.c:
3603		clear the ICB $userhost() when it isn't known.
3604
3605Wed Jan 16 00:33:45 EST 2002 - matthew green <mrg@eterna.com.au>
3606	source/crypt.c:
3607		put a newline between crypto key & text for external programs.
3608		noticed by flier <flier@scrollz.com>.
3609
3610Wed Dec 19 00:54:04 EST 2001 - matthew green <mrg@eterna.com.au>
3611	source/icb.c:
3612		don't wipe out the current channel in icb_put_action().
3613	source/server.c:
3614		rework logic on what server to choose next to avoid skipping
3615		one accidentally.
3616
3617Wed Dec 19 00:11:03 EST 2001 - matthew green <mrg@eterna.com.au>
3618	source/icb.c, source/edit.c, include/icb.h:
3619		new icb_put_action() function.  make icb_put_public()
3620		obey window_display.
3621	include/ircterm.h, include/struct.h, source/alias.c, source/funny.c,
3622	source/help.c, source/input.c, source/menu.c, source/output.c,
3623	source/screen.c, source/status.c, source/term.c, source/window.c:
3624		move lower_mark, upper_mark, input_line, str_start, zone
3625		and cursor from screen.c into the per-screen struct.  also
3626		move the static lines & columns variables from input.c and
3627		term.c here as well.  this handles the input prompt on other
3628		screen's properly.  move the CO and LI variables from term.c
3629		into the per-screen struct as well.  call new_window() at
3630		the top of init_screen() to setup the master screen structure
3631		earlier.  TODO: have some way of wserv telling the master
3632		ircii about screen changes.  but at least for now the input
3633		prompt should work much better.
3634
3635Tue Dec 18 17:34:06 EST 2001 - matthew green <mrg@eterna.com.au>
3636	include/irc_std.h:
3637		add UPP and CPP macros for char ** conversions.
3638
3639Mon Dec 17 22:17:22 EST 2001 - Joel Yliluoma <bisqwit@iki.fi>
3640	source/edit.c, source/irc.c, include/edit.h:
3641		Added support for microsecond resolution in /TIMER.
3642		Todo: Add named timers some day.
3643	source/dcc.c:
3644		Fixed crashing when closing DCC RAW_LISTEN socket.
3645	help/exec:
3646		Updated the documentation (found a flaw).
3647
3648Mon Dec 17 21:55:24 EST 2001 - matthew green <mrg@eterna.com.au>
3649	source/alias.c, help/alias/functions:
3650		new $filestat($file) that returns size, uid, gid, mode,
3651		filename of passed in $file.  inspired by a change in
3652		the debian bug database.
3653
365420011210
3655Fri Nov 30 10:03:10 EST 2001 - matthew green <mrg@eterna.com.au>
3656	script/times:
3657		add a public_other /on as well
3658	source/irc.c:
3659		call check_wait_status until it returns < 0.  from bisqwit.
3660
3661Tue Sep 18 11:37:03 EST 2001 - matthew green <mrg@eterna.com.au>
3662	source/alias.c:
3663		fix $mid(0, ...).  from tristan in private email.
3664
3665Fri Sep  7 02:49:55 EST 2001 - Joel Yliluoma <bisqwit@iki.fi>
3666	help/exec, source/alias.c, source/exec.c, include/exec.h,
3667	include/alias.h:
3668		Added -FILTER switch to /EXEC, and documented it,
3669		Now external programs can be scripted to select
3670		recipients on multiple servers.
3671
3672Fri Sep  7 02:49:52 EST 2001 - Joel Yliluoma <bisqwit@iki.fi>
3673	source/server.c, include/hook.h, include/hook.h.proto, source/hook.c,
3674	help/on/raw_send:
3675		RAW_SEND -list support had vanished from my last
3676		update, added it back.
3677	source/screen.c:
3678		mIRC-colour codes work better now.
3679		Rewritten the indent code, colour codes
3680		now work in CONTINUED_LINE too.
3681	help/on/msg:
3682		Updated the documentation of /msg.
3683	source/screen.c, source/edit.c, source/edit.h:
3684		Allow multiple different target redirection.
3685
368620010807
3687Tue Aug  7 21:08:32 EST 2001 - matthew green <mrg@eterna.com.au>
3688	source/window.c, source/screen.c:
3689		set connect_next_as_irc/connect_next_as_icb before calling
3690		connect_to_server() always.
3691	source/alias.c, source/crypt.c, source/ctcp.c, source/dcc.c,
3692	source/edit.c, source/exec.c, source/funny.c, source/help.c,
3693	source/hook.c, source/icb.c, source/ignore.c, source/ircaux.c,
3694	source/ircflush.c, source/ircio.c, source/mail.c, source/names.c,
3695	source/numbers.c, source/parse.c, source/rijndael.c, source/screen.c,
3696	source/server.c, source/stack.c, source/status.c, source/translat.c,
3697	source/vars.c, source/whois.c, source/window.c:
3698		convert sprintf() to snprintf() now that we have that always.
3699
3700Tue Aug  7 15:42:19 EST 2001 - matthew green <mrg@eterna.com.au>
3701	help/icb:
3702		add a link to http://www.icb.net/
3703	source/output.c:
3704		avoid core dumps on empty MOTD lines.  from Bernd Eckenfels
3705		<ecki@lina.inka.de>.
3706	include/buffer.h, source/output.c, source/hook.c:
3707		move PUTBUF macros into new buffer.h, and use them in do_hook.
3708	configure.in, configure:
3709		look for sendmail in /usr/sbin first.
3710	source/output.c:
3711		use snprintf() everywhere here.
3712
3713Fri Jul 27 01:19:04 EST 2001 - matthew green <mrg@eterna.com.au>
3714	source/input.c:
3715		in update_input(), add some sanity checking on lower_mark,
3716		upper_mark & str_start.
3717	source/alias.c:
3718		fix an underrun in $mid().  pointed out by jnelson@epicsol.org
3719		in PR#536.
3720
372120010720
3722Fri Jul 20 10:49:26 EST 2001 - matthew green <mrg@eterna.com.au>
3723	source/screen.c:
3724		in output_line(), don't fwrite() in the CHARSET & COLOUR tag
3725		cases, unless we have a greater than zero length.
3726
3727Fri Jul 20 06:57:28 EST 2001 - matthew green <mrg@eterna.com.au>
3728	source/screen.c:
3729		in output_line(), don't blindly step through the string to
3730		decode the colour or charset tags, make sure we don't step
3731		past the nul.
3732	source/lastlog.c:
3733		in bits_to_lastlog_level(), the max length of the levels is
3734		closer to 120 than 80.. adjust a buffer size.
3735
373620010612
3737Tue Jun 12 23:12:34 EST 2001 - matthew green <mrg@eterna.com.au>
3738	source/irc.c, source/window.c, source/server.c:
3739		provide no default quit message anywere.
3740	source/parse.c:
3741		fix is_channel() for ICB.
3742
3743Sun May 20 06:48:11 EST 2001 - Joel Yliluoma <bisqwit@iki.fi>
3744	include/vars.h.proto, include/vars.h, include/irc.h,
3745	include/config.h.dist, source/screen.c, source/vars.c:
3746		applied the japanese patch (from galibert@mines.u-nancy.fr),
3747		which also fixes the ^V/^B/^_/color handling over broken lines.
3748	source/dcc.c, source/irc.c:
3749		dcc working with masquerades (new -H switch; IPv4 only)
3750	source/notice.c, source/server.c:
3751		fixed -q again (prevent also .ircquick)
3752	source/alias.c, help/alias/functions:
3753		added new functions: SHELLFIX, URLENCODE functions.
3754	Makefile.in:
3755		remove rijndael-alg-ref.c, rijndael-api-ref.c and config.h on
3756		make distclean.
3757
3758Mon Feb 12 23:53:22 EST 2001 - matthew green <mrg@eterna.com.au>
3759	include/server.h, source/funny.c, source/status.c:
3760		add usermode `z' support.
3761	doc/ircII.1: document the ircII.servers & ircII.motd files.
3762
3763Mon Feb 12 23:42:30 EST 2001 - matthew green <mrg@eterna.com.au>
3764	source/snprintf.c, Makefile.in, acconfig.h, configure, configure.in:
3765		look for snprintf() and vsnprintf() and provide replacements if
3766		they do not exist.  nothing uses this (yet).
3767
3768Tue Jan  2 22:26:14 EST 2001 - matthew green <mrg@eterna.com.au>
3769	source/server.c:
3770		don't call get_connected() but just call window_set_server() for
3771		the relevant windows, if we fail to connect.  fixes PR#227.
3772
3773Tue Jan  2 17:09:21 EST 2001 - matthew green <mrg@eterna.com.au>
3774	help/alias/functions, include/ignore.h, include/notify.h,
3775	source/alias.c, source/ignore.c, source/notify.c:
3776		4 new functions, inspired by PR#66:
3777		  IGNORED(NICK TYPE)    Returns "ignored", "highlighted", "dont"
3778					or "0", depending on what ignore action
3779					will be applied to this NICK and TYPE of
3780					ignorance.  TYPE must be one of MSGS,
3781					PUBLIC, WALLS, WALLOPS, INVITES,
3782					NOTICES, NOTES, CTCP or CRAP.
3783		  NOTIFY(TYPE)          Returns either the TYPE "here", "gone"
3784					or "all" lists, default being "here".
3785		  SCREENS()             Returns a list of the current screen.
3786		  WINDOWS()             Returns a list of the current windows.
3787	inspired by PR#66.
3788	include/vars.h.proto, include/vars.h, include/config.h.dist,
3789	source/output.c, source/vars.c, help/set/star_prefix:
3790		new /set star_prefix variable that replaces the hard coded
3791		"*** " prefix from many messages, and replaces it with the
3792		expanded value of this variable, so that /set star_prefix $Z
3793		works.  inspired by PR#48.
3794	source/numbers.c:
3795		be saner in reset_nickname().  deal with various bugs here.
3796		inspired by PR#287.
3797
3798Tue Jan  2 11:50:23 EST 2001 - matthew green <mrg@eterna.com.au>
3799	include/vars.h.proto, include/vars.h, include/config.h.dist,
3800	include/names.h, source/alias.c, source/names.c, source/status.c,
3801	source/vars.c, help/set/status_voice:
3802		add new /set status_voice and %v status_format modifier,
3803		part of PR#11.
3804
380520010101
3806Mon Jan  1 22:07:31 EST 2001 - matthew green <mrg@eterna.com.au>
3807	source/notice.c, irc.c:
3808		load "global" before .ircrc, when using -b.  fixes PR#498.
3809	source/window.c:
3810		avoid a core dump when re-binding a channel.  fixes PR#497.
3811	script/listidle, help/load/listidle:
3812		new listidle script from tristan in PR#466.
3813	source/numbers.c:
3814		re-do numeric 437 processing.  fixes PR#500.
3815	source/edit.c:
3816		handle /me for ICB.  fixes PR#492.
3817	source/whois.c:
3818		kill some debug messages.
3819	source/term.c:
3820		kill some "#ifdef mips" lossage.
3821
3822Mon Jan  1 12:34:26 EST 2001 - matthew green <mrg@eterna.com.au>
3823	acconfig.h, configure, configure.in, include/defs.h.in,
3824	include/ircterm.h, source/term.c:
3825		check for fwrite/fputc and only redefine them if they are
3826		not already present (and if "mips", like it was).  make the
3827		fake macros more robust and correct.
3828
382920001231
3830Tue Dec 19 16:25:55 EST 2000 - matthew green <mrg@eterna.com.au>
3831	source/menu.c:
3832		fix a core dump, noted by "David O'Shea"
3833		<s341595@student.uq.edu.au> in PR#503.
3834	source/term.c:
3835		give cygwin a 2K buffer.
3836
3837Mon Dec  4 21:34:19 EST 2000 - matthew green <mrg@eterna.com.au>
3838	source/edit.c:
3839		apply patch from <jnelson@acronet.net> to avoid sending
3840		"NAMES " to the server in cases it was not meant. PR#501.
3841
384220001120
3843Mon Nov 20 00:07:40 EST 2000 - matthew green <mrg@eterna.com.au>
3844	source/edit.c:
3845		in send_text(), don't do dcc chat/talk or command expansion
3846		if the target is actually the current channel.  stops things
3847		like groups named `/quit' from being obnoxious.
3848
3849Mon Nov  6 02:00:46 EST 2000 - matthew green <mrg@eterna.com.au>
3850	configure, configure.in:
3851		add a `--with-efence' option to include the Electric Fence
3852		malloc debugging library.
3853	include/ircterm.h:
3854		support ncurses tputs(3) variant.
3855
3856Wed Oct 25 08:35:55 EST 2000 - matthew green <mrg@eterna.com.au>
3857	source/output.c:
3858		s/buf/putbuf/ in !stdarh.h code. PR#496 from Andreas Ley
3859		<andy@rz.uni-karlsruhe.de>.
3860
386120001024
3862Tue Oct 24 12:52:46 EST 2000 - matthew green <mrg@eterna.com.au>
3863	source/names.c:
3864		in mark_not_connected(), clear the channel status.  fixes
3865		PR#495.
3866
3867Fri Oct 13 22:18:52 EST 2000 - matthew green <mrg@eterna.com.au>
3868	include/crypt.h, source/cast.c, source/crypt.c, source/rijndael.c,
3869	source/sed.c:
3870		toss the generic CBC code for now.  make cast.c like it was,
3871		and use the built-in rijndael CBC code.  generate a 32-byte
3872		IV for the start of the connection.  disable the rijndael
3873		code while it doesn't work.
3874	source/irc.c:
3875		call srandom() when we start.
3876
387720001009
3878Mon Oct  9 02:13:16 EST 2000 - matthew green <mrg@eterna.com.au>
3879	Makefile.in:
3880		regenerate dependancies
3881
3882Mon Oct  9 02:04:32 EST 2000 - matthew green <mrg@eterna.com.au>
3883	source/rijndael.c, source/cast.c, source/crypt.c, source/sed.c,
3884	include/crypt.h:
3885		further crypto handling simplification.  complete the rijndael
3886		cipher (using the new generic CBC-mode handling code).
3887
3888Sun Oct  8 08:47:31 EST 2000 - matthew green <mrg@eterna.com.au>
3889	source/rijndael/:
3890		add Rijndael reference source 2.1.
3891	Makefile.in:
3892		update for Rijndael support.  clean up some things.
3893	configure.in, configure:
3894		remove --with-cast.  crypto is always there now.
3895	include/crypt.h, source/ctcp.c:
3896		simplify ctcp crypto handling.
3897
389820001007
3899Sat Oct  7 21:58:27 EST 2000 - matthew green <mrg@eterna.com.au>
3900	source/edit.c, source/alias.c, source/irc.c, include/irc.h:
3901		remove internal_version, and make irc_version be this YYYYMMDD
3902		string instead.
3903
3904Sat Oct  7 16:36:19 EST 2000 - matthew green <mrg@eterna.com.au>
3905	source/edit.c, source/alias.c:
3906		PR#482 & #483 from maximum entropy <entropy@zippy.bernstein.com>
3907		fix off-by-one error calling getcwd.
3908	source/irc.c:
3909		fix some typos
3910	source/screen.c:
3911		more robust mIRC code from PR#480 from
3912		<wiz@danbala.tuwien.ac.at>.
3913	source/ircaux.c:
3914		pr#488 from ecki@lina.inka.de: fix off-by-one overflow in
3915		strmcpy().
3916	configure.in, configure:
3917		Reimplemented gethostbyname() check from Arkadiusz Miskiewicz
3918		<misiek@pld.org.pl> in PR#486.
3919
3920Tue Sep 19 02:45:35 EST 2000 - matthew green <mrg@eterna.com.au>
3921	doc/ircII.1, include/irc.h, source/irc.c, source/term.c:
3922		add new -t command line argument to make ircII not use the
3923		termcap "ti" and "te" sequences.  fixes PR#484.  add -T to
3924		turn them on (if present) for completeness.
3925
39264.4Z
3927Thu Aug 31 22:19:55 EST 2000 - matthew green <mrg@eterna.com.au>
3928	source/window.c:
3929		fix "/window new move -3".  patch from
3930		<jnelson@epicsol.org> in PR#477.
3931	source/flood.c:
3932		apply forcer's hack-patch to work around the problem
3933		described in PR#471.
3934	source/names.c:
3935		avoid using CHAN_LIMBO as a bit flag, cuz it isn't.  part
3936		of PR#472.
3937
3938Thu Aug 10 10:50:23 EST 2000 - matthew green <mrg@eterna.com.au>
3939	source/edit.c:
3940		allocate enough space in the ICB /whois for the string to
3941		be written.  found by moof/libefence.
3942
39434.4Y
3944Sat Aug  5 22:19:20 EST 2000 - matthew green <mrg@eterna.com.au>
3945	source/window.c, source/server.c, include/window.h:
3946		in window_get_connected(), don't kill the current window's
3947		version of current_channel.  if that is going to happen,
3948		window_set_server() will do it.  fixes my PR#442.
3949
3950Sat Aug  5 15:12:39 EST 2000 - matthew green <mrg@eterna.com.au>
3951	source/window.c, help/window/nostatus:
3952		implement /window nostatus to entirely disable the
3953		status line.  can be confusing with mulitle visible windows
3954		with nostatus!  inspired by PR#455.
3955
3956Sat Aug  5 14:36:58 EST 2000 - matthew green <mrg@eterna.com.au>
3957	source/ircaux.c:
3958		set "err" in all cases, so we know when we have actually
3959		succeeded.  fixes connections to the local machine.
3960
3961Fri Aug  4 17:42:13 EST 2000 - matthew green <mrg@eterna.com.au>
3962	include/config.h.dist, include/vars.h, include/vars.h.proto,
3963	source/names.c, source/vars.c:
3964		add /set hide_channel_keys {on|off}, inspired by PR#467
3965		(whose patch was based on over 5 year old code).
3966
39674.4X
3968Fri Aug  4 12:18:10 EST 2000 - matthew green <mrg@eterna.com.au>
3969	source/irc.c:
3970		use a local static "buffer", fixes lossage.
3971
39724.4V
3973Wed Aug  2 18:41:22 EST 2000 - matthew green <mrg@eterna.com.au>
3974	source/icb.c:
3975		don't ignore empty fields, fill them in as normal.
3976
3977Wed Jul 19 03:12:37 EST 2000 - matthew green <mrg@eterna.com.au>
3978	include/irc.h, source/alias.c, source/ctcp.c, source/edit.c,
3979	source/exec.c, source/help.c, source/history.c, source/ignore.c,
3980	source/irc.c, source/lastlog.c, source/mail.c, source/menu.c,
3981	source/names.c, source/notice.c, source/numbers.c, source/screen.c,
3982	source/server.c, source/translat.c, source/window.c:
3983		remove all uses of the global buffer, and delete it.
3984
3985Sun Jul 16 14:23:48 EST 2000 - matthew green <mrg@eterna.com.au>
3986	source/names.c:
3987		don't use the global "buffer".
3988
3989Thu Jul 13 13:15:08 EST 2000 - matthew green <mrg@eterna.com.au>
3990	help/on/icb_status, help/on/icb_error:
3991		document the recently added icb_status and icb_error hooks.
3992	source/edit.c:
3993		fix `/join -' dumping core, PR#458.
3994
3995Sun Jun 11 17:39:05 EST 2000 - matthew green <mrg@eterna.com.au>
3996	source/icb.c:
3997		fix my PR#444: moderator sign off message wrongly parsed.
3998
3999Sun Jun 11 17:17:21 EST 2000 - matthew green <mrg@eterna.com.au>
4000	include/config.h.dist, include/vars.h, include/vars.h.prot,
4001	source/irc.c, source/screen.c, source/vars.c
4002	help/set/foreground_colour, help/set/background_colour:
4003		add two new /set variables: foreground_colour and
4004		background_colour, and use these.  add new -r switch to
4005		reverse the default values.  from forcer@mindless.com,
4006		and is the best fix for his PR#446.
4007	help/set/colour:
4008		document this recent variable.
4009
4010Sun Jun 11 17:03:16 EST 2000 - matthew green <mrg@eterna.com.au>
4011	source/term.c, include/ircterm.h:
4012		use termcap 'ti' and 'te' sequences when starting and leaving
4013		(or when suspending).  should fix colour reset problems as
4014		seen in PR#429.
4015	include/config.h.lynx:
4016		kill.
4017
4018Mon May 29 00:35:44 EST 2000 - matthew green <mrg@eterna.com.au>
4019	help/set/xterm_geomoptstr, help/set/xterm_options, help/set/xterm_path,
4020	include/config.h.lynx, include/config.h.dist, include/vars.h.proto,
4021	source/screen.c, source/vars.c, include/vars.h:
4022		add new /set xterm_geomoptstr variable to change the "-geom"
4023		option to the xterm program, necessary for, eg, rvxt. fixes
4024		PR#449 from <jmf@digitalexp.com>.
4025	include/struct.h, source/names.c:
4026		remove the 'cached' mode string.  it was getting wrong with
4027		channel keys and it seems useless now anyway.
4028
40294.4U
4030Thu May 11 13:04:07 EST 2000 - matthew green <mrg@eterna.com.au>
4031	source/server.c:
4032		make /disconnect * work.
4033	source/dcc.c, source/newio.c, source/server.c, source/screen.c,
4034	source/window.c:
4035		rename refresh and timeout functions/variables as these
4036		are defined in most <curses.h> files.
4037	source/translat.c:
4038		fopen() likes "r" not "R".
4039	source/notify.c:
4040		in do_notify(), don't change from_server and leave it
4041		changed if we have an ICB server for primary.
4042	source/edit.c:
4043		don't send IRC PRIVMSG to ICB servers.
4044	help/disconnect:
4045		document this command.
4046
4047Sat Apr 15 04:57:21 PDT 2000 - matthew green <mrg@eterna.com.au>
4048	help/lastlog:
4049		document /lastlog <pattern> <count> <start> support.
4050	source/edit.c:
4051		fix ICB /topic.  apply patch from Roman Gollent
4052		<roman@babe.pobox.com> to make /topic * work.
4053
4054Tue Apr 11 00:24:12 EST 2000 - matthew green <mrg@eterna.com.au>
4055	source/names.c:
4056		fix a problem found by forcer: in remove_channel(), if we can
4057		work out the refnum of the window this channel is on, pass it
4058		to is_current_channel(), rather than always passing -1.
4059	source/output.c:
4060		do not use a static buffer for vasprintf(). put_it() and
4061		friends are sometimes re-entrant.  picked up by forcer and
4062		electric fence.
4063	configure.in, configure:
4064		explicitly test for struct sockaddr's "sa_len" member.
4065	source/alias.c:
4066		fix off-by-one malloc error.
4067
40684.4T
4069Mon Apr  3 17:43:02 EST 2000 - matthew green <mrg@eterna.com.au>
4070	Makefile.in, source/irc.c, source/ircaux.c, source/ircio.c,
4071	source/file.c:
4072		remove dated, unused and definately insecure PRIV_PORT code.
4073	include/irc_std.h:
4074		introduce my_str{len,cpy,ncpy}() macros that (char *)ifiy
4075		the correct arguments, to avoid warnings from u_char *'s.
4076	source/alias.c:
4077		use my_str{len,cpy,ncpy}().
4078	include/config.h.dist, include/config.h.lynx:
4079		enable EIGHT_BIT_CHARACTERS by default.
4080
4081Sat Apr  1 18:10:33 EST 2000 - matthew green <mrg@eterna.com.au>
4082	include/count.l, include/hook.h, include/hook.h.proto, include/keys.h,
4083	include/keys.h.proto, include/vars.h, include/vars.h.proto:
4084		make count preserve $Id strings that are in .proto files, and
4085		add additional $Id strings for the generated .h files.
4086
4087Sat Apr  1 17:31:35 EST 2000 - matthew green <mrg@eterna.com.au>
4088	configure, configure.in, include/alias.h, include/crypt.h,
4089	include/ctcp.h, include/dcc.h, include/edit.h, include/exec.h,
4090	include/flood.h, include/funny.h, include/help.h, include/history.h,
4091	include/hold.h, include/hook.h, include/hook.h.proto, include/icb.h,
4092	include/if.h, include/ignore.h, include/input.h, include/irc.h,
4093	include/ircaux.h, include/ircterm.h, include/keys.h,
4094	include/keys.h.proto, include/lastlog.h, include/list.h, include/mail.h,
4095	include/menu.h, include/names.h, include/notify.h, include/numbers.h,
4096	include/output.h, include/parse.h, include/queue.h, include/screen.h,
4097	include/server.h, include/stack.h, include/status.h, include/struct.h,
4098	include/translat.h, include/vars.h, include/vars.h.proto,
4099	include/whois.h, include/window.h, source/alias.c, source/cast.c,
4100	source/crypt.c, source/ctcp.c, source/dcc.c, source/edit.c,
4101	source/empty_metakeys.inc, source/exec.c, source/flood.c,
4102	source/funny.c, source/help.c, source/history.c, source/hold.c,
4103	source/hook.c, source/icb.c, source/if.c, source/ignore.c,
4104	source/input.c, source/irc.c, source/ircaux.c, source/keys.c,
4105	source/lastlog.c, source/list.c, source/mail.c, source/menu.c,
4106	source/names.c, source/notice.c, source/notify.c, source/numbers.c,
4107	source/output.c, source/parse.c, source/queue.c, source/reg.c,
4108	source/screen.c, source/sed.c, source/server.c, source/stack.c,
4109	source/status.c, source/term.c, source/translat.c, source/vars.c,
4110	source/whois.c, source/window.c:
4111		convert from char to u_char for everything that can be.
4112
4113Fri Mar 31 23:49:42 EST 2000 - matthew green <mrg@eterna.com.au>
4114	Makefile.in:
4115		remove $DESTDIR from exec_prefix; it is already in the prefix.
4116
4117Tue Mar 28 10:31:13 EST 2000 - glen mccready <gkm@pobox.com>
4118	source/server.c:
4119		clean up server handling a bit.  fix false "Connected" message.
4120		should consider removing server_list[].connected in favor of a
4121		flag and add more status tracking flags.
4122
4123Sun Mar 26 02:37:03 EST 2000 - matthew green <mrg@eterna.com.au>
4124	source/screen.c:
4125		when scrolling backwards, check how many lines in the
4126		lastlog we have and then make sure we don't scroll
4127		beyond that.  fixes PR#430.  rewrite a recent fix to
4128		part of the split_up_window() function.
4129	source/server.c:
4130		in /server -delete, call close_server().
4131
4132Thu Mar 23 17:13:51 EST 2000 - matthew green <mrg@eterna.com.au>
4133	help/exec, help/set/exec_protection:
4134		add a reference to /set exec_protection in /help exec, noted
4135		by matthewa@materna.nl in PR#431.
4136	script/columns, script/times:
4137		add an evil hack to let these two be loaded together.  fixes
4138		PR#425 from Hubert Feyrer <feyrer@rfhs8012.fh-regensburg.de>.
4139
4140Tue Mar 21 11:08:26 EST 2000 - matthew green <mrg@eterna.com.au>
4141	configure.in, configure:
4142		a fix IPv4-only nodes that have getaddrinfo(), from
4143		Jun-ichiro itojun Hagino <itojun@iijlab.net>.
4144
41454.4S
4146Fri Mar 17 15:07:25 EST 2000 - matthew green <mrg@eterna.com.au>
4147	source/edit.c:
4148		properly fix the terrible bug in send_text().
4149
41504.4R
4151Fri Mar 17 02:19:20 EST 2000 - matthew green <mrg@eterna.com.au>
4152	source/edit.c:
4153		fix a terrible bug in send_text().
4154
41554.4Q
4156Thu Mar 16 23:58:40 EST 2000 - matthew green <mrg@eterna.com.au>
4157	source/ctcp.c:
4158		avoid using %ld as an argument to send_ctcp_reply().
4159
4160Thu Mar 16 22:55:12 EST 2000 - matthew green <mrg@eterna.com.au>
4161	configure, configure.in, Makefile.in:
4162		use a find & chmod chain to ensure the permissions
4163		of the installed help files is correct.
4164
4165Sun Mar  5 08:04:22 EET 2000 - Joel Yliluoma <bisqwit@iki.fi>
4166	configure, configure.in, acconfig.h:
4167		add $crypt() function.
4168		source/screen.c:
4169		fixed the mirc colour support again.
4170		(something had broken it)
4171	help/cat:
4172		add help file for this.
4173
4174Wed Feb 23 00:06:05 EET 2000 - Joel Yliluoma <bisqwit@iki.fi>
4175	source/alias.c, help/alias/functions:
4176		added crypt() support and help files.
4177
4178Thu Mar 16 12:36:40 EST 2000 - matthew green <mrg@eterna.com.au>
4179	source/edit.c:
4180		deal with /join, /invite, /who, /nick and /topic again.
4181
4182Wed Mar 15 14:18:30 EST 2000 - glen mccready <gkm@pobox.com>
4183	include/ircterm.h, source/term.c, source/irc.c, source/screen.c:
4184		streamline term.c fp handling.  use term_flush()
4185		where appropriate rather than calling fflush()
4186		directly.  there's a div by zero work around, too.
4187
41884.4P
4189Wed Mar 15 17:51:07 EST 2000 - matthew green <mrg@eterna.com.au>
4190	source/screen.c, source/irc.c, include/irc.h:
4191		in add_to_window(), don't add something to the end
4192		of a string, but allocate our own buffer to do this,
4193		and then add the ALL_OFF char.  eliminte the char []
4194		`global_all_off'.  fixes off-by-one errors caused
4195		by vasprintf() support for output.c.
4196	source/irc.c:
4197		fix PR#428: /set -irchost dumps core.
4198
4199Sat Mar 11 17:31:43 EST 2000 - matthew green <mrg@eterna.com.au>
4200	help/encrypt, source/crypt.c:
4201		unless the new -showkeys option is specified to the
4202		/encrypt command, do not show the keys for each user.
4203
4204Sat Mar 11 15:33:06 EST 2000 - matthew green <mrg@eterna.com.au>
4205	help/set/lastlog_level, include/lastlog.h, script/screen,
4206	source/lastlog.c, source/output.c:
4207		add lastlog level HELP, that is where all HELP
4208		messages are sent to.
4209
4210Fri Mar  3 20:38:59 EST 2000 - matthew green <mrg@eterna.com.au>
4211	include/status.h source/alias.c source/irc.c source/status.c:
4212		change update_clock() to take a buffer and a length to
4213		write a string to, rather than using a static buffer.
4214	source/screen.c:
4215		in rite(), do not increase new_scrolled_lines if we
4216		are redrawing.
4217	source/screen.c:
4218		in split_up_lines(), if we get a string that seems to
4219		be empty, don't pass it to malloc_strcpy() because we
4220		don't have a handle on the owner of the string.  in
4221		this case, we copy " " and then free it later.
4222
4223Fri Mar  3 12:24:59 EST 2000 - matthew green <mrg@eterna.com.au>
4224	configure, configure.in, include/crypt.h, include/defs.h.in,
4225	include/edit.h, include/irc.h, include/ircterm.h, source/alias.c,
4226	source/cast.c, source/crypt.c, source/edit.c, source/icb.c,
4227	source/irc.c, source/ircsig.c, source/log.c, source/notify.c,
4228	source/parse.c, source/screen.c, source/sed.c, source/status.c:
4229		remove solaris warnings.  part of this changed meant going
4230		to more unsigned char uses in alias.c.  ideally, we should
4231		use unsigned chars everywhere but calling stdlib functions
4232		will cause warnings.
4233	source/help.c:
4234		manage the opening and closing of FILE *help_fp in a much
4235		saner way to stop it ever being used in an unstable fashion.
4236
4237Fri Mar  3 02:29:06 EST 2000 - matthew green <mrg@eterna.com.au>
4238	help/bind/meta5_character, help/bind/meta6_character, help/bind/keys,
4239	help/bind/meta7_character, help/bind/meta8_character, include/edit.h,
4240	include/keys.h, include/keys.h.proto, include/struct.h, source/edit.c,
4241	source/empty_metakeys.inc, source/keys.c, source/screen.c:
4242		add meta[5678]_character /bindings.  we split the
4243		initialiser for meta[35678] out into empty_makekeys.inc
4244		because we use it 5 times.
4245
4246Fri Mar  3 00:59:01 EST 2000 - matthew green <mrg@eterna.com.au>
4247	source/screen.c:
4248		in redraw_window(), if we have scrolled lines, lets
4249		redraw all of the displayed lines, rather than skipping
4250		the last line.  in scrollback_end(), reset
4251		new_scrolled_lines to 0 as well.  in scrollback_start(),
4252		call a series of next_line_back() calls to find out how
4253		many (output) lines there are in the last log (as opposed
4254		to individual lastlog entries, which may span several
4255		output lines), so that scrollback_start() can actually
4256		work correctly now.
4257
42584.4O
4259Thu Mar  2 23:15:18 EST 2000 - matthew green <mrg@eterna.com.au>
4260	source/debug.c:
4261		fflush(stderr); at the end of debug() -- just to make
4262		sure debug messages get written out in a timely fashion.
4263	include/screen.h, source/screen.c:
4264		make redraw_window() static to screen.c; it was the only
4265		user anyway.
4266	source/screen.c:
4267		modify redraw_window() to take an additional "backscroll"
4268		parameter and pass true in this parameter when calling the
4269		function from back/forward scrolling functions, and false
4270		elsewhere.  remove the "int skip" parameter from the
4271		next_line_back() function.  it causes the function to skip
4272		lines for what appears to be no good reason, and this is,
4273		in addition to the above change to redraw_window() have
4274		cause the majority of scroll bugs.
4275
4276Thu Mar  2 00:17:18 EST 2000 - matthew green <mrg@eterna.com.au>
4277	source/server.c:
4278		add support for [server]:port addreses, including
4279		[IP:v6] style ones, so that one can use IPv6 addresses
4280		as well as ports, nicks, etc.
4281	include/irc.h, include/vars.h.proto, include/vars.h, source/irc.c,
4282	source/vars.c:
4283		implement /set irchost; from <tristan@ethereal.net>
4284	help/set/irchost:
4285		add documentation for above.
4286	include/config.h.dist, include/config.h.lynx, include/vars.h,
4287	include/vars.h.proto, source/numbers.c, source/vars.c,
4288	help/set/no_ask_nickname:
4289		implement /set no_ask_password on; stops reset_nickname()
4290		in numbers.c from prompting the user for a password, so
4291		that a script can take care of the error instead.
4292	include/output.h, include/status.h, source/irc.c,
4293	source/output.c, source/screen.c, source/status.c:
4294		convert all signal handlers (except for coredump()) to
4295		the `set a variable, return, and let someone else perform
4296		the task we want' style.  ie, don't be unsafe in signal
4297		handlers and call things like stdio and malloc!
4298	source/icb.c:
4299		handle many /ignore requests.
4300
4301Wed Mar  1 21:17:19 EST 2000 - matthew green <mrg@eterna.com.au>
4302	Makefile.in, configure, configure.in:
4303		ignore CVS dirs when installing things more
4304		carefully.  support `$DESTDIR' in Makefile.in
4305		(this from Arkadiusz Miskiewicz <misiek@pld.org.pl>),
4306		and use @libdir@ and @mandir@ rather than using
4307		${prefix}/foo for these.
4308	source/ircaux.c:
4309		use index(foo, ' '); over sindex(foo, " "); from
4310		Mark Mielke <mark@mielke.cc>.
4311	source/edit.c, help/exec.c:
4312		fix typos; from Mark Mielke <mark@mielke.cc>.
4313	source/status.c:
4314		remove the uses of the global "buffer" from status.c.
4315		inspired by a PR from Mark Mielke <mark@mielke.cc>
4316	source/edit.c, source/screen.c:
4317		make sure we translate everything, even in dumb mode,
4318		everywhere.  from: Alexander Trump <assa@assa.tlt.ru>.
4319	source/edit.c:
4320		fix /set auto_unmark_away variable; it has been broken
4321		for at least 5 years.  fixes PR#377.
4322	source/alias.c, help/alias/functions:
4323		implement wincols() and winrows() functions that return
4324		the number of columns and rows (respectively) in the
4325		current window, or -1.
4326	source/wserv.c, configure.in, configure, acconfig.h:
4327		fix AIX support.  mostly from Graovac
4328		<ddavid@lamar.ColoState.EDU>.
4329	source/server.c, source/window.c:
4330		server_itsname() return "<None>" for no server name.
4331	source/edit.c:
4332		yell() not say() when we don't load an executable file.
4333	script/2.8script:
4334		remove some damage.
4335	source/names.c:
4336		avoid adding channel "0" to the channel list. PR#277
4337	source/exec.c:
4338		/exec output is level crap by default; make it so.
4339	source/dcc.c:
4340		if a /dcc get fails because we couldn't create the
4341		local file, _don't_ delete the offer from our list!
4342	source/queue.c:
4343		for `/queue' when no queue commands have ever been
4344		run, we used to dump core from calling toupper("Top").
4345		call toupper() on the copied string rather than on
4346		the passed in string.h, and then copying.  PR#403
4347	source/names.c, include/names.h:
4348		add support for +c (colourless) and +R (registered
4349		users only) channel modes.  from jim efaw in PR#420.
4350	source/names.c:
4351		add support to properly join !channels.
4352	source/crypt.c:
4353		fix /encrypt -sed when cast support also enabled.
4354		from Jim Efaw <jimefaw@eggroll.com>.
4355
4356Tue Feb 29 19:52:50 EST 2000 - matthew green <mrg@eterna.com.au>
4357	acconfig.h, configure, configure.in, include/defs.h.in,
4358	source/output.c:
4359		add checks for vasprintf(3), vsnprintf(3) and
4360		snprintf(3) (the latter not used in the ircII
4361		yet?).  rework the screen output routines (yell(),
4362		say(), put_it() and help_put_it() to use vasprintf()
4363		if it exists, then fallback vsnprintf() and finally
4364		back to vsprintf() like the old code.  this should
4365		allow lines with extremely large output (such as
4366		many-kilobyte aliases) to be displayed correctly
4367		(vasprintf()) or at least truncated (vsnprintf())
4368		and not dumping core.
4369
4370Mon Feb 28 12:09:24 EST 2000 - matthew green <mrg@eterna.com.au>
4371	include/alias.h, source/alias.c, source/irc.c:
4372		malloc_str*() the space for char *command_line,
4373		rather than having a buffer in bss.
4374	include/ircaux.h, source/ircaux.c:
4375		add a malloc_strcat_ue() that unescapes backslashes
4376		(like strmcat_ue()).
4377	source/alias.c:
4378		modify expander_addition() and alias_special_char()
4379		to take a malloc() maintained buffer, rather than a
4380		BIG_BUFFER_SIZE one, by replacing str*() calls with
4381		malloc_str*() calls in many places.  remove a hack
4382		that would try to stop core dumps when this buffer
4383		became overflowed that now should never happen.
4384		modify alias_expand() to use the changed functions
4385		from above, including malloc_strcat_ue().  also,
4386		remove BIG_BUFFER_SIZE from the rest of alias.c:
4387		alias_currdir(), function_strip(), function_encode(),
4388		function_decode(), function_dcclist(),
4389		function_chatpeers(), function_chanusers(),
4390		note: function_pid(), function_ppid() and
4391		function_idle() all use the global "buffer" still.
4392	source/edit.c:
4393		remove a dependancy on BIG_BUFFER_SIZE in parse_line().
4394		note all the uses of BIG_BUFFER_SIZE and the global
4395		"buffer".  yes, it is time to get rid of the global
4396		buffer and the BIG_BUFFER_SIZE define.
4397
4398
4399Sun Feb 27 18:46:01 EST 2000 - matthew green <mrg@eterna.com.au>
4400	source/window.c, include/window.h:
4401		add a 'Win_Trav' that we use in window_traverse()
4402		now, as our status of where we are in traversal.
4403		note that we have to set:
4404			Win_Trav stuff;
4405			stuff.flag = 1;
4406		before calling window_traverse initially.
4407	include/vars.h.proto, include/vars.h, source/screen.c,
4408	source/vars.c, help/set/xterm_path:
4409		add /set xterm_path <path>
4410
4411Sun Feb 27 18:02:08 EST 2000 - matthew green <mrg@eterna.com.au>
4412	source/window.c:
4413		fix window_get_connected() to note the nick to use
4414		once a server is found, if the nick isn't already
4415		specified.  fixes problem with multiple server:port
4416		combinations with different nicks.
4417
44184.4N
4419Sun Feb 27 12:36:35 EST 2000 - matthew green <mrg@eterna.com.au>
4420	include/window.h, source/server.c, source/window.c:
4421		rename set_window_server() to window_set_server().
4422	source/window.c, source/server,c. source/notice.c,
4423	source/irc.c, source/numbers.c, include/server.h:
4424		retire WIN_OLDCONN flag.  this means we can revert
4425		get_connected() to take only one argument.  in
4426		window_set_server(), always transfer the channels
4427		to the new server if WIN_TRANSFER, because
4428		WIN_OLDCONN is now gone.
4429
4430Sat Feb 26 13:41:31 EST 2000 - matthew green <mrg@eterna.com.au>
4431	script/icb, source/edit.c:
4432		deal with /join, /invite, /who, /nick and /topic in
4433		the script.
4434	source/parse.c:
4435		give all static functions a `p_' prefix like about
4436		1/2 of them already have.
4437
4438Sun Feb 13 03:00:37 EST 2000 - matthew green <mrg@eterna.com.au>
4439	include/hook.h, include/hook.h.proto, source/hook.c,
4440	source/window.c, help/on/window_swap:
4441		add new hook WINDOW_SWAP that is triggered when ever
4442		a window is swapped.
4443	include/struct.h, source/edit.c, source/names.c, source/screen.c,
4444	source/window.c:
4445		revert /window bind to original behavior: property of
4446		a window, not a channel.
4447
4448Tue Feb  1 16:40:18 EST 2000 - matthew green <mrg@eterna.com.au>
4449	source/icb.c:
4450		deal with the fact that ICB groups can be renamed.
4451
4452Mon Jan 31 15:01:41 EST 2000 - matthew green <mrg@eterna.com.au>
4453	source/icb.c, source/edit.c:
4454		change icb_put_msg2() to honour window_dislay, and
4455		using this implement /whois for ICB mode (as
4456		"/m server whereis").
4457
44584.4M
4459Fri Jan  7 09:55:29 EST 2000 - matthew green <mrg@eterna.com.au>
4460	acconfig.h, configure, configure.in, include/defs.h.in,
4461	source/irc.c, source/ircaux.c, source/server.c:
4462		add IPv6 support from Arkadiusz Miskiewicz
4463		<misiek@misiek.eu.org> as given in PR#402.
4464	source/icb.c:
4465		make SHOW_CHANNEL_NAMES work on ICB.
4466
4467Tue Dec 21 02:38:00 EET 1999 - Joel Yliluoma <bisqwit@iki.fi>
4468	source/edit.c, help/cat:
4469		added /CAT command to easify avoiding security
4470		risks when otherwise /exec cat would be used.
4471		/CAT adds a line to specified file (to end).
4472
4473Sat Dec 18 22:32:18 EST 1999 - matthew green <mrg@eterna.com.au>
4474	help/icb:
4475		fix some typoes from <kleink@serpens.swb.de> in
4476		PR#395.
4477	Makefile.in:
4478		regenerate dependancies after adding ircflush.c
4479		to the list of them.  this fixes PR#396.
4480	configure.in:
4481		s/PREFIX/prefix/ so that it it works.
4482	ircbug.in:
4483		automatically determine how to suppress newlines,
4484		fixing PR#398.
4485	source/edit.c:
4486		re-set from_level correctly in my_echo; fixes PR#387,
4487		#399 and #412 (patch supplied in this one from Hans
4488		Hasselaar <hansh@ircnet.dk>).
4489
4490Thu Dec  9 21:42:41 EST 1999 - matthew green <mrg@eterna.com.au>
4491	script/default:
4492		new script that is a suggested default `.ircrc'
4493		for people to use.
4494	script/times:
4495		new script that adds times to msgs, dcc and channel
4496		traffic.
4497	script/otherstatus:
4498		new script to let you have a bold or underlined
4499		status bar.
4500	all the above are derived from parts of mrg's setup.
4501
4502Thu Dec  9 15:08:09 EST 1999 - matthew green <mrg@eterna.com.au>
4503	soruce/icb.c:
4504		one can now send long lines and have them broken
4505		up correctly.
4506
4507Sat Oct 23 06:10:21 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi>
4508	source/screen.c:
4509		fixed the mirc colour support, did not work correctly.
4510	help/set/make_notice_msg:
4511		described MAKE_NOTICE_MSG
4512
4513Wed Oct 20 21:11:56 EST 1999 - matthew green <mrg@eterna.com.au>
4514	help/load/screen, help/load/tabkey, scripts/tabkey,
4515	scripts/screen:
4516		move default ^X^X binding to `screen' script, and
4517		make it swap scripts, like screen(1) does.
4518
4519Wed Sep  8 03:07:24 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi>
4520        source/parse.c, source/vars.c, include/vars.h.proto
4521                added boolean set MAKE_NOTICE_MSG
4522
4523Sat Sep  4 19:03:22 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi>
4524        help/alias/functions
4525                described the hasvoice() and dcclist() functions.
4526                described the chatpeers() function.
4527        source/alias.c
4528                added chatpeers() function.
4529
4530Sun Jul 25 05:50:15 EEST 1999 - Joel Yliluoma <bisqwit@iki.fi>
4531        source/alias.c, source/names.c, source/irc.c
4532                added .ircquick file support.
4533                added hasvoice() and dcclist() functions.
4534
45354.4L
4536Mon Aug 23 21:43:51 EST 1999 - matthew green <mrg@eterna.com.au>
4537	configure.in, configure, source/ircaux.c, include/config.h.dist,
4538	include/config.h.lynx, include/defs.h.in:
4539		fix up ZCAT/ZSUFFIX auto-finding support to work and
4540		be used.
4541	Makefile.in:
4542		set help & translation paths properly when building
4543		both help.c and translation.c.
4544
4545Mon Aug 23 19:52:26 EST 1999 - matthew green <mrg@eterna.com.au>
4546	configure.in, configure, acconfig.h, include/defs.h.in:
4547		add SOCKS version 5 support (from agc@netbsd.org).
4548	Makefile.in:
4549		fix some more $(srcdir) lossage with autoconf
4550		and autoheader runs.
4551	source/server.c:
4552		make sure varaiable is not uninitialised (from
4553		agc@netbsd.org).
4554
4555Mon Aug 23 12:30:29 EST 1999 - matthew green <mrg@eterna.com.au>
4556	configure.in, configure, Makefile.in, include/Makefile.in,
4557	include/config.h, source/Makefile.in:
4558		add support for building outside of the source
4559		tree, largely from glen.  config.h.dist is copied
4560		to the build tree now.  neat.
4561
45624.4K
4563Sun Aug 22 04:07:03 EST 1999 - matthew green <mrg@eterna.com.au>
4564	source/irc.c:
4565		fix usage string to be a real C string again.
4566	source/icb.c:
4567		fix an off by one error in long msg handling.
4568
4569Sun Aug 22 01:32:35 EST 1999 - matthew green <mrg@eterna.com.au>
4570	INSTALL, configure, configure.in, include/irc.h, source/help.c,
4571	source/mail.c, source/wserv.c:
4572		add patches from Gerben_Wierda@RnA.nl to fix NeXT
4573		support.
4574	source/window.c:
4575		apply PR#378 from forcer: WINDOW KILL_OTHERS crashes
4576		with more than 2 windows.
4577	source/ircaux.c:
4578		do not copy a string onto itself.  it fails.  fixes
4579		several PRs: 379, 380, 381, 385, 386, 388 and 390.
4580	include/ircterm.h
4581		FreeBSD uses int/int for tputs function too.  maybe
4582		ncurses does?
4583	acconfig.h, configure, configure.in, include/defs.h.in:
4584		apply patch from Tod McQuillin <devin@lm.com> in
4585		PR#382 to fake a `ssize_t' for older systems.
4586	source/window.c:
4587		deal with CHANNEL_NAME_WIDTH == 0.  fixes PR#384.
4588	configure, configure.in:
4589		--datadir is now used and sets where $IRCLIB exists
4590		(as ${datadir}/irc).  fixes PR#383.
4591
4592Wed Jul 21 09:48:45 EST 1999 - matthew green <mrg@eterna.com.au>
4593	source/edit.c, help/brick:
4594		add `/brick channel nick' command.
4595
45964.4J
4597Thu Jul 15 12:18:44 EST 1999 - matthew green <mrg@eterna.com.au>
4598	help/load/icb, script/icb:
4599		add `/register'
4600	include/config.h*, include/server.h, include/icb.h,
4601	source/irc.c, source/server.c, doc/ircII.1:
4602		add -P switch to set deafult ICB port.  have a
4603		define `ICB_PORT' (that is 7326) for the default.
4604	source/cast.c, source/dcc.c, include/irc_std.h,
4605	include/cast_sbox.h:
4606		replace 'cast_t' with 'castkey' and 'u_32int_t'
4607		with 'u_32int' as _t is not my name space.
4608	source/cast.c:
4609		fix several bugs noted by Michael Katzenmayer
4610		<katzenmayer@erfnet.com>:  castkey had u_char instead
4611		of u_int, and some packaging problems introduced since
4612		the CBC changes.
4613
4614Thu Jun 17 16:38:34 EST 1999 - matthew green <mrg@eterna.com.au>
4615	source/alias.c, help/alias/functions:
4616		new $SERVERTYPE() function that returns either
4617		`IRC2.X' (X between 5 and 11 so far), or `ICB'.
4618		idea from tristan@ethereal.net.
4619
46204.4I
4621Sat May 22 00:00:11 EST 1999 - matthew green <mrg@eterna.com.au>
4622	include/crypt.h:
4623		rename CAST128ED to CAST128ED-CBC so that newer
4624		implementations will fail to operate with prior
4625		versions, rather than attempt to work and lose.
4626
4627Fri May 21 18:29:15 EST 1999 - matthew green <mrg@eterna.com.au>
4628	configure, configure.in, acconfig.h, include/defs.h.in,
4629	source/crypt.c:
4630		use /dev/urandom if possible.  avoid using the
4631		implementation namespace a bit...
4632	source/wserv.c:
4633		fix this for unix domain 4.4BSD machines.
4634	source/term.c:
4635		ensure we catch all ESC aliases...
4636	source/parse.c:
4637		let older /on join's work again.
4638	source/icb.c:
4639		make sure we properly disconnect a server.  for
4640		public and private messages, be sure not to overflow
4641		the 255 byte ICB limit.
4642	source/exec.c:
4643		for /exec's that have output elsewhere, make sure
4644		that they go to the right server.
4645	source/cast.c:
4646		change CAST-128 implmentation from EBC mode to CBC
4647		mode.  this is incompatible with previous versions
4648		but as EBC is less secure, too bad.
4649
4650Mon Mar  8 14:13:54 EST 1999 - matthew green <mrg@eterna.com.au>
4651	configure, configure.in, acconfig.h, include/defs.h.in,
4652	source/cast.c, source/crypt.c:
4653		look for and, if we find it, use /dev/random as
4654		a source of randomness for crypto code.
4655	source/icb.c, source/edit.c, include/icb.h:
4656		add a new icb_put_funny_stuff() that handles doing
4657		irc-like /names and /list.
4658	script/global:
4659		load tabkey & icb by default.
4660
4661Fri Mar  5 15:24:11 EST 1999 - matthew green <mrg@eterna.com.au>
4662	include/server.h, script/icb, source/edit.c, source/icb.c,
4663	source/irc.c, source/parse.c, source/server.c,
4664	source/whois.c source/window.c:
4665		add an extra argument to the parse_server_info()
4666		stuff, that returns anything beyond the nick.
4667		this is used by the ICB code to set default group
4668		and mode.  you can specify that a server is ICB
4669		in the IRCSERVER and related lists by prepending
4670		it with IRC/.  eg set IRCSERVER to:
4671		`ICB/icb.network.net:7326::mynick:channel'.
4672
46734.4H
4674Thu Mar  4 19:42:31 EST 1999 - matthew green <mrg@eterna.com.au>
4675	include/server.h, source/numbers.c, source/server.c,
4676	source/window.c:
4677		connect_to_server() and find_in_server_list() both
4678		take a "nick" argument now.  server lists are unique
4679		now only if the nickname is the same.
4680	source/icb.c:
4681		parse status messages for signon/signoff/arrive/depart
4682		and convert them to join/leave hooks.
4683	source/screen.c:
4684		deal with no current_screen.  helps with output
4685		functions run during client startup not dumping core.
4686		update fwrite() tests to be consistent.
4687
4688Thu Mar  4 18:54:08 EST 1999 - matthew green <mrg@eterna.com.au>
4689	include/hook.h, include/hook.h.proto, source/edit.c,
4690	source/hook.c, source/icb.c, source/irc.c, source/server.c:
4691		add hooks for ICB stuff.  implement two new hooks
4692		for ICB only stuff: ICB_STATUS and ICB_ERROR, for
4693		icb status and error messages.  all others go via
4694		server_notice, msg, public, send_msg, send_public
4695		which exist.  more to come.
4696
4697Thu Mar  4 17:56:26 EST 1999 - matthew green <mrg@eterna.com.au>
4698	source/irc.c, source/icb.c, source/server.c,
4699	include/server.h:
4700		fix -irc/-icb args to skip the rc/cb bit.  add
4701		a icb group concept, separate to the irc channels.
4702
4703Thu Mar  4 14:24:25 EST 1999 - matthew green <mrg@eterna.com.au>
4704	include/irc.h, include/server.h, source/irc.c,
4705	source/server.c, source/window.c:
4706		if run as "icb", default to icb.  add -irc/-icb
4707		switch to the command line, and -irc to both
4708		/window server and /server.
4709
4710Thu Mar  4 13:10:41 EST 1999 - matthew green <mrg@eterna.com.au>
4711	source/ctcp.c:
4712		dcc actions to the right window. from forcer.
4713	configure, configure.in:
4714		cast recv() address argument to (struct sockaddr *)
4715		to let it compile, and let the nonblock test have a
4716		chance at working.  from forcer.
4717	source/numbers.c:
4718		print a channel not available message even if we
4719		don't understand it properly, so that the user gets
4720		the message anyway.
4721	contrib/README, (removed contrib/colour and contrib/colour.orig),
4722	include/config.h*, include/irc.h include/vars.h.proto,
4723	include/vars.h, source/screen.c, source/vars.c:
4724		add a /set colour to mimic mIRC-style colours.  it
4725		does not use termcap colour stuff, as no one uses
4726		those anyway.  at least on IRC.  this is sarayans
4727		original patch as maintained by forcer, and what
4728		was originally in the contrib directory.
4729	source/dcc.c:
4730		print ip:port for dcc send.  from forcer.
4731
4732Wed Mar  3 18:06:17 EST 1999 - matthew green <mrg@eterna.com.au>
4733	source/newio.c, include/newio.h:
4734		add a "dgets_separator" that lets you change the
4735		"end of line" charater. this is useful for ICB
4736		where it is a nul, not a newline.
4737	help/icb, include/icb.h, include/server.h, script/icb,
4738	source/Makefile.in, source/edit.c, source/icb.c, source/irc.c,
4739	source/notify.c, source/server.c, source/window.c:
4740		add elementary ICB support.  /server -icb host port
4741		should do the right thing, and let you join channels,
4742		see messages, send then.  a new /icb command lets you
4743		have access to all the icb commands, and most IRC
4744		commands that make sense in this context (/nick,
4745		/topic, /version, /msg, /join, etc) have been modified
4746		to know the are talking to an ICB server and pass the
4747		users request off to the icb code to handle.  this
4748		uses the new dgets_separator() for ICB server
4749		connection processing.
4750		this is missing hooks and stuff, but it should be at
4751		least usable for now.  i expect to add hooks and stuff
4752		shortly.  the script adds aliases for icb commands
4753		(/group, /boot, /pass, etc.), and the help file is
4754		fairly useless...
4755
47564.4G
4757Sun Feb 28 13:37:48 EST 1999 - matthew green <mrg@eterna.com.au>
4758	source/screen.c:
4759		use ssize_t for the length, and cast it to size_t
4760		where needed, to avoid it overflowing.
4761	various:
4762		use __SVR4 as the canonical SVR4 preprocessor
4763		define, as it is.
4764	source/hook.c, include/hook.h.proto, include/hook.h, help/on/join:
4765		/on join takes 3 args.
4766	configure.in, acconfig.h, source/dcc.c:
4767		add writev & <sys/uio.h> check and use it if possible.
4768	doc/ircII.1:
4769		document the -b flag.
4770	source/server.c:
4771		call the right parse_server() routine in all cases.
4772	source/ctcp.c:
4773		be saner about PARANOID.
4774	source/dcc.c, source/ctcp.c, source/crypt.c, source/cast.c,
4775	source/edit.c, include/crypt.h:
4776		convert to a "crypt_key" type for crypto keys, rather
4777		than passing around char *'s.  this lets the key be
4778		opaque and let the crypto engine hide in here.
4779	source/ctcp.c, source/crypt.c, source/cast.c source/sed.c,
4780	include/crypt.h, include/ctcp.h, help/encrypt:
4781		split SED code into sed.c.  allow more than one type
4782		of crypto system to be compiled in.  currently there
4783		is only support for SED and CAST-128.
4784
47854.4F
4786Tue Feb  9 21:30:37 EST 1999 - matthew green <mrg@eterna.com.au>
4787	source/crypt.c, source/ctcp.c, source/dcc.c:
4788		various bug fixes to crypto code.
4789
4790Tue Feb 02 03:45:58 est 1999 - glen mccready <glen@qnx.com>
4791	source/exec.c, help/exec:
4792		add /exec -target.
4793
4794Sun Jan 03 20:19:54 est 1999 - glen mccready <glen@qnx.com>
4795	source/alias.c:
4796		more functions, winsrvr() and winsrvrgrp() to return
4797		the windows server and server_group.
4798	source/window.c:
4799		make "window query" work like "query".
4800
4801Sun Jan 03 17:21:02 est 1999 - glen mccready <glen@qnx.com>
4802	source/alias.c:
4803		add a couple of useful functions.  one, winvis(), to
4804		tell you if a window is visible.  another, querynick(),
4805		to tell you what nick, if any, a window is queried to.
4806
4807Sun Jan 03 12:42:44 est 1999 - glen mccready <glen@qnx.com>
4808	source/window.c:
4809		allow "window channel #chan,key" to work.
4810
48114.4E
4812Sun Nov  8 16:23:19 EST 1998 - matthew green <mrg@eterna.com.au>
4813	source/cast.c:
4814		be defensive about putting the final nul back in
4815		to the string: it can never be >7 as the blocksize
4816		is 8...
4817	source/ctcp.c:
4818		quote ':' with a standard quote character in
4819		ctcp_quote_it() as do_ctcp() treats : specially (if
4820		it is the first char of a string).  the avoids
4821		accidentally losing the first character of a string.
4822
4823Fri Nov  6 19:33:31 EST 1998 - matthew green <mrg@eterna.com.au>
4824	acconfig.h, configure, configure.in, include/alias.h,
4825	include/ctcp.h, include/dcc.h, include/defs.h.in, include/edit.h,
4826	include/hold.h, include/hook.h, include/if.h, include/input.h,
4827	include/irc.h, include/irc_std.h, include/ircaux.h,
4828	include/ircterm.h, include/keys.h, include/keys.h.proto,
4829	include/menu.h, include/names.h, include/output.h,
4830	include/screen.h, include/server.h, include/translat.h,
4831	include/vars.h, include/window.h, source/alias.c, source/cast.c,
4832	source/crypt.c, source/ctcp.c, source/dcc.c, source/debug.c,
4833	source/edit.c, source/exec.c, source/file.c, source/flood.c,
4834	source/funny.c, source/help.c, source/history.c, source/hold.c,
4835	source/hook.c, source/if.c, source/ignore.c, source/input.c,
4836	source/irc.c, source/ircaux.c, source/ircflush.c, source/ircio.c,
4837	source/ircsig.c, source/keys.c, source/lastlog.c, source/list.c,
4838	source/log.c, source/mail.c, source/menu.c, source/names.c,
4839	source/newio.c, source/notice.c, source/notify.c,
4840	source/numbers.c, source/output.c, source/parse.c, source/queue.c,
4841	source/reg.c, source/scandir.c, source/screen.c, source/server.c,
4842	source/stack.c, source/status.c, source/term.c, source/translat.c,
4843	source/vars.c, source/whois.c, source/window.c, source/wserv.c:
4844		make (almost) compile with quite anal gcc flags under
4845		NetBSD 1.3H, quietly.  this adds support for finding
4846		a locally delcared "errno", and also removes a bunch of
4847		the old STDC crap with passing char's to functions.
4848		also fixed a few bugs that were found!
4849
48504.4D
4851Fri Nov  6 02:38:34 EST 1998 - matthew green <mrg@eterna.com.au>
4852	source/dcc.c:
4853		add untested code for using writev if available.
4854		also, fix dcc chat encryption.
4855	source/irc.c, source/notice.c, source/parse.c, source/whois.c:
4856		clean up "int sed;" processing.
4857
4858Wed Oct 28 12:11:10 EST 1998 - matthew green <mrg@eterna.com.au>
4859	source/dcc.c, source/flood.c, source/irc.c, source/ircaux.c,
4860	source/numbers.c, source/parse.c, source/server.c,
4861	source/window.c, include/irc.h:
4862		remove NICKNAME_LEN. make nicks dynamically allocated.
4863		this is so ircII works on blundernet.
4864	source/dcc.c:
4865		fix some problems with encrypted dcc chat.  still not
4866		totally working...
4867
48684.4C
4869Sun Sep 27 12:18:08 EST 1998 - matthew green <mrg@eterna.com.au>
4870	source/screen.c:
4871		fix flash-style attacks, by checking for characters
4872		0-32 with the high-bit set (128->160) and performing
4873		the same alternation on those.
4874	contrib/README, contrib/colour, contrib/colour.orig:
4875		add the new colour patch from PR#332, moving the old
4876		one to colour.orig.  from forcer.
4877	source/alias.c:
4878		use the current server for $A and $N expansion, not
4879		the current window.  from flier@globecom.netin pr 300.
4880
4881Sun Sep 27 02:28:08 EST 1998 - matthew green <mrg@eterna.com.au>
4882	translation/POLISH, translation/POLISH_NOPL:
4883		fixed polish translation tables, from Piotr Kucharski
4884		<chopin@sgh.waw.pl> in pr#344.
4885	source/edit.c, include/edit.h:
4886		make /timer server-aware.  from flier in pr#295.
4887
4888Sat Sep 26 12:36:02 EST 1998 - matthew green <mrg@eterna.com.au>
4889	source/alias.c:
4890		fix $rindex(), using patch in pr335 from Tristan Horn
4891		<tristan@ethereal.net>.
4892	source/numbers.c:
4893		if we get end of motd, and we haven't seen a 002 or
4894		version notice, fake one up...
4895
4896Sat Sep 26 03:58:30 EST 1998 - matthew green <mrg@eterna.com.au>
4897	source/server.c, source/window.c, source/numbers.c,
4898	source/help.c, source/dcc.c:
4899		change {save,restore}_message_from() into a queue so
4900		that now that we use them for every message_from(),
4901		info is not by too save_ callers before a restore_.
4902		fix some of the callers of these functions to work
4903		properly in the presence of a queue.
4904
4905Wed Sep 23 00:51:22 EST 1998 - matthew green <mrg@eterna.com.au>
4906	source/notice.c:
4907		allow server notices to see the 1st parameter as it
4908		comes from the server, as it may be a channel.  from
4909		galibert@iria.mines.u-nancy.fr (Olivier Galibert) in
4910		pr#239.
4911	script/2.9script:
4912		deal with PR#217 sanely now we have the above.
4913	configure, configure.in:
4914		check for gcc on QNX (from glen).
4915	source/numbers.c:
4916		deal with number 405. fixes pr#336.
4917	source/alias.c:
4918		fix overflow in eval echo [3232235777/255].
4919	configure, configure.in: source/exec.c:
4920		don't go past the end of the signals array.
4921	source/log.c:
4922		fix core dump through nulref from flier in pr#334.
4923
4924Tue Sep 22 20:38:16 EST 1998 - matthew green <mrg@eterna.com.au>
4925	source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c,
4926	source/funny.c, source/help.c, source/lastlog.c, source/mail.c,
4927	source/names.c, source/notice.c, source/notify.c, source/numbers.c,
4928	source/parse.c, source/server.c, source/whois.c, source/window.c:
4929		rework message_from() usage:  now we use the two handy
4930		functions {save,restore}_message_from() a lot throughout
4931		the tree (when using message_from()).  this ensures that
4932		the from level/message level/from who/etc are all set
4933		correctly at all times.  also fix a few bugs here.
4934		/notify, /help, ctcp messages and several other systems
4935		were not properly restoring or setting the levels.  this,
4936		i believe, is the cause of random messages going to the
4937		wrong place, extremely rarely.  i belive i have fixed
4938		all of these problems now, and perhaps not broken anything.
4939		also fix temporary setting of from_server that did not
4940		restore the previous value.
4941	source/alias.c:
4942		avoid using from_server or parsing_server_index as an index
4943		if it is < 0.
4944
4945Wed Sep 16 11:04:45 EST 1998 - matthew green <mrg@eterna.com.au>
4946	source/history.c:
4947		create the .irchist file mode 600.
4948	include/names.h, include/server.h, source/funny.c,
4949	source/names.c, source/parse.c, source/status.c:
4950		support irc 2.10 modes, from <kalt@stealth.net>.
4951
49524.4B
4953Tue Sep  8 00:43:18 EST 1998 - matthew green <mrg@eterna.com.au>
4954	INSTALL, Makefile.in, easyinst:
4955		remove easyinst, document --with[out]-cast.
4956
4957Mon Sep  7 18:33:01 EST 1998 - matthew green <mrg@eterna.com.au>
4958	source/irc.v, doc/VERSIONS:
4959		bump version to 4.4B, due to the CAST-128 support.
4960	configure, configure.in:
4961		change --with-cast to support `=no', and also if we
4962		find source/cast.c, enable cast support.  fix alignment
4963		of some strings for --with-cast and --with-paranoid.
4964
4965Mon Sep  7 15:11:57 EST 1998 - matthew green <mrg@eterna.com.au>
4966	source/cast.c, source/crypt.c, source/ctcp.c, include/crypt.h,
4967	include/cast_sbox.h, acconfig, configure configure.in:
4968		add a --with-cast switch to configure, to enable built-in
4969		CAST-128 encryption support, rather than the old broken
4970		crypt.  requires cast.c and cast_sbox.h that will *not*
4971		be distributed with ircII by default.
4972
4973Sat Sep  5 21:39:36 EST 1998 - matthew green <mrg@eterna.com.au>
4974	source/crypt.c, help/encrypt, help/set/old_encrypt_program,
4975	help/set/encrypt_program:
4976		change encrypt_program to write key as first line,
4977		rather than insecure cmd line argument.  add a new
4978		`old_encrypt_program' (default off) variable to use
4979		the old API.  XXX the exec code here has lots of
4980		syscalls with no return values checked XXX.
4981
4982Tue Jun  2 18:48:39 EST 1998 - matthew green <mrg@eterna.com.au>
4983	source/queue.c:
4984		fix core dumps.  pr#298.
4985	doc/ircII.1:
4986		document the "global" script.  pr#315.
4987
4988Tue Jun  2 18:13:09 EST 1998 - matthew green <mrg@eterna.com.au>
4989	help/window/bind, help/window/unbind:
4990		new help files.
4991	script/nocolour:
4992		stop mIRC colour crap.
4993	source/server.c:
4994		match server name correctly.  noted in pr#301.
4995	source/dcc.c:
4996		print ip/port in dcc requests.  per pr#325.
4997	source/crypt.c:
4998		call setgid() before setuid().  call wait() after exec().
4999		there are still MANY system calls with unchecked return
5000		values here but at least it seems to work now.  at least
5001		with `/usr/games/caeser' as the encryption program, and 13
5002		as the key (rot13 :).
5003	configure.in, configure:
5004		AMS mail is ~/Mailbox as a directory, not a file.  this
5005		fixes problems with qmail installations.
5006
5007Tue Jun  2 16:11:05 EST 1998 - matthew green <mrg@eterna.com.au>
5008	source/names.c:
5009		initialise new->status, which fixes the "channel leave"
5010		bug, noted in several PR's (fix from 328).
5011	source/mail.c:
5012		use my_strnicmp().  from mark.
5013	configure, configure.in, acconfig.h, include/defs.h.in, source/ctcp.c:
5014		add a --with-paranoid switch which disables the "bad" parts of
5015		ctcp version/finger replies.
5016	source/ctcp.c, source/dcc.c, source/edit.c:
5017		allow dcc channels to have (only) ctcp queries.  involved some
5018		interface changes to send_ctcp() and related functions.  for now,
5019		no replies are generated -- there is no privmsg/notice in a dcc
5020		chat connection.
5021	source/ctcp.c:
5022		ensure ctcp functions that return data return it in a malloced
5023		string, and ensure that the caller cleans this up.  should fix
5024		several problems noted over the last several years.
5025	source/dcc.c, include/irc.h:
5026		avoid buffer overflows in dcc chat connections.  noted by forcer.
5027
5028Fri Jan 12 02:20:00 EST 1997 - glen mccready <glen@qnx.com>
5029	source/edit.c, source/exec.c, source/screen.c, source/server.c,
5030	source/status.c, source/ircio.c, source/ircflush.c, source/irc.c,
5031	source/wserv.c, source/names.c, source/dcc.c, source/scandir.c,
5032	source/help.c, include/scandir.h:
5033		clean up some warnings. prototype scandir. make sure
5034		notify_mark is prototyped where it's used.  fudge some
5035		qnx defaults further in configure.
5036	source/queue.c:
5037		fix segv (pr#292).
5038	source/vars.c:
5039		fix "/set logfile ~/blah".
5040	source/ircaux.c, source/alias.c, include/ircaux.h:
5041		add srindex() to compliment sindex().  used by $rindex().
5042	source/output.c:
5043		fix bug in end-of-string handling.
5044
5045Fri Jan  9 23:44:00 EST 1997 - glen mccready <glen@qnx.com>
5046	source/ctcp.c:
5047		fix missing toupper().
5048
50494.4
5050Sun Dec  7 13:25:24 EST 1997 - matthew green <mrg@eterna.com.au>
5051	source/screen.c:
5052		fix PR211 from krys:  make scrolling work a bit better.
5053
5054Thu Dec  4 11:25:13 EST 1997 - matthew green <mrg@eterna.com.au>
5055	source/edit.c:
5056		fix PR280:  don't set SERVERREQ for /msg as it breaks
5057		dcc chat and /disconnect-ed.
5058
5059Tue Nov 25 16:52:31 EST 1997 - matthew green <mrg@eterna.com.au>
5060	source/edit.c:
5061		hack:  fix pr272:  set lastlog/loglevel to CRAP for
5062		xecho -window.
5063	source/numbers.c:
5064		fix pr273:  numerics 471, 473, 474, 475 and 476 need
5065		to be caught my the client before hooking.  do so.
5066	source/notice.c:
5067		fix pr274 (i think, i can not test this):  if the server
5068		doesn't give a 'normal' 002 numeric, don't totally lose.
5069		pretend it's a 2.9 server and go from there.
5070	source/ctcp.c, source/edit.c:
5071		from flier in pr275:  don't free the return value of
5072		crypt_msg().
5073	source/lastlog.c:
5074		fix pr276:  free the malloced copy, and use strncmp().
5075
50762.9beta2
5077Mon Nov 10 15:06:55 EST 1997 - matthew green <mrg@eterna.com.au>
5078	source/names.c, source/names.h:
5079		cleanup mode string code.  fix bug while i'm here...
5080
50812.9beta1
5082Mon Nov 10 11:36:56 EST 1997 - matthew green <mrg@eterna.com.au>
5083	source/edit.c:
5084		giver user indication of SQUERY (idea from kalt).
5085	source/names.c:
5086		add modes a and q.  should parse server numeric for
5087		this info at connect time.  (from kalt) also, don't leak
5088		a channel (from flier).
5089	source/parse.c:
5090		if is_channel() is called with NULL, return 0  (from
5091		vps@unicorn.niimm.spb.su)
5092	source/window.c:
5093		make /window remove deal with ^foo as a nick (from flier).
5094	source/numbers.c:
5095		add a hook for numeric 437.
5096	source/irc.c, source/hook.c, source/notice.c, source/server.c:
5097		change get_connected() to take an oldconn parameter, that
5098		makes it set WIN_OLDCONN when moving channels.  update
5099		callers of this.
5100	script/dccchan, help/load/dccchan:
5101		add ian frechette's dccchan implementation.
5102
5103Thu Oct  9 00:09:42 EST 1997 - matthew green <mrg@eterna.com.au>
5104	source/vars.c, source/alias.c:
5105		send output of non-singual versions of /set, /assign
5106		and /alias to window level crap, like it used to do.
5107		eg, '/set foo' will go to crap, but '/set foo bar'
5108		will go to the current window.
5109
5110Thu Sep  4 13:45:03 EST 1997 - matthew green <mrg@eterna.com.au>
5111	source/edit.c:
5112		use send_2comm() for squery.
5113	help/squery, help/servlist:
5114		document these new commands.
5115	README:
5116		duh! update my address to eterna, not mame.
5117	INSTALL:
5118		make a note about the fuckage that happens with
5119		BIND 8 being installed into /usr/local.
5120
51212.9alpha8
5122Sun Aug 31 15:21:53 EST 1997 - matthew green <mrg@eterna.com.au>
5123	script/2.9script, help/load/2.9script:
5124		new files:  contain code to deal with 2.9 server
5125		messages and stats p output.  from kalt in pr#217.
5126	source/names.c, source/edit.c, source/window.c:
5127		don't use a server index if it is -1.  fixes some
5128		crashes.  from flier@ferlin.fri.uni-lj.si in pr#222
5129		and pr#223.
5130	source/window.c:
5131		fix error in displays, from flier@ferlin.fri.uni-lj.si
5132		in pr#228.
5133	source/dcc.c, source/names.c:
5134		don't forget to free some things, from sarayan in pr's
5135		232 and 234.
5136	source/server.c:
5137		fix out-of-bounds bcopy() that was causing lots of havoc
5138		after /server -delete.  from sarayn in pr#238.
5139	source/server.c:
5140		don't trash parsing_server_index, from sarayan in pr#240.
5141	source/edit.c:
5142		add SERVLIST and SQUERY as comments (for ircd 2.9), using
5143		send_comm().  this may not be correct and these commands
5144		may simply fail.
5145	script/version:
5146		update for 2.9.
5147
51482.9alpha7
5149Tue Jun  3 22:34:10 EST 1997 - matthew green <mrg@eterna.com.au>
5150	source/keys.c:
5151		pass the args in /parse.  fixes PR#236.  from sarayan.
5152	source/server.c:
5153		don't send whois foo and whois !foo.  fixes PR#85.
5154		also from sarayan.
5155	source/parse.c:
5156		don't use `level' if we haven't set it!  also from
5157		sarayan.
5158
5159Thu May 22 04:53:00 EST 1997 - glen mccready <glen@qnx.com>
5160	source/irc.c, source/ircaux.c:
5161		add '-h host' for specifying the local address for
5162		multi-homed boxes.
5163
5164Wed May  7 17:55:56 EST 1997 - matthew green <mrg@eterna.com.au>
5165	source/edit.c, help/save:
5166		add new SERVERREQ flag to irc_commands[] that
5167		requires that we be connected to a server for this
5168		command to be run.  fixes problems noted in pr#222
5169		and pr#223.
5170		implement /save -force, to skip the question asking.
5171
5172Mon May  5 19:13:32 EST 1997 - matthew green <mrg@eterna.com.au>
5173	source/ignore.c:
5174		rework a sentence.
5175	sourec/dcc.c:
5176		make dcc sent/read byte counts correct under systems
5177		with off_t > long (eg, NetBSD/sparc), by casting
5178		arguments for "%ld" to (long).
5179
51802.9alpha6
5181Mon Apr 21 16:35:57 EST 1997 - matthew green <mrg@eterna.com.au>
5182	source/hook.c:
5183		minor fix for previous.
5184
5185Mon Apr 21 01:12:22 EST 1997 - matthew green <mrg@eterna.com.au>
5186	source/hook.c:
5187		fix Add_Remove_Check stuff, from Sarayan.
5188	source/names.c:
5189		fully initialise channel.  from sarayan.
5190	source/vars.c:
5191		handle DEFAULT_LOG being on.
5192	contrib/README, contrib/random_nick:
5193		Kalt's random nick patch.
5194
51952.9alpha5
5196Sun Apr 20 20:51:01 EST 1997 - matthew green <mrg@eterna.com.au>
5197	source/alias.c, source/crypt.c, source/dcc.c, source/edit.c,
5198	source/exec.c, source/hook.c, source/keys.c, source/lastlog.c,
5199	source/vars.c:
5200		purify found several memory leaks i introduced some
5201		months ago.  thanks sar.
5202	source/alias.c:
5203		alias_xxx() functions don't allocate their return value.
5204
5205Sun Apr 20 19:41:53 EST 1997 - matthew green <mrg@eterna.com.au>
5206	contrib/README, contrib/japanese_support:
5207		put PR#203 from Sarayan into the contrib directory,
5208		so that people needing ISO2202 (japanese) support
5209		can have it.
5210
5211Sun Apr 20 18:43:33 EST 1997 - matthew green <mrg@eterna.com.au>
5212	contrib/README, contrib/colour:
5213		put PR#202 from Sarayan into the contrib directory,
5214		so that people wanting colour can have it.
5215
5216Tue Apr 15 01:58:44 CDT 1997 - scott reynolds <scottr@og.org>
5217	acconfig.h, include/defs.h.in:
5218		don't use non-blocking connects if SOCKS support
5219		is enabled.
5220
52212.9alpha4
5222Tue Apr 15 02:29:48 EST 1997 - matthew green <mrg@eterna.com.au>
5223	source/output.c:
5224		increase the buffer size, as suggested by
5225		<flier@ferlin.fri.uni-lj.si> in pr#201.
5226
5227Tue Apr 15 02:13:11 EST 1997 - matthew green <mrg@eterna.com.au>
5228	source/window.c:
5229		handle /window double correctly.  from
5230		<flier@ferlin.fri.uni-lj.si> in pr#198 & pr#200.
5231		normalise some formats.
5232		when swapping channels and windows, don't do
5233		disconnected windows.  pr #182, pr#191 & pr#196
5234	help/window/sticky:
5235		initial document on this commmand.
5236
5237Tue Apr 15 01:11:48 EST 1997 - matthew green <mrg@eterna.com.au>
5238	source/mail.c:
5239		minor optimisation.
5240	source/server.c:
5241		default to /WINDOW STICKY.
5242	source/screen.c, source/window.c, include/window.h:
5243		remove WIN_LOGLEVEL.
5244
5245Wed Apr  2 16:04:04 EST 1997 - matthew green <mrg@eterna.com.au>
5246	include/ircterm.h
5247		add __GNU__ (the hurd) to the int/int putchar_x
5248		crowd.  this was the only change required!
5249	source/edit.c:
5250		patch from Sarayan to fix some errors caused by me,
5251		and some clean up, for the channel commands.  pr#190.
5252
5253Wed Mar 26 18:11:22 EST 1997 - matthew green <mrg@eterna.com.au>
5254	include/ircterm.h:
5255		#ifdef __sgi, then int putchar_x(int) is correct.
5256		this works for IRIX5 and IRIX6.  if it doesn't
5257		work, blame sarayan.
5258
52592.9alpha3
5260Wed Mar 26 15:50:50 EST 1997 - matthew green <mrg@eterna.com.au>
5261	NEWS:
5262		updated for `2.9'
5263
5264Wed Mar 26 14:33:56 EST 1997 - matthew green <mrg@eterna.com.au>
5265	source/names.c:
5266		leave kicked channels in CHAN_LIMBO.
5267	source/status.c:
5268		don't cut of domains of irc servers called "irc.".
5269	source/dcc.c, source/screen.c:
5270		deal with /window add =nick properly.
5271	source/window.c:
5272		change add_nicks_by_refnum() so that you can
5273		explicitly add/delete with a new parameter.  allows
5274		the caller to _NOT_ have to malloc a new string for
5275		prepending a ^ on it.
5276	help/help, help/load/help, help/set/help_pager,
5277	help/set/help_service, help/set/help_prompt, script/help,
5278	source/help.c, source/vars.c, include/vars.h.proto,
5279	include/vars.h:
5280		remove help_service, and re-implement it as a help
5281		script.
5282	source/server.c, source/window.c:
5283		finish /server . that glen started at my urging.
5284	include/ircterm.h:
5285		Linux and AIX use int/int for tputs.
5286	source/edit.c:
5287		fix a few commands, and make leave comments work
5288		properly.
5289	source/dcc.c:
5290		handle dcc send with "irc -S" by using MyIpAddr.
5291	source/numbers.c:
5292		reset the whois_queue() on numeric 001.
5293	source/dcc.c:
5294		don't use a filename if it's NULL.  from Sarayan.
5295	source/ircaux.c:
5296		don't free anything pointing as "empty_string".
5297		should prhaps do zero and one here also.
5298	configure, configure.in:
5299		look for /stand/vmunix as well as /hp-ux, before
5300		testing for HPUX.
5301	easyinst:
5302		deal with default server more sanely.
5303
5304Sun Mar 23 03:24:48 EST 1997 - matthew green <mrg@eterna.com.au>
5305	help/alias/functions:
5306		fix index ^ desc.  from Stefan Le Breton
5307		<stlb@cs.tu-berlin.de>.
5308
5309Sun Mar 23 01:59:45 EST 1997 - matthew green <mrg@eterna.com.au>
5310	source/parse.c, source/hook.c, include/hook.h.proto,
5311	include/irc.h:
5312		remove ON_KICK:  we always have it.
5313	Makefile.in:
5314		cp not ln config.h.dist to config.h.
5315	include/config.h.dist, include/config.h.lynx, include/vars.h,
5316	include/vars.h.proto, include/hook.h, include/hook.h.proto::
5317		add ctcp_reply* and status_group variables
5318	include/hook.h.proto, include/hook.h:
5319		add /on KICK as normal.
5320
5321Wed Mar 19 06:10:03 METDST 1997 - Olivier Galibert  <galibert@loria.fr>
5322	source/ctcp.c, source/server.c, source/vars.c,
5323	include/server.h, include/vars.h, include/config.h,
5324	include/config.h.dist, include/config.h.lynx:
5325		Implement new way of doing CTCP reply flood
5326		protection. Read source/ctcp.c for details.
5327		Has been tested against multiple -- unasked for--
5328		flood attacks, never failed :-)
5329
5330Fri Mar 21 16:26:45 EST 1997 - matthew green <mrg@eterna.com.au>
5331	source/edit.c:
5332		from sarayan:  fix array out of bounds.
5333	source/lastlog.c:
5334		from StElb <stlb@cs.tu-berlin.de>: add lastlog
5335		-save <file>.
5336	source/numbers.c:
5337		handle number 437, for ircd 2.9.
5338
5339Fri Mar 21 12:23:03 EST 1997 - matthew green <mrg@eterna.com.au>
5340	source/edit.c:
5341		don't send "NAMES" for hostmasked channels (eg,
5342		#foo:*.edu).  fixes PR#187
5343	source/dcc.c:
5344		fix pr#131:  handle dcc send with irc -AS.
5345
5346Thu Mar 20 17:56:47 EST 1997 - matthew green <mrg@eterna.com.au>
5347	translation/POLISH, translation/POLISH_NOPL,
5348	help/set/translation:
5349		add POLISH translation tables from Piotr 'Beeth'
5350		Kucharski <chopin@sgh.waw.pl>
5351	script/global, help/ison:
5352		add /ISON command.
5353
53542.9alpha2
5355Wed Mar 19 14:42:24 EST 1997 - matthew green <mrg@eterna.com.au>
5356	source/dcc.c:
5357		fix bug pointed out by sar:  don't use filename if
5358		it is NULL.
5359	source/vars.c:
5360		fix bug pointed out by shadow@tsatsos.math.auth.gr:
5361		/set -realname dumped core.
5362	help/server:
5363		clarify /server name:port:pass:nick
5364	source/ircaux.c:
5365		in new_free(), just reset the pointer to NULL it is
5366		really `empty_string'.
5367	source/parse.c:
5368		use STRING_CHANNEL not a hardcoded '+'.
5369
5370Fri Jan 17 18:10:54 EST 1997 - matthew green <mrg@eterna.com.au>
5371	source/ctcp.c:
5372		change the way ctcp flood protection works.  for
5373		longer or faster messages, we ignore for longer.
5374
53752.9alpha1
5376Mon Nov 11 01:25:27 CST 1996 - scott reynolds <scottr@og.org>
5377	source/parse.c:
5378		fix reversed test for comment when leaving channel.
5379
5380Wed Jul 24 11:42:12 EST 1996 - matthew green <mrg@eterna.com.au>
5381	source/lastlog.c, source/mail.c, source/window.c, source/notice.c,
5382	source/names.c, source/server.c, source/screen.c, source/edit.c,
5383	source/funny.c, source/irc.c, source/dcc.c, source/ctcp.c,
5384	source/parse.c, source/numbers.c, source/whois.c:
5385		more message_from() clean ups.
5386	source/parse.c, help/on/leave:
5387		implement part comments (from per).
5388
5389Mon Jul 22 11:42:47 EST 1996 - matthew green <mrg@eterna.com.au>
5390	acconfig.h, include/defs.h.in, include/config.h:
5391		only define NON_BLOCKING_CONNECTS if we actually have
5392		a way of doing it.
5393	source/server.c, source/screen.c, source/dcc.c:
5394		fix some redirect lossage.
5395
53962.9_roof
5397Sun Jul 21 05:20:15 EST 1996 - matthew green <mrg@eterna.com.au>
5398	source/ctcp.c, source/dcc.c, source/edit.c, source/funny.c,
5399	source/lastlog.c, source/mail.c, source/numbers.c,
5400	source/server.c, source/whois.c, source/window.c,
5401	source/notice.c, source/names.c, source/parse.c:
5402		use message_from() consistantly across the board, except
5403		for a few places that set it explicitly to LOG_CURRENT
5404		(which _should_ be the default).  this should fix all the
5405		bugs with messages going to the wrong window, but there
5406		are also *lastlog*() functions that might affect this
5407		(and assignments tto `to_window', etc, etc).
5408	source/names.c, source/parse.c:
5409		move the notify_mark() calls to add_to_channel() and
5410		remove_from_channel().
5411	help/set/translation:
5412		update to reality.
5413
5414Fri Jul 19 22:33:14 EST 1996 - matthew green <mrg@eterna.com.au>
5415	source/newio.c:
5416		it's FD_SETSIZE, _not_ FDSETSIZE.
5417	source/ctcp.c:
5418		in do_ctcp(), only call send_to_server() if there is
5419		actually something to send.  stops the client sending
5420		a blank line to the server for every ctcp recieved.
5421	source/server.c:
5422		when a connection fails, set connected = 0, and
5423		read = write = -1 in the server struct.  this stops the
5424		"looping failed connection" bug from happening.
5425
5426Tue Jul  9 13:47:42 MET DST 1996 - Christophe Kalt  <kalt@syrk.ensta.fr>
5427	source/numbers.c:
5428		display numeric 366 (RPL_ENDOFNAMES) in the right window.
5429
54302.9_wall
5431Wed Jun 26 23:14:21 EST 1996 - matthew green <mrg@eterna.com.au>
5432	source/parse.c:
5433		don't notify_mark() when nick changes case only.
5434	source/numbers.c:
5435		don't set +sw with numeric 381.  why was this ever
5436		done, i dunno...
5437	source/numbers.c, source/funny.c, include/server.h:
5438		notice and care about usermode +r and numeric 484
5439		(ERR_RESTRICTED).
5440	include/ircterm.h:
5441		XXX more irix6 lossage.  give a tgetstr() proto.
5442
5443Wed Jun 26 12:49:50 EST 1996 - matthew green <mrg@eterna.com.au>
5444	source/edit.c, source/input.c:
5445		ANSIification of some functions taking char arguments.
5446	source/dcc.c:
5447		__STDC_ -> __STDC__
5448	configure.in, configure, acconfig.h, include/config.h,
5449	include/config.h.lynx, include/defs.h.in:
5450		implement --with-default-server (scottr).
5451	source/irc.c, source/notice.c, include/irc.h:
5452		implement new -b switch: loads .ircrc before
5453		connecting to a server.
5454	source/edit.c:
5455		fix auto_unmark_away (pr#104).  check_away was always 0.
5456	configure.in, configure:
5457		impliment --with-non-blocking=(posix|bsd|sysv|none).
5458		make solaris test work on x86.
5459
5460Thu Jun 20 15:32:03 EST 1996 - matthew green <mrg@eterna.com.au>
5461	source/term.c, include/ircterm.h:
5462		XXX HACK ALERT!
5463			made this work for irix6, kinda.  this
5464			needs to be replaced by something real.
5465	source/mail.c, source/help.c:
5466		NeXT bug fixes from Mark.
5467	script/2.8script:
5468		fix invite and ban reply.
5469
5470Tue Jun 11 19:52:23 EST 1996 - matthew green <mrg@eterna.com.au>
5471	source/server.c:
5472		don't use sa_len anymore.  irix uses it and it
5473		makes Lossage!
5474	easyinst:
5475		deal with no config.h.dist
5476	source/keys.c:
5477		cast call to malloc_strcpy().  from fn.
5478	source/translat.c
5479		translation tables don't have spaces in their
5480		names.  from fn.
5481	include/output.h:
5482		refresh_screen returns RETSIGTYPE.  pr#92.
5483	contrib/README, contrib/check_load:
5484		added contrib section.
5485	include/lastlog.h:
5486		make default window level LOG_NONE, as per -DPHONE.
5487
54882.9_floor
5489Thu Jun  6 00:50:08 CDT 1996 - scott reynolds <scottr@og.org>
5490	source/if.c:
5491		fix a buffer overrun.  (from Karthik Gargi)
5492
54932.9_base
5494Sun Apr 14 14:55:15 CDT 1996 - scott reynolds <scottr@og.org>
5495	source/window.c:
5496		fix problem with /WINDOW SERVER ignoring the port
5497		from the server list under some conditions.
5498
5499Sun Mar 31 08:45:47 CST 1996 - scott reynolds <scottr@og.org>
5500	Makefile.in:
5501		when installing, make sure to create $(mandir), if
5502		necessary.
5503
5504Fri May 31 00:14:23 EST 1996 - matthew green <mrg@eterna.com.au>
5505	Makefile.in:
5506		don't delete config.h anymore.
5507
5508Mon Mar 18 12:40:33 CST 1996 - scott reynolds <scottr@og.org>
5509	source/edit.c:
5510		don't try to use args to /PART if they weren't
5511		specified.  fixes pr 81, from krys.
5512
5513Fri Mar 22 15:13:24 EST 1996 - matthew green <mrg@eterna.com.au>
5514	source/irc.c:
5515		fix old bug in updating status clock.
5516
55172.8.16beta
5518Sun Mar 17 15:19:09 EST 1996 - matthew green <mrg@eterna.com.au>
5519	source/irc.c, doc/VERSIONS
5520		note beta release.
5521
5522Thu Mar 14 11:08:53 EST 1996 - matthew green <mrg@eterna.com.au>
5523	source/window.c:
5524		backout previous change to window_get_connected().
5525		fix the bug by not calling realloc_channels() in
5526		set_window_server().
5527
5528Wed Mar 13 23:45:53 EST 1996 - matthew green <mrg@eterna.com.au>
5529	source/edit.c:
5530		backout one of the previous next_arg() changes that
5531		broke "/ foo".  from phil.
5532	source/window.c:
5533		fix pr#75.  don't be so intrusive looking for a channel
5534		for this window.  call set_window_server() with misc of 1
5535		from window_get_connected().  this fixes an annoying bug
5536		that made channels get reconnected to the wrong window.
5537		however, this may cause more lossage.
5538	source/parse.c:
5539		add signon/off detection in nick changes.  pr#77 from
5540		krys.
5541
55422.8.15
5543Fri Mar  1 21:44:00 EST 1996 - matthew green <mrg@eterna.com.au>
5544	include/whois.h:
5545		add WHOIS_ISON2 as required by scott's change below.
5546	source/dcc.c:
5547		#ifdef S_IFDIR:  some unix doesn't have this?
5548	source/edit.c:
5549		fix some memory leaks with expand_twiddle() usage.
5550		use next_arg().
5551	source/exec.c:
5552		bounds check in is_process_running().  from mark
5553		matthewson.
5554	source/help.c:
5555		count displayed help lines correctly.  from kalt.
5556	source/parse.c:
5557		display kick in correct window.  from kalt.
5558	source/server.c:
5559		don't allow send_to_server() to recurse.
5560	source/vars.c:
5561		add VF_EXPAND_PATH.  allows HELP_PATH to be ~/irc/help, eg.
5562
5563Thu Feb 29 23:41:40 CST 1996 - scott reynolds <scottr@og.org>
5564	source/whois.c:
5565		more whois queue cleanup, from phil.
5566	source/window.c:
5567		fix definition of is_current_channel() to agree with
5568		prototype, and fix for SAME_WINDOW_ONLY, both from phil.
5569
55702.8.14
5571Thu Feb 15 10:16:20 EST 1996 - matthew green <mrg@eterna.com.au>
5572	source/dcc.c:
5573		don't use the ip address 127.0.0.1 for dcc connections.
5574	source/help.c, help/*:
5575		add copyright notices.
5576
5577Wed Feb 14 17:11:44 EST 1996 - matthew green <mrg@eterna.com.au>
5578	source/server.c:
5579		be smarter about displaying server lists.  reworked
5580		change from phil.
5581
5582Tue Feb 13 22:33:10 CST 1996 - scott reynolds <scottr@og.org>
5583	include/server.h, source/ctcp.c, source/names.c, source/server.c,
5584	source/whois.c:
5585		Changes from <Philippe.LEVAN@enst-bretagne.fr>:
5586		- initialize ctcp_last_reply_time when creating a
5587		  server in the list
5588		- significantly clean up the whois queue stuff
5589		- be more careful with servers we're waiting to
5590		  be reconnected
5591
55922.8.13beta
5593Wed Feb  7 21:55:36 EST 1996 - matthew green <mrg@eterna.com.au>
5594	source/ctcp.c:
5595		fix bugs introduced in new flood code.
5596
5597Tue Jan 30 22:55:11 CST 199 - scott reynolds <scottr@og.org>6
5598	source/lastlog.c:
5599		extend LOG_BEEP beyond pr #56 to include normal
5600		lastlog operations.
5601	help/set/lastlog_level, help/window/notify_level:
5602		documentation for LOG_BEEP.
5603
5604Tue Jan 30 00:13:17 CST 1996 - scott reynolds <scottr@og.org>
5605	include/lastlog.h, source/lastlog.c, source/screen.c:
5606		add LOG_BEEP, and clean up a bit.  closes pr #56,
5607		mostly from krys.
5608
5609Mon Jan 29 16:32:00 EST 1996 - matthew green <mrg@eterna.com.au>
5610	source/ctcp.c:
5611		be smarted about ctcp floods (still allow non-replying commands).
5612
5613Sun Jan 21 18:10:24 CST 1996 - scott reynolds <scottr@og.org>
5614	source/edit.c:
5615		compare the correct variable; fixes pr #45.
5616	source/term.c:
5617		check for and disable VDISCARD if present,  from
5618		<levan@rennes.enst-bretagne.fr>
5619	help/window/double:
5620		added.  closes related pr #28.
5621
5622Fri Jan 05 11:22:29 EST 1996 - glen mccready <glen@qnx.com>
5623	source/dcc.c, source/server.c:
5624		put forth some effort in cleaning up the non-blocking
5625		connects - ideas for the cleanup stemmed from a chat
5626		with deraadt@theos.com
5627
5628Thu Dec 21 15:56:55 CST 1995 - scott reynolds <scottr@og.org>
5629	source/irc.c:
5630		Add '&' expansion to the code that gets the user's
5631		name from the passwd file.
5632
5633Wed Dec 13 17:04:52 CST 1995 - scott reynolds <scottr@og.org>
5634	include/struct.h, include/config.h.dist, include/config.h.lynx,
5635	include/config.h.phone, include/vars.h, include/vars.h.proto,
5636	source/screen.c, source/status.c, source/vars.c, source/window.c:
5637		pr #42, /SET DOUBLE -> /WINDOW DOUBLE, from krys.
5638
5639Wed Dec 06 13:28:46 EST 1995 - glen mccready <glen@qnx.com>
5640	Makefile.in:
5641		fix `installman'
5642	configure.in:
5643		slightly modify the qnx compile/link options used
5644	source/alias.c:
5645		function_idle() now always exists, instead of only
5646		when strftime() was found by configure
5647	source/exec.c:
5648		POSIX doesn't define NSIG or anything like it; _SIGMAX
5649		is an extension from somewhere.. with POSIX.4 coming into
5650		being SIGRTMAX may be useful at some point.. until then..
5651	source/term.c, source/window.c:
5652		avoid name conflicts
5653	source/wserv.c, source/ircsig.c:
5654		cast signal handlers
5655
5656Mon Nov 13 23:50:33 CST 1995 - scott reynolds <scottr@og.org>
5657	source/edit.c, source/hook.c:
5658		fix memory leaks, from krys. fixes PRs 38, 39.
5659
5660Sun Nov 12 23:37:39 EST 1995 - matthew green <mrg@eterna.com.au>
5661	include/config.h.phone, include/config.h.lynx,
5662	include/config.h.dist:
5663		remove some old cruft.
5664	source/mail.c:
5665		count From_ lines correctly.
5666	source/count.l, include/count.l, include/Makefile.in:
5667		move count.l to include.
5668	configure.in, configure, aclocal.m4:
5669		update sendmail check to use macros.
5670	source/vars.c:
5671		comment last of help_service code.
5672
5673Fri Nov 10 02:55:21 EST 1995 - matthew green <mrg@eterna.com.au>
5674	include/ircaux.h, source/alias.c, source/ctcp.c,
5675	source/dcc.c, source/edit.c, source/exec.c, source/hook.c,
5676	source/ignore.c, source/input.c, source/ircaux.c,
5677	source/keys.c, source/lastlog.c, source/names.c,
5678	source/stack.c, source/translat.c, source/vars.c,
5679	source/window.c:
5680		remove all occurances of my_stricmp/my_strnicmp
5681		in a loop where one string being compared was
5682		always upper or lower already.  convert some older
5683		changes like this to use upper() and lower().
5684
5685Mon Nov  6 01:03:06 CST 1995 - scott reynolds <scottr@og.org>
5686	script/imap:
5687		updated mapper script from ian.
5688
5689Sat Nov  4 21:06:29 EST 1995 - matthew green <mrg@eterna.com.au>
5690	Makefile.in, doc/ircbug.1 doc/query-pr.1:
5691		install manuals, and the ircbug program.
5692
56932.8.12beta
5694Wed Nov  1 23:27:33 EST 1995 - matthew green <mrg@eterna.com.au>
5695	include/config.h.dist, include/config.h.lynx,
5696	include/config.h.phone, source/help.c:
5697		#ifdef support for help services.  not enabled by default.
5698
5699Wed Nov  1 23:17:10 EST 1995 - matthew green <mrg@eterna.com.au>
5700	help/window/same_window_only, include/vars.h,
5701	include/vars.h.proto, source/window.c, source/vars.c:
5702		add philippe's same_window_only set.
5703
5704Wed Nov  1 22:21:46 EST 1995 - matthew green <mrg@eterna.com.au>
5705	source/edit.c:
5706		call do_channel() with join -i; fixes pr#23
5707	configure.in, aclocal.m4, ircbug.in:
5708		look for sendmail now; don't assume it is in /usr/sbin.
5709	easyinst:
5710		don't call configure with ". ./configure".  export necessary
5711		variables (IRCLIB and bindir).
5712		remove all help service stuff -- they don't exist anymore.
5713
5714Tue Oct 31 00:58:59 CST 1995 - scott reynolds <scottr@og.org>
5715	Makefile.in, acconfig, include/defs.h.in, configure.in, configure,
5716	source/irc.c, source/ircflush.c, source/ircio.c, source/wserv.c:
5717		add support for SOCKS firewall traversal library.
5718	INSTALL:
5719		SOCKS support, and a caveat.
5720
5721Mon Oct 30 23:05:30 EST 1995 - matthew green <mrg@eterna.com.au>
5722	source/names.c:
5723		fix switch_channels; from philippe.
5724
5725Fri Oct 27 20:23:29 CDT 1995 - scott reynolds <scottr@og.org>
5726	include/config.h.dist, include/struct.h, include/vars.h.proto,
5727	source/input.c, source/screen.c, source/status.c, source/vars.c,
5728	source/window.c:
5729		double status line, from Christophe Kalt.
5730	source/dcc.c:
5731		double status line, plus fix a bogon when compiling without
5732		NON_BLOCKING_CONNECTS.
5733	include/vars.h:
5734		from vars.h.proto above.
5735	include/irc.h:
5736		struct.h must be included only after INPUT_BUFFER_SIZE
5737		is defined.  fixes PR #21.
5738
57392.8.11beta
5740Wed Oct 25 15:14:49 EST 1995 - matthew green <mrg@eterna.com.au>
5741	source/alias.c, source/dcc.c, source/help.c, source/names.c:
5742		fix bug in alias_server(), missing #ifdef nonblocking,
5743		set use_help_service properly, call is_current_channel()
5744		correctly, and clear the server's channel list in a
5745		better way.  all from philippe.
5746
5747Tue Oct 24 23:56:44 EST 1995 - matthew green <mrg@eterna.com.au>
5748	source/numbers.c:
5749		fix bug that made failed oper commands close the server.
5750		from philippe.
5751
5752Fri Oct 13 01:15:25 EST 1995 - matthew green <mrg@eterna.com.au>
5753	include/dcc.h, include/ircterm.h, source/alias.c, source/ctcp.c,
5754	source/dcc.c, source/help.c, source/hold.c, source/if.c,
5755	source/menu.c, source/names.c, source/output.c, source/reg.c,
5756	source/scandir.c, source/server.c, source/status.c:
5757		more fixes for solaris warnings.
5758
5759Fri Oct 13 01:14:59 EST 1995 - matthew green <mrg@eterna.com.au>
5760	source/parse.c, source/server.c, include/parse.h, include/server.h:
5761		begin framework for other parsers.
5762
5763Fri Sep 22 11:01:28 CDT 1995 - scott reynolds <scottr@og.org>
5764	source/reg.c:
5765		enable new _wild_match(), remove old version.
5766
5767Thu Sep 21 14:14:32 EST 1995 - matthew green <mrg@eterna.com.au>
5768	source/keys.c, source/edit.c, source/edit.h:
5769		rename clear_screen() to irc_clear_screen().
5770
5771Tue Sep 12 23:25:00 CDT 1995 - scott reynolds <scottr@og.org>
5772	include/edit.h, source/edit.c, source/whois.c:
5773		ison_ison() -> ison_now(); add dummy arg and prototype
5774		it the way add_ison_to_whois() expects.
5775	source/reg.c:
5776		Integrate new version of _wild_match() from
5777		<dalewis@acsu.buffalo.edu> with minor changes, but don't
5778		enable/use it yet.
5779
5780Fri Sep  8 12:57:14 CDT 1995 - scott reynolds <scottr@og.org>
5781	include/ircterm.h, source/edit.c, source/input.c, source/irc.c,
5782	source/menu.c, source/output.c, source/parse.c, source/screen.c,
5783	source/status.c, source/term.c:
5784		Move the #include <{curses.h|term.h}> into ircterm.h, and
5785		account for some nasty #define's in some lame <term.h>
5786		implementations.
5787
5788Thu Sep  7 10:28:20 CDT 1995 - scott reynolds <scottr@og.org>
5789	source/hook.c, source/ircaux.c, source/ircio.c:
5790		More portability fixes pointed out by HP's cc.
5791
5792Wed Sep  6 21:02:01 CDT 1995 - scott reynolds <scottr@og.org>
5793	include/irc_std.h:
5794		Remove unused TRUE/FALSE #defines.
5795	include/hook.h.proto:
5796		Finish up previous change.
5797	configure.in:
5798		Fix a comment.
5799
5800Wed Sep  6 16:52:51 CDT 199 - scott reynolds <scottr@og.org>5
5801	include/irc.h:
5802		If we HAVE_STDARG_H but we're not __STDC__, just forget
5803		about <stdarg.h>.
5804	include/ctcp.h, include/debug.h, include/defs.h, include/hook.h,
5805	include/output.h, include/server.h, include/whois.h:
5806		Undo previous HAVE_STDARG_H changes.
5807
5808Tue Sep  5 15:31:06 CDT 1995 - scott reynolds <scottr@og.org>
5809	source/alias.c:
5810		Fix "illegal pointer combination" warnings.
5811
5812Tue Sep  5 14:57:59 CDT 1995 - scott reynolds <scottr@og.org>
5813	include/ircterm.h, include/term.c:
5814		HP-UX declares arg3 to tputs() differently.  Barf.
5815
5816Wed Sep  6 01:34:53 EST 1995 - matthew green <mrg@eterna.com.au>
5817	configure, configure.in, include/defs.h, include/ircterm.h,
5818	include/term.h, source/edit.c, source/funny.c, source/help.c,
5819	source/input.c, source/irc.c, source/ircaux.c, source/keys.c,
5820	source/menu.c, source/output.c, source/parse.c, source/screen.c,
5821	source/status.c, source/term.c, source/vars.c, source/window.c,
5822	source/wserv.c:
5823		renamed term.h to ircterm.h so that it wouldn't conflict
5824		with <term.h>.  fixed test for term.h (sigh).
5825
5826Tue Sep  5 07:30:14 CDT 1995 - scott reynolds <scottr@og.org>
5827	Makefile.in, configure, configure.in, source/Makefile.in:
5828		Move burden of generating vars.h, hook.h, and keys.h to
5829		developers.
5830	include/Makefile.in:
5831		Added.
5832	include/vars.h, include/hook.h, include/keys.h:
5833		Generated and added.
5834
5835Tue Sep  5 21:29:02 EST 1995 - matthew green <mrg@eterna.com.au>
5836	acconfig.h, configure, configure.in, include/defs.h.in, include/irc.h,
5837	source/edit.c, source/input.c, source/irc.c, source/ircio.c,
5838	source/menu.c, source/output.c, source/parse.c, source/scandir.c,
5839	source/screen.c, source/status.c, source/term.c:
5840		quell some gcc warnings under solaris 2.
5841
5842Sun Sep  3 13:22:38 CDT 1995 - scott reynolds <scottr@og.org>
5843	include/ctcp.h, include/debug.h, include/hook.h.proto,
5844	include/output.h, include/server.h, include/whois.h:
5845		Don't try using '...' in prototypes unless __STDC__ is
5846		defined.  Takes care of some brain-damaged stock compilers
5847		on otherwise ANSI-aware systems.  In particular, this
5848		takes care of HP-UX 9 and, presumably, SunOS 4 systems.
5849
58502.8.10
5851Sun Sep  3 23:41:33 EST 1995 - matthew green <mrg@eterna.com.au>
5852	include/alias.h, include/exec.h, include/irc.h, include/list.h,
5853	include/menu.h, include/names.h, include/screen.h, include/status.h,
5854	include/struct.h, include/whois.h, include/window.h, source/alias.c,
5855	source/crypt.c, source/ctcp.c, source/dcc.c, source/edit.c,
5856	source/exec.c, source/help.c, source/history.c, source/hook.c,
5857	source/ignore.c, source/irc.c, source/ircaux.c, source/ircio.c,
5858	source/keys.c, source/lastlog.c, source/list.c, source/mail.c,
5859	source/menu.c, source/names.c, source/numbers.c, source/parse.c,
5860	source/screen.c, source/server.c, source/stack.c, source/status.c,
5861	source/term.c, source/whois.c, source/window.c, doc/VERSIONS:
5862		fix most of -Wstrict-prototypes, a few more ansi c parameter
5863		promotion fixes (not sure if any are left), up version, fix
5864		a few more warnings, and remove some unused code.
5865
5866Sun Sep  3 00:16:23 CDT 1995 - scott reynolds <scottr@og.org>
5867	source/edit.c, source/input.c, source/menu.c, source/output.c,
5868	source/parse.c, source/screen.c, source/status.c, source/term.c:
5869		Include <curses.h> if needed.
5870	include/term.h:
5871		Prototype putchar_x() properly.
5872
5873Sat Sep  2 23:07:56 CDT 1995 - scott reynolds <scottr@og.org>
5874	acconfig.h, configure.in, configure, include/defs.h.in,
5875	source/irc.c, source/term.c:
5876		Test for tputs() declaration in <curses.h>.  Rename
5877		USING_CURSES to INCLUDE_CURSES_H, since the new
5878		use of this is a superset of the old.
5879
5880Sun Sep  3 12:04:35 EST 1995 - matthew green <mrg@eterna.com.au>
5881	source/crypt.c, source/dcc.c, source/debug.c, source/exec.c,
5882	source/hook.c, source/irc.c, source/ircaux.c, source/ircflush.c,
5883	source/ircio.c, source/mail.c, source/menu.c, source/names.c,
5884	source/newio.c, source/screen.c, source/server.c, source/wserv.c,
5885	include/irc.h, include/newio.h, include/debug.h:
5886		move newio.c functions from irc.h to newio.h, and include
5887		this.  more prototypes and some style fixes.  removed some
5888		unused functions.
5889
5890Fri Sep  1 10:31:02 CDT 1995 - scott reynolds <scottr@og.org>
5891	source/alias.c, source/dcc.c, source/exec.c, source/keys.c,
5892	source/reg.c, source/vars.c:
5893		Fix some inconsistencies for certain static functions.
5894
5895Fri Sep  1 09:41:04 CDT 1995 - scott reynolds <scottr@og.org>
5896	include/ctcp.h, include/debug.h, include/hook.h.proto,
5897	include/server.h:
5898		Put some HAVE_STDARG_H lines back that I had deleted
5899		earlier.
5900	include/ircaux.h, source/ircaux.c:
5901		Another ANSI prototype.
5902
5903Thu Aug 31 08:20:54 CDT 1995 - scott reynolds <scottr@og.org>
5904	include/ircaux.h, include/screen.h, include/whois.h,
5905	include/window.h, source/edit.c, source/ircaux.c,
5906	source/notice.c, source/notify.c, source/screen.c,
5907	source/stack.c, source/status.c:
5908		More ANSI prototyping.
5909
5910Wed Aug 30 23:00:41 CDT 1995 - scott reynolds <scottr@og.org>
5911	include/alias.h, include/crypt.h, include/ctcp.h, include/dcc.h,
5912	include/debug.h, include/edit.h, include/exec.h, include/flood.h,
5913	include/funny.h, include/help.h, include/history.h, include/hold.h,
5914	include/hook.h.proto, include/if.h, include/input.h,
5915	include/ignore.h, include/irc.h, include/ircaux.h, include/keys.h,
5916	include/lastlog.h, include/list.h, include/log.h, include/mail.h,
5917	include/menu.h, include/names.h, include/notify.h,
5918	include/numbers.h, include/output.h, include/parse.h,
5919	include/queue.h, include/screen.h, include/server.h,
5920	include/stack.h, include/status.h, include/term.h,
5921	include/translat.h, include/vars.h.proto, include/whois.h:
5922		Consistency.
5923
5924Wed Aug 30 12:45:32 CDT 1995 - scott reynolds <scottr@og.org>
5925	include/alias.h, include/dcc.h, include/list.h, include/names.h,
5926	include/notify.h, include/server.h, include/struct.h:
5927		ANSIfy some more prototypes.
5928	source/alias.c, source/ctcp.c, source/dcc.c, source/edit.c,
5929	source/exec.c, source/funny.c, source/history.c, source/hold.c,
5930	source/hook.c, source/if.c, source/ignore.c, source/input.c,
5931	source/irc.c, source/ircaux.c, source/keys.c, source/list.c,
5932	source/menu.c, source/names.c, source/newio.c, source/notice.c,
5933	source/numbers.c, source/output.c, source/parse.c, source/screen.c,
5934	source/server.c, source/status.c, source/term.c, source/vars.c,
5935	source/window.c:
5936		Various ANSI prototype-related cleaning, and some
5937		cosmetics to keep gcc -Wall from complaining.
5938	source/reg.c:
5939		Fix operator precedence problem in _wild_match() and
5940		the way it deals with backslash quoting.
5941
5942Mon Aug 28 23:08:30 EST 1995 - matthew green <mrg@eterna.com.au>
5943	include/window.h, source/server.c, source/irc.c, source/window.c,
5944	include/irc.h, include/irc_std.h:
5945		finish server group stuff, remove couple more warnings with
5946		proper prototypes.
5947	configure, configure.in:
5948		redo signal processing and make AMS mail smarter.
5949	include/config.h.phone, include/config.h.lynx, include/config.h.old,
5950	include/config.h.lynx:
5951		remove DYNAMIC_SLIP, and, totally remove config.h.old.
5952
5953Mon Aug 28 17:33:32 EST 1995 - matthew green <mrg@eterna.com.au>
5954	source/server.c, source/window.c, source/keys.h.proto, source/list.h,
5955	source/numbers.h, source/server.h, source/struct.h,
5956	source/vars.h.proto, source/window.h:
5957		add some of the server group stuff.  isn't use, but, the
5958		user interface is mostly done.  new window commands
5959		addgroup and delgroup exist.
5960
5961Thu Aug 24 13:13:21 EST 1995 - matthew green <mrg@eterna.com.au>
5962	source/funny.c, source/keys.c, source/server.c, source/status.c:
5963		more casts.
5964
5965Thu Aug 24 01:41:12 EST 1995 - matthew green <mrg@eterna.com.au>
5966	source/alias.c, source/dcc.c, source/edit.c, source/input.c,
5967	source/lastlog.c, source/newio.c, source/screen.c,
5968	source/server.c, source/status.c, source/keys.c, source/vars.c,
5969	source/window.c, source/if.c:
5970		more ansi function definitions, fix picky compiler
5971		warnings, and fix a few bogons in previous change.
5972
5973Wed Aug 23 22:50:37 EST 1995 - matthew green <mrg@eterna.com.au>
5974	source/alias.c, source/edit.c, source/hold.c, source/if.c,
5975	source/input.c, source/keys.c, source/menu.c, source/names.c,
5976	source/output.c, source/screen.c, source/term.c, source/window.c,
5977	include/alias.h, include/window.h:
5978		add a lot of ansi function definitions.
5979
5980Wed Aug 23 21:43:46 EST 1995 - matthew green <mrg@eterna.com.au>
5981	source/window.c:
5982		call window_check_servers() at the end of
5983		window_get_connected() to maybe ensure that all servers are
5984		actually connected.
5985	source/translat.c:
5986		add a couple of ansi function declarations.
5987
59882.8.9
5989Wed Aug 23 13:04:54 EST 1995 - matthew green <mrg@eterna.com.au>
5990	source/server.c:
5991		a quick hack to stop the spinning server loop bug.  needs
5992		to be revised.
5993	source/irc.c, doc/VERSIONS:
5994		update.
5995
5996Mon Aug 14 09:54:10 CDT 1995 - scott reynolds <scottr@og.org>
5997	Makefile.in:
5998		Spelling correction.
5999	include/hook.h.proto, include/keys.h.proto, include/vars.h.proto:
6000		Add ANSI prototypes.
6001	include/edit.h, include/irc.h, include/ircaux.h, include/server.h,
6002	include/term.h, include/window.h:
6003		Clean up and add a few more ANSI prototypes.
6004	source/alias.c, source/edit.c, source/hook.c, source/irc.c,
6005	source/keys.c, source/numbers.c, source/screen.c, source/server.c,
6006	source/term.c, source/vars.c, source/window.c:
6007		First run through gcc -Wall -Wmissing-prototypes.  Lots
6008		more needs to be done.
6009
6010Fri Aug 11 03:53:13 EST 1995 - matthew green <mrg@eterna.com.au>
6011	source/alias.h, source/crypt.h, source/ctcp.h, source/dcc.h,
6012	source/debug.h, source/edit.h, source/exec.h, source/flood.h,
6013	source/funny.h, source/history.h, source/hold.h, source/ignore.h,
6014	source/input.h, source/ircaux.h, source/list.h, log.h,
6015	source/mail.h, source/menu.h, source/names.h, source/notify.h,
6016	source/numbers.h, source/output.h, screen.h, source/server.h,
6017	source/status.h, source/struct.h, source/talkd.h, source/term.h,
6018	source/window.h:
6019		consistancy.
6020
6021Thu Aug 10 01:43:01 EST 1995 - matthew green <mrg@eterna.com.au>
6022	source/debug.c, source/exec.c, source/flood.c, source/hook.c,
6023	source/ignore.c, source/menu.c, source/names.c, source/notify.c,
6024	source/numbres.c, source/screen.c, source/server.c, source/stack.c,
6025	source/window.c, source/alias.c, source/dcc.c, source/crypt.c,
6026	include/debug.h:
6027		fix prototype warnings and bogons in debug.c with -DDEBUG.
6028
6029Wed Aug  9 08:50:51 EST 1995 - matthew green <mrg@eterna.com.au>
6030	source/irc.c, source/dcc.c, include/dcc.h:
6031		prototype dcc_check(), and attempt to make non blocking
6032		connects work more sanely.
6033
6034Tue Aug  8 16:24:27 CDT 1995 - scott reynolds <scottr@og.org>
6035	include/alias.h, include/crypt.h, include/ctcp.h, include/dcc.h,
6036	include/debug.h, include/defs.h, include/edit.h, include/exec.h,
6037	include/flood.h, include/funny.h, include/help.h, include/history.h,
6038	include/hold.h, include/if.h, include/ignore.h, include/input.h,
6039	include/irc.h, include/irc_std.h, include/ircaux.h, include/lastlog.h,
6040	include/list.h, include/log.h, include/mail.h, include/menu.h,
6041	include/names.h, include/notify.h, include/numbers.h, include/output.h,
6042	include/parse.h, include/queue.h, include/screen.h, include/server.h,
6043	include/stack.h, include/status.h, include/struct.h, include/talkd.h,
6044	include/term.h, include/translat.h, include/whois.h, include/window.h,
6045	source/gzip.h:
6046		Add ANSI prototypes to a great many functions.
6047	source/irc.c:
6048		call to set_window_server was missing "all" arg
6049	source/screen.c:
6050		call to dgets() was missing "specials" arg
6051
6052Tue Aug  8 12:16:25 EST 1995 - matthew green <mrg@eterna.com.au>
6053	source/server.c:
6054		fix a bogon glen left lying around in failed server
6055		connections.
6056
60572.8.8
6058Wed Aug 02 00:57:54 MDT 1995 - glen mccready <glen@qnx.com>
6059	source/irc.c, source/ircaux.c, source/dcc.c, source/screen.c,
6060	source/server.c, include/dcc.h, include/ircaux.h:
6061		mostly working non-blocking connect code
6062			define NON_BLOCKING_CONNECTS
6063		a start at "/server ."
6064			define SERVER_DOT
6065	source/alias.c, source/edit.c, source/exec.c, source/names.c,
6066	source/parse.c, source/stack.c, source/window.c, include/irc.h:
6067		use `zero' and `one' rather than "0" and "1"
6068		use my_stricmp() less to save tolower()ing the string
6069	source/newio.c:
6070		the new_free() mentioned below was necessary
6071	source/notify.c:
6072		the extra test broke /notify
6073	source/if.c, source/reg.c:
6074		cleaned up some warnings
6075
6076Tue Jul 25 23:29:04 EST 1995 - matthew green <mrg@eterna.com.au>
6077	source/ircaux.c, source/newio.c:
6078		fix typo in ircaux.c.
6079		remove dated ESIX code (read/recv)
6080		make new_close() smarter:  doesn't matter if you
6081		call it with -1, and doesn't new_free() the io_rec,
6082		as it's likely we'll want it later anway.
6083	source/dcc.c, source/edit.c, source/file.c, source/flood.c,
6084	source/history.c, source/ignore.c, source/ircflush.c,
6085	ircsig.c, source/lastlog.c, source/list.c, source/log.c,
6086	source/mail.c, source/notify.c, source/reg.c, source/screen.c,
6087	stack.c, source/translat.c, source/vars.c, source/whois.c,
6088	source/wserv.c:
6089		for (;foo;) -> while (foo)
6090	source/ircserv.c, source/ircio.c, source/Makefile.in,
6091	doc/ircII.1, doc/SecureIRC, source/file.c, source/irc.c,
6092	source/server.c, Makefile.in:
6093		renamed ircserv to ircio.
6094
6095Thu Jul 20 02:45:39 CDT 1995 - christopher williams <cgw@io.com>
6096	source/edit.c:
6097		fix bug in execute_timer() to set to_window
6098		to curr_scr_win
6099
6100Wed Jul 19 22:57:57 MDT 1995 - glen mccready <glen@qnx.com>
6101	source/ctcp.c, include/server.h:
6102		fix for premature ctcp flood response
6103
6104Tue Jul 18 23:19:35 CDT 1995 - scott reynolds <scottr@og.org>
6105	configure.in, configure, acconfig.h, include/defs.h.in,
6106	include/irc.h:
6107		check for varargs.h
6108	include/ctcp.h, include/debug.h, include/irc.h,
6109	include/output.h, include/server.h, include/whois.h,
6110	include/hook.h.proto, source/alias.c, source/ctcp.c,
6111	source/debug.c, source/help.c, source/hook.c,
6112	source/ircaux.c, source/output.c, source/server.c,
6113	source/term.c source/whois.c:
6114		use stdarg.h if available.
6115
6116Tue Jul 18 00:38:02 MDT 1995 - glen mccready <glen@qnx.com>
6117	source/dcc.c:
6118		added dcc rename -chat
6119
6120Tue Jul  4 23:21:17 CDT 1995 - scott reynolds <scottr@og.org>
6121	configure.in, configure:
6122		general organizational cleanup.
6123
6124Tue Jul  4 13:47:22 CDT 1995 - scott reynolds <scottr@og.org>
6125	source/term.c, source/output.c:
6126		check for sys/ioctl.h; remove dead code.
6127
6128Mon Jul  3 23:57:41 CDT 1995 - scott reynolds <scottr@og.org>
6129	source/term.c:
6130		set up termcap before twiddling tty settings.
6131
61322.8.7
6133Sat Jul  1 21:44:20 EST 1995 - matthew green <mrg@eterna.com.au>
6134	source/names.c:
6135		various fixes to previous changes.
6136	configure.in, configure:
6137		portability and style fixes.
6138
6139Sat Jul  1 21:46:57 EST 1995 - scott reynolds <scottr@og.org>
6140	configure.in, configure, Makefile.in, source/term.c,
6141	acconfig.h:
6142		install help pages with pax/tar/cpio.  do termios
6143		stuff as termios/sgtty/termio.
6144
6145Mon Jun 26 00:17:46 EST 1995 - matthew green <mrg@eterna.com.au>
6146	source/dcc.c:
6147		add errno to dcc send close message.
6148	configure, configure.in:
6149		fix bug in test for unsigned 32 bit int's.
6150
6151Sat Jun 24 06:23:08 EST 1995 - matthew green <mrg@eterna.com.au>
6152	include/lastlog.h, include/names.h, source/edit.c,
6153	source/irc.c, source/names.c, source/numbers.c,
6154	source/screen.c, source/server.c, source/window.c:
6155		added connected member to ChannelList.  reworked
6156		some PHONE/NOPHONE things to be simpler, fix a
6157		couple of memory leaks in names.c
6158
6159Sat Jun 24 04:31:05 EST 1995 - matthew green <mrg@eterna.com.au>
6160	source/edit.c:
6161		do st_mode in a more sane way.
6162
6163Thu Jun 22 23:54:57 EST 1995 - matthew green <mrg@eterna.com.au>
6164	source/dcc.c, source/screen,c, source/server.c,
6165	source/window.c:
6166		remove dgets timed out messages.  reverse log on
6167		PHONE and call it NOPHONE for most.
6168	source/alias.c, help/alias/functions:
6169		idle() command, and doc for idle and strftime, from
6170		scottr@plexus.com.
6171	help/
6172		added.
6173
6174Wed Jun  7 23:52:56 EST 1995 - matthew green <mrg@eterna.com.au>
6175	source/crypt.c, source/dcc.c, source/exec.c, source/irc.c,
6176	source/ircaux.c, source/ircserv.c, source/screen.c,
6177	source/server.c:
6178		use new_close() not close().
6179
61802.8.6
6181Wed Jun  7 00:24:34 EST 1995 - matthew green <mrg@eterna.com.au>
6182	source/server.c:
6183		couple of fixes from philippe i missed, and removal
6184		of old junk (local_ip_address).
6185	include/edit.h, include/hold.h, include/input.h,
6186	include/irc.h, include/keys.h.proto, include/menu.h,
6187	include/names.h, include/output.h, include/screen.h,
6188	include/term.h, include/window.h, source/edit.c,
6189	source/hold.c, source/input.c, source/irc.c,
6190	source/keys.c, source/menu.c, source/names.c,
6191	source/output.c, source/screen.c, source/term.c,
6192	source/window.c:
6193		don't ask.
6194	source/irc.c, doc/VERSIONS:
6195		release.
6196
61972.8.5
6198
6199a big thanks to philippe for this version.
6200
6201Sat May 27 00:02:13 EST 1995 - matthew green <mrg@eterna.com.au>
6202	configure configure.in:
6203		handle space or tab in version grovelling.
6204	source/edit.c:
6205		added phil to info.
6206	source/irc.c, doc/VERSIONS:
6207		release.
6208
6209Fri May 26 23:55:35 EST 1995 - matthew green <mrg@eterna.com.au>
6210	include/funny.h, include/names.h, include/server.h,
6211	include/window.h, source/alias.c, source/ctcp.c,
6212	source/edit.c, source/funny.c, source/irc.c, source/names.c,
6213	source/notice.c, source/numbers.c, source/parse.c,
6214	source/screen.c, source/server.c, source/status,c,
6215	source/window.c:
6216		a bunch of changes from philippe relating to
6217		windows and servers and channels and other little
6218		things.  /window server, channel and bind all work
6219		MUCH better.
6220
62212.8.4
6222Fri May 26 23:54:19 EST 1995 - matthew green <mrg@eterna.com.au>
6223(actually 19950412)
6224	source/names.c:
6225		fix a buglet in previous.
6226
62272.8.3
6228Tue Apr 11 22:04:49 EST 1995 - matthew green <mrg@eterna.com.au>
6229	source/names.c:
6230		optimise a Hell of a lot of things.
6231	source/server.c:
6232		remove dyanmic slip stuff.  we do this a better
6233		way already..
6234	source/names.c, source/server.c, source/parse.c,
6235	source/notice.c, include/names.h:
6236		rework the channel_list to be a server-local thing
6237		(and thus attached to the server_list).  this lets
6238		multi-servers work better.
6239
6240Sun Apr  9 23:20:17 EST 1995 - matthew green <mrg@eterna.com.au>
6241	script/tabkey:
6242		fix to allow nicks with \'s in them work.
6243
62442.8.2
6245Thu Apr  6 00:37:12 EST 1995 - matthew green <mrg@eterna.com.au>
6246	source/names.c:
6247		removed bogus patch.
6248
6249Tue Apr  4 01:18:47 EST 1995 - matthew green <mrg@eterna.com.au>
6250	source/irc.c:
6251		patch for qnx's select lossage from glen@qnx.com.
6252
62532.8.1
6254Tue Apr  4 01:04:44 EST 1995 - matthew green <mrg@eterna.com.au>
6255	configure.in/configure:
6256		quick patch to fix message on sunos, and autoconf
6257		2.2.
6258	include/names.h, source/names.c:
6259		fix from levan@enstb.enst-bretagne.fr for cached
6260		mode strings and channel limits.
6261	include/window.h, source/edit.c, source/names.c,
6262	source/status.c, source/window.c:
6263		fixes from levan@enstb.enst-bretagne.fr for
6264		various window/server problems.
6265	source/help.c, source/numbers.c:
6266		fixes from levan@enstb.enst-bretagne.fr for dumb
6267		mode and wait prompts.  maybe this should be fixed
6268		in add_wait_prompt() instead...
6269	source/edit.c:
6270		update poxaV's address.
6271	source/irc.c:
6272		don't do the notify_list if we aren't connected!
6273	source/notify.c:
6274		fix core dump.
6275	source/screen.c:
6276		fixed select() return value.  duh.
6277	source/server.c:
6278		fixes from levan for port stuff.  fixes from me
6279		for a stupid core dump that shouldn't happen.  we
6280		reset the entire server connection list if we get
6281		this `impossible' case.  should warn the user too,
6282		i guess.
6283
62842.8
6285Thu Jan 26 18:13:57 EST 1995 - matthew green <mrg@eterna.com.au>
6286	released to the public.
6287
62882.7.3
6289Tue Jan 24 00:13:28 EST 1995 - matthew green <mrg@eterna.com.au>
6290	configure, configure.in, include/exec.h, include/irc_std.h
6291	source/exec.c:
6292		some fixes for next:  major lossage head damaged
6293		i don't know how to organise an operating system
6294		such that it works -or- i'm just a stupid git who
6295		has no idea about standards.  you choose.
6296
62972.7.2
6298Sat Jan 21 12:34:02 EST 1995 - matthew green <mrg@eterna.com.au>
6299	source/dcc.c:
6300		always make sure from_server is set in dcc_open.
6301	source/edit.c:
6302		some zcat fixes.
6303	configure, configure.in:
6304		-lc -lposix for NeXT.
6305
63062.7.1
6307Mon Jan 16 20:14:59 EST 1995 - matthew green <mrg@eterna.com.au>
6308	source/server.c, source/edit.c, include/server.h:
6309		added /disconnect.
6310
6311Mon Jan 16 17:23:38 EST 1995 - matthew green <mrg@eterna.com.au>
6312	source/parse.c:
6313		can't use '\a' on broken compilers.  what a pile
6314		of shit they are.  found by comstud.
6315
6316Sun Jan 15 12:14:39 EST 1995 - matthew green <mrg@eterna.com.au>
6317	source/newio.c:
6318		fixed bug caused with /flush sending a null rd
6319		value to new_select().  duh.  found by
6320		arnaud.girsch@insa-lyon.fr.
6321
63222.7
6323Thu Jan 12 21:20:04 EST 1995 - matthew green <mrg@eterna.com.au>
6324	2.7 released to the world.
6325
6326Wed Jan 11 14:16:34 EST 1995 - matthew green <mrg@eterna.com.au>
6327	source/server.c:
6328		fixed for new dgets_errno being -1 for read == 0.
6329		broken strerror() on losing systems.
6330
6331Tue Jan 10 23:40:24 EST 1995 - matthew green <mrg@eterna.com.au>
6332	source/whois.c:
6333		i hate c.  stdarg fixes me and glen bashed into
6334		working.
6335	source/window.c:
6336		doh!  thanks glen.
6337
63382.6.10
6339Sat Jan  7 01:30:11 EST 1995 - matthew green <mrg@eterna.com.au>
6340	configure.in:
6341		fixed typo.
6342	NEWS:
6343		updated for 2.7
6344	source/server.c:
6345		fixed bug in dcc send/chat and non-first server
6346		connected to.
6347	include/vars.h.proto, include/keys.h.proto,
6348	include/hook.h.proto:
6349		changed __P macro.
6350	source/ctcp.c source/debug.c source/file.c source/flood.c
6351	source/funny.c source/hold.c source/ircflush.c
6352	source/ircserv.c source/lastlog.c source/list.c
6353	source/menu.c source/notice.c source/output.c source/reg.c:
6354		reformat.  nothing else needed now.
6355
63562.6.9
6357Thu Jan  5 17:52:00 EST 1995 - matthew green <mrg@eterna.com.au>
6358	source/vars.c:
6359		fixed losing ansi stuff.
6360	Makefile.in:
6361		added cleandir and realclean targets.
6362
6363Wed Jan  4 22:44:18 EST 1995 - matthew green <mrg@eterna.com.au>
6364	configure.in, source/help.c, source/mail.c:
6365		updated fully for autoconf 2.x.  this could lead
6366		to some breakage.  we'll see.
6367	source/edit.c:
6368		make `/topic * foo' work as expected.
6369	source/keys.c, source/term.c:
6370		fixed eight_bit_mode and /bind'ing char's with an
6371		eigth bit set.
6372
63732.6.8
6374Tue Jan  3 01:14:53 EST 1995 - matthew green <mrg@eterna.com.au>
6375	source/
6376		removed all occurances of "index" as a variable.
6377		move the ansi prototype macro from __P() to _()
6378	code "freeze" for 2.7
6379
6380Mon Jan  2 16:44:10 EST 1995 - matthew green <mrg@eterna.com.au>
6381	source/names.c, source/funny.c, source/parse.c,
6382	include/names.h:
6383		added new method of user joining for irc 2.9 (
6384		JOIN #foo^G[ov]) handling.
6385
6386Sun Jan  1 21:39:58 EST 1995 - matthew green <mrg@eterna.com.au>
6387	source/dcc.c, source/server.c, include/server.h
6388		added struct in_addr to server structure that is
6389		filled in with getsockname() and is used in dcc
6390		requests.
6391	source/dcc.c:
6392		added idea from mark to show unknown dcc requests.
6393	source/newio.c:
6394		fixed new_select() to call select with the correct
6395		first argument.
6396
63972.6.7
6398Thu Dec 29 22:22:34 EST 1994 - matthew green <mrg@eterna.com.au>
6399	source/Makefile.in:
6400		fixed lossage with wterm dependancies.
6401	source/irc.c:
6402		fixed "irc --" and "irc -q nick" core dumps.
6403	source/input.c:
6404		make transpose chars work at the end of line.
6405	doc/ircII.1:
6406		updated my email address.
6407
64082.6.6
6409Wed Dec 21 20:43:04 EST 1994 - matthew green <mrg@eterna.com.au>
6410	source/Makefile.in:
6411		updated dependancies.  (problems pointed out by
6412		daniel carosone).
6413	source/dcc.c:
6414		read in to the *end* of the buffer, dork.
6415
64162.6.5
6417Mon Dec 19 02:57:38 EST 1994 - matthew green <mrg@eterna.com.au>
6418	Makefile.in, configure.in:
6419		some changes as needed for autoconf 2.x.
6420	source/dcc.c, source/window.c, include/dcc.h:
6421		might have fixed the bug with bsd/dcc chat.
6422
64232.6.4
6424Mon Dec 19 01:47:21 EST 1994 - matthew green <mrg@eterna.com.au>
6425	source/irc.c, source/notice.c, include/irc.h:
6426		added -q option for quick startup.
6427
6428Mon Dec 19 01:32:15 EST 1994 - matthew green <mrg@eterna.com.au>
6429
6430	source/edit.c, source/names.c, source/screen.c,
6431	source/window.c, include/window.h
6432		added 'bind' and 'unbind' window commands.
6433	source/edit.c:
6434		moved NOVICE /part stuff to only be when we are
6435		actually sending a JOIN to the server.
6436
6437Sun Dec 18 23:00:54 EST 1994 - matthew green <mrg@eterna.com.au>
6438	easyinst:
6439		fixed bug in question asking.
6440	source/server.c:
6441		fixed lossage with /server -delete, reported by
6442		scottr.
6443	source/parse.c:
6444		removed bogus fix from cjs@netcom.com.
6445	source/alias.c:
6446		still fixing chanusers().
6447	source/exec.c:
6448		close all unneeded fd's in /exec now.
6449	source/numbers.c:
6450		try to set the message_from level to the channel
6451		the numeric is about, if we can.
6452	source/screen.c:
6453		move closing in to close_all_screen() so we can
6454		call it for /exec also.
6455
64562.6.3
6457Sun Nov 27 03:16:16 EST 1994 - matthew green <mrg@eterna.com.au>
6458
6459	source/alias.c:
6460		fix for chanusers() from Greg Jarman <amigo@deakin.edu.au>
6461	source/ctcp.c
6462		fix for do_echo() from taner
6463	source/window.c
6464		made default JOIN rather than CHANNEL for /win join
6465	source/parse.c
6466		fix for /server lossage from cjs@netcom.com
6467	source/translat.c:
6468		fix for /set -translation
6469
6470Sun Nov 27 02:36:23 EST 1994 - matthew green <mrg@eterna.com.au>
6471
6472	source/screen.c, source/vars.c, include/vars.h.proto:
6473		added dave leonard's screen_options stuff, as well
6474		as some bug fixes he found.
6475
6476Fri Nov 25 16:58:00 EST 1994 - matthew green <mrg@eterna.com.au>
6477
6478	source/dcc.c:
6479		got fix for dcc problems from Scott Johnson
6480		<scottj@neuron.cs.tamu.edu>
6481
6482Tue Nov 15 01:27:40 EST 1994 - matthew green <mrg@eterna.com.au>
6483
6484	source/dcc.c:
6485		added diagnostic to attempt to observe losing dcc
6486		chat and newer-bsd's.  it appears that somewhere
6487		between 2.5 and 2.6.2 it was fixed -- perhaps the
6488		edit.c lossage fixed in 2.6.1.
6489	source/edit.c:
6490		/join now defaults to sending a JOIN command rather
6491		than sending a CHANNEL command... duh!
6492
64932.6.2
6494Mon Nov 14 01:23:44 EST 1994 - matthew green <mrg@eterna.com.au>
6495
6496	source/names.c, source/server.c:
6497		fixed bug avalon found where death of other
6498		servers would cause channel lists to be broken.
6499	source/screen.c:
6500		fully initialised struct timeval for window create.
6501
65022.6.1
6503Tue Nov 08 02:35:r9 EST 1994 - matthew green <mrg@eterna.com.au>
6504
6505	Makefile.in, mkinstalldirs:
6506		removed old garbage, and we now use noah's
6507		mkinstalldirs..
6508	include/help.h, include/if.h, include/queue.h:
6509		added to help fix edit.c lossage.
6510	include/alias.h, include/crypt.h, include/edit.h,
6511	include/exec.h, include/history.h, include/hook.h.proto,
6512	include/ignore.h, include/irc.h, include/keys.h.proto,
6513	include/notify.h, include/parse.h, include/server.h,
6514	include/stack.h, include/parse.h, include/vars.h.proto,
6515	include/window.h, source/alias.c, source/crypt.c,
6516	source/edit.c, source/exec.c, source/help.c,
6517	source/history.c, source/hook.c, source/if.c,
6518	source/ignore.c, source/keys.c, source/match.c,
6519	source/names.c, source/notice.c, source/notify.c,
6520	source/queue.c, source/server.c, source/stack.c,
6521	source/translat.c, source/vars.c, source/window.c,
6522	source/irc.c:
6523		many of the functions in the edit.c command array
6524		were called with three args, but these functions
6525		only took 2 args.  all fixed up and prototyped now.
6526		who knows what lossage this caused.  found by
6527		diane bruce (db@diana.ocunix.on.ca).
6528
65292.6
6530Tue Oct 18 19:17:49 EST 1994 - matthew green <mrg@eterna.com.au>
6531
6532	script/newformat
6533		does $R processing for stats l output.  works only
6534		on the local server, though.  from ian.
6535
6536Mon Oct 17 21:59:21 EST 1994 - matthew green <mrg@eterna.com.au>
6537
6538	source/reg.c:
6539		% was broken in pattern matching.  got a fix from
6540		ian and no_nick for this.  grumble.
6541	source/server.c, include/config.h.dist
6542		got a patch from ian to make ircii do dynamic
6543		ip number stuff.
6544
65452.5
6546Sun Oct 16 15:45:47 EST 1994 - matthew green <mrg@eterna.com.au>
6547
6548	more general clean up.
6549
65502.4
6551Sun Oct 16 09:48:53 EST 1994 - matthew green <mrg@eterna.com.au>
6552
6553	source/edit.c:
6554		turned on hop's for, fe and fec commands.
6555
6556Sat Oct 15 13:25:47 EST 1994 - matthew green <mrg@eterna.com.au>
6557
6558	general clean up of everything.
6559
65602.3.24
6561Wed Oct 12 09:24:36 EST 1994 - matthew green <mrg@eterna.com.au>
6562
6563	source/debug.c:
6564		added fixes.
6565	source/irc.c, source/screen.c:
6566		added debugging info in forward_scroll. (not part
6567		of release tree).
6568	source/stack.c:
6569		begun finishing.
6570
6571Sun Oct  9 16:42:44 EST 1994 - matthew green <mrg@eterna.com.au>
6572
6573	configure.in source/crypt.c source/dcc.c source/debug.c
6574	source/edit.c source/exec.c source/help.c source/history.c
6575	source/hook.c source/ircaux.c source/server.c source/log.c
6576	source/term.c source/whois.c source/window.c source/output.c
6577	source/ctcp.c:
6578		stdarg.h patches from brianc@qnx.com and glen@qnx.com,
6579		plus some other minor fixes.  qnx support, also.
6580
6581Thu Oct  6 22:16:42 EST 1994 - matthew green <mrg@eterna.com.au>
6582
6583	source/server.c:
6584		fixed `bug' in -DPHONE where /window server + was
6585		setting the window level to ALL.  eeew.
6586
6587Mon Sep 26 14:38:17 EST 1994 - matthew green <mrg@eterna.com.au>
6588
6589	source/alias.c:
6590		fix for onchannel() from Scott Reynolds
6591		<scott@lisa.acs.nmu.edu>
6592
65932.3.23beta
6594Sun Sep  4 00:24:13 EST 1994 - matthew green <mrg@eterna.com.au>
6595
6596	source/names.c:
6597		fixed /part bug,and a fix (finally!) for ischanop()
6598		from <cbehrens@iastate.edu>.
6599	source/dcc.c:
6600		fixed bug where you could not dcc send to one person
6601		more than once.
6602	source/screen.c:
6603		fixed resize bug when going to s smaller window and
6604		a line would be cut off.  how did this last so long?
6605
6606Tue Aug  2 00:30:33 EST 1994 - matthew green <mrg@eterna.com.au>
6607
6608	configure.in, include/irc.h, include/term.h, source/scandir.c,
6609	source/term.c:
6610		fixed hpux autoconf problems.
6611		configure now checks that -lresolv actually works,
6612		and doesn't break compiles.
6613		configure doesn't use BSDWAIT if POSIX is defined,
6614		so that newer bsd systems (like netbsd) will use the
6615		POSIX waitpid() stuff, not causes warnings..
6616
6617Sun Jul 31 21:53:03 EST 1994 - matthew green <mrg@eterna.com.au>
6618
6619	source/dcc.c:
6620		removed debug message, and a fix for DCC_RAW from
6621		jim_bob (jrg@doc.ic.ac.uk).
6622
66232.3.22beta
6624Sun Jul 31 03:07:00 EST 1994 - matthew green <mrg@eterna.com.au>
6625
6626	source/names.c, source/parse.c, include/names.h
6627		fixed ircii not forgetting about remembered channel
6628		modes after the channel has been joined.
6629	source/queue.c, source/notify.c, source/mail.c:
6630		fixed compatibilty problems found with sunos cc.
6631	source/irc.c:
6632		versions.
6633	script/autoop, script/list, script/functions, script/imap,
6634	script/history-match:
6635		fixed autoop & list, cleaned up functions and imap,
6636		added history-match (Daemon).
6637
6638Tue Jul 26 22:12:42 EST 1994 - matthew green <mrg@eterna.com.au>
6639
6640	source/edit.c, source/alias.c:
6641		getcwd() fixes from cgw.
6642	source/dcc.h, include/dcc.h:
6643		added new member to the client struct, othername.
6644		it's currently only used by dcc_filesend() to save
6645		the name given as well as the full path - so that
6646		/dcc send file nick file works, without giving the
6647		full pathname for 'file'.
6648
66492.3.21b
6650Mon Jul 25 23:27:09 EST 1994 - matthew green <mrg@eterna.com.au>
6651
6652	source/window.c:
6653		window() - added new commands REMOVE, which is the
6654		opposite of ADD, and NUMBER, which changes the refnum
6655		of a window, forcing a swap if needed.
6656	source/ircserv.c:
6657		removed printf()'s. no more lame messages at startup
6658		now.
6659	acconfig.h, configure.in, include/irc.h, source/alias.c,
6660	source/dcc.c, source/edit.c:
6661		configure now checks for getcwd() not getwd(), and
6662		everything now uses getcwd() not getwd().
6663	source/term.c:
6664		cleaned up a bit.
6665	script/uhnotify:
6666		got a fix from taner <taner@ucsd.edu>.
6667
6668
66692.3.21a
6670Sat Jul 23 23:30:53 EST 1994 - matthew green <mrg@eterna.com.au>
6671
6672	source/alias.c:
6673		fixed the broken $, bug introduced from hop's alias.c
6674		changes.  blah.
6675
6676Sat Jul 23 18:37:25 EST 1994 - matthew green <mrg@eterna.com.au>
6677
6678	source/alias.c, include/irc_std.h, source/term.c:
6679		removed sys/param.h, and moved it into irc_std.h.
6680		this was to get the newer bsd's define of BSD4_4
6681		(net/2 defines this as 0.5), which was then used
6682		in term.c to use termios.
6683	source/ctcp.c:
6684		also prints unix version (uname) in ctcp finger
6685		reply.
6686	source/scandir.c:
6687		removed sunos4 readdir_r() stuff.  it used to fail
6688		because we were getting the ucblib's readdir() but
6689		not using the right header files.
6690	include/irc_std.h, configure.in, acconfig.h:
6691		added a check for memmove(), which we now use if we
6692		are missing bcopy().
6693
6694
66952.3.21
6696Sun Jul  3 17:03:52 EST 1994 - matthew green <mrg@eterna.com.au>
6697
6698	source/alias.c:
6699		fixed bug that broke /if and chewed cpu time.
6700
67012.3.20
6702Sat Jul  2 17:36:41 EST 1994 - matthew green <mrg@eterna.com.au>
6703
6704	this version was mostly updates from jeremy nelson
6705	(jnelson@iastate.edu), with a few other bits from me.
6706
6707	configure, acconfig.h:
6708		bug fix for signal() test, and check for uname(2).
6709	include/dcc.h, source/notice.c, source/whois.c:
6710		added new hooks ENCRYPTED_NOTICE and
6711		ENCRYPTED_PRIVMSG from hop (jnelson@iastate.edu)
6712	include/names.h, source/names.c:
6713		fixed memory leak in recreate_mode() that hop found,
6714		but patched badly ;).  it now caches the string
6715		version of the mode for each channel, in each channel's
6716		channel struct.
6717	source/Makefile.in:
6718		updated dependancies.
6719	source/alias.c:
6720		reworked parser stuff from hop, plus a few new goodies.
6721	source/ctcp.c:
6722		added special parsing of ctcp SED.
6723		added posix uname() handling for ctcp FINGER.
6724	source/help.c:
6725		temporary fix for compressed help pages.
6726	source/hook.c:
6727		added hop's new do_hook() and assiciated routines that
6728		fix the bugs we had in serial numbers.
6729	source/if.c:
6730		added some of hop's if.c hacks
6731	source/ircaux.c:
6732		added hop's stristr() and rstristr() functions.
6733	source/parse.c:
6734		many bug fixes from hop.
6735	source/queue.c:
6736		added hop's queue.c after cleaning it up a bit.
6737	source/whois.c:
6738		various bug fixes from hop and myself.
6739
6740version 2.3.19 never really existed.
6741
67422.3.18
6743Sun Mar 27 22:41:02 EST 1994 - matthew green <mrg@eterna.com.au>
6744
6745	source/reg.c:
6746		fixed bug in matching where the string ended in \.
6747		found by avalon (avalon@coombs.anu.edu.au)
6748	source/input.c:
6749		fixed bug in transpose characters (avalon).
6750	source/alias.c:
6751		fixed pathetic code for showing aliases.
6752	source/dcc.c:
6753		fixed window level stuff.. bry (b@ctpm.org).
6754	source/hook.c
6755		removing all hooks with a specific serial number
6756		works now (/on #hook 1 -).
6757	source/parse.c, source/numbers.c:
6758		fixed bugs with missing args
6759
67602.3.17beta
6761Mon Mar 21 00:08:15 EST 1994 - matthew green <mrg@eterna.com.au>
6762
6763	source/crypt.c, source/help.c, source/vars.c, source/screen.c,
6764	source/Makefile.in:
6765		fixed security bugs in /help and some /set's and in
6766		/window create.
6767	configure.in:
6768		moved AC_PROG_CPP.
6769	translation/RUSSIAN*:
6770		added this.  thanks to dima@demos.su (Dima Ruban)
6771		for these.
6772
6773Sat Mar 19 00:04:42 EST 1994 - matthew green <mrg@eterna.com.au>
6774
6775	source/window.c:
6776		fixed bug in /on window_kill
6777	source/help.c:
6778		fixed lame bug in freeing nonallocated memory
6779	source/exec.c:
6780		fixed bugs in getpgrp() stuff
6781	source/dcc.c:
6782		dcc requests with the port < 1024 are now rejceted.
6783	source/scandir.c
6784		hopefully got the solaris 2 stuff right here.  i
6785		hate solaris 2.
6786
67872.3.16beta
6788Thu Feb  3 20:11:11 EST 1994 - matthew green <mrg@eterna.com.au>
6789
6790	source/ctcp.c:
6791		fixed stupid bug
6792	source/parse.c:
6793		fixed window level problems.
6794
67952.3.15beta
6796Tue Feb  1 19:18:23 EST 1994 - matthew green <mrg@eterna.com.au>
6797
6798	source/config.h:
6799		updated for the beta release.
6800	source/scandir.c:
6801		memory leak fixes, and solaris fixes.
6802	source/status.c:
6803		'mode k' bug fixed.  any non printables chars are now
6804		hanlded properly in the status line..
6805
6806Mon Jan 17 18:48:54 EST 1994 - matthew green <mrg@eterna.com.au>
6807
6808	source/parse.c:
6809		fixed the level of topic changes
6810	source/server.c, source/notice.c:
6811		fixed resending away's on reconnect/changing servers.
6812	source/notify.c:
6813		made `notify -' delete all the nicks in the list.
6814
6815Sun Jan  9 22:47:09 EST 1994 - matthew green <mrg@eterna.com.au>
6816
6817	source/ctcp.c:
6818		fixed ctcp flooding so that we don't see multiple
6819		`ctcp flood from nick'.
6820	source/whois.c:
6821		added notify_mark() all for 401.
6822	source/screen.c, source/wserv.c, include/screen.h:
6823		added the ttyname stuff, but aren't using it yet.
6824	source/alias.c:
6825		fixed stupid bug in alias parsing that gave core dumps.
6826		how this lasted this long i have no idea.
6827	source/dcc.c:
6828		remove the broken-dcc-times stuff, and now we just use
6829		the anal-ultrix stuff.
6830	source/parse.c:
6831		added message_from() things for p_channel().
6832	source/stack.c, source/stack.h:
6833		played some more.  things actually compile again here,
6834		but nothing new works.
6835
68362.3.14
6837Wed Jan  5 22:43:08 EST 1994 - matthew green <mrg@eterna.com.au>
6838
6839	source/notify.c, source/notice.c, source/parse.c, source/whois.c,
6840	source/vars.c, include/config.h*, include/vars.h.proto,
6841	include/notify.h
6842		added notify_handler variable.
6843	source/irc.c:
6844		fixed bug in /wait.  god, what a stupid bug.
6845
6846Sun Jan  2 02:36:11 EST 1994 - matthew green <mrg@eterna.com.au>
6847
6848	source/scandir.c:
6849		fixed for readdir_r() with solaris 2.  thanks to
6850		Travis L Priest <T.L.Priest@LaRC.NASA.GOV> for this one.
6851	source/names.c:
6852		fixed sending of modes to server on rejoin.
6853	source/alias.c:
6854		fixed bug in $N where from_server != current_screen->
6855		current_window->server.
6856	source/ctcp.c:
6857		made `ctcp time' more `date' like.
6858	source/window.c:
6859		made continued line be up to 1/2 the screen.
6860
6861Thu Dec 30 23:47:01 EST 1993 - matthew green <mrg@eterna.com.au>
6862
6863	source/unotify:
6864		updated to not show UNKNOWN crap.
6865	source/help.c:
6866		fixed set help_window.  i hate help.c
6867	source/numbers.c:
6868		changed reset_nickname() etc to not have more than
6869		one `Nickname:' prompt waiting at a time.
6870
6871Wed Dec 29 01:08:13 EST 1993 - matthew green <mrg@eterna.com.au>
6872
6873	script/uhnotify:
6874		added new script to do cached userhost lookups for
6875		notify.
6876
68772.3.13
6878Tue Dec 28 03:26:13 EST 1993 - matthew green <mrg@eterna.com.au>
6879
6880	source/edit.c:
6881		userhost() - now lets any number of nick's for -cmd.
6882	configure.in:
6883		fixed lame bugs in 2.3.12 that prevented it from
6884		even compiling.
6885
68862.3.12
6887Fri Dec 24 00:50:11 EST 1993 - matthew green <mrg@eterna.com.au>
6888
6889	source/vars.c, source/whois.c, source/notify.c, source/parse.c
6890	include/vars.h.proto, include/notify.h:
6891		added notify stuff from checking join's, etc.
6892	source/help.c
6893		fixed typo-bug.
6894	source/edit.c, source/server.c:
6895		added /clear -unhold
6896
6897Wed Dec 22 23:30:15 EST 1993 - matthew green <mrg@eterna.com.au>
6898
6899	source/exec.c, configure.in, acconfig.h:
6900		finished svr3/twg patches, fixed the UNIX_MAIL stuff,
6901		finished the auto-grok signals for exec.c.
6902
69032.3.11c
69042.3.11b
6905	source/server.c:
6906		fixed all known bugs in server.c ;-)
69072.3.11a
6908Thu Dec  2 21:05:56 EST 1993 - matthew green <mrg@eterna.com.au>
6909
6910	source/server.c:
6911		added extra debugging to dgets stuff.
6912
69132.3.11
6914Thu Dec  2 01:50:31 EST 1993 - matthew green <mrg@eterna.com.au>
6915
6916	source/dcc.c, source/exec,c, source/irc.c, source/server.c
6917	source/newioc, source/screen.c:
6918		fixed lame bug's introduced in 2.3.9 that caused
6919		bogus server connections closing.
6920
69212.3.10
6922Sun Nov 28 13:15:14 EST 1993 - matthew green <mrg@eterna.com.au>
6923
6924	source/exec.c:
6925		fixed POSIX kill(-pid).
6926
6927Mon Nov 15 23:32:22 EST 1993 - matthew green <mrg@eterna.com.au>
6928
6929	source/crypt.c source/exec.c source/file.c source/help.c
6930	source/irc.c source/ircaux.c source/ircflush.c source/log.c
6931	source/mail.c source/notice.c source/parse.c source/scandir.c
6932	source/term.c include/irc.h:
6933		svr3/wollongong tcp/ip patches applied from entropy
6934		(entropy@parakeet.con.wesleyan.edu)
6935
69362.3.9
6937Mon Nov 15 00:58:56 EST 1993 - matthew green <mrg@eterna.com.au>
6938
6939	source/..:
6940		various fixes to remove the `stricmp' stuff so that
6941		ircii always uses its own `my_stricmp'
6942	source/server.c, source/parse.c, source/window.c:
6943		fixed bug where ircii wouldn't let you /server after
6944		a oper kill.  removed the kludge `CLOSING_SERVER'
6945		code (oops, for got to remove the #define from server.h
6946		oh well).
6947	source/irc.c:
6948		fixed notify/clock scheluding.
6949
6950Tue Nov  2 21:17:59 EST 1993 - matthew green <mrg@eterna.com.au>
6951
6952	source/exec.c, include/irc.h:
6953		exec.c defines IN_EXEC_C so that in include/irc.h we
6954		don't include unistd.h
6955
6956	source/dcc.c, source/ircserv.c, source/ircaux.c, source/newio.c
6957		added set_socket_options() which either calls the
6958		ESIX mark_socket() thing, or sets off linger and sets
6959		keepaline and reuseaddr on.
6960
69612.3.8
6962Mon Nov  1 00:45:13 EST 1993 - matthew green <mrg@eterna.com.au>
6963
6964	source/edit.c:
6965		added /beep command which just beeps the terminal.
6966	source/edit.c, source/keys.c:
6967		added rbind command that is a reverse bind lookup.
6968		`/rbind parse_command' shows all keys bound to
6969		parse_command.
6970	source/status.c:
6971		fixed problem with alarm clock (shulick@indiana.edu)
6972	source/irc.c:
6973		handlers for SIGHUP/SIGTERM that call irc_exit().
6974
6975Sun Oct 31 18:01:12 EST 1993 - Matthew Green <mrg@eterna.com.au>
6976
6977	source/server.c:
6978		fixed bug where primary_server was -1 and used as an
6979		index.
6980	source/vars.c, source/hook.c, source/edit.c, source/alias.c,
6981	source/keys.c, source/notice.c:
6982		changed the way /save works.  you can use -bind -on
6983		-alias -digraph -set -notify to save just those types
6984		(default is all of them), and the -all switch also
6985		saves things that were generated by the global script.
6986		these are not saved by default.
6987
6988Sun Oct 31 05:10:14 EST 1993 - Matthew Green <mrg@eterna.com.au>
6989
6990	configure.in:
6991		updated for autoconf 1.7, couple of other small
6992		bugs fixed
6993	source/vars.c, include/vars.h.proto:
6994		added REALNAME varaible.
6995
69962.3.7
6997Sun Oct 24 21:47:10 EST 1993 - Matthew Green <mrg@eterna.com.au>
6998
6999	too many to remember.  many bugs fixed.  hide_private_channels,
7000	mode #foo +l 0, away when changing servers.  on connect now has
7001	the port.  added posix signals when avaliable.  more real svr4
7002	support.  various little bits of other peoples patches added
7003	where still needed.
7004
70052.3.6
7006Mon Oct  4 02:37:27 EST 1993 - Matthew Green <mrg@eterna.com.au>
7007
7008	source/status.c:
7009		yay!!!!!! fixed the `cursor gets lost with /window
7010		create' bug finally.  added a cursor_to_display() in
7011		update_status().
7012	source/alias.c:
7013		new funcitons pid() and ppid() (and thus function_pid()
7014		and function_ppid()).
7015
7016Sat Sep 25 20:13:38 EST 1993 - Matthew Green <mrg@eterna.com.au>
7017
7018	source/server.c:
7019		fixed the long know bug in bad link on /server.  also
7020		fixed setting of closed fd to -1.
7021
7022Sun Sep  5 23:52:39 EST 1993 - Matthew Green <mrg@eterna.com.au>
7023
7024	easyinst:
7025		shell script from end to configure that also sets up
7026		the default server and default help service.
7027	source/, include/
7028		removed `SCO' and replaced it with either `M_UNIX' or
7029		with `HAVE_SYS_UN_H'.
7030	source/dcc.c:
7031		now shows the port as well as the ip address.
7032
7033Thu Aug 26 00:09:11 EST 1993 - Matthew Green <mrg@eterna.com.au>
7034
7035	source/dcc.c, source/window.c, include/lastlog.h:
7036		fixed bugs in 2.3.3 relating to window level LOG_DCC.
7037		LOG_DCC is back in level LOG_ALL 'cause now only one
7038		window can have it at once.
7039		oh god i am so lame.  fixed /dcc get bug.
7040
7041	configure.in:
7042		added tests for testing getpgrp() to grok non-posix
7043		getpgrp() regardless what <unistd.h> says.
7044
70452.3.3
7046Sun Aug 22 18:29:21 EST 1993 - Matthew Green <mrg@eterna.com.au>
7047
7048	source/, include/irc.h
7049		removed all occurances of the lame null() macro.
7050
70512.3.2
7052Sun Aug  1 02:25:21 EST 1993 - Matthew Green <mrg@eterna.com.au>
7053
7054	configure.in, source/Makefile.in, Makefile.in
7055		no longer creates source/Makefile from
7056		source/Makefile.proto, but rather configure does.  we
7057		call the make in source/ with the righ aruments.
7058	source/, include/dcc.h, include/irc.h
7059		general clean up with some header files, fixed time.h
7060		and sys/time.h, netinet/in.h (thanks 386bsd for broken
7061		header files)..
7062
7063Wed Jul 28 23:39:51 EST 1993 - Matthew Green <mrg@eterna.com.au>
7064
7065	source/stack.c:
7066		fixed stack pop on <number> so that the list from the
7067		stack is actually added to the numeric list, if it was
7068		empty, currently.
7069
7070Tue Jul 27 23:59:45 EST 1993 - Matthew Green <mrg@eterna.com.au>
7071
7072	source/ctcp.c:
7073		fixed bugs in send_action() where it was sending the
7074		message as the format string, and in do_sed() where it
7075		was calling crypt_msg() with a null key.
7076
70772.3.1
7078Sat Jul 24 03:47:26 EST 1993 - Matthew Green <mrg@eterna.com.au>
7079
7080	script/dmsg
7081		added this finally..
7082
70832.3.0
7084Sun Jul 18 04:36:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
7085
7086	source/dcc.c:
7087		fixed lame bug with the dcc deadlists.
7088	source/ircaux.c:
7089		null() -=> NULL
7090
70912.3beta1.9
7092Mon Jul 12 20:43:55 EST 1993 - Matthew Green <mrg@eterna.com.au>
7093
7094	source/stack.c source/hook.c, include/stack.h:
7095		got /stack working with on's.  yay
7096	configure.in, Makefile.in, acconfig.h:
7097		updated for use with autoheader, acconfig.h added for
7098		this purpose (thanks noah).  defs.h is much nicer than
7099		-DBLAH all the way across the screen.
7100	source/scandir.c, configure.in:
7101		whole thing put in a #ifdef HAVE_SCANDIR, that is grokked
7102		in configure ..
7103
71042.3beta1.8
7105Sat Jul 10 13:11:48 EST 1993 - Matthew Green <mrg@eterna.com.au>
7106
7107	configure.in, Makefile.in:
7108		fiddled with, added questions for DEFAULT_SERVER and
7109		DEFAULT_HELP_SERVICE, unused so far..
7110	source/dcc.c, source/edit.c, source/numbers.c:
7111		fixed some level things.
7112	source/edit.c:
7113		made NUMBER_OF_COMMANDS groked automatically..
7114
71152.3beta1.7
7116Sun Jul  4 19:49:36 EST 1993 - Matthew Green <mrg@eterna.com.au>
7117
7118	NeXT port for 2.3 ..  cleaned up all the .. `suggest parentheses'
7119	warnings from gcc -Wparentheses ..
7120
71212.3beta1.6
7122Thu Jul  1 23:06:14 EST 1993 - Matthew Green <matthew@valiant.vut.edu.au>
7123
7124	hpux/osf1/sgi/osx/ptx stuff for 2.3 ..
7125
71262.3beta1.2
7127Tue Jun 29 14:14:29 EST 1993 - Matthew Green <mrg@eterna.com.au>
7128
7129	.. added gnu's autoconf to ircII, it works for sunos, and mostly
7130	for sgi so far ..
7131
71322.2.9
7133Tue Jun 29 00:05:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
7134
7135	source/newio.c;
7136		new_select() - once again, linux proves to be painful.
7137		previous `fixes' to this routine were lame, and leaked
7138		memory.
7139
71402.2.8
7141Sat Jun 26 14:45:10 EST 1993 - Matthew Green <mrg@eterna.com.au>
7142
7143	source/hook.c:
7144		fixed stupid bug in do_hook() which ignored the last
7145		/on in each list.
7146
71472.2.7
7148Sat Jun 26 05:15:35 EST 1993 - Matthew Green <mrg@eterna.com.au>
7149
7150	.. clean up for release ..
7151
7152Fri Jun 18 12:25:18 EST 1993 - Matthew Green <mrg@eterna.com.au>
7153
7154	.. various bugs for dynix/ptx, linux, hpux .. fixed.. general
7155	clean up for the release.
7156
7157(2.3beta1.1)
7158Sun Jun 13 01:10:07 EST 1993 - Matthew Green <mrg@eterna.com.au>
7159
7160	Wow.  ircII is now under RCS.
7161
71622.2.7pre2
7163Fri Jun 11 03:44:25 EST 1993 - Matthew Green <mrg@eterna.com.au>
7164
7165	ctcp.c:
7166		do_finger() - fixed type for replies for daemon clients..
7167	server.c:
7168		server() - fixed setting of away's, was causing core dumps,
7169		and general lossage.
7170
7171Wed Jun  9 23:30:33 EST 1993 - Matthew Green <mrg@eterna.com.au>
7172
7173	source/server.c:
7174		fixed sending AWAY's when reconnecting.. by adding the
7175		: prefix..
7176
7177(2.3beta1.0)
7178Wed Jun  9 00:20:19 EST 1993 - Matthew Green <mrg@eterna.com.au>
7179
7180	the lot,
7181		gah, huge clean up.  changed the lame alpha `port' Long
7182		stuff back to long, and started using the types for lots
7183		of things.. like time_t, etc..
7184		created include/ and moved every header in here..  major
7185		changes to source/Makefile.proto for this..
7186		added debug.c and debug.h..  and debug define to config.h
7187
7188Wed Jun  2 23:07:25 EST 1993 - Matthew Green <mrg@eterna.com.au>
7189
7190	source/term.c, source/irc.c:
7191		added support to reset signal handlers under ESIX.
7192	source/edit.c, source/server.h, source/server.c:
7193		made /redirect smarter about if it needs to wait on
7194		server output, by setting something in send_to_server(),
7195		that is checked after the end of the parse_line() in
7196		redirect().
7197	source/dcc.c:
7198		fixed varoius DYNIX/ptx problems that got introduced..
7199	source/window.c:
7200		create_additional_screen() - close() and unlink() when
7201		the create fails...
7202
7203Tue Jun  1 23:41:08 EST 1993 - Matthew Green <mrg@eterna.com.au>
7204
7205	source/term.c:
7206		term_cont() - added signal for linux..
7207
72082.2.7pre1
7209Tue Jun  1 20:00:02 EST 1993 - Matthew Green <mrg@eterna.com.au>
7210
7211	source/vars.c, source/edit.c:
7212		Changed the way EIGHT_BIT_CHARACTERS works so that if you
7213		set it, its honoured.
7214	source/ctcp.c:
7215		fixed UTC bug.
7216	source/, Makefile.
7217		Added patch from Fuzzy to give SCO UNIX support.
7218		<adrian@cursci.co.uk>
7219
7220Sun May 30 01:36:18 EST 1993 - Matthew Green <mrg@eterna.com.au>
7221
7222	source/help.c:
7223		fixed the linux/help bug finally.  not exactly sure what
7224		was wrong with it, but Veep <eric@blahrvares.er.usgs.gov>
7225		found the problem, and i fixed it.
7226
7227Fri May 28 23:10:47 EST 1993 - Matthew Green <mrg@eterna.com.au>
7228
7229	source/parse.c:
7230		p_privmsg() - fixed beep_when_away with /on msg..
7231
7232Thu May 20 03:25:57 EST 1993 - Matthew Green <mrg@eterna.com.au>
7233
7234	source/irc.c:
7235		irc_io() - when reading from stdin (for any screen) we
7236		read up to BIG_BUFFER_SIZE chars at a time now.
7237	source/ctcp.c, source/dcc.c:
7238		added sizes to dcc send/get.
7239	source/names.c:
7240		decipher_mode() - bug with loosing track of mode string
7241		for mode's v and b (Aiken).
7242	source/alias.c:
7243		added randm(), a better random function (Sarayan) and
7244		fixed bug in function_srand() if input was an empty
7245		string.
7246	source/edit.c:
7247		load() - now allows \ at the end of a line to continue
7248		the line (Stargazer <spz@specklec.mpifr-bonn.mpg.de>)
7249
7250Tue May 18 01:20:50 EST 1993 - Matthew Green <mrg@eterna.com.au>
7251
7252	source/numbers.c:
7253		stupid stupid stupid bug in 433 handling fix.
7254	source/screen.c:
7255		over zealousness with unsigned char's removed.
7256
72572.2.6+
7258Wed May 12 20:39:01 EST 1993 - Matthew Green <mrg@eterna.com.au>
7259
7260	source/numbers.c:
7261		fixed various bugs in the handling of some of the more
7262		important numerics.  every numeric should be able to
7263		be caught in a /on now.
7264	source/notice.c:
7265		parse_server_notice() - if from is null, use the server's
7266		name as far as its concerned, if it exists (.itsname).
7267	source/screen.c:
7268		change the handling of lines that are null being written to
7269		the screen, that was causing core dumps in places. (Rogue_F)
7270	source/keys.c:
7271		write_bindings() - changed char to unsigned char.
7272
7273Fri May  7 22:54:58 EST 1993 - Matthew Green <mrg@eterna.com.au>
7274
7275	source/names.c:
7276		blah, fixed show_channel() to not assume buffer isn't
7277		changed ever.
7278
7279Thu May  6 04:41:24 EST 1993 - Matthew Green <mrg@eterna.com.au>
7280
7281	source/numbers.c, source/parse.c, source/funny.c:
7282		fixed some numerics that were in accessable from /on
7283		<num> (353 and 366), and removed the away-time from
7284		the /on msg hook.
7285	script/finger:
7286		updated so it doesn't cause core dumps on AIX (Daemon)
7287	install:
7288		updated to work with the new config.h (Daemon)
7289
7290Wed May  5 21:43:35 EST 1993 - Matthew Green <mrg@eterna.com.au>
7291
7292	source/new_io.c:
7293		new_select() - if timeout == NULL, then we bzero() the
7294		newtimeval .. stops ircserv from hanging... thanks to
7295		Kenny Zalewski <zalewk@rpi.edu> for this.
7296
72972.2.5
7298Tue May  4 17:12:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
7299
7300	source/keys.h.proto, source/keys.c, source/screen.c
7301		Added new binding SCROLL_START, and new function
7302		scrollback_start() to do it.
7303	source/ircaux.c:
7304		check_nickname() - fixed bug where it was returning `s'.
7305
7306Tue May  4 02:11:02 EST 1993 - Matthew Green <mrg@eterna.com.au>
7307
7308	source/exec.c:
7309		various patches from avalon added to help speed up
7310		exec handling.
7311
7312Mon May  3 21:32:49 EST 1993 - Matthew Green <mrg@eterna.com.au>
7313
7314	aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaargh.
7315	Turning bold or inverse off turns everything off.  its a bug in
7316	termcap. sigh.
7317
7318Mon May  3 01:26:18 EST 1993 - Matthew Green <mrg@eterna.com.au>
7319
7320	source/irc.c:
7321		added HPUX and linux to the re-issue list for signals
7322		that are handled seeing the internal process handlers
7323		aren't always re-set properly -=> ^C making the client
7324		exit untimely.
7325
7326Sun May  2 23:06:08 EST 1993 - Matthew Green <mrg@eterna.com.au>
7327
7328	source/parse.c, source/notice.c, source/ignore.c, source/ignore.h:
7329		changed the handling of ignore_combo, introducing
7330		a new function double_ignore().
7331	source/parse.c, source/ignore.c
7332		moved IgnoreCombo() into ingore.c from parse.c and
7333		renamed it ignore_combo()
7334	source/window.c, source/screen.c, source/dcc.c:
7335		removed netinet/in.h and arpa/inet.h includes where they
7336		existed as dcc.h includes them, and 386BSD has lame
7337		header files.
7338	source/pares.c:
7339		p_nick() - if its mynick then its shown to the current
7340		window.
7341	source/lastlog.c:
7342		lastlog() - added -literal switch.
7343
7344Sun May  2 05:03:27 EST 1993 - Matthew Green <mrg@eterna.com.au>
7345
7346	source/names.c, source/names.h:
7347		Added channels keys to the channel stuff, and it also
7348		gets shown in the mode returned.
7349	source/numbers.c:
7350		Fixed bug in 002 handling with SHOW_NUMERICS on.
7351
7352Fri Apr 30 18:48:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
7353
7354	source/ircux.c:
7355		check_nickname() - rewritten, and handles things better.
7356	source/irc.c:
7357		parse_args() - we now call check_nickname() to make
7358		sure the nick given is "ok".  If not, we don't start.
7359
7360Wed Apr 28 19:55:43 EST 1993 - Matthew Green <mrg@eterna.com.au>
7361
7362	source/ctcp.c:
7363		fixed bug in ctcp ping reply.
7364	source/parse.c, source/edit.c:
7365		prefixed duplicate funcion names with p_ and e_.
7366	source/screen.c:
7367		fixed lame bug in add_to_window() where the arguments
7368		to strmcat() were wrong.  (wall privmsg quit channel
7369		invite nick)
7370	source/keys.c:
7371		added emacs bindings to 0x80 + b/d/f/h/^? for people
7372		with meta keys.
7373	source/keys.h:
7374		removed.  wasn't used anywhere.
7375	source/dcc.c:
7376		DCC connections are now shown with the ip number, to
7377		provide a little extra security (Avalon).
7378
7379Tue Apr 27 02:33:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
7380
7381	source/dcc.c:
7382		"blah". fixing put_it() et al, didn't fix the lame
7383		ultrix float bug after all.  stupid ultrix.
7384
73852.2.4
7386Mon Apr 26 12:01:58 EST 1993 - Matthew Green <mrg@eterna.com.au>
7387
7388	source/ctcp.c:
7389		fixed lame bug in do_atmosphere() that was making channels
7390		leave windows because of a missing 2nd argument to
7391		is_current_channel().
7392
73932.2.3
7394Mon Apr 26 00:42:21 EST 1993 - Matthew Green <mrg@eterna.com.au>
7395
7396	source/screen.c, source/irc.h, source/irc.c:
7397		added new global variable, char global_all_off[] that
7398		holds a string with the ALL_OFF character in it.  Fixes
7399		bug with crap getting on the screen.
7400	source/Makefile.proto:
7401		Added dependancies for crypt.o.
7402
7403pre2.2.3
7404Sun Apr 25 11:17:29 EST 1993 - Matthew Green <mrg@eterna.com.au>
7405
7406	source/exec.c:
7407		fixed lameness with wait3() arguements.
7408	source/screen.c:
7409		added a `:' to the send_to_server() call when redirecting.
7410		makes it so that 2.8 servers get everything.
7411
7412Sun Apr 25 01:35:35 EST 1993 - Matthew Green <mrg@eterna.com.au>
7413
7414	source/
7415		blah. fixed several problems in lots of stupid things
7416		i did for the release.
7417	source/screen.c, source/status.c, source/irc.h:
7418		changed bold, inverse and underline characters to
7419		^B, ^V and ^_ respectively.  wow.  it makes some sense
7420		now.
7421	Makefile:
7422		Some rearrangements, and general updating.  its now
7423		easier to install, or at least i hope so.
7424	config.h:
7425		several things updated, AUTO_RECONNECT removed..
7426
74272.2.2
7428Fri Apr 23 05:44:29 EST 1993 - Matthew Green <mrg@eterna.com.au>
7429
7430	source/
7431		fixed all of the implicit functions declartions, and
7432		several other compiler warnings. wheeeeeeeeeee.
7433
7434Thu Apr 22 14:42:07 EST 1993 - Matthew Green <mrg@eterna.com.au>
7435
7436	source/numbers.c:
7437		fixed handling of RPL_LINKS (364) so that 2.8 servers
7438		would be cool.
7439
7440Thu Apr 22 04:18:53 EST 1993 - Matthew Green <mrg@eterna.com.au>
7441
7442	source/
7443		fixeds 1000's olf lines of warnings from gcc -Wall.
7444
7445Tue Apr 20 22:29:05 EST 1993 - Matthew Green <mrg@eterna.com.au>
7446
7447	source/term.c:
7448		fixed lame hpux bugs, got term.c back to working again.
7449	source/keys.c, source/edit.c:
7450		fixed 8-bit stuff again in edit_char(), by using
7451		unsigned char.
7452
7453pre2.2.pl12
7454Mon Apr 19 21:54:09 EST 1993 - Matthew Green <mrg@eterna.com.au>
7455
7456	source/term.c:
7457		blah.  i hate sun tty drivers.  we're back to sgtty.
7458
7459Sat Apr 17 21:28:42 EST 1993 - Matthew Green <mrg@eterna.com.au>
7460
7461	source/alias.c, source/alias.h, source/parse.c, source/ctcp.c,
7462	source/dcc.c, source/dcc.h, source/edit.c, source/edit.h,
7463	sourec/exec.c, source/flood.c, source/help.c, source/history.c,
7464	source/irc.c, source/irc.h, source/ircaux.c, source/log.c,
7465	source/mail.c, source/notice.c, source/scandir.c, source/server.c,
7466	source/status.c, source/whois.c, source/dcc.c.orig, source/screen.c:
7467		Added OSF/1 support.  Made `long' a define, Long.
7468	source/output.c, source/ctcp.c, source/server.c, source/hook.c:
7469		put_it(), say(), yell(), send_to_server(), do_hook(),
7470		send_ctcp() and send_ctcp_notice() - changed from being
7471		`int' to `char *' being passed.  Fixes several lame
7472		problems.
7473
7474Thu Apr 15 17:09:16 EST 1993 - Matthew Green <mrg@eterna.com.au>
7475
7476	source/whois.c:
7477		whois_operator() - fixed 313 reply, so that 2.8
7478		servers look cool.
7479	source/numbres.c
7480		cannot_join_channel() - now switch on -current_numeric,
7481		not current_numeric.
7482	source/term.c:
7483		Changed terminal handling from sgtty to termios for
7484		SUNOS.
7485
7486Tue Apr 13 13:39:09 EST 1993 - Matthew Green <mrg@eterna.com.au>
7487
7488	source/ctcp.c:
7489		fixed various bugs with ctcp floods,
7490	source/
7491		fixed lots of compiler warnings, thanks to Vesa.
7492
7493pre2.2.2pl10
7494Mon Apr 12 18:39:55 EST 1993 - Matthew Green <mrg@eterna.com.au>
7495
7496	all:
7497		fixed various .h and .c files, removing a few compiler
7498		warnings.
7499	source/alias.c:
7500		changed $channels() and $servers() to $mychannels and
7501		$myservers().
7502	source/edit.c:
7503		Added new command XTYPE [-LITERAL] <text>, function
7504		xtypecmd().
7505
7506Mon Apr 12 03:26:44 EST 1993 - Matthew Green <mrg@eterna.com.au>
7507
7508	Makefile, source/Makefile.proto
7509		Added LEX and LEXLIB.
7510
7511Sat Apr 10 02:42:55 EST 1993 - Matthew Green <mrg@eterna.com.au>
7512
7513	source/dcc.c;
7514		close_all_dcc() - fixed bug where the list was merely
7515		being lost, not removed (so not closing fd's)
7516
7517pre2.2.2pl9
7518Fri Apr  9 02:27:26 EST 1993 - Matthew Green <mrg@eterna.com.au>
7519
7520	Makefile, source/dcc.c:
7521		Added PTX patches.
7522	source/exec.c, source/edit.c, source/screen.c:
7523		changed test_to_process() to have switch if it would
7524		call put_it() or not - fixed recusive bug with /redirectign
7525		to a process.
7526
7527Thu Apr  8 01:17:41 EST 1993 - Matthew Green <mrg@eterna.com.au>
7528
7529	source/window.c, source/server.c:
7530		Fixed /window server, and /server so that ircii would
7531		use the old port numbers.
7532
7533Wed Apr  7 13:31:23 EST 1993 - Matthew Green <mrg@eterna.com.au>
7534
7535	source/hook.c:
7536		Made save_hooks() include the serial number.
7537	source/edit.c:
7538		parse_line() - \r and \n are not treated as special from
7539		within a loaded script anymore.
7540
7541pre2.2.2pl8
7542Tue Apr  6 23:37:27 EST 1993 - Matthew Green <mrg@eterna.com.au>
7543
7544	source/history.c:
7545		Fixed history scrolling from the initial input line.
7546	source/server.c:
7547		Fixed bug in server -delete where Window->server's
7548		were left the old value.
7549	source/mail.c:
7550		Made it so mail type messages go to level CRAP.
7551	soucre/alias.c:
7552		Added poxaV's curpos patch.
7553	source/edit.c:
7554		Changed /WAIT to use unknown command, not WHOIS.
7555
7556pre2.2.2pl7
7557Tue Apr  6 01:01:46 EST 1993 - Matthew Green <mrg@eterna.com.au>
7558
7559	source/notice.c:
7560		fixed lame bug where the server version/name NOTICE was
7561		being shown twice.
7562	source/numbers.c:
7563		Added lastlog saving to all numeric messages.
7564	source/mail.c:
7565		init_mail() - fixed handling of env var MAIL where it was
7566		strcat()ing not strcpy()ing (Glenn!)
7567	source/status.c:
7568		Added Aiken's right justification patch to the status
7569		line (%>).
7570	source/screen.c, source/window.c, source/window.h:
7571		Fixed lame bug where I'd left variables in screen.c and
7572		window.c.
7573	source/?:
7574		Added various things from Lynx.
7575
7576Mon Apr  5 05:15:16 EST 1993 - Matthew Green <mrg@eterna.com.au>
7577
7578	source/numerics.c:
7579		made numerics 471 473 474 475 476 show what sort of
7580		cannot join channel they are.
7581	source/whois.c:
7582		made 313 replies (whois operator) only add the
7583		"(is an IRC operator)" if the server is < 2.8.
7584
7585Tue Mar 30 03:58:27 EST 1993 - Matthew Green <mrg@eterna.com.au>
7586
7587	source/dcc.c, Makefile:
7588		Added support for A/UX, thanks to Helen Rose for help
7589		with this (hrose@eff.org).
7590
7591pre2.2.2pl6
7592Tue Mar 30 02:02:22 EST 1993 - Matthew Green <mrg@eterna.com.au>
7593
7594	source/term.c, source/term.h:
7595		changed various things for hpux terminal emulation. .now
7596		uses sysV style (termio).  Fixes problem with getting
7597		info about the terminal out of the tty.  Also added
7598		support for irix.
7599
7600pre2.2.2pl5
7601Mon Mar 29 18:50:25 EST 1993 - Matthew Green <mrg@eterna.com.au>
7602
7603	source/window.c, source/window.h, source/screen.c, source/screen.h
7604	source/names.c, source/lastlog.c, source/hold.c, source/exec.c,
7605	source/translat.c, source/term.c, source/status.c, source/menu.c,
7606	source/irc.c, source/input.c, source/help.c, source/edit.c,
7607	source/alias.c
7608		window.c was split into window.c and screen.c today, and
7609		these files had various changes to fit to this.
7610
7611Mon Mar 29 01:13:30 EST 1993 - Matthew Green <mrg@eterna.com.au>
7612
7613	source/count.l, source/count.c, source/Makefile.proto:
7614		Added count.l, removed count.c, and updated Makefile.proto
7615		to use these changes.
7616
7617	source/irc.c, source/dcc.c, source/exec.c
7618		Fixed close_all_dcc(), and close_all_exec().  Added
7619		signal handlers for SIGUSR1 (sig_user1) and SIGUSR2
7620		(sig_user2).  USR1 closes all dcc and exec connections,
7621		and USR2 uses setjmp()/longjmp() to break out of where
7622		it is, and start processing from irc_io() again.  USR2
7623		doesn't seem to work.  sigh.
7624
7625pre2.2.2pl4
7626Sat Mar 27 04:18:29 EST 1993 - Matthew Green <mrg@eterna.com.au>
7627
7628	source/edit.c:
7629		fixed lame bugs for some commands losing parameters.
7630	source/window.h, source/window.c:
7631		Fixed bugs in scroll functions where wrong lines were
7632		displayed when new lines had been added to the window.
7633		New Window element int new_scrolled_lines.
7634	source/server.c:
7635		fixed ircserv to show the real name of the program in
7636		argv[0], not "ircserv".
7637	source/edit.c:
7638		Fixed handling of literal ^J and ^M's to the way they were
7639		originally documented in UPDATES (the same as \n used to do).
7640	source/hook.c:
7641		ugh, do_hook().  added a bzero().  see comments.  ha ha ha.
7642	source/lastlog.h:
7643		Added LOG_SNOTE to LOG_ALL.
7644
7645Thu Mar 25 23:58:58 EST 1993 - Matthew Green <mrg@eterna.com.au>
7646
7647	source/ctcp.c, source/parse.c:
7648		Finished the ignore ctcps and crap stuff.
7649	source/parse.c:
7650		ON PUBLIC has $1 as channel, and $2- as message.
7651
7652Thu Mar 25 02:19:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
7653
7654	source/edit.c:
7655		fixed send_com() so that it would only use "%s :%s" when
7656		the argument existed.
7657	source/ignore.c, source/ignore.h:
7658		changed level from unsigned char to int, to allow more than
7659		8 level's of ignore to work.  Reformatted the  output ..
7660
7661Wed Mar 24 19:57:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
7662
7663	source/numbers.c:
7664		Fixed motd numerics for 2.8 properly..
7665	source/vars.h.proto, source/vars.c, config.h, config.h.lynx:
7666		Added new variable NOTIFY_LEVEL, which is used by default
7667		for new windows.
7668	source/edit.c:
7669		Fixed bug in quote(), where the arguement was being sent
7670		as the format string.  Real dumb.
7671	source/ctcp.c, source/ignore.c, source/ignore.h, source/lastlog.c,
7672	source/lastlog.c:
7673		Added ignore levels CTCP and CRAP.
7674
7675Tue Mar 23 01:58:34 EST 1993 - Matthew Green <mrg@eterna.com.au>
7676
7677	source/edit.c, source/numbers.c, source/window.c, source/whois.c,
7678	source/irc.c:
7679		Changed redirect to use unknown command, and fixed some
7680		strange bugs.  Some still exist with 2.8 servers.  Also
7681		made all numerics work with /on <num>.  Some (318 eg)
7682		didn't have hook code for it.
7683	source/input.c:
7684		Fixed lame bug in write a character to the screen.
7685
7686Mon Mar 22 02:24:43 EST 1993 - Matthew Green <mrg@eterna.com.au>
7687
7688	source/window.c, source/window.h:
7689		Added window notify levels, with /window notify_level
7690		level ..
7691	source/vars.h.proto, source/vars.c, source/window.c, source/keys.c,
7692	config.h, config.h.lynx:
7693		Added two new variables, XTERM_OPTIONS, whose value is
7694		passed to xterm, when using WINDOW CREATE, and
7695		EIGHT_BIT_CHARACTERS, which, if set, doesn't strip the
7696		8th bit off the input streams.
7697	source/alias.c, source/names.c, source/names.h, source/server.c,
7698	source/server.h:
7699		Added new functions $channels() and $servers().
7700
7701Sun Mar 21 02:31:25 EST 1993 - Matthew Green <mrg@eterna.com.au>
7702
7703	source/edit.c:
7704		privmsg() - changed so that /msg =nick and @nick both
7705		set from_server to -1.. fixes lame level bug..
7706
7707Sat Mar 20 02:16:34 EST 1993 - Matthew Green <mrg@eterna.com.au>
7708
7709	source/window.c:
7710		window() - made /window server make the window level
7711		ALL -DCC, not just ALL.
7712	source/numbers.c:
7713		Fixed the INFO and MOTD numerics so that they will work
7714		with the new ones from ircd 2.8-7+ .. blah ..
7715	source/newio.c:
7716		new_select() - fixed so that select() wouldn't over right
7717		the struct timeval...
7718
7719
7720Fri Mar 12 18:27:31 EST 1993 - Matthew Green <mrg@eterna.com.au>
7721
7722	source/edit.c:
7723		send_com() - wasn't prefixing the arguements with a
7724		: which meant ircd 2.8 was being lame ...  For some
7725		commands, using send_comm()
7726
7727Mon Mar  8 10:22:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
7728
7729	source/exec.c:
7730		fixed bug in /exec -in
7731	source/server.c:
7732		added support for /server -delete
7733	source/edit.c, source/keys.c:
7734		Added support for 8 bit input.
7735	source/irc.c:
7736		Added command line option -v, version.
7737
77382.2.1.2
7739Sun Feb 28 13:35:19 EST 1993 - Matthew Green <mrg@eterna.com.au>
7740
7741	source/whois.c:
7742		add_to_whois_queue() - finished fixing another bug in
7743		/userhost -cmd..
7744	source/names.c:
7745		ignore() - made /IGNORE use the HIGHLIGHT_CHARACTER.
7746		reconnect_all_channels() - fixed bug from 2.2.1
7747
77482.2.1.1
7749Wed Feb 24 17:43:55 EST 1993 - Matthew Green <mrg@eterna.com.au>
7750
7751	source/whois.c:
7752		Fixed bug in /userhost.
7753	source/parse.c:
7754		Fixed bug in ON RAW_IRC.
7755
7756Tue Feb 23 18:56:54 EST 1993 - Matthew Green <mrg@eterna.com.au>
7757
7758	source/reg.c:
7759		Fixed bug in \escaping. (Troy)
7760
7761Sun Feb 21 16:36:22 EST 1993 - Matthew Green <mrg@eterna.com.au>
7762
7763	script/troy, script/killpath, script/kpstat, script/traces:
7764		Updatd scripts for 2.2.1.
7765
7766Sat Feb 20 00:36:12 EST 1993 - Matthew Green <mrg@eterna.com.au>
7767
7768	source/edit.c, source/irc.c
7769		Finally did The Right Thing (tm) with the wait key junk
7770		that help uses, and moved it from irc_io() to edit_char()
7771		where I should have put it originally.  Also fixes a bug
7772		in dumb mode.
7773
7774Thu Feb 18 01:48:05 EST 1993 - Matthew Green <mrg@eterna.com.au>
7775
7776	source/window.c, source/window.h:
7777		window() - added new command LOGFILE for window logging.
7778	source/dcc.c:
7779		We now use wait_new_free() for dcc_erase().
7780	Makefile:
7781		Removed makehelps and changed installhelp.
7782
7783Wed Feb 17 06:13:34 EST 1993 - Matthew Green <mrg@eterna.com.au>
7784
7785	source/notice.c:
7786		changed ON SERVER_NOTICE for $0 to be the server name.
7787		Changed the AIX_370 #if's to BROKEN_SCANF.
7788	source/ctcp.c:
7789		Fixed bugs in CTCP PING.
7790	source/edit.c:
7791		Fixed bugs in me() and describe().
7792
7793Thu Feb 11 14:57:10 EST 1993 - Matthew Green <mrg@eterna.com.au>
7794
7795	source/server.c:
7796		do_server() - actually fixed the autoreconect problems
7797		when there is only one server in the server list this
7798		time. ugh.
7799	config.h, source/vars.h.proto, source/vars.c, source/parse.c
7800		Added new variable SHOW_WHO_HOPCOUNT, whoreply().
7801
7802Wed Feb 10 19:53:32 EST 1993 - Matthew Green <mrg@eterna.com.au>
7803
7804	script/whowas
7805		New whowas script for 2.2 from Mycroft.
7806	source/ctpc.c
7807		Fixed NO_CTCP_FLOOD, changed do_errmsg() to do_echo(),
7808		and moved do_ping() to this, and added CTCP ECHO.
7809	Numerous other bugs fixes from various people.
7810
78112.2
7812Tue Feb  9 16:46:39 EST 1993 - Matthew Green <mrg@eterna.com.au>
7813
7814	source/dcc.c, source/scandir.c, source/help.c, source/edit.c:
7815		couple of bugs fixes here and there ...
7816	source/edit.c:
7817		bug in who() with -operator switch..
7818
7819Sun Feb  7 17:35:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
7820
7821	source/window.c, source/server.c, source/edit.c;
7822		Fixed away bugs..
7823	source/window.c:
7824		update_all_status() - doesn't call traverse_all_windows()
7825		anymore, as it was calling it recusively.  Should rewrite
7826		traverse_all_winodws().
7827	source/
7828		Support for Solaris 2 added (spot <raob@ee.mu.oz.au>)
7829	source/
7830		Support for 386BSD added (Mycroft)
7831
7832Sun Feb  7 05:04:23 EST 1993 - Matthew Green <mrg@eterna.com.au>
7833
7834	source/alias.c:
7835		alias_currdir(), and `$W' now return the current working
7836		directory. alias_version(), and '$V' give the version
7837		(poxaV).
7838	source/alias.c:
7839		alias_current_numeric(), and `$H' now return the current
7840		numeric.
7841	source/edit.c;
7842		fixed couple of memory leaks, made `:' not a special
7843		character in command mode, as it is now the no-op command.
7844		me(), describe() and prepare_action() - changed to not
7845		add the offensive period.
7846	source/window.c:
7847		window() - fixed bugs in WINDOW SERVER and WINDOW NAME.
7848	source/help.c:
7849		help() - bit of cleaning up..
7850	source/ctcp.c:
7851		do_version() - made it use IRCII_COMMENT if the value for
7852		CLIENT_INFORMATION is null.
7853
7854Thu Feb  4 17:59:23 EST 1993 - Matthew Green <mrg@eterna.com.au>
7855
7856	source/
7857		Various unused variables removed, uninitialised variables
7858		initilised..
7859	source/status.c, source/window.c, source/hook.c, source/edit.c,
7860	source/if.c:
7861		Few bug fixes here and there, and a couple of very nasty
7862		memory leaks..  thanks to jlemon..
7863	source/hook.c:
7864		do_hook() - fixed the `Dumb mode' bug that Daemon, then
7865		recently poxaV had trouble with (Mycroft)
7866
7867Wed Feb  3 18:30:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
7868
7869	source/ctcp.c, source/vars.h.proto, source/vars.c, config.h:
7870		New variable NO_CTCP_FLOOD, which when set makes ircii
7871		only send one CTCP reply per second.
7872	source/numbers.c, source/whois.c, source/names.c, source/funny.c:
7873		Changed all the numerics replies so that $0 is now the
7874		server name (if it want't already), except for ISON and
7875		USERHOST, as these are server local anyway.
7876
7877Tue Feb  2 21:40:46 EST 1993 - Matthew Green <mrg@eterna.com.au>
7878
7879	source/edit.c, source/whois.c:
7880		Removed /msg -channel as it doesn't make sense anymore.
7881	source/dcc.c:
7882		process_dcc_request() - fixed start times in dcc requests.
7883	source/status.c:
7884		status_mail() - fixed stupid bug (Mycroft).
7885	source/whois.c:
7886		no_such_nickname() - fixed so that $0 is now the server name.
7887
7888Sun Jan 31 23:33:18 EST 1993 - Matthew Green <mrg@eterna.com.au>
7889
7890	source/window.c:
7891		kill_screen() - fixed more lame bugs left for me to fix.
7892	source/term.h, source/scandir.c, source/ircflush.c:
7893		Fixed various hpux problems.
7894	Makefile, config.h, source/dcc.c, source/edit.c,source/exec.c,
7895	source/irc.c, source/irc.h, source/mail.c, source/scandir.c,
7896	source/term.c, source/hook.c:
7897		Fixed various AIX 3.1/3.2 problems.  (Mycroft)
7898
7899Sat Jan 30 18:28:31 EST 1993 - Matthew Green <mrg@eterna.com.au>
7900
7901	source/edit.c, source/ctcp.c:
7902		Added CTCP PING to ircII...  pingcmd() and special case
7903		handling for the reply .. convert_ping_args()..
7904	source/edit.c
7905		waitcmd() - fixed stupid bug that Troy left in the code
7906		to set up a WAIT -CMD.
7907
7908Thu Jan 28 23:37:19 EST 1993 - Matthew Green <mrg@eterna.com.au>
7909
7910	source/names.c:
7911		Fixed bug in irc -c that I broke when fixing the phone bug.
7912
7913Wed Jan 27 22:48:46 EST 1993 - Matthew Green <mrg@eterna.com.au>
7914
7915	source/window.c, source/irc.c:
7916		Changed create_additional_screen() to select on the listening
7917		socket, and timeout after 5 seconds, returning an error,
7918		rather than just calling accept().  This stops the case where
7919		the wserv process doesn't get started, and the client will
7920		hang in the accept().  Removed the force arguement from
7921		kill_screen(), and all the calls to it.
7922
7923	source/edit.c:
7924		renamed new_send_line() to sendlinecmd() so that it follows
7925		the general ircII pattern (is there such a thing ? - phone :)
7926
7927Tue Jan 26 19:03:51 EST 1993 - Matthew Green <mrg@eterna.com.au>
7928
7929	source/status.c
7930		Added poxaV's patch to put time in standard format.
7931
7932Mon Jan 25 09:14:10 EST 1993 - Brian Koehmstedt <bpk@gnu.ai.mit.edu>
7933
7934	source/crypt.c, source/dcc.c, source/exec.c, source/help.c,
7935	source/irc.c, source/ircaux.c, source/notice.c, source/scandir.c,
7936	source/term.c, source/ircflush.c:
7937		added support for Linux
7938
7939Mon Jan 25 02:52:14 EST 1993 - Matthew Green <mrg@eterna.com.au>
7940
7941	source/dcc.c, source/exec.c, source/server.c, source/window.c:
7942		added close_all_dcc(), close_all_exec() and close_all_server(),
7943		which are called from create_additional_screen(), from the
7944		forked process to close all unneeded file descriptors.
7945		create_screen() - fixed bug when create_screen() returns a
7946		screen that was marked as being !alive.
7947		Hmm, somewhere here I think I have fixed the bug with the
7948		position of the cursor, when using more than one screen.
7949		No idea if it is fixed, but I can't get it to happen.
7950	source/names.c:
7951		set_window_channel() - fixed bug when channel was NULL.
7952
7953Mon Jan 25 11:44:20 EST 1993 - Charles Hannum <mycroft@gnu.ai.mit.edu>
7954
7955	source/window.c:
7956		scroll_window() - fixed bug that deleted text from the
7957		input prompt
7958
7959Thu Jan 21 18:16:16 EST 1993 - Matthew Green <mrg@eterna.com.au>
7960
7961	source/window.c, source/dcc.c:
7962		Added flag to dcc_message_transmit(), to indicate if the
7963		hook/put_it() call should be made.  Used when redirecting
7964		to a dcc chat connection, which is now possible.
7965
7966Wed Jan 20 23:41:50 EST 1993 - Matthew Green <mrg@eterna.com.au>
7967
7968	source/window.c, source/edit.c, source/whois.c, source/window.h:
7969		Changed how REDIRECT works.  We now send a redirect token
7970		to the server when redirecting, not a wait token.  It is in
7971		the form of #RED#nnnn where nnnn is the screen's number
7972		(internal).  Redirect also is a property of the screen, not
7973		of the whole of ircII.  This means that there are no more
7974		valid reasons to call irc_io() recursively.
7975	source/mysetjmp.h, source/mysetjmp.c, source/irc.c, source/alias.c,
7976	source/window.c, source/window.h:
7977		Removed all the code that was applicable to the mysetjmp()
7978		code, as there are no need for it anymore - only /WAIT and
7979		$".." call irc_io() recursively, and they can be used in
7980		other (better) ways.
7981
7982Tue Jan 19 14:05:52 EST 1993 - Matthew Green <mrg@eterna.com.au>
7983
7984	source/help.c:
7985		You guessed it.. another bug.. fixed.
7986	source/window.c;
7987		window() - fixed bugs in WINDOW SERVER.
7988	source/parse.c, source/edit.c, source/exec.c:
7989		Added doing_privmsg, which makes ircII convert all attempts
7990		to PRIVMSG from a PRIVMSG in to a NOTICE.
7991	source/parse.c, source/whois.c:
7992		Added flag to HOST and USERHOST commands.  It allows a command
7993		to be executed when the the userhost (302) reply comes back
7994		from the server - userhost_cmd_returned().
7995	source/edit.c;
7996		Added new command INPUT.  Takes a ".." prompt as its first
7997		parameter, and displays this, and prompts for input that
7998		expanded, and passed to the command that is its second arg.
7999		(ie, /INPUT "prompt> " echo $*).  This should be used as
8000		a replacement for $".." type variables.
8001
8002Sun Jan 17 22:01:34 EST 1993 - Matthew Green <mrg@eterna.com.au>
8003
8004	source/help.c:
8005		help_prompt() - fixed another bug..  when will it end..?
8006	source/dcc.c:
8007		register_dcc_offer() - made dcc collisions for DCC CHAT
8008		automatically connect to the other party.  Impressed.
8009	source/window.h, source/window.c:
8010		Added new define in winodw.h SCROLL_AFTER_DISPLAY .. which
8011		makes the display scroll like it used to in 2.1.5.
8012
8013Sun Jan 17 01:16:37 EST 1993 - Matthew Green <mrg@eterna.com.au>
8014
8015	source/funny.c:
8016		Fixed lame bug in funny_list() which caused the wide list
8017		to be corrupted when more than 50 in it.
8018
8019Sat Jan 16 17:42:41 EST 1993 - Matthew Green <mrg@eterna.com.au>
8020
8021	source/window.c:
8022		Fixed stupid bug in window(), in the CHANNEL command.
8023	source/dcc.c:
8024		Forgot dcc get for lame ultrix - fixed.
8025	source/lastlog.c:
8026		lastlog() - made it possible to /lastlog <pattern> <count>
8027		now.
8028	source/help.c:
8029		help_me() - fixed a stupid bug that would cause help to
8030		become trapped, and unusable for that session.
8031
8032Fri Jan 15 16:26:13 EST 1993 - Matthew Green <mrg@eterna.com.au>
8033
8034	source/irc.c, source/window.c:
8035		Finally got irc_io() knowing when a socket connection to
8036		a wserv process closes, and to kill that screen, I know
8037		don't know of any pending bugs directly related to
8038		WINDOW CREATE.
8039
8040	source/irc.c, source/help.c:
8041		Got help working properly again (I think), and all the
8042		checking to make sure ircII won't get confused, etc.
8043
8044Fri Jan 15 03:07:48 EST 1993 - Matthew Green <mrg@eterna.com.au>
8045
8046	source/help.c:
8047		Added variable help_screen, that is set when we enter a
8048		help command, and is set to NULL when we exit.  In help(),
8049		I made it illegal to call help from more then one screen
8050		at the same time.
8051	source/irc.c, source/window.c:
8052		Added new function is_main_screen(), and added code to
8053		irc_io() to detect if a screen is closed from something
8054		other than window delete.
8055
8056Thu Jan 14 12:37:10 EST 1993 - Matthew Green <mrg@eterna.com.au>
8057
8058	Makefile, source/Makefile.proto:
8059		Removed the INSTALL section of this, replacing it with a
8060		cp, strip, and chmod, as not all machines support install.
8061		Also added new target `everything' to the Makefile.. that
8062		does the same as `make all ircflush ircserv wserv'.
8063
8064Wed Jan 13 18:19:26 EST 1993 - Matthew Green <mrg@eterna.com.au>
8065
8066	source/alias.c, source/edit.c:
8067		Smallish revamp of the whole modules, formatting for 80 columns
8068		and smallish optimizations here and there.  Could be bugs here
8069		I guess.
8070	source/crypt.c, source/ctcp.c, source/dcc.c, source/exec.c,
8071	source/flood.c, source/funny.c, source/help.c, source/history.c,
8072	source/hold.c, source/hook.c, source/if.c, source/ignore.c,
8073	source/input.c, source/irc.c, source/ircaux.c, source/ircflush.c,
8074	source/ircserv.c, source/key.c, source/lastlog.c, source/list.c,
8075	source/log.c, source/mail.c, source/menu.c, source/mysetjmp.c
8076	source/names.c, source/newio.c, source/notice.c, source/notify.c
8077	source/numbers.c, source/output.c, source/parse.c source/reg.c,
8078	source/status.c, source/server.c, source/term.c source/translat.c,
8079	source/vars.c, source/whois.c, source/window.c, source/wserv.c:
8080		reformatted for 80 columns, hopefully thats the end of the
8081		formatting saga..  :)
8082
8083Tue Jan 12 16:42:55 EST 1993 - Matthew Green <mrg@eterna.com.au>
8084
8085	source/dcc.c:
8086		Changed the call to put_it() for ultrix machines so that
8087		the floating pointers won't get garbled.
8088	source/ctcp.c, source/ctcp.h:
8089		Fixed send_ctcp_reply(), and removed Transmit_CTCP() moving
8090		the 2 lines to the only place it was called from.
8091	source/translat.c, source/term.c, source/ignore.c:
8092		reformatted.
8093
8094Mon Jan 11 16:40:14 EST 1993 - Matthew Green <mrg@eterna.com.au>
8095
8096	source/window.c:
8097		Changed window() so that the handling of HOLD_MODE called
8098		set_int_var() rather than reset_line_cnt().  Fixed a problem
8099		with /flush.
8100
8101Mon Jan 11 01:35:22 EST 1993 - Matthew Green <mrg@eterna.com.au>
8102
8103	source/lastlog.c, source/file.c, source/crypt.c, source/list.c:
8104		reformatted.
8105
8106Mon Jan 11 00:29:41 EST 1993 - Matthew Green <mrg@eterna.com.au>
8107
8108	source/names.h, source/names.c, source/window.c, source/window.h,
8109	source/edit.c, source/parse.c:
8110		Changed the handing of WINDOW CHANNEL, and JOIN so that
8111		ircII now remembers what window a channel was joined on.
8112		channel() in both parse.c and edit.c were changed,
8113		add_channel() in names.c.  New function, set_channel_window()
8114		added, in names.c thats sets a channel's window, and as such,
8115		Window * added to ChannelList.  This sometimes helps ircII
8116		remember what channels were on which windows, when
8117		re-connecting to a server.  Sometimes.
8118
8119	source/ctcp.c, source/output.c, source/hook.h.proto, source/parse.c,
8120	source/output.h:
8121		Moved the ctcp_* functions in output.c to ctcp.c, where they
8122		belong, and also put in_on_who in hook.h.proto, and fixed
8123		those fucntions that used it.
8124
8125Sun Jan 10 10:30:20 EST 1993 - Matthew Green <mrg@eterna.com.au>
8126
8127	source/funny.c:
8128		Changed funny_list(), fixing the -TOPIC argument to the
8129		LIST command.  Changed the functionality of -TOPIC so
8130		that it works *with* the other arguements, not against
8131		them.
8132
8133Sun Jan 10 09:23:43 EST 1993 - poxaV <cgw@unt.edu>
8134
8135	source/vars.h.proto, source/vars.c, source/status.c, config.h:
8136		renamed status_user() to status_user0(), and added 3
8137		new functions, status_user[123]()..  New variables
8138		STATUS_USER[0-3] ..  to go with the new status line
8139		functions, %X, %Y and %Z.
8140
8141Thu Jan  7 00:13:14 EST 1993 - Matthew Green <mrg@eterna.com.au>
8142
8143	source/status.c:
8144		Fixed status_oper() so that it wouldn't show
8145		if SHOW_STATUS_ALL wasn't set.
8146
8147Wed Jan  6 19:04:42 EST 1993 - Matthew Green <mrg@eterna.com.au>
8148
8149	source/funny.c:
8150		Changed funny_print_widelist() ..  it now works
8151		again, I don't know when I broke it.
8152
8153Wed Jan  6 11:59:11 EST 1993 - Matthew Green <mrg@eterna.com.au>
8154
8155	source/term.c, source/wserv.c:
8156		Made the term_init() call used in wserv to set the
8157		line discipline to RAW, so I could forget about
8158		having to worry about signals, and removed the
8159		SIGINT handling from wserv.c.  Hopefully this means
8160		that wserv works properly now.  (thanks to Dizzy
8161		<nathan@eas.gatech.edu> for help with this).
8162
8163Wed Jan  6 00:03:00 EST 1993 - Matthew Green <mrg@eterna.com.au>
8164
8165	source/Makefile.proto:
8166		updated depandancies, and re-organised the
8167		SOURCES and OBJECTS.
8168
8169	source/timer.c, source/edit.c, source/irc.c, source/irc.h,
8170	source/mysetjmp.c, source/mysetjmp.h, source/window.c:
8171		Moved everything from timer.c into either edit.c
8172		or irc.c.  Made WINDOW_CREATE define more parts
8173		out, in irc.c, mysetjmp.[ch], and window.c.
8174
8175Tue Jan  5 20:59:36 EST 1993 - Matthew Green <mrg@eterna.com.au>
8176
8177	source/exec.c:
8178		Reformatted, and new element of the process list
8179		added, server, to allow /exec -out/msg/notice
8180		to go to the right server.
8181
8182	source/newio.c:
8183		reformatted.
8184
8185Tue Jan  5 18:06:25 EST 1993 - Matthew Green <mrg@eterna.com.au>
8186
8187	source/edit.c, source/keys.c:
8188		Added new function parsekeycmd(), and new command,
8189		PARSEKEY which calls it - does the same as typing
8190		a key which is bound the the arguement.
8191
8192Tue Jan  5 17:03:04 EST 1993 - Matthew Green <mrg@eterna.com.au>
8193
8194	source/window.c:
8195		Changed window() so that the WINDOW CHANNEL
8196		command with no arguments make the current
8197		window's channel null.
8198
8199Tue Jan  5 16:15:51 EST 1993 - Matthew Green <mrg@eterna.com.au>
8200
8201	source/wserv.c:
8202		Changed got_sigint() to send the ^C down the pipe,
8203		rather than kill SIGINT the ircII process, as this
8204		was causing the ^C to be read as though it was from
8205		the main screen.
8206
8207Tue Jan  5 01:57:58 EST 1993 - Matthew Green <mrg@eterna.com.au>
8208
8209	source/edit.c:
8210		Changed new_send_line() to set the display on.
8211
8212Mon Jan  4 23:46:58 EST 1993 - Matthew Green <mrg@eterna.com.au>
8213
8214	source/vars.h.proto, source/vars.c, source/hook.c, source/edit.c,
8215	config.h:
8216		New variable INPUT_PROTECTION.  Doesn't allow any
8217		ON INPUT's to be added when set.  ON INPUT moved to
8218		send_line(), so that all input is caught in the hook,
8219		SENDLINE command added, that calls the new function,
8220		new_send_line, that does a simliar thing to the send_line
8221		command, except, no handling for prompts, or ON INPUT is
8222		done during this.
8223
8224Mon Jan  4 15:23:34 EST 1993 - Matthew Green <mrg@eterna.com.au>
8225
8226	hook.c:
8227		reformatted.
8228
8229Fri Jan  1 23:46:03 EST 1993 - Matthew Green <mrg@eterna.com.au>
8230
8231	*.h:
8232		Fixed all the header files, so that if included more than
8233		once, they are only parsed once.
8234