/*
 * ChangeLog: Dealing with the actual changes of code in ircII, leaving
 * UPDATES for actual user changes.
 *
 * Matthew Green, 1993.
 *
 * Copyright(c) 1993
 *
 * See the COPYRIGHT file, or do a HELP IRCII COPYRIGHT
 */

2.2.1.2
Sun Feb 28 13:35:19 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/whois.c:
		add_to_whois_queue() - finished fixing another bug in
		/userhost -cmd..
	source/names.c:
		ignore() - made /IGNORE use the HIGHLIGHT_CHARACTER.
		reconnect_all_channels() - fixed bug from 2.2.1

2.2.1.1
Wed Feb 24 17:43:55 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/whois.c:
		Fixed bug in /userhost.
	source/parse.c:
		Fixed bug in ON RAW_IRC.

Tue Feb 23 18:56:54 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/reg.c:
		Fixed bug in \escaping. (Troy)

Sun Feb 21 16:36:22 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	script/troy, script/killpath, script/kpstat, script/traces:
		Updatd scripts for 2.2.1.

Sat Feb 20 00:36:12 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/edit.c, source/irc.c
		Finally did The Right Thing (tm) with the wait key junk
		that help uses, and moved it from irc_io() to edit_char()
		where I should have put it originally.  Also fixes a bug
		in dumb mode.

Thu Feb 18 01:48:05 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c, source/window.h:
		window() - added new command LOGFILE for window logging.
	source/dcc.c:
		We now use wait_new_free() for dcc_erase().
	Makefile:
		Removed makehelps and changed installhelp.

Wed Feb 17 06:13:34 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/notice.c:
		changed ON SERVER_NOTICE for $0 to be the server name.
		Changed the AIX_370 #if's to BROKEN_SCANF.
	source/ctcp.c:
		Fixed bugs in CTCP PING.
	source/edit.c:
		Fixed bugs in me() and describe().

Thu Feb 11 14:57:10 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/server.c:
		do_server() - actually fixed the autoreconect problems
		when there is only one server in the server list this
		time. ugh.
	config.h, source/vars.h.proto, source/vars.c, source/parse.c
		Added new variable SHOW_WHO_HOPCOUNT, whoreply().

Wed Feb 10 19:53:32 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	script/whowas
		New whowas script for 2.2 from Mycroft.
	source/ctpc.c
		Fixed NO_CTCP_FLOOD, changed do_errmsg() to do_echo(),
		and moved do_ping() to this, and added CTCP ECHO.
	Numerous other bugs fixes from various people.

Tue Feb  9 16:46:39 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/dcc.c, source/scandir.c, source/help.c, source/edit.c:
		couple of bugs fixes here and there ...
	source/edit.c:
		bug in who() with -operator switch..

Sun Feb  7 17:35:03 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c, source/server.c, source/edit.c;
		Fixed away bugs..
	source/window.c:
		update_all_status() - doesn't call traverse_all_windows()
		anymore, as it was calling it recusively.  Should rewrite
		traverse_all_winodws().
	source/
		Support for Solaris 2 added (spot <raob@ee.mu.oz.au>)
	source/
		Support for 386BSD added (Mycroft)

Sun Feb  7 05:04:23 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/alias.c:
		alias_currdir(), and `$W' now return the current working
		directory. alias_version(), and '$V' give the version
		(poxaV).
	source/alias.c:
		alias_current_numeric(), and `$H' now return the current
		numeric.
	source/edit.c;
		fixed couple of memory leaks, made `:' not a special
		character in command mode, as it is now the no-op command.
		me(), describe() and prepare_action() - changed to not
		add the offensive period.
	source/window.c:
		window() - fixed bugs in WINDOW SERVER and WINDOW NAME.
	source/help.c:
		help() - bit of cleaning up..
	source/ctcp.c:
		do_version() - made it use IRCII_COMMENT if the value for
		CLIENT_INFORMATION is null.

Thu Feb  4 17:59:23 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/
		Various unused variables removed, uninitialised variables
		initilised..
	source/status.c, source/window.c, source/hook.c, source/edit.c,
	source/if.c:
		Few bug fixes here and there, and a couple of very nasty
		memory leaks..  thanks to jlemon..
	source/hook.c:
		do_hook() - fixed the `Dumb mode' bug that Daemon, then
		recently poxaV had trouble with (Mycroft)
		
Wed Feb  3 18:30:04 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/ctcp.c, source/vars.h.proto, source/vars.c, config.h:
		New variable NO_CTCP_FLOOD, which when set makes ircii
		only send one CTCP reply per second.
	source/numbers.c, source/whois.c, source/names.c, source/funny.c:
		Changed all the numerics replies so that $0 is now the
		server name (if it want't already), ecept for ISON and
		USERHOST, as these are server local anyway.

Tue Feb  2 21:40:46 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/edit.c, source/whois.c:
		Removed /msg -channel as it doesn't make sense anymore.
	source/dcc.c:
		process_dcc_request() - fixed start times in dcc requests.
	source/status.c:
		status_mail() - fixed stupid bug (Mycroft).
	source/whois.c:
		no_such_nickname() - fixed so that $0 is now the server name.

Sun Jan 31 23:33:18 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c:
		kill_screen() - fixed more lame bugs left for me to fix.
	source/term.h, source/scandir.c, source/ircflush.c:
		Fixed various hpux problems.
	Makefile, config.h, source/dcc.c, source/edit.c,source/exec.c,
	source/irc.c, source/irc.h, source/mail.c, source/scandir.c,
	source/term.c, source/hook.c:
		Fixed various AIX 3.1/3.2 problems.  (Mycroft)

Sat Jan 30 18:28:31 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/edit.c, source/ctcp.c:
		Added CTCP PING to ircII...  pingcmd() and special case
		handling for the reply .. convert_ping_args()..
	source/edit.c
		waitcmd() - fixed stupid bug that Troy left in the code
		to set up a WAIT -CMD.

Thu Jan 28 23:37:19 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/names.c:
		Fixed bug in irc -c that I broke when fixing the phone bug.

Wed Jan 27 22:48:46 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c, source/irc.c:
		Changed create_additional_screen() to select on the listening
		socket, and timeout after 5 seconds, returning an error, 
		rather than just calling accept().  This stops the case where
		the wserv process doesn't get started, and the client will
		hang in the accept().  Removed the force arguement from
		kill_screen(), and all the calls to it.

	source/edit.c:
		renamed new_send_line() to sendlinecmd() so that it follows
		the general ircII pattern (is there such a thing ? - phone :)
		
Tue Jan 26 19:03:51 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/status.c
		Added poxaV's patch to put time in standard format.

Mon Jan 25 09:14:10 EST 1993 - Brian Koehmstedt <bpk@gnu.ai.mit.edu>

	source/crypt.c, source/dcc.c, source/exec.c, source/help.c,
	source/irc.c, source/ircaux.c, source/notice.c, source/scandir.c,
	source/term.c, source/ircflush.c:
		added support for Linux

Mon Jan 25 02:52:14 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/dcc.c, source/exec.c, source/server.c, source/window.c:
		added close_all_dcc(), close_all_exec() and close_all_server(),
		which are called from create_additional_screen(), from the
		forked process to close all unneeded file descriptors.
		create_screen() - fixed bug when create_screen() returns a
		screen that was marked as being !alive.
		Hmm, somewhere here I think I have fixed the bug with the
		position of the cursor, when using more than one screen.
		No idea if it is fixed, but I can't get it to happen.
	source/names.c:
		set_window_channel() - fixed bug when channel was NULL.

Mon Jan 25 11:44:20 EST 1993 - Charles Hannum <mycroft@gnu.ai.mit.edu>

	source/window.c:
		scroll_window() - fixed bug that deleted text from the
		input prompt

Thu Jan 21 18:16:16 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c, source/dcc.c:
		Added flag to dcc_message_transmit(), to indicate if the
		hook/put_it() call should be made.  Used when redirecting
		to a dcc chat connection, which is now possible.

Wed Jan 20 23:41:50 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c, source/edit.c, source/whois.c, source/window.h:
		Changed how REDIRECT works.  We now send a redirect token
		to the server when redirecting, not a wait token.  It is in
		the form of #RED#nnnn where nnnn is the screen's number
		(internal).  Redirect also is a property of the screen, not
		of the whole of ircII.  This means that there are no more
		valid reasons to call irc_io() recursively.o
	source/mysetjmp.h, source/mysetjmp.c, source/irc.c, source/alias.c,
	source/window.c, source/window.h:
		Removed all the code that was applicable to the mysetjmp()
		code, as there are no need for it anymore - only /WAIT and
		$".." call irc_io() recursively, and they can be used in
		other (better) ways.

Tue Jan 19 14:05:52 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/help.c:
		You guessed it.. another bug.. fixed.
	source/window.c;
		window() - fixed bugs in WINDOW SERVER.
	source/parse.c, source/edit.c, source/exec.c:
		Added doing_privmsg, which makes ircII convert all attempts
		to PRIVMSG from a PRIVMSG in to a NOTICE.
	source/parse.c, source/whois.c:
		Added flag to HOST and USERHOST commands.  It allows a command
		to be executed when the the userhost (302) reply comes back
		from the server - userhost_cmd_returned().
	source/edit.c;
		Added new command INPUT.  Takes a ".." prompt as its first
		parameter, and displays this, and prompts for input that
		expanded, and passed to the command that is its second arg.
		(ie, /INPUT "prompt> " echo $*).  This should be used as
		a replacement for $".." type variables.

Sun Jan 17 22:01:34 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/help.c:
		help_prompt() - fixed another bug..  when will it end..?
	source/dcc.c:
		register_dcc_offer() - made dcc collisions for DCC CHAT
		automatically connect to the other party.  Impressed.
	source/window.h, source/window.c:
		Added new define in winodw.h SCROLL_AFTER_DISPLAY .. which
		makes the display scroll like it used to in 2.1.5.

Sun Jan 17 01:16:37 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/funny.c:
		Fixed lame bug in funny_list() which caused the wide list
		to be corrupted when more than 50 in it.

Sat Jan 16 17:42:41 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c:
		Fixed stupid bug in window(), in the CHANNEL command.
	source/dcc.c:
		Forgot dcc get for lame ultrix - fixed.
	source/lastlog.c:
		lastlog() - made it possible to /lastlog <pattern> <count>
		now.
	source/help.c:
		help_me() - fixed a stupid bug that would cause help to
		become trapped, and unusable for that session.

Fri Jan 15 16:26:13 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/irc.c, source/window.c:
		Finally got irc_io() knowing when a socket connection to
		a wserv process closes, and to kill that screen, I know
		don't know of any pending bugs directly related to
		WINDOW CREATE.

	source/irc.c, source/help.c:
		Got help working properly again (I think), and all the
		checking to make sure ircII won't get confused, etc.

Fri Jan 15 03:07:48 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/help.c:
		Added variable help_screen, that is set when we enter a
		help command, and is set to NULL when we exit.  In help(),
		I made it illegal to call help from more then one screen
		at the same time.
	source/irc.c, source/window.c:
		Added new function is_main_screen(), and added code to 
		irc_io() to detect if a screen is closed from something
		other than window delete.

Thu Jan 14 12:37:10 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	Makefile, source/Makefile.proto:
		Removed the INSTALL section of this, replacing it with a
		cp, strip, and chmod, as not all machines support install.
		Also added new target `everything' to the Makefile.. that
		does the same as `make all ircflush ircserv wserv'.

Wed Jan 13 18:19:26 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/alias.c, source/edit.c:
		Smallish revamp of the whole modules, formatting for 80 columns
		and smallish optimizations here and there.  Could be bugs here
		I guess.
	source/crypt.c, source/ctcp.c, source/dcc.c, source/exec.c,
	source/flood.c, source/funny.c, source/help.c, source/history.c,
	source/hold.c, source/hook.c, source/if.c, source/ignore.c,
	source/input.c, source/irc.c, source/ircaux.c, source/ircflush.c,
	source/ircserv.c, source/key.c, source/lastlog.c, source/list.c,
	source/log.c, source/mail.c, source/menu.c, source/mysetjmp.c
	source/names.c, source/newio.c, source/notice.c, source/notify.c
	source/numbers.c, source/output.c, source/parse.c source/reg.c,
	source/status.c, source/server.c, source/term.c source/translat.c,
	source/vars.c, source/whois.c, source/window.c, source/wserv.c:
		reformatted for 80 columns, hopefully thats the end of the
		formatting saga..  :)

Tue Jan 12 16:42:55 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/dcc.c:
		Changed the call to put_it() for ultrix machines so that
		the floating pointers won't get garbled.
	source/ctcp.c, source/ctcp.h:
		Fixed send_ctcp_reply(), and removed Transmit_CTCP() moving
		the 2 lines to the only place it was called from.
	source/translat.c, source/term.c, source/ignore.c:
		reformatted.

Mon Jan 11 16:40:14 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c:
		Changed window() so that the handling of HOLD_MODE called
		set_int_var() rather than reset_line_cnt().  Fixed a problem
		with /flush.

Mon Jan 11 01:35:22 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/lastlog.c, source/file.c, source/crypt.c, source/list.c:
		reformatted.

Mon Jan 11 00:29:41 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/names.h, source/names.c, source/window.c, source/window.h,
	source/edit.c, source/parse.c:
		Changed the handing of WINDOW CHANNEL, and JOIN so that
		ircII now remembers what window a channel was joined on.
		channel() in both parse.c and edit.c were changed, 
		add_channel() in names.c.  New function, set_channel_window()
		added, in names.c thats sets a channel's window, and as such,
		Window * added to ChannelList.  This sometimes helps ircII
		remember what channels were on which windows, when
		re-connecting to a server.  Sometimes.

	source/ctcp.c, source/output.c, source/hook.h.proto, source/parse.c,
	source/output.h:
		Moved the ctcp_* functions in output.c to ctcp.c, where they
		belong, and also put in_on_who in hook.h.proto, and fixed
		those fucntions that used it.

Sun Jan 10 10:30:20 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/funny.c:
		Changed funny_list(), fixing the -TOPIC argument to the
		LIST command.  Changed the functionality of -TOPIC so
		that it works *with* the other arguements, not against
		them.

Sun Jan 10 09:23:43 EST 1993 - poxaV <cgw@unt.edu>

	source/vars.h.proto, source/vars.c, source/status.c, config.h:
		renamed status_user() to status_user0(), and added 3
		new functions, status_user[123]()..  New variables
		STATUS_USER[0-3] ..  to go with the new status line
		functions, %X, %Y and %Z.

Thu Jan  7 00:13:14 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/status.c:
		Fixed status_oper() so that it wouldn't show
		if SHOW_STATUS_ALL wasn't set.

Wed Jan  6 19:04:42 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/funny.c:
		Changed funny_print_widelist() ..  it now works
		again, I don't know when I broke it.

Wed Jan  6 11:59:11 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/term.c, source/wserv.c:
		Made the term_init() call used in wserv to set the
		line discipline to RAW, so I could forget about
		having to worry about signals, and removed the
		SIGINT handling from wserv.c.  Hopefully this means
		that wserv works properly now.  (thanks to Dizzy
		<nathan@eas.gatech.edu> for help with this).

Wed Jan  6 00:03:00 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/Makefile.proto:
		updated depandancies, and re-organised the
		SOURCES and OBJECTS.

	source/timer.c, source/edit.c, source/irc.c, source/irc.h,
	source/mysetjmp.c, source/mysetjmp.h, source/window.c:
		Moved everything from timer.c into either edit.c
		or irc.c.  Made WINDOW_CREATE define more parts
		out, in irc.c, mysetjmp.[ch], and window.c.

Tue Jan  5 20:59:36 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/exec.c:
		Reformatted, and new element of the process list
		added, server, to allow /exec -out/msg/notice
		to go to the right server.

	source/newio.c:
		reformatted.

Tue Jan  5 18:06:25 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/edit.c, source/keys.c:
		Added new function parsekeycmd(), and new command,
		PARSEKEY which calls it - does the same as typing
		a key which is bound the the arguement.

Tue Jan  5 17:03:04 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/window.c:
		Changed window() so that the WINDOW CHANNEL
		command with no arguments make the current
		window's channel null.

Tue Jan  5 16:15:51 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/wserv.c:
		Changed got_sigint() to send the ^C down the pipe,
		rather than kill SIGINT the ircII process, as this
		was causing the ^C to be read as though it was from
		the main screen.

Tue Jan  5 01:57:58 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/edit.c:
		Changed new_send_line() to set the display on.

Mon Jan  4 23:46:58 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	source/vars.h.proto, source/vars.c, source/hook.c, source/edit.c,
	config.h:
		New variable INPUT_PROTECTION.  Doesn't allow any
		ON INPUT's to be added when set.  ON INPUT moved to
		send_line(), so that all input is caught in the hook,
		SENDLINE command added, that calls the new function,
		new_send_line, that does a simliar thing to the send_line
		command, except, no handling for prompts, or ON INPUT is
		done during this.

Mon Jan  4 15:23:34 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	hook.c:
		reformatted.

Fri Jan  1 23:46:03 EST 1993 - Matthew Green <phone@coombs.anu.edu.au>

	*.h:
		Fixed all the header files, so that if included more than
		once, they are only parsed once.
