[CONTACT]

[ABOUT]

[POLICY]

[ADVERTISE]

Thu Apr Peter Eriksson signum.

Found at: ftp.icm.edu.pl:70/packages/phttpd/ChangeLog

Thu Apr  3 17:05:42 1997  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.76

		
Wed Apr  2 22:53:42 1997  Peter Eriksson  <pen@signum.se>

		
	* Changed the Common Log Format day-of-month to use two digits
	  (with leading zero).

		
	* Some more patches from RK installed to finish up the
	  implementation of PUT/DELETE.

		
	* Removed the (buggy) SIGUSR1 handling in Ackpfd.
	
Wed Mar 26 20:32:49 1997  Peter Eriksson  <pen@signum.se>

		
	* http.c: Bugfix for RK's multi-virtual-server stuff.

		
Mon Mar 24 21:23:05 1997  Peter Eriksson  <pen@signum.se>

		
	* fd_gets() can now dynamically allocate it's string.
	
	* Fixed the quoted-?-in-URL bug. Side effect of bug fix is
	  that "?anything in url-rewriting rules doesn't work anymore.
	  (How should it work really?)
	  
	* phttpd.conf: url-authenticate changed name to read-authenticate.
		       url-access changed name to host-access.
	  
	  Similar changes also took place in url.c/urlcache.c/main.c

		
        * PH: Changed the way queries are sent to the server in
	  case of a user specifying multi-word choices.

		
	* Added patches from RK to allow PUT/DELETE in limited directories
	  based in auth_file authentication. Slightly hacked by me
	  while I applied the patch...
	  
Thu Mar 13 17:14:42 1997  Peter Eriksson  <pen@signum.se>

		
	* Added the "user-basedir" option to "phttpd.conf". If this
	  is set to a directory, then all user requests (~USER) are
	  assumed to be located below $user-basedir/$USER/$user-dir.

		
	* Added a safe "s_unlink()".

		
	* Fixed a coredumping bug in CGI if running at debug level 5
	  and having URL like this: http://foo.bar.com/cgi-bin/prog/AB%3FCD

		
	* etc/rotate.logs: Updated and cleaned up a lot.

		
Wed Mar 12 19:19:35 1997  Peter Eriksson  <pen@signum.se>

		
	* "phttpd.gif" - a new logotype for Phttpd has now been included
	  in the HTML documentation!

		
	* Default "server_user" to "nobody". Gracefully handle
	  NULL server_user.
	
	* Created s_tmpname() and s_tmpfile() in safeio.c to create
	  unique temporary filenames and file (descriptors).

		
	* Replaced mktemp() and manual open in NCSA_HTML with s_tmpfile().

		
Mon Mar 10 23:46:36 1997  Peter Eriksson  <pen@signum.se>

		
	* Replaced ctype.h/isXXX()/toXXX() macros with 8bit safer versions
	  called s_isXXX() and s_toXXX().
	
	* Rewrote the signal handling totally. Now uses sigwait().
	
	* SIGHUP now closes and reopens the stderr and request log files
	  correctly.

		
	* solaris.c:s_sleep(): Use cond_timedwait() instead of sleep().

		
	* Fixed the stderr logging problems when using -w/ackpfd.
	
	* solaris.c: Use nice(2) instead of setpriority()
	
	* config.so: Use <table> to print a lot of things.
	  
	* fd_foreach() was changed to not deadlock in case some
	  fd buffer is busy for a long time.

		
	* Added a mutex lock around dup2() (in s_dup2()) since it
	  isn't MT Safe according to the SunOS 5.5.1 manual page.

		
Sat Mar  8 21:45:57 1997  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.75

		
	* Fixed a bug in s_strcat() and s_strncat() with handling
	  zero-length strings as the source argument.
	  
	* Changed two occurances of s_abort() in s_strcat and s_strncat
	  to non fatal errors (they will be logged via syslog()).

		
	* Increased a couple of URL and Path buffer sizes from 1024 to 2048.

		
Thu Mar  6 23:37:02 1997  Drazen Kacar <dave@fly.cc.fer.hr>

		
	* Bug fix for the range handling code, didn't make sure
	  that the range didn't extend beyond the end of the file.
	  
Thu Mar  6 13:32:42 1997  Peter Eriksson  <pen@signum.se>	

		
	* Disabled the code in NCSA-HTML that checks for "If-Modified-Since"
	  since it was incorrect. 

		
Thu Mar  6 01:06:35 1997  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.74

		
	* Updated "osf.c" and the Makefiles for Digital Unix 4.0 support.
	  Still doesn't work though.
	  
	* Added "-z text" ld options for linking modules when using Solaris.

		
	* Cleaned up the modules Makefile a bit.

		
Wed Mar  5 13:18:36 1997  Peter Eriksson  <pen@signum.se>

		
	* fscache.h: Changed type of data.content buffer to "char *".

		
	* Disabled s_sleep() in safeio.c (use the one in solaris.c instead).

		
Wed Mar  5 01:57:20 1997  Peter Eriksson  <pen@signum.se>

		
	* FILE: Fixed: The appending of a "/" was accidentially deleted
	  when redirecting to DIR

		
	* NCSA-HTML: Add: <!--#user--> now supports a "mailto=[user@]domain"
	  tag.

		
Wed Mar  5 00:54:53 1997  Peter Eriksson  <pen@signum.se>

		
	* Modifed the Makefile in the modules directory to remove
	  all *.so files when "clean"ing instead of just the ones in the
	  LIBS list.

		
Wed Mar  5 00:36:38 1997  Drazen Kacar <dave@fly.cc.fer.hr>

		
	* Implement simple range requests as per RFC 2068.

		
Tue Mar  4 22:48:52 1997  Peter Eriksson  <pen@signum.se>

		
	* Changed the failure modes of the safe string copying functions.
	  Now it will silently limit the size of the destination string to the
	  maximum size allowed (and include a terminating NUL). 

		
	* s_strndup() renamed to s_strxdup().

		
	* s_sprintf() added. If HAVE_VSNPRINTF is defined then this
	  function will use the safe __vsnprintf() available in Solaris 2.5/2.5.1
	  else it will make an half-hearted attempt at checking for buffer overflows
	  (and will s_abort() in case of error)  .

		
	* Replaced all calls to sprintf() with the safer version.

		
	* Fixed gethostbyaddr() (changed into s_gethostbyaddr_r()) in file.c
	
Mon Mar  3 21:52:30 1997  Peter Eriksson  <pen@signum.se>

		
	* Fixed a bug in the NCSA-HTML module that caused it to
	  get confused regarding what file was the current one in case
	  of file-not-found errors... (This fixes some coredumping bugs!)

		
	* Changed the DIR module to include the server_url in the header.

		
	* Corrected the return value from s_strcpy() and s_strcat().
	  (It incorrectly included the terminating NUL).

		
Sun Mar  2 16:32:25 1997  Peter Eriksson  <pen@signum.se>

		
	* Added s_strcpy(), s_strcat(), s_strncpy() & s_strncat() to safeio.c.

		
	* Changed all occurances of strcpy(), strncpy() and strcat()
	  to the safe versions. And added some checks for the
	  return status code.

		
	* Added an "autofail.h" header file that automatically
	  makes code using non-safe versions  of some common
	  system calls fail at compilation time.
	  
	* Removed the LESS feature.

		
	* Removed a lot of unneccessary sprintf:s.

		
	* Cleaned up the main() function.

		
Sat Mar  1 15:02:05 1997  Drazen Kacar <dave@fly.cc.fer.hr>

		
	* http.c: Missing terminating CRLF for HEAD requests.

		
	* Content-Language headers added to the FILE and NCSA-HTML modules.
	  (see phttpd.conf for an example)

		
Sat Mar  1 13:05:46 1997  Peter Eriksson  <pen@signum.se>

		
	* Fixed bug in error.c for RK's Multimode:
	  Must use s_gethostbyaddr_r and not the non-MT-sfae gethostbyaddr()

		
	* Started moving Solaris-specific code to solaris.c from safeio.c

		
	* Generalized the auth code a bit (added some fields to the
	  auth struct in connectioninfo). This make the structure
	  incompatible with previously compiled modules!

		
	* Now uses priocntl() instead of setpriority() for Solaris.
	
Sat Mar  1 02:28:37 1997  Peter Eriksson  <pen@signum.se>

		
	* Added a table "global-modules" to Phttpd.conf. Any
	  modules/shared libraries listed here gets loaded,
	  and made available for other modules to use, at startup.

		
	* Added a check for ".nodir" in a directory - if it exists
	  then a directory listing is denied.

		
Sat Mar  1 00:36:36 1997  Peter Eriksson  <pen@signum.se>

		
	* Added a few missing config files.

		
	* Removed the "auth_cfile" module.
	
	* Fixed a coredumping bug in NCSA-HTML (would crash if
	  referencing non-existant files in a commands).

		
	* Added the <!--#user name="username"--> command to
	  the NCSA-HTML module. Outputs the full name (Gecos field
	  from Passwd database) inside a HREF pointing to the
	  users' own home pages (/~user).

		
Fri Feb 28 19:59:10 1997  Peter Eriksson  <pen@signum.se>

		
	* Added a few missing module .conf files.

		
	* Fixed a small type in etc/phttpd.init.

		
Fri Feb 28 18:25:16 1997  Drazen Kacar  <dave@fly.cc.fer.hr>

		
	* Updated the ASIS module to work correctly with the HEAD
	  method. Also automatically adds the Date: and Server:
	  headers.

		
Fri Feb 28 03:07:21 1997  Peter Eriksson  <pen@signum.se>

		
	* Merged most of the Posix Threads code into the main
	  distribution. It doesn't work correctly yet, but it's
	  on it's way atleast... Most of the code compiles on
	  Digital Unix 4.0 (but it doesn't run, and there are
	  missing pieces :-)

		
Fri Feb 28 00:21:44 1997  Peter Eriksson  <pen@signum.se>

		
	* Added the "next_proxy.so". This is a simple proxy module
	  that forwards HTTP Proxy requests to a specified (in
	  the configuration file) other Proxy server.

		
Thu Feb 27 22:38:02 1997  Roland Kaltefleiter <rk@netuse.de>

		
	* Added support for encrypted (passwd-style) auth_file
	  authentication files.

		
	* Added to the CGI module the possibility to do
	  a chroot, to nice the subprocess and setting
	  some process limits (CPU, Mem and FDs).

		
	* Added an option to the DIR module to disable directory
	  listings. Default is to NOT allow listings.
	  
	* Added to the NCSA-HTML module the possibility to do
	  a chroot, to nice the subprocess and setting
	  some process limits (CPU, Mem and FDs) when the
	  module starts subprocesses.

		
	* Added to the FILE module the possibility to enable/disable
	  the PUT method. Default is disabled.
	  
	* Added support for a sort of multiple-WWW-servers in one
	  process.

		
	* proc_run() changed (more parameters passed)

		
	* Fixed a missing buf1 arg in error.c:error_access().

		
	* Added error_method_denied()

		
Thu Feb 27 22:06:17 1997  Peter Eriksson  <pen@signum.se>

		
	* Changed default installation directory from /opt/www to
	  /opt/phttpd.

		
	* Changed default database directory to /opt/phttpd/db.

		
	* Changed default user public directory from ".public" to "pub"
	  (works much better with PCs and Macintoshes)

		
	* Updated the /etc/init.d/phttpd start/stop script.
	
Sun Feb 23 19:34:20 1997  Peter Eriksson  <pen@signum.se>

		
	* auth_file.c: Allow multiple space/TAB between user & pwd.

		
Sun Feb 23 19:33:59 1997  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.73

		
Sun Feb 23 02:10:55 1997  Marcus E Hennecke <hennecke@dbag.ulm.DaimlerBenz.com>

		
	* Lot's of fixes to the ncsa module.

		
Sun Feb 23 01:55:51 1997  Drazen Kacar <dave@fly.cc.fer.hr>

		
	* HEAD handling errors (missing final \r\n) in a lot of modules.

		
	* Three memory leaks in error.c fixed.

		
Sun Feb 23 01:44:11 1997  Valery P. Ukhno <vpu@module.vympel.msk.ru>

		
	* Fixed a coredumping bug in the 404 Not Found error message
	  printing routine (error.c). 

		
	* Fixed a Not Modifed bug in the ncsa html module.

		
Wed Dec  4 11:06:36 1996  Peter Eriksson  <pen@signum.se>

		
	* Added support for user customizable error pages. See
	  the <error-pages> table in phttpd.conf.

		
	* The PH module now can include a page header and not just
	  a footer. (Directive "header-file").

		
Wed Apr 10 23:57:29 1996  Peter Eriksson  <pen@signum.se>

		
	* Major cleanups (support for multiple accept():ing threads
	  on the same file descriptors removed, support for multiple
	  subprocesses removed, stack_size parameter removed).

		
	* config.so: generalized a bit (no longer uses a hardcoded
	  list of variables to display - takes it's info from the
	  global_cfg_options struct/table).

		
	* Supports a way to handle reconfigure/restart at SIGHUP.
  	  Only works for Phttpd's started from Ackpfd currently:
	     Interacts with Ackpfd to start a new server, and terminates
	     itself in a way which should avoid disruptions of service.

		
Wed Apr  3 20:54:12 1996  Peter Eriksson  <pen@signum.se>

		
	* auth_file now sets the cip->auth.user field correctly.

		
Tue Mar 26 21:42:53 1996  Peter Eriksson  <pen@signum.se>

		
	* Added a super-simple text-file user/password "auth_file.so"
	  authorization module.

		
	* Virtualized the User/Password authorization code - it is
	  now possible to write authentication dynamically loadable
	  modules. The system password authentication stuff is now
	  moved into an "auth_syspwd.so" module.

		
Tue Mar 26 09:58:09 1996  Peter Eriksson  <pen@signum.se>

		
	* Fixed a bug in the url_rewriting parts that I introduced in .72

		
Mon Mar 18 20:45:41 1996  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.72

		
	* Fixed a "spelling" error (SIGKILL when I meant SIGTERM :-) in main.c

		
	* Makefile improvement when doing "make install.all"
	
	* Added a sanity check in the dir module in case some
	  user tries to access a file with trailing slashes...

		
	* Now truncates the pidfile correctly.

		
Tue Mar 12 11:21:46 1996  Peter Eriksson  <pen@signum.se>

		
	* Madvice flag argument isn't an or:able bit field. Fixed in
	  fscache.c, mbox.c, ncsa-html.c

		
Thu Feb 29 23:32:19 1996  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.71
	
	* CGI&NCSA: Added/fixed "LOCAL_HOST" environment variable.

		
	* phttpd.h: Moved the "struct addressinfo_s" out to level 0.

		
	* http_sendheaders(): Change the second argument ("time_t"
	     to "struct connectioninfo")

		
	* Implemented "Connection:" reply.
	
Sun Jan 21 19:02:29 1996  Peter Eriksson  <pen@signum.se>

		
	* fdstdio: Added ENXIO to the list of errno's to log at
	  level LOG_INFO instead of LOG_ERR in fd_write().

		
	* Moved the /cgi-bin/* pattern match up to the top of the
	  list in the distributed "ptttpd.conf" file.

		
Thu Jan 11 17:09:14 1996  Peter Eriksson  <pen@signum.se>

		
	* Now logs the original URL, and not the rewritten one.

		
	* CGI: Added environment vars "PHTTPD_ORIG_URL" and
	  "PHTTPD_ORIG_REQUEST", containing the original URL/Request
	  strings before rewriting.

		
Wed Jan 10 20:24:28 1996  Peter Eriksson  <pen@signum.se>

		
	* Corrected the parsing of IDENT return data.

		
	* Fixed erroneous double HTTP headers output in the file
	  module (only happens if a file as too restrictive permissions)

		
	* Fixed CGI problems with POST
	
Jan  9 23:37:56 1996  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.70

		
Sat Jan  6 12:28:30 1996  Peter Eriksson  <pen@signum.se>

		
	* Added IDENT support. Enable with the config file option
	  "ident-lookups = true" if you really need it.

		
	* Log file now outputs "-" instead of "0" for log entries where
	  the "length" parameter isn't available.
	  	  
	* CGI: Added config option "copy-environ", a colon-separated
	  list of environment variables to pass down from the parent
	  (Phttpd) process to CGI subprocesses.

		
Sat Jan  6 00:26:19 1996  Peter Eriksson  <pen@signum.se>

		
	* Fixed binary data passing bug in NPH-style CGI scripts.

		
	* Removed the special-caseing code for NPH-style scripts (not
	  needed).

		
Thu Jan  4 00:34:54 1996  Peter Eriksson  <pen@signum.se>

		
	* The default uid/gid the server runs as if nothing else
	  is specified is now nobody/nobody (60001/60001).

		
Thu Jan  4 00:18:16 1996  Peter Eriksson  <pen@signum.se>

		
	* Moved the Referer and User-Agent log fields to the end of
	  the line, and made them optional (extended-logging = true).

		
	* Now logs the IDENT "user" and authenticated "user" fields
	  in the log file (if data is available).

		
	* Fixed coredumping problem with files with insufficent
	  access rights on them.
	  
Wed Jan  3 00:15:15 1996  Peter Eriksson  <pen@signum.se>

		
	* Added phttpd.conf bool option: keepalive-connections
	  to control if the "Connection: Keep-Alive" feature should
	  be supported or not.

		
Tue Jan  2 08:52:46 1996  Peter Eriksson  <pen@signum.se>

		
	* Now also logs the Referer: and User-Agent: fields in the
	  Common Log Format log file.

		
Fri Dec 22 17:20:21 1995  Peter Eriksson  <pen@signum.se>

		
	* FILE: Send default file type for suffix-less files.

		
	* Removed an unneccessary h_errno declaration to fix a
	  UnixWare compilation error.

		
Wed Dec 13 19:21:45 1995  Peter Eriksson  <pen@signum.se>

		
	* DIR: Fixed core-dumping bug when doing dir listings, and
	  the directory contains symbolic links pointing at non-existing
	  fs objects and one isn't running in debug mode.

		
Sun Dec 10 14:34:10 1995  Peter Eriksson  <pen@signum.se>

		
	* NCSA-HTML: Implemented the <!--#exec cmd=".."--> feature.

		
Thu Dec  7 20:35:01 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a set of cover routines for opendir/readdir/closedir
	  to implement a workaround for AFS problems, and it also makes
	  it work better generally.

		
Thu Dec  7 15:45:04 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.69

		
Wed Dec  6 15:29:18 1995  Peter Eriksson  <pen@signum.se>

		
	* Found and fixed bugs in usercache/hostcache:update.

		
Tue Dec  5 21:11:24 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed another update-handling bug i all caches.

		
Tue Dec  5 16:50:14 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed coredumping bug i usercache handling.

		
Mon Dec  4 17:01:17 1995  Peter Eriksson  <pen@signum.se>

		
	* ackpfd: Some file descriptor (stdin, stdout, stderr)
	  handling fixes to avoid some hangups.

		
	* Fixes with the accept_lock mutex and with the "-w" wait-mode
	  handling

		
Sat Dec  2 17:39:30 1995  Peter Eriksson  <pen@signum.se>

		
	* Added User (name -> passwd) and Host (name & addr -> hostent)
	  caches.

		
Fri Dec  1 14:47:20 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed the handling of multiple accept()ing threads and processes.

		
	* Added IPTOS_LOWDELAY IP option.

		
Wed Nov 29 18:30:49 1995  Peter Eriksson  <pen@signum.se>

		
	* MBOX module: Fixed Keep-Alive problem.

		
Mon Nov 27 18:09:14 1995  Peter Eriksson  <pen@signum.se>

		
	* CGI: max-environ (the max number of environment vars per
	  process, default 256) and max-processes (if non-zero, limits
	  the max number of concurrent CGI processes, default = 0).

		
Mon Nov 27 14:20:06 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed the default values for "-L", "-P", "-C" and "-E"
	  options which got lost in the change to the new config stuff.

		
	* ptester: Now uses the real time instead of the time which
	  should have passed. Also handles keepalive connections correctly
	  when calculating the number of bytes/requests etc..

		
Mon Nov 27 02:50:29 1995  Peter Eriksson  <pen@signum.se>

		
	* fd_flush() now uses a background thread to write out
	  the data, this increases the interleaving possible
	  and (for example) makes "Keep-Alive"-style connections
	  4-5 times faster. Should also increase the speed of
	  proxy connections and CGI-scripts output.

		
Thu Nov 23 17:11:48 1995  Peter Eriksson  <pen@signum.se>

		
	* Changed the calling interface to the modules "pm_init()"
	  function for greater flexibility in the future.

		
Wed Nov 22 21:24:23 1995  Peter Eriksson  <pen@signum.se>

		
	* Rewrote parts of the command line / config file
	  parsing. One can now use long options on the command
	  line. See "phttpd --help" for more info.

		
	* Disabled the FD_LOCK in fdstdio.

		
	* Moved some small utility programs to "src/utils".
	
Wed Nov 22 14:44:10 1995  Peter Eriksson  <pen@signum.se>

		
	* Update the last-modified field correctly in ncsa-html.

		
Wed Nov 22 11:43:53 1995  Peter Eriksson  <pen@signum.se>

		
	* CGI-module now creates some convenience variables
	  (not part of the CGI/1.1 standard) of the form
	  "PHTTPD_QUERY_var" for each QUERY_STRING "var=val" pair.
	  It also decodes the "var" and "val" strings.

		
Tue Nov 21 01:48:50 1995  Peter Eriksson  <pen@signum.se>

		
	* The documentation updated slightly.

		
Mon Nov 20 01:22:51 1995  Peter Eriksson  <pen@signum.se>

		
	* A "gopher_proxy" module added. 

		
Sun Nov 19 22:42:19 1995  Peter Eriksson  <pen@signum.se>

		
	* Added an "orig_url" member to the "httpinfo" structure
	  which will contain the original URL header (before
	  any rewriting has occured).

		
Sun Nov 19 19:55:53 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a core-dumping bug which occurs if one specifies
	  a server-user which doesn't exist in the system, and
	  one does not specify a server-group.

		
Thu Nov 16 14:37:31 1995  Peter Eriksson  <pen@signum.se>

		
	* MAP: Handle last line in map modules correctly.
	       Documentation update (from Marcus).

		
Wed Nov 15 17:55:09 1995  Peter Eriksson  <pen@signum.se>

		
	* Modified the access code to use getspnam_r() instead
	  of getpwnam_r().

		
Wed Nov 15 15:46:36 1995  Peter Eriksson  <pen@signum.se>

		
	* Pragma: No-Cache now supported (causes the Fscache to always
	  reload the files or dirs).

		
	* -d now prevents stderr from being changed to /dev/null.

		
Tue Nov 14 21:48:29 1995  Peter Eriksson  <pen@signum.se>

		
	* MAP module now accepts \r as end of line delimitors also.

		
	* CGI module updated to be CGI Version 1.1 compliant.
	
	* Updated the CGI module's handling of extra HTTP headers.

		
	* Fixed the CGI module's handling of PATH_INFO and PATH_TRANSLATED.

		
	* fd_gets() now also accepts \r as an end-of-line char.

		
Tue Nov 14 01:27:13 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.68
	
	* Added the same type of Mutex wrappers around the gethost...
	  calls as is used around the getpw... and getgr... calls to
	  fix hangs caused by the buggy RPC code in the YP and NIS+
	  libraries.

		
Tue Nov  7 16:29:14 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed memory leak in pm_exit() in several modules

		
Mon Nov  6 21:15:02 1995  Peter Eriksson  <pen@signum.se>

		
	* A new module "http_proxy" implemented which is a
	  (very) simple HTTP proxy module. Not currently cacheing.

		
Mon Nov  6 18:48:28 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a deadlocking bug in cache.c:garb_thread().

		
	* Modified the PH module to make it possible to specify
	  a footer text to include.

		
Thu Nov  2 23:41:41 1995  Peter Eriksson  <pen@signum.se>

		
	* New version of strmatch.c from Marcus which fixes a
	  bug that prevented it from matching "foo*" to "foo".

		
Thu Nov  2 21:58:08 1995  Peter Eriksson  <pen@signum.se>

		
	* Added an AFS readdir_r() bug workaround. If you want
	  to use Phttpd to do directory listings on AFS volumes
	  you _may_ have to make sure "ENABLE_AFS_WORKAROUND" is
	  defined in the top level Makefile, and then in "phttpd.conf"
	  add "posix_path_max = 1024".

		
	* Found and fixed a deadlocking bug in fscache.

		
	* Fixed a bug in the DIR module where failure to stat()
	  files in a directory caused a core dump.

		
Thu Nov  2 08:39:17 1995  Peter Eriksson  <pen@signum.se>

		
	* Added "LOCAL_ADDR" and "LOCAL_HOST" environment
	  variables for CGI scripts (gives the local IP# and hostname
	  for the server, can be useful for servers serving multiple
	  hosts).

		
Wed Nov  1 11:48:21 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a memory leak in the DIR module.

		
	* Fixed security problem with AUTHENTICATE and CGI scripts.

		
	* Install ".purify" Purify option files.

		
Tue Oct 31 23:50:26 1995  Peter Eriksson  <pen@signum.se>

		
	* Refixed SIGUSR1 to do what it used to do.

		
	* Added a SIGTERM handler to terminate nicely.

		
Mon Oct 30 14:29:52 1995  Peter Eriksson  <pen@signum.se>

		
	* DIR: Added a safety fix (dir.size == 0) before alloca().

		
	* DIR: Fixed the logging of the URL for counting the requests
	  to the directories if one uses <!--#count--> in "index.shtml"
	  files.

		
Sun Oct 29 22:24:09 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.66

		
	* Added cache (URL & FS) statistics.

		
Sun Oct 29 13:57:39 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a fix for a core-dumping bug in the MAP module.
	   			(from Greg Moeller <gkm@moe.magic.mb.ca>)

		
Sat Oct 28 17:23:32 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed the url-rewrite, url-redirect, url-predirect,
	  url-access and url-authenticate code.

		
Fri Oct 27 18:23:22 1995  Peter Eriksson  <pen@signum.se>

		
	* Print the directory icons in a multicolumn table

		
	* Reactivated the "add_href"-table in the DIR module.

		
Thu Oct 26 19:16:42 1995  Peter Eriksson  <pen@signum.se>

		
	* Rewrote the DIR module (better looking output :-)
	  Still more things to be done there though.

		
	* Modified the fscache to 1) work better and 2) do an
	  fscache lookup for every file found when loading a
	  directory content)

		
Wed Oct 25 17:31:40 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a background cache garbing thread for caches.

		
	* Modified the single "ttl" param into three ("refresh",
	  "ttl" and "gc-interval").

		
	* Only check stat-struct members st_size, st_mtime and st_inode
	  when comparing if the file has been changed.

		
Tue Oct 24 16:57:03 1995  Peter Eriksson  <pen@signum.se>

		
	* Replaced the s_malloc() of struct connectioninfo in
	  the accept_thread with a statically allocated array to
	  increase parallellism.
	  
	* Added an URL (rewrite,redirect,access,auth,handler) cache.

		
	* Added ECONNRESET to the EPIPE checks.

		
Tue Oct 24 14:16:41 1995  Peter Eriksson  <pen@signum.se>

		
	* Added support for the "Connection: Keep-Alive" feature.

		
	* Implemented a smart file system cache (fscache.c) and
	  a generic cache type.

		
	* Fixed a bug in the dir module, which caused it to sometimes
	  not display all entries (Also rewrote it due to the fscache
	  above).

		
	* The file and asis modules also rewritten to use the fscache.
	
Sat Oct 14 02:35:34 1995  Peter Eriksson  <pen@signum.se>

		
	* Modified the modules table, and the file:content-type and
	  file:content-encoding tables to use hashtables.

		
	* Implemented a hashtable for faster table searches.

		
Fri Oct  6 05:55:07 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a "accept-threads" (-A) option to Phttpd so that
	  one can have multiple threads doing accept() concurrently.

		
Tue Oct  3 00:39:05 1995  Peter Eriksson  <pen@signum.se>

		
	* Modifed the url rewriting stuff to also be able to
	  include "request" stuff (the text after a "?" in an URL)
	  thanks to a patch from Thomas Bellman <bellman@lysator.liu.se>

		
Mon Sep 25 18:47:57 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a "server-processes" config file directive to be able
	  to run multiple parallell server processes. This seems to
	  not work 100% correctly yet, due to some bugs in Solaris.

		
	* Made my email address not clickable in error messages.

		
Thu Sep 14 11:18:57 1995  Peter Eriksson  <pen@signum.se>

		
	* Modified the "/etc/init.d/phttpd" startup script to
	  specify a full path to the "ndd" program.

		
	* Updated the patch list in "INSTALL".
	
Mon Sep 11 21:16:10 1995  Peter Eriksson  <pen@signum.se>

		
	* Updated the "dir" module with changes from Guenther Fischer.
	  (Sorted, and also display file size and modification times).

		
Sun Sep 10 17:30:11 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.64

		
	* Added a hostname resolving background thread, enabled by
	  a phttpd.conf option ("hostname-lookups = true").

		
	* Modified cgi.c to add the "REMOTE_HOST" env. var. if
	  the client hostname is available. Other vars added:

		
		  REMOTE_IDENT (not currently set since no IDENT
		  	lookup is done)

		
		  AUTH_TYPE (set to the authentication type if used)

		
		  REMOTE_USER (set to the authenticated user if used)
	  
	* Modified logger.c to log the hostname if available.

		
	* Modified access.c to enable "host" access control in
	  addition to the previous "address" keyword.

		
	* Added authentication level "Basic", using the system
	  password database.

		
Fri Sep  8 17:41:45 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.63

		
	* Added a simple host IP# access control scheme. Configurable
	  from phttpd.conf, see the "url-access" section. See the
	  file "examples/sample.acl" on how to control access.

		
	* Rewrote the url-redirect and url-permanent-redirect handling
	  to also use "strmatch".

		
Wed Sep  6 00:28:27 1995  Peter Eriksson  <pen@signum.se>

		
	* Moved the s_close() call in modules/file up to just after
	  the mmap() call. This shortens the time the file descriptor
	  is in use so it won't have to stay open all the time
	  while the file contents is transmitted to the client.

		
Sat Sep  2 00:31:08 1995  Peter Eriksson  <pen@signum.se>

		
	* Updated the syslog() messages in fdstdio.c

		
Fri Aug 18 23:56:18 1995  Peter Eriksson  <pen@signum.se>

		
	* Further updates of Dhttpd and Ptester.

		
Wed Aug 16 00:22:19 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.62
	
	* ASIS: Removed an erronous call to fd_putc('\n') if HTTP/1.0

		
	* Updated dserver and ptesters with new command line options
	  (now understands "-H" for help)

		
	* Changed the default "socket-sndbuf" and "socket-rcvbuf"
	  parameters to 0 (ie, don't set it: ie, use 8KB). It turns
	  out the setsockopt() calls to resize these buffers take
	  quite a long time...

		
	* Renamed "dserver" to "dhttpd".

		
Sat Aug 12 00:24:08 1995  Peter Eriksson  <pen@signum.se>

		
	* mmap() returns MAP_FAILED on error, not NULL (from Chris)

		
Fri Aug 11 18:04:18 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.61
	
	* Upp'ed the listen() backlog default parameter to 1024

		
	* Updated the "ptester" module.

		
	* Added a "dserver" dummy WWW server (for benchmarking purposes).

		
	* Modified the "dir" module to make use of the "suffix-path".
	
Wed Aug  9 12:33:21 1995  Peter Eriksson  <pen@signum.se>

		
	* Updated "strmatch.c" and "atotm.c" from Marcus.

		
	* Added "asis" module from Marcus.
	
	* Added a "suffix-path" option to the main config file.
	  This can be used to try to locate one of multiple files
	  by appending a suffix from the suffix-path list.

		
Tue Aug  8 16:45:15 1995  Peter Eriksson  <pen@signum.se>

		
	* cgi.c: Added a fd_shutdown() call to correctly handle
	  CGI scripts that doesn't output any data.

		
Tue Aug  8 07:16:26 1995  Peter Eriksson  <pen@signum.se>

		
	* cgi.c: Fixed fcntl() calls: Should have used GETFL/SETFL
	  instead of GETFD/SETFD.

		
	* Default to use Bound threads instead of Unbound ones. It seems
	  like there are some problems with unbound threads scheduling
	  on monoprocessor machines or something. It works better with
	  Bound threads anyway.

		
Sun Aug  6 22:22:01 1995  Peter Eriksson  <pen@signum.se>

		
	* More cgi.c cleanups: Moved the thr_join() to the end of
	  the request handler. Don't output a CONTENT_LENGTH message
	  if none is sent.

		
Fri Aug  4 23:29:00 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed the "Forwarded:" message (from Chris)

		
Fri Aug  4 09:29:18 1995  Peter Eriksson  <pen@signum.se>

		
	* Removed the mutex-lock in s_dup2().

		
	* Updated the "mbox.so" module.

		
Thu Aug  3 22:09:10 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a 'url-permanent-redirects' table in phttpd.conf, and
	  modified http_redirect() to take a code argument to specify
	  if the redirect should be 301(permanent) or 302(temporarily).

		
	* Cleaned up cgi.c some more.
	
Thu Aug  3 21:14:50 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a third argument to fd_relay(), a flag to select if the 
	  relaying should be undirectional or bidirectional.

		
Thu Aug  3 08:02:34 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a bug in fdstdio.c:_fd_fill() which would
	  terminate reads prematurely at 8192-boundaries.

		
Wed Aug  2 20:30:30 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a bug in html.c:html_strquote() which would
	  cause the server to occasionally core dump with a SIGSEGV.

		
	* Updated Marcus' ncsa-html.c file.

		
Wed Aug  2 08:55:46 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed problems with _fd_fionread() and _fd_read() with normal
	  files.

		
	* Changed getsockname() syslog level to LOG_INFO.

		
	* Don't used BOUND threads by default for the requests 
	  (causes problems sometimes, especially for servers with 
	  many concurrent requests during long times - the problems show
	  up as system hangs and similary). Bound threads (which makes
	  the server handle the requests faster can still be enabled
	  by using the command line option "-B" or the "bound-threads = true"
	  config file option.

		
Mon Jul 31 22:23:57 1995  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.60.
	
	* Added Mats Öhrman <matoh@lysator.liu.se>'s "mbox.so" module.

		
	* Modifed html_email() to be slightly smarted with regard
	  to if it should put '<' and '>' around the email address.

		
Mon Jul 31 20:53:17 1995  Peter Eriksson  <pen@signum.se>

		
	* Added Marcus' NCSA-style server-side includes. (ncsa-html.so)

		
	* Fixed a bug in logger.c:log_reopen(), called mutex_unlock()
	  with the wrong mutex variable. (From Marcus)

		
	* Updated "isproxy.so" to use fd_connect() and struct sockaddr
	  instead of the text versions (increases the speed of connections
	  in a big way).

		
	* Added a "-B" command line option to make it possible to
	  select between using BOUND threads or not for the requests.
	  
Mon Jul 31 09:32:40 1995  Peter Eriksson  <pen@signum.se>

		
 	* Fixed a big bug in safeio.c:s_get[pw,gr]* functions -
	  they wouldn't release their mutex if called with an
	  unknown user/group.
	  
	* Added a "s_abort()" function that doesn't send signals
	  (which causes a thread switch - which is very annoying
	  then running it under a debugger).

		
	* Fixed some file descriptor leaks and memory bugs in the
	  CGI module.

		
	* Modified "ptester" to use fd_connect() (with struct sockaddr_in)
	  instead of the old fd_connect()/fd_sconnect() - removes a lot
	  of slow (and uneccessary) string->struct sockaddr translations.

		
	* Some smaller casting fixes to make Sun's C compiler stop complaining.

		
	* Fixed a couple of Makefile bugs.
	
Sun Jul 30 14:17:26 1995  Peter Eriksson  <pen@signum.se>

		
	* Changed some syslog() priorities.

		
	* Added calls to initgroups() in ackpfd

		
	* Renamed phttpd's config file options "server-uid" and
	  "server-gid" to "server-user" and "server-group" and fixed
	  the code so one can use names for those options. Also added
	  an initgroups() call.
	  
Sat Jul 22 01:12:52 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed a couple of bugs in mime.c (from Marcus)

		
	* Updated the var.so module (from Marcus).
	
	* src/ackpfd/ackpfd.c (main): Added calls to getpwnam() and getgrnam().

		
Sat Jul 22 00:40:16 1995  Peter Eriksson  <pen@signum.se>

		
	* Added Marcus' var.so module.

		
Fri Jul 21 19:46:21 1995  Peter Eriksson  <pen@signum.se>

		
	* Renamed fd_connect() to fd_sconnect(), and
	  created a new fd_connect() that takes a struct sockaddr
	  as an argument.

		
Fri Jul 21 13:43:42 1995  Peter Eriksson  <pen@signum.se>

		
	* Fixed all thr_create() calls to use the stack_size variable.

		
	* Fixed a duplicate s_free() call in mime.c (From Chris@Infoseek)

		
Thu Jul 20 14:59:52 1995  Peter Eriksson  <pen@signum.se>

		
	* Moved default location of "phttpd.conf" file from /etc
	  to INSTROOT/etc/phttpd.conf. Also modified Makefile and
	  main.c to use relative paths from INSTROOT instead of
	  hardcoded absolute paths.
	  
	* Added "stack-size" config file option. Needed since the
	  default stack size for PC's running Solaris 2.4 is much too
	  small.

		
Thu Jul 20 03:22:20 1995  Peter Eriksson  <pen@signum.se>

		
	* CGI module: PATH_TRANSLATED is now full (absolute) path.
	
Thu Jul 20 01:40:23 1995  Peter Eriksson  <pen@signum.se>

		
	* Added the URL counting patches from Marcus.

		
Wed Jul 19 23:08:28 1995  Peter Eriksson  <pen@signum.se>

		
	* Added "path" config option for the CGI module to enable
	  the PATH for CGI scripts to be user-configurable. (From Marcus)

		
	* Fixed a bug in the new s_realloc() function.

		
Tue Jul 18 20:05:57 1995  Peter Eriksson  <pen@signum.se>

		
	* Created a "safeio.c" file that contains cover
	  routines for syscalls (and other) that can be
	  interrupted - or need other special handling.

		
	* Removed "xalloc.c" -> functions moved to safeio.c
	  (and renamed).

		
	* Applied some fixes to the MAP modules from Marcus:
		Return status 204 instead of 200 if user clicked
		outside any "active" region and no default URL has
		been specified.

		
		"point" can now be used in CERN compatibility "mode".

		
		Fixed a "hip->length" bug.

		
Tue Jul 18 02:25:09 1995  Peter Eriksson  <pen@signum.se>

		
	* Released version 0.99.59.

		
	* Added a workaround to fix the fact that getpwnam_r() doesn't
	  seem to be as MT-SAFE as it should be - this should fix a
	  number of hangs seen when multiple users files are accessed
	  concurrently. (Fix is a mutex lock around getpwnam_r()).

		
	* Added "stderr-file" config-option and "-E" command-line option
	  to control where stderr output is being sent (applies to 
	  debug output and stderr output from CGI scripts).

		
	* SIGUSR1 -> increase debug level with +1

		
	* SIGUSR2 -> decrease debug level with -1

		
	* CGI module: Only try to setuid/setgid to some other user 
	  when running CGI scripts if the server was started by "root".

		
Mon Jul 17 14:50:32 1995  Peter Eriksson  <pen@signum.se>

		
	* http.c:http_not_modified(): Removed the Last-Modifed and
	  Content-Type header lines.

		
Wed Jul 12 21:36:20 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.58.
	
        * Added a "web_admin_email" configuration option to phttpd.conf
          and modified the error message sent by the server to include
          this information if available. Also added "web_admin_name" and 
	  "web_admin_home" options.

		
	* Modified the CGI module to not send things written to stderr
	  to the client.
	
	* Included Marcus' strmatch.c and atotm.c files/functions.

		
	* Modified url.c:url_gethandlers() to use strmatch(). Also
	  modified the default phttpd.conf file.
	
	* Modified the FILE module to use atotm() on the "if-modified-since"
	  code. 

		
	* Fixed a bug in fdstdio:_fd_read().

		
	* Added a DOCUMENT_ROOT environment variable in the CGI module.

		
	* Added a mime_freeheaders() call at the end of mime_getheaders()
	  incase of errors to close one memory leak.

		
        * mime_getline(): EOF seen in a line causes the whole line to
          be invalid and it to return -1.

		
	* Fixed the setuid/setgid code in the CGI module so it won't
          run users scripts as root if the server is running as root..
	  (and the server isn't setuid' to some other user). 

		
	*  Added three configuration options to the CGI module, two
	   to allow CGI scripts not in users directories to be run as
	   some other user than the server itself. And a third option
	   to control if users are allowed to run CGI scripts or not.

		
Thu Jun 22 22:10:20 1995  Peter Eriksson  <pen@signum.se>

		
	* Modified the DIR module to be more flexible in the way
	  icons are selected. Also modified the dir.conf file.

		
Thu Jun 22 21:49:29 1995  Marcus E. Hennecke  <marcush@cache.crc.ricoh.com>

		
	* Added "server-addr" to /etc/phttpd.conf so it is possible
	  to bind a server to a specific interface (to facilitate
	  multiple servers on one machine).

		
Thu Jun 22 00:56:53 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.57

		
	* Fixed METHOD=POST bug in the CGI module.

		
 	* Added the "TZ" environment variable in the CGI module

		
Thu Jun 22 00:12:48 1995  Marcus E. Hennecke  <marcush@cache.crc.ricoh.com>

		
	* Modified the "map" module to be NCSA and CERN compatible.

		
Thu Jun 15 23:23:29 1995  Peter Eriksson  <pen@signum.se>

		
	* Added the "default-type" config option for "file.so".

		
	* Fixed HTTP return code bug for "If-Modified-Since:".

		
Sat Jun  3 12:43:38 1995  Peter Eriksson  <pen@signum.se>

		
	* Added a "pid-file" configuration option to /etc/phttpd.conf

		
Fri Jun  2 13:28:19 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.56

		
	* Some more CGI module fixes.

		
Thu Jun  1 14:12:51 1995  Peter Eriksson  <pen@signum.se>

		
        * Released 0.99.54

		
	* Modified the CGI module to support path arguments like:
		/cgi-bin/imagemap/foo/bar/fubar.gif
	  (where /cgi-bin/imagemap is the program to execute)
	  
	* Modified the CGI module to handle variants of Headers
	  transmitted from the CGI process better.

		
Tue May 30 01:56:15 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.53

		
	* Added the "logcvt-ip2n" and "rotate.logs" program and script

		
Sun May 28 22:55:07 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.52
	    
	* Moved some global variables and init code to fdstdio.c

		
	* Removed the '-o' command line option (and config file option)

		
	* Added the "ptester" program - can be used to benchmark WWW servers.

		
Wed May 24 16:14:13 1995  Peter Eriksson  <pen@signum.se>

		
	* Released 0.99.51

		
	* Close and reopen the log file when receiving SIGHUP

		
	* Removed redundant http:// from startup message

		
	* Fixed timezone handling around 00:00 o'clock.

		
	* Updated the Phttpd information page

		

		

		
.

NEW PAGES:

[ODDNUGGET]

[GOPHER]