Changes since Roxen Challenger 1.2 alpha 15
-----------------------------------------------

o FTP data connections are now opened on the same IP as the command
  connection is on. This ought to make firewalls happier.

o Fixed an old bug in protocols/ssl3.pike. It should no longer generate
  an internal error when accessing a config-interface with ssl3 using http.

o host lookup now doesn't need any external processes to work. Protocols.DNS
  is used instead.

o The folder list module now works on pages with query variables
  (foo.html?bar=baz&gaz=zonk). The non-fl related variables will be
  kept when unfolding / folding.

o roxen_perror() now reports time synchronously.

o open() of non-existant files speeded up.

o install.pike now checks for existance of protocols/ssl3.pike.

o Fixed obscure bug in roxen_master.pike.

o Applied Henrik P Johnson <hpj@globecom.net>'s fixes to
  modules/filesystems/secure_fs.pike

o Added option to let query to be RXML-parsed in modules/tags/sqltag.pike.

o Parsing of the PEM file-format moved from protocols/ssl3.pike to a new
  Pike-module: SSL.pem.

o Added support for Hungarian. Thanks to Zsolt Varga <redax@agria.hu>.


Changes since Roxen Challenger 1.2 alpha 14
-----------------------------------------------

o Fixed some bugs in the top-level Makefiles.

o Added support for SparcWorks-cc.

o Several fixes of old long-time bugs in Pike:
  o Disappearing call-out bug fixed.
  o Image color-quantifier rewritten.
  o GIF-encoder rewritten.
  o Several threading-bugs fixed.
  o Some fd-leaks fixed.

o Added some sanity-checks to privs.pike

o Some bug-fixes in the wizard-handling.

o Applied some rather large patches to the obox-module by Francesco Chemolli.

o Changed the default mode of the ftp-protocol module to ASCII.


Changes since Roxen Challenger 1.2 alpha 13
-----------------------------------------------

o Problems distributing crypto-code outside Sweden.

o New status action: Extended process status for Linux. It uses pstree
  and the /proc/ file system. A bonus is that it can be used as a
  general process tree browser!

o Added a configurable "default content type" to the Content type
  module. Now it's easy to use text/plain instead of the default
  application/octet-stream for all unknown files.

o Location-modules now have a secondary sorting-order (longest path first),
  which removes some cases where priorities were needed before.

o SSL3 now reads data to be sent nonblocking, so cgi-scripts should work again
  on https ports.

o Business Graphics module added.

o Cleaned up the output from some of the Makefiles.

o Disabled the non-working SGI sproc()-support fully.

o Workaround for PANIC-causing bug in AIX.

o Improved support for cyclic structures in Pike.

o Kluge added to support the libz distributed with IRIX 6.3.

o Improved colortable support in the Image module.

o The Msql and Postgres modules by Francesco Chemolli added to the
  distribution.

o The <sqltable> tag now takes an optional attribute "ascii" to generate
  a tab-separated output suitable for eg the <diagram> tag.

o The Makefiles now pass along more arguments to the sub-makes.

o -pipe option to gcc disabled since it caused configure to hang when
  configuring gmp.

o Several warnings when compiling fcgi fixed.

o THREADS disabled on all OS's except Solaris.

o Neighbourhood disabled by default. Define ENABLE_NEIGHBOURHOOD to enable it
  again.

o pike/src/modules/Pipe/pipe.c reverted to version 1.11 due to problems
  with 1.12 and later.

o Fixed several bugs in the CVS filesystem.

o Fixed some not-binary-clean bugs in the proxy.

o The sqltag-module now only has one config-variable (unless SQL_TAG_COMPAT
  is defined).

o Some bugs in the ftp protocol-module fixed.

o pikescript removed from the generic-server template.


Changes since Roxen Challenger 1.2 alpha 12
-----------------------------------------------

o Added a new module. <pimage></pimage>. This tag has the same security 
  impact that the <pike></pike> tag has, and should not be enabled for 
  untrusted filesystems.

  Examples of usage are in the (new) examples directory.

o Added threading to the ftp protocol-module at last.

o The ftp protocol-modules built-in ls now has support for several more flags.

o Several configure-script fixes.

o The <if> tag in combination with the <else> tag now work as people have
  assumed them to.

o The sql-tags can now be used together with the <else> tag.

o Applied CGI fix by Eric Lammerts <eric@scintilla.utwente.nl>.

o CGI's are now forked from the backend thread to avoid confusing some OS's.

o Fixed several race-conditions when running with THREADS enabled.

o Updated supplied gmp to gmp-2.0.2-ssh-2.

o Removed several arbitrary limits.

o Some neighbourhood fixes.

o Some internal security fixes.

o Applied hostredirect fix by Martin Baehr <mbaehr@email.archlab.tuwien.ac.at>.


Changes since Roxen Challenger 1.2 alpha 11
-----------------------------------------------

o Threads now work better.

o The start-script now sets the umask to 022, to be certain it can read
  the files Roxen creates.

o Some fixes to the neigbourhood system.

o The mutex-code in pike/src/treads.c rewritten, optimized and bugfixed.
  The need for mutex_kluge has been removed.
  Locking an unlocked mutex now doesn't involve any thread-operations at all.
  Several race-conditions removed.

o The compiler-option -sopt for IRIX-cc has been disabled since it caused the
  compiler to hang on interpret.c

o Improved tests for the Gz-module.

o Several fixes to support stupid C preprocessors.

o Fixes to the UDP code.

o The supplied version of gmp now compiles on Solaris 2.6 x86.

o ((program)"privs") assigned to a constant (Privs) to improve efficiency.

o Now opens all ports at the beginning of the boot-sequence to keep
  "Connection refused" time to a minimum.

o The log-file filename can now contain the current date and time.

o Removed some race-conditions.

o Now possible to select server to upgrade from.


Changes since Roxen Challenger 1.2 alpha 10
-----------------------------------------------

o Threads are enabled by default, and actually work.

o The HTTP protocol now does it's very best to log the ACTUAL number
  of sent bytes, even for CGI scripts. It will not work for
  modules (or pike-scripts) that use the http_pipe_in_progress()
  function, though, but to my knowledge there are no such modules in
  the Roxen distribution, with the exception of the Proxy module,
  which will not be logged in the normal log anyway.

  I had to remove support for the external shuffle program for this to
  work. This program was not very helpful anyway, unless you run
  Solaris 2.4 it only slows things down, if you do not have a multi
  CPU machine, in which case the internal thread support in Roxen is
  better anyway.

o Added some more directories to search by default for nfonts and modules.
  "../local/modules" and "../local/nfonts". Roxen will by default not install
  anything in these directories.

o The configure-scripts are now better att choosing optimizer options.

o The neighbourhood function can now also use TCP.

o Several config_actions updated.

o Directory-module cache-problem fixed.

o Many modules now marked as thread-safe.

o The gtext-module now uses typographically correct spacing.

o The sqltag-module now has improved documentation.

o Pike version bumped to 0.5b10.

o The number of FTP users can now be viewed under "Status and debug info".

o The FTP built-in ls now uses the Getopt-module to parse its arguments.
  It also sends the data asynchronously for improved response-times. Not
  threaded (yet).

o The FTP built-in ls now supports -R.

o Fixed double \r-bug in the simulated "ls -l" in the ftp-protocol module.

o The ftp-protocol module now supports the MDTM (modification time) command.

o Fixed bug in the setting of the default domain.


Changes since Roxen Challenger 1.2 alpha 9
-----------------------------------------------

o The Languagemodule now supports Accept-Language headers and is
  capable of presenting directory listings.

o Minor redesign of the buttons in the config-interface.

o Copying of configurations now works again.

o The htaccess module is now a MODULE_URL module, which improves the internal
  security in Roxen.

o Improved fallbacks in the htaccess-module.

o The start-script now uses the pike named "roxen" if it exists, so that
  Roxen shows up as "roxen" instead of as "pike" in process-listings.

o The LIST and NLST commands in the ftp-module now support glob-patterns.

o Libraries needed for the Gdbm, Gmp and Gz modules added to the distribution.

o WideValues and CommonLog Pike-modules added.

o Added "Easy Build" Makefile to top directory. It should now be possible to
  just type "make; make install" to get a Roxen buildt and installed on most
  Operating Systems. The default prefix (/usr/local) will be used for the
  installation.

o Configurationfiles older than Spinnerb11p11 no longer supported.

o Roxen can now register itself with other Roxen servers on the same local
  network. See "Actions:Neighborhood:Roxen Neighbourhood...". This is very
  useful if you have several Roxen servers.

o The actions are now grouped.

o Added wizard-interface for easy construction of wizards.

o Added some more actions.

o Documentation-strings added to many modules for use by the upgrade action.

o Bugfixes to the host-redirect module.

o Added module for easy IP-less virtual host configuration.

o Language-module updated.

o The flik-module now has support for being in frames uses <a name> to
  automaticly center on the right place.

o The http-protocol module now handles multipart/form-data correctly.
  This might affect some old form-handling code.

o tools/init.d_roxen now supports HP-UX's init.d-system.

o Added option to disable anonymous ftp.

o Bug with never dieing cgi-scripts fixed.

o The start-script now waits 5 seconds before restarting Roxen. This
  is to keep it from taking 100% CPU if Roxen fails to load.

o Updated README.ssl3 file.

o Shuffle disabled for everything except Solaris 2.4, 2.5 and 2.5.1.

o feature_list now checks for some more modules.

o CommonLog and WideValues modules added to the standard distribution.

o Missing Sql.pmod glue added.

o Sql conventions changed somewhat. Data-values returned from queries are
  now either a string with the value, or zero (0) for NULL.

o Added config-check for broken installbsd on AIX.

o /roxen-internal-* images may now be jpegs.

o Contents under the "Status"-tab moved to actions.

o New demo-certificate for ssl.

o Module for IP-less hosting added. Simply add this module to the virtual-
  servers having real ports, and it will redirect requests to the virtual-
  server whose server-URL matches the host-header best.

o Added the sqltag-module to the default distribution.


Changes since Roxen Challenger 1.2 alpha 8
-----------------------------------------------

o When you save port changes in virtual servers (and also the
  configuration ports), you now get a page where you are prompted to
  change the virtual server URL (or configuration URL). You can choose
  between the different ports and the current one, which you can also
  modify to something else. This should decrease the number of
  misconfigured server URLs drastically.

o Shutdown and restart have moved to the Actions tab.

o Several other actions added.

o Now opens the configuration port(s) first instead of last.

o Colors in the configuration interface changed to the official
  Infovav User Interface Colors. Some other changes to the layout as well.

o Changed the name of the 'Error Log' to 'Event Log', since that is a
  more apropriate name. Also fixed it's layout.

o Added a new tag: <pr>. Use <pr help> to get some help.
  Basicaly it just adds an 'Powered By Roxen' logo.

o The FTP-protocol module now sends a nice message when it shuts down a
  connection due to timeout.

o The SSL3-module is now used in favour of the old SSL-protocol modules,
  which in turn have at last been removed.

o Module-level security improved again.

o Two new functions in roxenlib.pike:
  - html_encode_string -> replaces <>& with &lt;
  - html_encode_tag_value -> encodes a string for use as a value in an
    html tag (ie 'bar " & " ' -> '"bar &quot; &amp; &quot; "').

o & was displayed as ä in some fields in configuration interface due
  to the use of a buggy html_encode_string. 

o internal-roxen-* and internal-gopher-* are not parsed if
  id->not_query doesn't start with '/'. Before the Roxen proxy
  "nicely" took care of them.

o Added support for subnet-based IP security.

o Module-variables can now be tagged as less interresting, and are then
  shown only in more-mode.

o Added possibility to disable directory-listing overrides to the
  fastdirectory-module.

o The mirror server and client now have some documentation.

o The restricted-filesystem now supports hiding the path to the
  home-directory.

o Fixed some CGI environment-variable bugs.


Changes since Roxen Challenger 1.2 alpha 7
-----------------------------------------------

o The SSL3 module now returns a redirect if it is accessed with HTTP.

o CGI security fix.

o Tetris-protocol added.

o Got rid of "Calling function in a destructed object" when SSL3 connections
  are broken.

o Restricted filesystem added. This filesystem restrictes access to
  directories prefixed by the users home-directory. This is useful for eg
  an FTP-server. Thanks to Zsolt Varga <redax@agria.hu> for the idea.

o SSL3 ports now work without restarting the server.

o Copying configurations now works again.

o privs.pike now clears supplementary group list in case initgroups fails.

o Added kludge for HPUX's broken grouphandling.

o Bugfix for the ftp-module if there aren't any MODULE_FIRST modules.

o configvar can now be started again.

o Single-letter options can now be passed to the start-script.

o Backward-compatibility patch to color.pike.

o Security-levels made a bit less paranoid.

o Logformat fix.

o "New module" button renamed to "Add module".

o Protocol-modules now get the configuration-object as the second argument
  to create().

o Now works again with a threaded pike on Linux.

o CGI problems with SCRIPT_NAME/PATH_INFO hopefully fixed.

o stdin, stdout and stderr can now be specified to spawn_pike().

o activex added to supports-file.

o Added missing parts needed for the mirror-filesystem client/server.
  NOTE: Do NOT generate circular dependencies with mirror-filesystems, or
  there is risk of deadlock.

o The hostredirect-module now handles the case that the host-header isn't
  specified correctly.

o The flik-module now has alt-texts.

o Added support for some more HTTP-proxy-headers.


Changes since Roxen Challenger 1.2 alpha 6
-----------------------------------------------

o New modules: Mirror Filesystem and Mirror Server.  Add a mirror
  server to the server you want to mirror, and a Mirror Filesystem in
  all mirrors. The searchpath of the Mirror Filesystem is used as a
  cache.  It is not a good idea to use the same cache-directory with
  multiple mirror filesystems. There is a mirror for www.roxen.com at
  skuld:2000. The mirror filesystem does not mirror the needed
  modules, though.

o Added option to create FTP servers.

o SSL3 speeded up.

o Reenabled the "Roxen is alive!" output even if DEBUG isn't defined.

o Added option to attempt setting of the RoxenUserID cookie only once.
  Thanks to Francesco 'Kinkie' Chemolli <kinkie@kame.usr.dsi.unimi.it>.

o Added option to disable sym-link following to the normal filesystem.

o Added language modules for Croatian and Slovenian.

o cgi.c now compiles on HPUX again.

o Pike updated to 0.5b9.

o color.pike rgb_to_hsv() fixed for grayscales.

o Module-level security now supports combinations of allow ip and allow user.

o Some patches to the disk-cache.

o Support for several font directories added.

o roxen_hostname now started as root.

o language-modules are now initialized in a safer way.

o privs.pike now contains a default-entry for the root user.

o MIME.decode_base64() now used to decode HTTP-passwords.

o Now gets updates from www.roxen.com instead of from roxen.com.

o Reloading of the "New module" page now only recompiles the modified modules.

o Some fixes to parse_rxml().

o Some fixes to the relay-module.

o Gtext-module now supports scroll.

o Fixed CGI-bug.

o Fixed FTP security bug.

o Added profiling-info to debug-info for developers (requires patch to Pike).

o htaccess now defaults the limit for HEAD to the same as that for GET.


Changes since Roxen Challenger 1.2 alpha 5
-----------------------------------------------

o Fixed the 'default' type in etc/extensions. It should be checked
  now..

o The images in the configuration interface is now cached on
  disk. This seems to speed things up on slow machines, and the images
  will work on HP's where gcc is used...

o Fixed a bug in the .htaccess related to the removal of previously
  loaded .htaccess files.

o Fixed some documentation in the graphics text module

o The hsv colorspace in color.pike has been fixed somewhat, 
  to specify a color in the HSV colorspace, use @H,S,V.
  H is a number between 0 and 360, S anv V are numbers between 0 and
  100 (percent).

o It is now possible to specify colors like 'light neon dark light green'.
  The spaces are quite optional. Possible colormodifiers include
  light, dark and neon.
  
o Added better checks during module-initialization.

o Fixed permission bug in the ftp-module.

o Ftp-module now supports DELE.

o Fixed file_stat() in roxen_master.pike.

o Several MIME-types added.

o Userdatabase module using YP (NIS) added.

o POSIX_SOURCE is now defined during the configure tests.

o The quite meaningless error message
  "This is (probably) the reason: 0" is hopefully gone now.

o Now uses correct permissions when updating the etc/supports file.

o #!NO in modules now seems to work.

o Garbage-collector updated (thanks to Wilhelm Köhler).

o THREADS-mode can now use multiple shuffle-threads (thanks to Wilhelm Köhler).
  To try THREADS (very alpha..) edit etc/include/config.h
  
o Some bugs in the proxies fixed.


Changes since Roxen Challenger 1.2 alpha 4
-----------------------------------------------

o Reenabled the config-interface error-log.

o You can now use path's like /cvs:/roxen_src/server/modules as a module
  directory. Not really all that useful (the modules will be read from 
  CVS automatically, thus ensuring that the latest version is used), but 
  it might be useful for groups of people running concurrent development 
  of roxen modules (like we at infovav..), there is no need to check out 
  the latest version of a module before it can be reloaded in the server.

  the CVSROOT environment variable will be used as the CVS root.

  This was added as an extension to get_dir, stat_file and 
  (program)"string"; (see the etc/roxen_master.pike file)

  So normal pike-scripts can also take advantage of this.

  This is only enabled if CVS_FILESYSTEM is defined.

o The somewhat annoying 'Roxen is alive!' message will no longer be 
  written to the log once per minute unless something else is written
  to the log. It will only be output once if DEBUG isn't defined.

o Root execution of CGI scripts disabled.

o Shuffle disabled for all OS's except Solaris 2.x on sparc.

o Logfiles now opened as root.

o Ftp-module now gives error message instead of sending an error-file.

o .htaccess-module now filters files starting with ".ht".

o Added height specification to module-list images. The module-list should
  now display *much* faster.

o Some patches to disk_cache.pike. It no longer uses FILE objects per 
  default (they cannot be used in non-blocking mode), instead File() 
  objects are used (raw files). Also, the ROXEN_HEAD_SIZE define is not 
  added to headers->headers_size multiple times. Also, the use of 
  file->tell() has been removed, since that function seems to be somewhat 
  broken in FILE (stdio like) objects.

o Some patches for those who are brave enough to run with THREADS enabled.
  Most debug output removed.

o Some new extensions to MIME content-types mappings in the etc/extensions 
  file.

o Applied some patches by Wilhelm Köhler.

o Some patches to language.pike. It no longer uses the value of the LANG 
  environment variable to select the default language. ROXEN_LANG is used 
  instead.

o Replaced all remaining instances of roxen->query with id->conf->query.

o proxy.pike now uses the global shuffle function.

o Cleaned up some of the prestate handling code.


Changes since Roxen Challenger 1.2 alpha 3
-----------------------------------------------

o Now uses Pike 0.5b7.

o make install now saves the last 2 versions of the server.

o color.pike now has support for the HSV color-space.

o Some patches to disk_cache.pike.

o Applied some patches by Wilhelm Köhler.

o Roxen now returns time in GMT

o http module fd-leak work-around.

o Extensions .{c,cc,h} now are subtypes of text instead of application.

o Intraseek added to set of robots.

o italian.pike updated by Francesco Chemolli.

o The user filesystem nolonger hangs if the public directory is a file.

o Some patches to ismap.pike.

o Fixes to language.pike.

o Patched ftpgateway.pike.

o Patched proxy.pike.

o Pikescripts can now use #include.

o Added handling of exec bit on HTML-files.

o Some nicer error-messages from the SSL3-module.


Changes since Roxen Challenger 1.2 alpha 2
-----------------------------------------------

o Fixes to module-level security.

o Enabled some debug output from the host-name lookup module.

o Added some support for OS's lacking effective user/group.

o New functions program_filename and program_directory in roxenlib.pike.

o New global function spawn_pike in roxenloader.pike.

o Patches to hostredirect.pike, ismap.pike, proxy.pike.

o Applied patches by Wilhelm Köhler.

o Security patch to cgi.pike.


Changes since Roxen Challenger 1.2 alpha 1
-----------------------------------------------

o Patch for cgi.c to enable compilation on FreeBSD.

o Removed several C++ //-style comments.

o roxen->shuffle now works on OS's without send_fd.

o Install script now queries if you want SSL3 or not.

o Install script now doesn't install SSL3 if you don't have GMP.

o Minor fix to graphic_text.pike.


Changes since Roxen Challenger 1.1.1 alpha 6
-----------------------------------------------

o etc/master.pike has been renamed to etc/roxen_master to avoid
  name conflicts/confusion.

o Support for SSLv3 added.
  NOTE: This module uses strong encryption, which may violate local law.
	In the US this module violates patents held by RSA Inc.
  A version of Roxen without the crypto-module will be made available
  on demand.

o The install-script now uses ssl3 for the configuration port.

o Added support for setting the cpu-limit and nice-level for CGI-scripts.

o Some patches to shuffle.

o Some patches to ssl.

o Some patches to fcgi.

o Several functions have moved from roxen->X to id->conf->X to allow for
  threads.

o Fixed the install-script.

o Should now start the garbage-collector correctly when started from a
  standard installation.

o Applied a LARGE patch for the disk cache by Wilhelm Köhler (Thanks!)

o Applied another patch by Wilhelm Köhler (Thanks again!)

o Fixed most of the bugs in the ticket-database.

o Fixed several small bugs here and there.

o Ftp-module now supports STOR.

o Ftp-module now restores auth-information for every transaction. This is
  necessary since eg the htaccess-module modifies the auth-field, which is
  fine for single-transaction protocols like HTTP, but won't do for
  multiple-transaction protocols like FTP.

o Ftp-module now supports setting prestates via SITE PRESTATE.

o Added some new top-level Makefile targets:
  install_all		Install both Roxen and Pike.
  install_pike		Install only Pike.
  verify		Run Pikes testsuite.
  verbose_verify	Run Pikes testsuite in verbose mode.


Changes since Roxen Challenger 1.1.1 alpha 5
-----------------------------------------------

o Now uses Pike 0.5b4

o Shrunk the roxen-master.

o The FTP-protocol module now supports named FTP. This is implemented by
  mounting / on / and having "allow user=any" in "Security: Patterns".
  One interesting feature is that users using named FTP can still see
  the anonymous tree.

o Added support for MODULE_FIRST modules to the FTP-protocol module. This
  allows for using .htaccess-files to restrict access to certain directories.

o Install-script updated.

o Now sets --prefix to . for the Pike-tree.

Changes since Roxen Challenger 1.1.1 alpha 2
-----------------------------------------------

o Now uses replace_master().

o proxy_auth_needed() has moved to roxenlib.

o Many files updated to Pike 0.5b2.

o Startscript now inserts the value of the environment variable DEFINES
  into commandline.

o /precompiled/* no longer supported; use the new module-system instead.


Changes since Roxen Challenger 1.1 
-----------------------------------------------

o The host redirect module has been improved by Martin Baehr.

o Support for shadow passwords added to userdb (method shadow). The
  default method is always set to file. If getpwent is used on a system
  with thousands of users, it takes a VERY long time to read all the
  users. 

o allow/deny user using 'any' was broken in the last fix. This is, of
  course, fixed now.

o <apre href=#foo> and others now works as expected.

o Install script now doesn't append the domain name if it's already in
  the hostname (which is the case in BSD UNIXes).

o etc/extensions is now more complete.

o The convert_accessed.pike script fixed. Someone forgot committing
  the bugfixed version before the release.

o Fix in the host->ip functions. Before Roxen assumed that there were
  no hostnames that started with en in (for example
  50foo.bar.com). This little misfeature is fixed now. Before the
  proxy never worked with one of these hosts. The bug was found by
  Iztok Umek <Iztok.Umek@snet.fri.uni-lj.si>. Thanks!
  
o Bugfix in module security. You now get the "403 Forbidden" return
  code if your IP isn't allowed to view a page, instead of "404 Not
  Found". Thanks to Kai Garlipp <garlipp@informatik.uni-rostock.de>
  for the patch.

o Added container <formoutput> to simplify using forms.
	
