diff --git a/CHANGES b/CHANGES
index 5a9e6bd..7473bdd 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1 +1,185 @@
-0.27
+$Id$
+
+Changes in 0.27:
+ Make the Digital Unix 4.0F platform work again. Thanks to
+ Alan Sundell for helping out with this particular platform!
+
+
+Changes in 0.26:
+ Fix the configuration process so tftpd doesn't end up
+ depending on readline, which apparently could happen on some
+ platforms before.
+
+ Make parallel builds (make -j) work correctly.
+
+ Improve parsing of the "connect" command in the tftp client.
+
+ Add a -V option to both tftp and tftpd to print the version
+ number on stdout and immediately exit.
+
+ Add a -v option to tftp to start out in verbose mode.
+
+ Rewrite the man pages using standard "man" troff macros.
+
+ Enable the (limited) use of readline on systems which don't
+ have readline/history.h.
+
+ Support compiling under MacOS X with filk (see
+ ). Thanks for Justin Hallett
+ and Eric Eslinger for their help in getting this working!
+
+
+Changes in 0.25:
+ Fixed Sorcerer's Apprentice bug in both the client and the
+ server. These bugs were inherited from the original BSD code.
+
+
+Changes in 0.24:
+ Fix bugs in both client and server dealing with block number
+ wraparound, usually manifesting themselves as failure to
+ handle files over 32 MB in size.
+
+ Officially make the client a part of the tftp-hpa project.
+
+
+Changes in 0.23:
+ Correct memory overwrite bug in the tftp client when compiled
+ with readline.
+
+
+Changes in 0.22:
+ Even more portability improvements: FreeBSD and
+ Tru64/Digital Unix.
+
+ Fix tsize option on systems on which off_t is "long long".
+
+ Support large files on systems which need _LARGE_FILE_BITS or
+ similar.
+
+ Some source cleanups; change to autoconf 2.52.
+
+ Add support for readline command-line editing in tftp.
+
+
+Changes in 0.21:
+ Support running in standalone mode, without inetd.
+
+ Even more portability improvements. Now known to compile and
+ run on Linux, Solaris 5, 5.1, 6, 7 and 8, and AIX. Reports of
+ success or failure on other modern systems always appreciated.
+
+ Clean and modernize some really ugly old code.
+
+ Fix a potential illegal memory access when running in "totally
+ insecure mode" - no -s, no directories listed.
+
+
+Changes in 0.20:
+ Portability improvements. Now known to compile and run on
+ Solaris 8.
+
+
+Changes in 0.19:
+ Fork before performing tcpwrappers check.
+
+ Don't rely on nonstandard bsd_signal() function, instead
+ require that the platform has sigaction(). This is 2001,
+ after all. This may resolve some potential portability
+ problems.
+
+ Log a message if memory allocation fails, instead of dying
+ silently.
+
+ Clean up the main dispatch loop.
+
+ Use for exit codes, if it exists.
+
+ Add support for debugging remapping rulefiles; if logging with
+ -vvv tftpd will log all rules actions.
+
+ Correct the error code issued by an "abort" rule.
+
+
+Changes in 0.18:
+ Support (almost) arbitrary filename remappings via regular
+ expression-based rulesets.
+
+ Added -v option for more verbose logging.
+
+
+Changes in 0.17:
+
+ Add support for tcpwrapper checking (/etc/hosts.allow;
+ /etc/hosts.deny) in tftpd.
+
+ Compile correctly on glibc 2.1.2.
+
+ Add -u option to specify the user id to run as (default
+ "nobody".)
+
+ Operate in "daemon mode" as long as we keep getting requests.
+ This should speed up handling large amounts of requests at
+ once, as can happen when a client starts up, and avoids inetd
+ misconfiguration problems.
+
+
+Changes in 0.16:
+
+ Correct massive lossage from 0.15: apparently 0.15 was based
+ on an out-of-date CVS repository, somehow.
+
+ Fix for ACKs in TFTP PUT; patch by Roger Venning.
+
+
+Changes in 0.15:
+
+ If the operating system allows, try to obtain the local
+ address used for the request packet, and reply using the same
+ local IP address. Some embedded TFTP clients are (probably
+ incorrectly) picky about this.
+
+
+Changes in 0.14:
+
+ Hacks to signal handling to avoid "zombie servers."
+
+
+Changes in 0.13:
+
+ Added the non-standard option "blksize2". The "blksize"
+ option is limited in its usability, since TFTP is designed to
+ be implemented in a ROM, and ROM code might find it painful to
+ deal with packets that don't meet certain alignment
+ restrictions.
+
+ The "blksize2" option tells the server that the block size
+ must be a power of 2 to be usable to the client. The server
+ SHALL respond with a block size that is a power of two, up to
+ a maximum of 32768, or reject the option. Furthermore, the
+ server SHALL grant a block size that is no smaller than 512
+ bytes unless the client explicitly requested a smaller block
+ size. If the client request both options, the server MAY
+ accept one or the other, but not both. At some point I will
+ probably write up an IETF draft for this option.
+
+
+General information on the tftp-hpa series:
+
+The core software was taken from OpenBSD (CVS source as of
+1999-09-21). I believe this was the most secure source base available
+at the time I obtained this code, and it included support for the -s
+and -c options.
+
+The un-BSD-ized Makefiles and a lot of the configure macros were taken
+from netkit-tftp-0.10 by David Holland; I also followed this example
+and modernized the code style throughout.
+
+Patches by Markus Gutschke and Gero Kuhlmann were the basis for the
+option negotiation as well as the "blksize" and "tsize" option
+support, although I made a fair amount of mostly stylistic changes to
+their code.
+
+Adding the -r option (disable a specific option), the "timeout"
+option, converting to using autoconf for setup, and any additions
+listed in the Changes list above, has all been my own code, as are any
+bugs introduced in the merge.
diff --git a/version b/version
index 9922215..5a9e6bd 100644
--- a/version
+++ b/version
@@ -1 +1 @@
-0.26
+0.27