1999-12-05  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Hopefully fixed a major upload bug which meant
	that not all of a file would be written.

	* daemon/error.c: Changed error handling again.

1999-12-03  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/main.c: Made some minor changes to handling fatal errors
	and hopefully fixed a Debian segfault problem.

1999-11-30  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/ftp.c: Messed around with the GetFileSize function to
	make it work a bit better, and discovered a lame problem with
	ftpd. Also use "abort()" instead of "_exit()", which may actually
	work.

1999-11-23  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/sockets.c: Fixed compilation in single-threaded
	mode. Stopped cancelling FTP transfers for better performance (and 
	maybe stopping lockups?).

	* clients/cmdline/dxftp.c: Added help on "put".

1999-11-11  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Doh! Fixed problem where file size was not
	reported properly for uploads.

1999-11-10  Ashley Montanaro  <hell@ukgateway.net>

	* Makefile.in: Makefile fixes before release 0.4.

1999-11-09  Ashley Montanaro  <hell@ukgateway.net>

	* clients/gtk/noctftp/main.c: Return 1 on error.

1999-11-04  Ashley Montanaro  <hell@ukgateway.net>

	* clients/util/darxite-running: Created a little script to tell
	you if the daemon is running. Maybe this should delete stale
	socket files?

	* daemon/main.c: When we kill the daemon, give it a few
	milliseconds to exit before we do.

	* daemon/buffer.c: Changed the buffering scheme to a simpler,
	thinner layer, similar to the original scheme. This is now easy to 
	understand, less cumbersome, and massive downloads work fine, as
	do all upload/download operations.

	* clients/gtk/darxstat-gtk.c: A couple of minor changes to stop
	confusion and a crash.

1999-11-03  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/files.c: Some fixes for buffer overflows.

	* daemon/sockets.c: Restored gethostbyname(). Also fixed mutex
	handling so cancelling while a file is being looked up should work.

	* daemon/error.c: Returned segfault handler to original state,
	with a couple of caveats for easier debugging.

1999-10-30  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/global.c: Added dxcalloc, a la calloc.

	* daemon/files.c: Some minor changes to massive download which
	might fix things, but I can't tell since it doesn't compile.

1999-10-30  Glenn Maynard <glennm@mediaone.net>
	post-change note: commented out SIGSEGV handler (makes debugging
	easier)
	
1999-10-30  Glenn Maynard <glennm@mediaone.net>
	Threadsafed res.c; indented
	Indented darxite_resolve.c
1999-10-30  Glenn Maynard <glennm@mediaone.net>
	Threadsafed child.c; indented

1999-10-30  Glenn Maynard <glennm@mediaone.net>
	dxmalloc() now zeroes out the region (reasonable default, and some
	of my sources expect this)
	
	Added child handler (child.c)
	Added resolver (res, darxite_resolve)
	darxite_resolve to libexec

	Removed gethostbyname mutex (no longer needed)

1999-10-28  Ashley Montanaro  <hell@ukgateway.net>

	* library/files.c: Trailing slashes are now allowed in directory
	names, eg. output directory.

1999-10-26  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Experimentally: when a file is cancelled, use
	pthread_cancel instead of doing a longjmp.

	* configure.in: Made it possible to force the daemon to be
	multithreaded.

	* library/main.c: A couple of small fixes to do with client DB.

	* clients/gtk/dxpref.c: Changed button captions to follow new
	config scheme.

1999-10-21  Glenn Maynard <glennm@mediaone.net>
	Nightscape compiles on glibc 2.1.1; needed an explicit stdio.h include

1999-10-21  Ashley Montanaro  <hell@ukgateway.net>

	* library/main.c: Fixed bug in GetResponse() where embedded \ns
	were not removed when the buffer was full.

	* daemon/global.c: Added simple timestamp function for profiling.

1999-10-20  Glenn Maynard <glennm@mediaone.net>
	Don't complain when the remote FTP end closes data, we try to send
	QUIT and the other end already closed control (no more EPIPE)

	Close the socket on EOF in GetResponse

	TODO: move GetResponse and friends to ftp.c

1999-10-19  Glenn Maynard <glennm@mediaone.net>
	DX_GetResponse now returns DX_LIB_DISCONNECTED on disconnection.

1999-10-19  Glenn Maynard <glennm@mediaone.net>
	DX_InitLibrary and DX_CloseLibrary are gone.  Error logging
	is now initialized on the first call to dl_error(); shutdown
	is done with atexit().

1999-10-16  Glenn Maynard <glennm@mediaone.net>
	Removed obnoxious sleep() hack for forking; replaced it with a more
	reliable pipe hack

1999-10-16  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/main.c: Fixed problem introduced which meant that remote
	connections stopped working.

	* library/files.c: Moved over to using the new-style config file
 	names - previous change was foiled by CVS mess-ups - and added
 	check for premature completion which needs testing.

	* daemon/network.c: Stopped files whose servers don't support
	resume (Geocities) being automatically disconnected.

	* daemon/main.c: Small fixes. Also a fix to stop massive download
	when a file's current size is bigger than the size of the first
	"chunk" would be.

1999-10-15  Glenn Maynard <glennm@mediaone.net>
	Made most places use FreeSocket; CmdResponse is now always
	alloced (small use of memory for a decent cleanup.)  It might be
	better to simply strredup into CmdResponse--no waste, anywhere,
	and no more max length (though a sanity check would still be wanted,
	of course.)
	
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	Condensed GetResponse() somewhat: append buffer in one place,
	etc.

1999-10-14  Glenn Maynard <glennm@mediaone.net>
	FreeSocket frees the actual struct and sets the pointer NULL
	Changed frees for sockets

1999-10-14  Glenn Maynard <glennm@mediaone.net>
	Moved strredup into util
	Added util.h to darxite.h
		I don't particularly like doing this: these functions are
		generic, not DX-specific.  However, I don't really see a
		better way--and it's not too big a deal, as the namespace
		isn't guaranteed to be clean with libdarxite anyway.
	Added includes.h to darxite.h
		util.h depends on regex; also, with this, we can recommend
		to clients "always include darxite.h first; then include
		anything else you need", as includes.h handles almost every
		include they'll need (current exceptions: rare arpa stuff,
		and client-specific stuff like gnome and readline.)
		
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	dl_ReadFileLine: wasn't always calling dl_error(). removed some
	unneeded code

	moved util.c to the library (should I move buf.c too?)

	library/files.c: added strip() calls
	
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	error() now restores errno, so it's safe to use between system calls
	and conditionals on their errno response
	
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	HttpParseHeader now removes read headers, so CheckReadSockets doesn't
	have to deal with offsets.
	
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	Fixed a nice little bug I introduced (all files would be proto
	FTP)
	
1999-10-14  Glenn Maynard <glennm@mediaone.net>
	CheckFileSpeed linearized--no more 5 line if.  Backup included inline.

1999-10-13  Glenn Maynard <glennm@mediaone.net>
	Misc. minor changes in daemon/files.c; use diff to see them

1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Fixed some compilation warnings in the daemon

1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Moved some (most) daemon-only stuff from the library to the daemon;
	the remaining calls mostly involve logging.  Renamed DX_ and dl_
	calls moved; most are sock_* now.
	
1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Made gnome/common use BinPath to find dxftp

1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Use strip() to clear newlines
	
1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Slightly reformatted usage to match GNU --help (not completely);
	removed one getopt_long call; moved defines specific to option
	parsing to the parser; exit on 1 if a -k or -r can't connect
	
1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Autoconfed a few includes in the daemon; added includes.h, used in
a few daemon sources (should be used in all)

1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Added abstract buffering routines in buf.c

1999-10-12  Glenn Maynard <glennm@mediaone.net>
	Added small routine set util.c to daemon; this may become available
	in the library later.

1999-10-11  Glenn Maynard <glennm@mediaone.net>
	Daemon:

	Darxite daemon now does not exit until it is up and ready to handle
	connections; this way, programs don't need to start the daemon, and
	poll the socket (or arbitrarily pause, which is unreliable--what if
	darxite happens to be on a lagged NFS connection, and takes 5 seconds
	to start?) Moved setsid() and atexit() calls; functionalized signal
	handler setup and moved after fork().  Added a DX/dl_SetSocketPid to
	redo the PID setting, since it changes after setting up the socket.
	(That one took a while to track down, heh :)
	  Problem: currently need to sleep(1) after forking, or when the panel
	  applet starts the daemon, it can't connect.  I suspect it's trying
	  to connect before the signal handlers are set up, so we never get the
	  SIGIO.  It's still faster this way, but optimally we should get rid
	  of SIGIO ...
	  
	This also fixes output problems--I'd start the daemon when it was
	running, and it'd complain about it after forking, ending up at the
	end of another line (my tcsh prompt).  This also applies to the usage
	page.  It doesn't fix the other places it outputs after forking, of
	course.

	Added -f/--foreground to not fork (primarily for gdbing)

	In an attempt to figure out exactly how the main loop works, moved it
	to its own function; it's a bit neater this way, too.

	Exit with 1 if fork fails, instead of trying to continue in the
	foreground.

	Gnome:

	Fixed two small fd leaks in darxite-monitor (wasn't closing lost conns;
	was using open() to check for file existance instead of access())

	Simplified get_data percent calc

	Could this be made to work without depending upon SIGPIPE?  (Ignoring
	it, and watching reads for EOF.)  This tends to work better, for the
	same reasons as above (signal handler stuff.)

	Updated darxite-control start_stop_daemon with changes made to monitor

	darxite-control doesn't open a window; this happens on the main
	branch, so I don't *think* it's something I did.

	check_daemon timeout always runs; returns without doing anything if
	the daemon is already connected.  Simplifies things.

1999-10-11  Glenn Maynard <glennm@mediaone.net>
	Merged changes.  Fixed a make distclean problem in gnome/common.
	Added clog.

1999-10-11  Manuel Clos <mclos000@correu.udg.es>
	Fixed some files to include file id in completions (files:1170),
	include file id in FastFileStatus command and a missing line
	that was causing incorrect FileStatus file id parsing.

1999-10-04  Ashley Montanaro  <hell@ukgateway.net>

        * getright.pl: Added script to load GetRight files.
	
1999-10-03  Glenn Maynard <glennm@mediaone.net>
	Added @DARXCFLAGS@ for all makefiles

	New configure option: --with-debug, disables optimizations and adds
	debug symbols

	gnome client common/ dir now makes a static lib (never a shared--this
	is an internal library only); now that directory is self-contained (no
	rules for making those files is hidden off in the other makefiles.)
	Added a makefile for this, too

1999-10-01  Glenn Maynard <glennm@mediaone.net>

	Added DX_BinPath prototype (oops.)

	Changed darxite.h includes from relative local includes
	("../../../darxite.h") to global includes (<darxite.h>); easier to
	maintain, and removes the clients from the server more.

	For the above, added an -I$(top_srcdir); changed dependencies to
	darxite.h this way, too.

	Gnome: made includes of common/*.h local includes (helps to tell what's
	where; and they're not global includes, anyway.)

	Changed @CC@ references to $(CC) and added CC = $(CC); make will now
	call @CC@ for linking instead of the default (usually cc.)

	Fixed library/ 'make shared' (though 'all' is normally used, and that
	worked.)

1999-09-29  Ashley Montanaro  <hell@ukgateway.net>

        * clients/gtk/dxpref.c: Changed config file names to
	~/.darxite/conf and /etc/darxite.conf.
	
	* daemon/files.c: Made buffer size configurable. This can improve
        performance dramatically. Increased default size to 16K. Also
	changed file ID creation slightly.

1999-09-29  Glenn Maynard <glennm@mediaone.net>
	* Merged changes from v0_4_make1:

	Usage of shared libraries is now transparent to all libdarxite
	targets; now only library/Makefile has special rules for shared libs.

	Changed compiling of library/*.c to *.so for shared library objects to
	*.lo to avoid confusion with the actual linked library (this is how
	libtool does it.)

	Compiling with shared is now identical to with static.  One trick:
	can't run the apps without installing the lib; but the only time
	clients should be run before installation is while coding, and that
	should be done statically anyway.  (Almost all programs that use
	shared libraries which are in the same package as that library have
	this problem--except libtool apps, which work around this with
	transparent wrapper shell scripts that set LD_PRELOAD.  This works
	nicely, but a major project unless using libtool.)

	The above simplified most makefiles somewhat.

	Fixed some compilation rules: shouldn't run extra links anymore.

	Don't give CFLAGS to the linker.

	util/* compiles to objects, just like everything else, for consistency
	(and maybe a negligible speed increase when debugging.)

1999-09-28  Glenn Maynard <glennm@mediaone.net> 

	* Merged changes from darx-glenn:

	Put darxiterc in the prefix; this required a small addition to the API:
	const char DX_GlobalConfigPath(void);
	Documentation updated; gtk client updated.

	If /etc/darxiterc exists, and no --sysconfdir is given, autoconf issues
	a warning.

	Make 'make clean' not remove any autoconfed files, so './configure ; 
	make clean all install' works (previously, install would bail because
	clean removed some files that only distclean should.)

	Make 'make distclean' remove the root makefile.  (This file probably
	shouldn't be on CVS, either.)

	Create bindir and sysconfdir if needed.
	Added a mkinstalldirs; mkdir -p isn't portable (but not all instances
	of mkdir -p have been changed.)

	Changed "${prefix}/bin" to "${bindir}"; added needed expansions.

1999-09-16  Ashley Montanaro  <hell@ukgateway.net>

	* library/main.c: Added client database. This is very nice. Added
	support for this DB to NoctFTP.

1999-09-15  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Fully switched over to FastFileStatus. This
	breaks old clients. Also created dxclip, which is very nice. Added 
	"new file" event.

1999-09-13  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/ftp.c: Made all apps free memory used for scandir. Added
	function to parse redirection event.

	* daemon/clients.c: Added "Exit" event. Also fixed some stupid,
	stupid bugs which have been there since day one.
	Made it more friendly when you telnet in.

	* daemon/files.c: Made mirror reading on startup considerably less 
	lame. This may cause problems later.

1999-09-12  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/ftp.c: Recursive FTP upload support. Woo-hoo!

1999-09-10  Ashley Montanaro  <hell@ukgateway.net>

	* clients/cmdline/commands.c: Fixed obscure problem with listings, 
	and not-so-obscure problem with aliased servers.

1999-09-02  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Fixed obscure bug which sometimes caused HTTP
	downloads from slow servers to stop immediately.

1999-09-01  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Added code to file status response. Made dsgtk 
	and darxstat work with it.

1999-08-31  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Maybe reget will work properly now. Also added 
	FileCount command and "e" flag to force a massive download: this
	was included in darxget.

1999-08-30  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Fixed some massive download stuff.

1999-08-29  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/files.c: Made the massive download despooling process 2x
	as fast.

	* clients/gtk/darxstat-gtk.c: dsgtk now works with massive
	download and large batches. Snapshot 0.32 released.

	* daemon/sockets.c: Made GetResponseLine() check for EINPROGRESS
	as well, which seems to help with stability when there are many
	files being transferred at once... but not enough.

1999-08-27  Ashley Montanaro  <hell@ukgateway.net>

	* clients/gtk/noctftp/main.c: Added simple DnD support to
	NoctFTP. Also made it fail more nicely when a directory doesn't
	exist.

1999-08-26  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Added DeleteFileLog command.

	* clients/util/darxget.c: Made "blocking" option work again.

1999-08-25  Ashley Montanaro  <hell@ukgateway.net>

	* clients/util/darxget.c: Made darxget and dxftp detect an output
	path of "." properly, which also needed some changes to the daemon.

	* clients/gtk/dxpref.c: After an unforseen break, added massive
	download configuration to dxpref.

1999-08-02  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Added HTTP massive download support. Also
	reorganised the daemon's code so it's more logical and readable.

1999-08-01  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/files.c: I've been hacking around with massive downloads
	so they now pretty much work for FTP.

1999-07-31  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Fixed, probably, a problem that was causing
	massive download to crash sometimes. Also added "a new connection
	for every xKB" massive download. The crash when downloading huge
	numbers of files isn't fixed; it seems to be a problem with
	getting the FTP response.

1999-07-25  Ashley Montanaro  <hell@ukgateway.net>

	* clients/util/darxput.c: Added the hack to read a file from stdin 
	to darxput. Also made darxget use auto-generated temp file names,
	so more than one copy can be run safely at once.

	* clients/util/darxget.c: Added the option to get URLs from stdin
	to darxget. Users who want closer control than this can use darxcmd.

1999-07-24  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Made the daemon pass a User-Agent string when
	getting a file by HTTP. Also found out that "install -D" doesn't
	always work and changed to another method. Make uploads use STOR
	by default, and added the "c" flag to force an append.

1999-07-23  Ashley Montanaro  <hell@ukgateway.net>

	* library/files.c: Added configuration settings for "massive
	download" and fixed problem that meant settings didn't always
	change properly after a "ReloadConfig" command.

1999-07-22  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/files.c: Added "pr0n mode" (flag '!') where the daemon
	will scramble local paths you don't want people to read.

	* library/main.c: Added function to parse control characters
	(eg. %20) in URLs, made DX_ParseFileStatus() use it, and made
	local path generation use it too.

1999-07-21  Ashley Montanaro  <hell@ukgateway.net>

	* Makefile.in: After *another* major HD problem, fixed the
	Makefiles again so installing into a non-existent directory works.

1999-07-15  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: Fixed bug where a HTTP header would be
	included in a file that had been resumed. Also made the daemon
	retry if it fails to write data to the disk - this should fix
	those annoying "Write errors".

	* daemon/files.c: Fixed bug with rewriting files which meant that
	some files would get "lost" from the batch.

1999-07-13  Ashley Montanaro  <hell@ukgateway.net>

	* configure.in: Added "uninstall" target.

	* clients/gtk/noctftp/main.c: Uploading now works in NoctFTP,
	which was surprisingly easy. When I get round to doing recursive
	upload, that should also work.

	* daemon/files.c: Improved alias handling and generation, made
	dxftp download to current directory.

1999-07-12  Ashley Montanaro  <hell@ukgateway.net>

	* library/main.c: Fixed bug: library wasn't closing file
	descriptors when clients couldn't connect, etc. Spotted by Manuel
	Clos.

	* daemon/network.c: Added auto-working-out of remote filenames for
	uploads. darxput seems to work as well.

	* daemon/files.c: Fixed bug with removing aliased server files
	from batch.

1999-07-10  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/network.c: After releasing version 0.3, started on adding 
	upload support. FTP uploads now kind of work, and I've created a
	new client - darxput.

1999-07-09  Ashley Montanaro  <hell@ukgateway.net>

	* clients/util/darxget.c: Added -f option to send a raw set of
	flags.

1999-07-08  Ashley Montanaro  <hell@ukgateway.net>

	* clients/gtk/noctftp/connect.c: Changed the mirror list packing
	function to be gtk_scrolled_window_add_with_viewport() again. It
	seems to work with a newer version of GTK - throwing up bugs in
	other people's code is fun :)

	* daemon/network.c: Fixed killer HTTP redirect bug and made
	regetting automatically unpause a file.

1999-07-04  Ashley Montanaro  <hell@ukgateway.net>

	* clients/gnome/control/functions.c: Hopefully, made the
	darxite-control applet understand multiple responses. Also fixed a 
	couple of other minor bugs.

	* library/main.c: Changed the GetResponse() function to stick
	multiple responses together, which means that clients should stop
	"losing" them under heavy load. But they'll need some more logic
	to detect them.

	* clients/gtk/dxpref.c: Fixed some bugs: persistent file log now
	works, as does "leave files in batch". Also fixed bug which
	sometimes caused a program to be run multiple times. And, I think, 
	the bug which sometimes sent an error event to a client that
	didn't want it. Bug reports are helpful things...

1999-06-26  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/clients.c: Added "Reget" command, to get a file from the
	beginning, even if it's being transferred. Also documented file
	log "reason" field a bit.

1999-06-25  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/error.c: Added error notification event.

	* daemon/files.c: Fixed some problems with URLs with spaces in them.

1999-06-23  Ashley Montanaro  <hell@ukgateway.net>

	* clients/cmdline/commands.c: Fixed dxftp building with readline
	4. Also fixed a killer listing bug.

	* clients/gtk/noctftp/main.c: Clicking on the icon in the top left 
	of a lister will now refresh the list.

	* daemon/network.c: Fixed some bugs in file resume. Basically,
	over the last few days I've just been fixing bugs and tweaking
	things a bit.

1999-06-21  Ashley Montanaro  <hell@ukgateway.net>

	* daemon/main.c: Added the ability to automatically disconnect
 	when the batch is complete. Also a couple of extra man pages and
 	bug fixes, and played around with a KDE DnD client. There isn't
 	much point in one atm, though, since you get the same functionality
	from just adding darxget to the panel.

1999-06-18  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Started to add recursive HTTP download
	support. Also started a Darxite man page.

1999-06-17  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Fixed a couple of buffer overflows - long URLs
	should work now. Also fixed a bug in darxstat which truncated
	statuses at 80 columns.

1999-06-16  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Fixed, I think, the bug that only allowed
	HTTP redirecting to work via a proxy. Also fixed problems with
	recursive download by forcing spooling to be disabled.

1999-06-10  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: Added support for notifying clients when a
	file is complete or the config changes. This will probably need
	more doing to it, but the main work involved is at the client end.

1999-06-06  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Fixed some bugs in recursive download, fixed a 
	couple of other things and added support for recursive downloading 
	to dxftp.

1999-06-05  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/main.c: Fixed a couple of bugs in NoctFTP
	and added support for recursive downloads.

	* clients/util/darxget.c: Rationalised the options a bit and added 
	recursive download support.

	* clients/util/darxstat.c: Fixed bugs when there are a large (>20) 
	number of files in the batch. Also improved dsgtk in this respect.

	* daemon/network.c: Fixed some bugs involving the recursive
	download that have made it useable.

1999-06-04  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Started adding recursive FTP download
	support. This could take a long time... but I've already got it
	kind-of working, which is a nice surprise. Stressing the daemon
	and clients like this has also thrown up some other bugs.

	* daemon/files.c: If the local path ends in a '/', the daemon will 
	now append the remote filename to it when downloading.

1999-06-03  Ashley Montanaro  <scribble@enterprise.net>

	* clients/util/pdarxget: Created a very, very simple
	"darxget"-like client written in Perl. Also started a KDE panel
	applet, but probably won't do much on it until I get home.

1999-06-02  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: Fixed bug which meant you couldn't resume
	files that were added to the batch paused, and fixed bug which
	made a file's "helper" program run when it was cancelled.

	* clients/cmdline/dxftp.c: Added a couple of small improvements to
	dxftp - added mv and fixed rename.

	* daemon/files.c: Added an option to leave complete files in the
	batch until they're cancelled by a client or the daemon
	exits. Also added a command to only remove files from batch if
	they're complete.

1999-06-01  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/sockets.c: Changed PASV string parsing so it should now
	work with Roxen Challenger.

	* daemon/network.c: Added file flag to "reget", ie. delete the
	current file and start from 0 instead of resuming. Also added the
	option to do this to darxget.

	* daemon/files.c: Added option to do file logging to the daemon,
	and a setting for it to dxpref. Also added an option to delete the 
	log file when the daemon exits.

1999-05-31  Ashley Montanaro  <scribble@enterprise.net>

	* library/main.c: Added local path and transfer time to the
	FileStatus message. When I implement file logging etc., the same
	format, and hence the same parser function, can be used.

1999-05-30  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Added the ability to get file:// URLs to
	Darxite. This will also support tilde-expansion.

	* clients/gtk/nightscape.c: Fixed bugs in the configure scripts
	and the daemon, and have made some MAJOR improvements to
	Nightscape... at this rate it might actually be useable soon.

	* daemon/files.c: Fixed the redirecting-with-blocking-clients
	problem.

1999-05-29  Ashley Montanaro  <scribble@enterprise.net>

	* configure.in: Made it possible to disable building GTK and GNOME 
	clients and improved the help slightly.

	* daemon/network.c: Now, even when not connected to a file's
	server, its total size is saved in the batch. This means that
	darxstat can report the % complete, and Tim can't complain any
	more. Also fixed the bug with HTTP file sizes.

	* daemon/clients.c: Added command to pause/cancel/resume all files 
	in one go.

	* clients/gtk/dxpref.c: Added ability to set HTTP proxy settings
	to dxpref.

	* daemon/network.c: Added support for HTTP 301 "permanently moved" 
	responses, which no other url-grabbing tool (afaik) supports.

	* daemon/main.c: I think I've finally fixed the pausing-crashing
	bug, via a completely different, and simple, approach. Also found
	and fixed a bug which meant that, with the "open output file"
	option, you could only download 4 files in one session...

1999-05-28  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Fixed a few bits in darxget and made it
	possible to download http indexes - eg. http://slashdot.org/.
	Also added simple HTTP proxy support, which is surprisingly easy.

	* clients/gtk/dxpref.c: Fixed a couple of small things in dxpref
	and added the ability to turn error logging on or off. Also
	improved the configure script & Makefile set-up a bit.

1999-05-27  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/error.c: Made error logging a variable which can be set
	in your .darxiterc. This has the nice side-effect that error
	logging can be turned on and off while the daemon is running.

	* clients/util/darxget.c: Added hack-ish ability to redirect
	darxget output to stdout, which should be quite useful.

	* daemon/transfer.c: Added/changed some things that should help
	with the annoying crash-on-pausing bug, which is actually really
	complicated to fix properly.

1999-05-25  Ashley Montanaro  <scribble@enterprise.net>

	* library/main.c: Fixed some small bugs involving HTTP that
	stopped a lot of things working... pausing still crashes though,
	as does cancelling. But resuming seems to work now.

	* daemon/files.c: The daemon will now expand tildes correctly in
	output directories etc.

1999-05-22  Ashley Montanaro  <scribble@enterprise.net>

	* configure.in: Added check for libreadline and mentioned need for 
	it in the README file.

1999-05-20  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/nightscape.c: Started on 0.3 stuff by cleaning up
	some socket stuff and adding the basic ability to transfer via
	HTTP. Also started a new Darxite client which will be a (*very*
	basic) Web browser.

1999-05-19  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/connect.c: Finally fixed the mirrors
	dialogue. This should mean that the whole thing's ready for a 0.2
	release.

1999-05-15  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: A password is now required to connect to the
	daemon remotely; all clients have been updated so they now ask for 
	it. The password is set by a command-line flag to the daemon.
	Later in the day, tried to get mirror dialogue in NoctFTP to work
	- no luck so far, but discovered a MAJOR bug in removing stuff
	from linked lists that affected clients and files. Oops.

1999-05-14  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/darxstat-gtk.c: Fixed annoying pausing bug that's
	been around for ages.

	* daemon/files.c: Finished implementing MaxSimDownloads. Also
	fixed a few bugs involving pausing.

1999-05-12  Ashley Montanaro  <scribble@enterprise.net>

	* clients/cmdline/dxftp.c: Made aliases work properly and really
	long lists as well.

	* clients/gtk/noctftp/connect.c: Fixed a couple of bugs in
	NoctFTP, which makes life slightly nicer.

1999-05-11  Ashley Montanaro  <scribble@enterprise.net>

	* configure.in: The autoconf stuff seems to be working now and is
	actually useful. As well as this, I've added/updated a bit of
	documentation.

	* daemon/network.c: When a file is starting transfer, the daemon
	will now recurse symbolic links to find its size - this avoids
	problems later.

1999-05-09  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Stuck a mutex around the batch-modifying
	functions, which will hopefully fix a couple of problems.

	* clients/gtk/noctftp/main.c: Added anti-idle functionality and
	the ability to run dxpref from NoctFTP.

	* daemon/main.c: Added a command-line option to reload the config
	files and fixed a bug when zero-length files were transferred.

	* daemon/network.c: Fixed bug which meant that restoring using the 
	"rename file" option would always overrun. Whoops!

1999-05-05  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: Fixed a couple of show-stopping bugs caused by 
	linked lists. A couple of days ago, I added the ability to
	auto-run a program when download is complete; this now seems to
	work 100%. Autoconf stuff has been started but is basic and
	useless atm. Also vaguely started the MaxSimDownloads thing. Also
	fixed a problem with paused files that meant the daemon was using
	too much CPU time.

1999-04-20  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/connect.c: After a long gap caused by a
	holiday, started work on Darxite again. Filed a couple of rough
	edges off a major restructuring of the daemon started beforehand,
	and fiddled around with some bits of NoctFTP.

1999-03-04  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/dxpref.c: What I've been doing recently is starting
	a simple preferences editor (or "Darxite Control Centre") in GTK,
	and it's now quite useable, but could look nicer.

1999-02-25  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/main.c: Over the last couple of days, added
	ability to add files to the batch paused ("queue them") to the
	daemon, darxget and NoctFTP. Also added remote daemon connection
	to NoctFTP.

1999-02-18  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/error.c: Implemented ability to redirect output to a
	program. This is really good because you can do almost anything
	with it, eg. e-mail it to anyone, display it in an xterm, display
	it in big letters... the world is your oyster.

1999-02-16  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/error.c: Implemented tab-completion for both remote and
	local files in dxFTP, and added the ability to redirect output to
	any device to the daemon. This is really useful for eg. X, so you
	can send all output to /dev/console.

1999-02-15  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/ftp.c: Fixed an annoying buffer-overflow bug in the
	response-getting code. I should really be doing more stuff...

1999-02-06  Ashley Montanaro  <scribble@enterprise.net>

	* Developing: Implemented remote daemon connection in dxFTP,
	changed it a bit in darxcmd and basically fixed it in the
	daemon. The setuid stuff should work now... maybe. I also started
	the file "Developing", which contains information on developing
	clients for Darxite, and updated some docs and stuff.

1999-02-05  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/dxaddr.pl: Recently I've been working on dxaddr, the 
	GTK+-perl based "address book", and now it can load, edit and save 
	a server config file. atm it clobbers any mirrors, but apart from
	that it works 100%.

	As far as the daemon goes, I made some changes so that pausing and 
	continuing actually work. Also added the beginnings of
	multi-select support to NoctFTP, ie. you can now download multiple 
	files at once, and a few other things work.

1999-01-30  Ashley Montanaro  <scribble@enterprise.net>

	* clients/cmdline/dxftp.c: Over the last couple of days I've added 
	quite a bit to dxFTP, and now you can do local listings and
	stuff. It also uses GNU readline now, so command-line editing and
	a history mechanism come for free.

	Darxstat-GTK - the name's looking even less appropriate now - can
	pause or cancel files now. I also added the ability to keep the
	local file open when downloading, which gives a small speedup, and 
	fixed a couple of other little things in the daemon. And I started 
	that GTK+-Perl client too.

1999-01-21  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Discovered a nasty thread problem a few days
 	ago, which turns out to be caused by Red Hat's version of
 	glibc. Nice one. Make sure you're using version 2.0.7-19 or later!
  	Added built-in paths to servers, which means that mirroring can be
 	actually useful now. Also added ncftp-style alias creation. An
	address=book client can't be too far off... /me considers writing
	it in gtk+-perl.

	Now Darxite will block client messages while it's connecting, so
	the occasional segfaults that occurred can't do so any more. I
	don't think this is right, though, because it means that there
	won't be any user feedback during this time.

1999-01-18  Ashley Montanaro  <scribble@enterprise.net>

	* library/sockets.c: Started stuff for 0.2 (Gargravarr) today,
	with a couple of cleanups and the beginning of remote client support.

1999-01-16  Ashley Montanaro  <scribble@enterprise.net>

	* Makefile: Released Darxite 0.1 today! Now for the flood of fan
	mail and prank phone calls...

1999-01-11  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/ftp.c: Changed some stuff to deal with Microsoft IIS
	weirdnesses - eg. getting no data for ages, no "total" string when 
	listing, etc.

	* clients/gtk/noctftp/xpm.c: Non-anonymous downloads now work!
	Fixed a small bug in the daemon and added a load of pixmaps to
	NoctFTP, for file types etc. Also added display of permissions and 
	timestamp.

1999-01-10  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/main.c: Fixed a few bugs and generally
	improved robustness in the daemon. Added some stuff to NoctFTP,
	including a penguin, and it looks nicer now.

1999-01-09  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Fixed some stuff, added some stuff. Still not
	as stable as I'd like but at least it works with ProFTPD
	now. Added quite a few things to NoctFTP, bits to the stat
	programs as well.

1999-01-08  Ashley Montanaro  <scribble@enterprise.net>

	* library/main.c: Today I fixed an annoying and long-standing bug
	which meant that long lists wouldn't work, which involved redoing
	a lot of basic response-getting stuff. Also made a lot of NoctFTP
	non-blocking and added some features to it.

1999-01-07  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/noctftp/main.c: I haven't updated the change log for 
	a while, but I've done loads of stuff, including some major
	additions to Darxpeed (now called NoctFTP) so that it's now nice
	and usable. Also added some fixes to the daemon and a "Cancel"
	button to darxstat-gtk.

1999-01-01  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Mirroring now seems to work fine, and can be
	activated by either the rx rate getting too low or the time since
	last read getting too long. Did some other bits and pieces in the
	daemon, added quite a few commands to dxFTP and added all the
	Sunsites to the supplied server DB. Only a few features left to
	add now; most of what's left before a release is bug fixes and
	beefing up the clients.

1998-12-31  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/network.c: Cleaned things up generally in the
 	daemon. Hanging up in the middle of a transfer now doesn't break
 	anything. Also did some work on dxFTP. Next step is to get aliases
 	and mirroring working properly.

1998-12-30  Ashley Montanaro  <scribble@enterprise.net>

	* clients/cmdline/dxftp.c: Did some more work on dxFTP, it's now
	usable. Also changed some stuff in the daemon which seemed to make 
	it slightly more stable.

1998-12-28  Ashley Montanaro  <scribble@enterprise.net>

	* clients/cmdline/dxftp.c: After a long period of being lazy, I
	started work on Darxite again with a new client, a command-line
	FTP program imaginatively called dxFTP. Also created a useful
	URL-parsing routine for the library.

1998-10-29  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: Today I fixed a couple of overly annoying
	bugs: response-getting works properly again and should be more
	robust this time, and listings of directories with loads of files
	in (eg. Sunsite) shouldn't crash the daemon any more.

1998-10-28  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/ftp.c: Tonight I fixed a VERY long-standing and very
	annoying bug which caused the daemon to lock up sometimes when a
	client sent it a command. In doing so, I made some major changes
	to the basic socket code and broke at least one other thing, but
	I'm sure it's fixable :) I also wrote a simple darxstat program
	including some dodgy ANSI colour.

1998-10-27  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/clients.c: Added ability to kill Darxite by sending it
	the command "Kill" or by running it with the -k option. Also fixed 
	a LONG-standing bug in the library which caused clients to go into 
	an endless loop when Darxite was closed.

1998-10-26  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/Makefile: Over the last few days I've made some changes
	to Makefiles so that you can build the whole Darxite tree by
	typing "make", and added static library support. Darxite compiles
	cleanly and works (almost) on the compsoc machine, and has been
	running for ages and has downloaded a few large files.

	I've also improved the documentation and added some small features 
	(like quiet exiting), as well as finishing the mirror-reading-from 
	file bit, which means that auto-mirroring should be on its way
	soon.

1998-10-19  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Recently I've been doing some installation and
	release notes for when we finally get to 0.1, and tonight I
	started on auto-mirroring support by doing some exciting file
	handling code. This fixed a few bugs, and config file lines are
	now pretty much according to spec (including multi-line
	support). Hopefully I'll get on to the actual mirroring sometime
	soon.

1998-10-17  Ashley Montanaro  <scribble@enterprise.net>

	* clients/gtk/darxpeed.c: Over the last few days, I've started a
	GTK-based FTP client for Darxite, which is now at the stage where
	you can log into sites, change directory, and download files. I've 
	also created a simple FTP-style error number scheme, so clients
	can come up with their own error messages, and added preliminary
	and untested timeouts on host lookup and connection.

1998-10-08  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/main.c: Fixed flags for enabling/disabling spooling and
	file renaming so they actually work, and added ability to set them 
	on a per-file basis to darxget. Also seem to have fixed a weird
	bug where files would hang forever in the "Initialising" state.

1998-10-06  Ashley Montanaro  <scribble@enterprise.net>

	* clients/util/darxget.c: Created a simple "darxget" utility a few 
	days ago to make it easy to get URLs from the command line. Today, 
	added ability for the daemon to notify a client when a file is
	complete, which enabled synchronous transfer mode for darxget.

1998-09-27  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/files.c: Made the parsing of file info lines, eg. from a
	batch file or passed as arguments to the "Get" command, better, so 
	that you can now specify a local path and a couple of flags, which 
	are pretty useless really.

	* daemon/main.c: Slightly delayed from a couple of weeks ago:
	multithreaded opening of connections now seems to be reasonably
	stable, though it needs more testing. There is also the feature
	that you can turn all threading off by setting an option at
	compile-time.

1998-09-15  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/main.c: Added ability for clients to log in to an FTP
	server, list files, etc. Made sockets use dynamic allocation for
	large strings. Added GPL.

	* clients/util/darxcmd.c: Added "q" command-line option for quiet
	mode, where responses from the daemon are got but not displayed.

1998-09-14  Ashley Montanaro  <scribble@enterprise.net>

	* daemon/main.c: Changes made to the daemon today include fixing a
 	stupid bug with de-spooling files, adding more file status
 	information, batched file removal, and other miscellaneous
 	improvements.

	* library/main.c: The library has been updated in the last few
	days to provide simple functions for opening and closing client
	connections, getting a response and file status retrieval. The GTK 
	client has been updated to take advantage of these features.

	* clients/util/darxcmd.c: The darxcmd utility was updated to allow 
	the use of mulitple commands and reading commands from a file,
	making it useful for scripts etc.

1998-09-11  Ashley Montanaro  <scribble@enterprise.net>

	* Makefile: After a development meeting with Ben, the ncurses
	client is now fully under development, with current features
	including communication with the daemon and a rudimentary
	interface. As Ben will be the maintainer of the ncurses client,
	development will be slowed by his trip to Turkey, but will resume
	when he returns.

	The daemon is now at a stage where it seems stable for
	local FTP, and needs more testing remotely. It supports multiple,
	batched file transfer, spooling and multi-threaded copying,
	communication with and control by client programs, multiple users, 
	etc. It now needs to be stabilised and tested, and important
	features to implement include better batch file parsing, more
	comprehensive client control, and batched file removal.

	Other client programs include the low-level utility "darxcmd",
	which simply sends a command to the daemon, and a simple GTK-based 
	client which displays the status of current file transfers. These
	will be maintained by me and also serve as example programs for
	future client programmers.

	Ben and I are very confident of the future use of the system, and
	are still motivated to continue development. Hopefully this change 
	log will be updated more frequently in future.

1998-08-09  Ashley Montanaro  <scribble@enterprise.net>

	* Makefile: Had first design meeting with Ben. Specified some file 
	formats and chose a project name of "Darxite" and a release name
	of "Zarniwoop" for versions up to and including 0.1. Also
	allocated project workload between us. Future specifications will
	be posted on the project's Web site, currently
	http://homepages.enterprise.net/scribble/projects/darxite/.

1998-08-03  Ashley Montanaro  <scribble@enterprise.net>

	* Makefile: This seems a good time to start a change log. This is
	the first entry for the as-yet unnamed FTP project involving
	myself and Ben Clarke.
