Tue Jun 18 20:29:38 EST 2002
	Released GNUnet 0.4.2.
	
Tue Jun 18 20:20:55 EST 2002
	Fixed bugs in blacklisting IPs. Added feature to allow specification
	which networks are trusted enough to connect to the trusted TCP
	port (TCP/2086 no longer needs to be firewalled!).
	
Tue Jun 18 02:35:53 EST 2002
	Fixed problems with ttl (negative TTL queries were forwarded),
	also better flushing of buffers and fewer SKEY exchanges due to
	a now working implementation of the blacklist. A DNS lookup for
	the NAT-box-IP configuration was also added.

Sun Jun 16 04:11:01 EST 2002
	Added code to provide statistics (gnunet-stats).
	Incomplete.

Sun Jun  9 22:56:02 EST 2002
	Released GNUnet 0.4.1.
	
Sat Jun  8 05:00:36 EST 2002
	Several small bugfixes (list of shared files not updated on 
        insertion, highest-bit of trust not interpreted as dirty,
        rpm dependency on libextractor added.
        Also many improvments to the build process.

Wed Jun  5 17:01:58 EST 2002
	Made sure that HELOs don't trigger Ping-Pong if we don't
	really learn anything new.

Tue Jun  4 17:17:45 EST 2002
	The port numbers were not in network-byte order. Fixing
	this is trivial, but it breaks compatibility with 0.4.0. 
	Thanks to Rick Kennell for reporting the endianess issue.
	
Mon Jun  3 20:35:47 EST 2002
	Fixed bug with CRC not endian-converted in gnunet-gtk.
	Added mimetype and filename support to gnunet-gtk.

Sun Jun  2 03:52:18 EST 2002
	Released 0.4.0.

Sat Jun  1 22:13:12 EST 2002
	Added three-way handshake for SKEY exchange. Not tested.
	
Sat Jun  1 16:55:18 EST 2002
	Fixed potential DDoS problem where malicious hosts could
	trick GNUnet servers to repeatedly probe a non-partitipating host
	trying to establish a connection. I wonder how many other
	p2p systems are vulnerable. (Fix: after HELO, play PING-PONG).
	The endianess issues should be fixed throughout the system, but
	not tested on a real machine so far. 	

Sat May 25 15:55:11 EST 2002
	Moved to new CVS server. First changes towards 0.4.0:
	* mostly-big-endian
	* insert/index via TCP
	* bugfixes (mostly performance)

Sat May 18 16:00:06 EST 2002
	Added mimetype, filename and version number to RootNodes
	(mostly incompatible change!). Added automatic generic keyword
	and mime-type extraction via libextractor to gnunet-insert.

Tue May 14 23:59:40 EST 2002
	New storage database is starting to look good. We can now store
	the data in a directory (one file per block), a gdbm database,
	and presumably (not tested) in a tdb database. 

Sat May 11 22:10:56 EST 2002
	Completed, deployed and tested the new TCPIO code. This changes
	the gnunetd-client protocol. Essentially, we convert the TCP stream
	into records with a length and type header. This should allow us
	to fix bug #212 and add other features in the future. The current
	change is really only changing the core TCP code and not anything
	around it. We should deploy some demultiplexing code later.

Tue May  7 20:56:40 EST 2002
	Added IP blacklisting (for virtual private networks).	

Sat May  4 14:08:23 EST 2002
	Fixed bug with bad insertion of files smaller than 1k.

Fri May  3 23:25:16 EST 2002
	Added IP change detection (useful for dialup) [bug #272].
	Added code to ensure that a HELO is life instantly
	after receiving it, fixing the 'unknown host,
	refusing SKEY problem' (bug #273). Other minor	
	bugfixes (#274, #283).

Sun Apr 14 22:36:03 EST 2002
	Added option to allow NAT boxes not to exchange
	foreign HELOs and thus expose the private
	network. Fixed bug that all other hosts should
	in fact do this exchange.

Sat Apr 13 11:02:59 EST 2002
	Make sure that files are readable before returning TRUE
	in assertIsFile()

Fri Apr 12 03:01:06 EST 2002
	Added padding messages with random if maximum
	packet size is not reached. All encrypted
	packets now look absolutely uniform in size
	for a non-participating adversary (before,
	a host that had few queries may have sent packets
	that were less than the maximum size).

Thu Apr 11 01:43:28 EST 2002
	Added sequence numbers to protocol to defend
	against replay attacks (bug #185). 

Wed Apr 10 02:07:25 EST 2002
	Bugfix gnunet-insert-mp3 (endless loop). 
	Updated documentation.
	
Mon Apr  8 00:07:15 EST 2002
	Fixed endless-loop bug when activemigration is turned
	on (during startup).
	
Fri Apr  5 02:03:13 EST 2002
	Released 0.3.3.
	
Fri Apr  5 00:33:42 EST 2002
        gnunet-gtk, the gtk+ based GUI is now functional and
	has all the features of gnunet-search and gnunet-download,
	including boolean queries. In fact, it is a bit better than 
	gnunet-download as it shows the progress of the download.
	The manpage for gnunet-gtk was updated. Minor bugfixes.
	
Mon Mar 25 02:59:13 EST 2002
	Changed writeFile to use a fourth parameter which is the
	desired permissions for the file. Files in data/hosts
	are now world-readable.	Created man pages

Mon Mar 18 17:56:52 EST 2002
	Released 0.3.2.

Sun Mar 17 10:47:51 EST 2002
	Got rid of far too frequent key exchange attempts.
	Added expiration for very-long-dead host keys. Stopped
	forwarding of expired HELOs (receiver drops anyway).	

Wed Mar 14 05:46:20 EST 2002
	Fixed some file location inconsistencies. All files are
	now in $HOME/GNUnet. RPM installation points to /var/GNUnet
	and the config file is ~/GNUnet/gnunet.conf
	Finished port to FreeBSD. This included mostly changes
	to src/util/statuscalls.c, but also several changes to 
	the build system. Added a stat() call in the server code
	to make sure the config file exists before sending it to
	the OpenSSL conf code. Added getopt to source to fix
	portability issues. Changed FREEBSD defs to SOMEBSD, also
	changed in configure.in. Compiles and works on at least
	FreeBSD 4.5 and OpenBSD 3.0

Wed Mar  6 23:15:36 EST 2002
	Added code for 'fast scan' of the database for
	content to discard (should be called partial
	scan). This improves the startup-time dramatically.
	Every source file got the GNU header. 
	
Tue Mar  5 22:42:36 EST 2002
	Added option for *not* participating in content
	migration. Added timeout option to gnunet-search.
	gnunetd now periodically (1h) scans for new content,
	no restarting required. 

Mon Mar  4 23:21:51 EST 2002
	Optimized routing and content migration. Distance
	of the hash to the identity of the local host is
	now taken into account for routing. Hosts give
	higher priority to content that is close to their
	identity (priority towards keeping it). If the 
	network grows, this should significantly improve
	the performance. Also, the choice of the hosts
	for routing is now based on proximity (to the
	query), the activity level of the host and its
	credit ranking.

Sun Mar  3 00:14:58 EST 2002
	Implemented binary queries ("AND") for gnunet-search.
	Made sure that content is not downloaded again if
	already present (if there is other content, we
	overwrite). Fixed bug in gnunet-download 
	(uninitialzied time-to-live).
	
Sat Mar  2 01:57:37 EST 2002
	Finished porting the download-code to C. Now files can
	be downloaded in using shell commands. No GUI though.
	Released GNUnet v0.3.1.

Wed Feb 20 23:47:19 EST 2002
	Big CVS moving operation. 

Sat Feb 16 23:17:27 EST 2002
	Started migration to GNUnet. 

Sun Feb  3 01:20:37 EST 2002
	Extracted crc32 method from zlib and put only that method into
	primitives. Reduces our memory footprint (if nobody else uses
	zlib) and we no longer depend no that library (always good).

Sat Feb  2 22:56:32 EST 2002
	Building final tarball for v0.3.0. 

Wed Jan 30 23:41:04 EST 2002
	Created mp32gnet, a tool to automaticall index mp3 files
	using information from the mp3 header as keywords (title,
	artist, album, comments). The mp3 parsing code comes from
	the GPL tool mp3info.

Tue Jan 29 17:36:48 EST 2002
        Fixed bug with files that were not closed under certain
        circumstances and lead to an exhaustion of the number of
        concurrently open files.

Mon Jan 21 23:34:44 EST 2002 
	Bumping version numbers to v0.3.0 (not yet released, needs some
	more testing to be on the safe side).
	
Sun Jan 20 02:09:06 EST 2002
	Content gathering now discards the least important
	content in favour of new, more important content (if
	there is not space for all content). The cron
	management is now used everywhere. The rpm, the init-script
	and the gproxy shell script have been revised.
	
Sun Jan 13 23:17:58 EST 2002
	Created cron management, replacing old control
	thread (allows for better timing of events).
	EvaluateContent now gets the priority of the
	query that the content had.
	
Sun Jan 13 00:54:56 EST 2002 
	Improved choice in number of hosts to forward
	queries to (now dynamic, depending on priority, etc.)
	Removed many, many allocations in print statements
	which also caused memory leaks if active (see 
	debugging.h).
	Added CRC checking of the root node in GProxy. Fixed
	problem with CRC in IBlocks for large files.
	Added dialog to GProxy to choose where to save the file.

Sat Jan  5 14:25:31 EST 2002
	Optimized routing table. Routing table is now a hashtable
	(collisions are handled by droping either the former or the
	new entry). Each bucket has it's own lock, the global
	semaphore is gone. The table has many more entries (we can
	afford that now that there is no longer a linear search).

Wed Dec 26 19:30:41 CET 2001 
	Created v0.2.0

Tue Dec 25 21:24:18 CET 2001 
	Fixed TTL errors that made queries loop. Added host-evaluation
	to policy (drop packets from untrusted hosts under load). Found that CRC-errors
	are related to policy decisions ("drop"), cosmetic fix.

Sun Nov 25 08:10:52 EST 2001
	Added triple-hash functionality and on-demand encoding (lookup.c). 

Sat Nov 24 07:46:10 EST 2001
	Added randomized choice of hosts for the hosttable.

Thu Nov 22 04:57:57 EST 2001
	Fixed another bunch of big bugs, tested, seems to work smoothly. Creating V0.1.0.

Mon Nov 19 01:22:42 EST 2001:
	Fixed biggest (show-stopper) bugs. Creating V0.0.3

Fri Oct 26 02:20:00 EST 2001:
	Created ChangeLog. Report important changes here,
	report small changes to CVS only.
