ChangeLog
上传用户:ladybrid91
上传日期:2007-01-04
资源大小:287k
文件大小:48k
源码类别:

Web服务器

开发平台:

Unix_Linux

  1. Thu Mar  4 12:42:38 MET 1999
  2. * RELEASE of phttpd-1.10.03-rk
  3. * Restart on SIGNAL QUIT (kill -3 <pid>) works now.
  4. * You can set 'restart-requests' to a fixed number for force a refork
  5.   every 'restart-requests' requests !
  6. * fixed a bug in the signal handler
  7. Tue Feb 22 18:00:57 MET 1999
  8. * RELEASE of phttpd-1.10.02-rk
  9. * Fixed a BUG in auth_ldap.so (did not work at all)
  10. * Fixed a bug in virtualserver-handling and ports other than 80.
  11. * Fixed a bug in virtual server handler: forget to force strtolower !
  12. Tue Feb  9 15:01:18 MET 1999
  13. * RELEASE of phttpd-1.10.01-rk
  14. * Version 1.10.xx DO NOT WORK together with 1.0y.xx MODULES !
  15.   Reason: Some internal structs have changed their size !
  16.   Take care, when you update !
  17. * cleanup of virtualserver code in accept area.
  18.   Maybe also a memory leak has been removed
  19. * Added the feature sub-database-dir. It only work in
  20.   any virtualservermode.
  21. * security: // and /./ and /../ handling has been improved.
  22. * mode-dotted. Multimode servers can now use the dotted ipaddress instead of
  23.   the hex-pattern to build the documentsubroot.
  24. * The entire virtual-server-engine has been rewritten. So some strange behaviors
  25.   might have been changes. In case you have been using virtual-servers and 
  26.   complex rewritings, you should check that.
  27.   This should also have removed a memory leak.
  28. * Added "virtual-admin-email", which will create "virtual-admin-email"@servername in
  29.   errorpages as email adress.
  30.   A table or more sophisticated way would be nice, but it is fine for now.
  31. * The old cgi.so was replaced by the new cgi2.so !
  32.   So check your setup !
  33. * If the server and its configfile are with ABSOLUTE path,
  34.   server can be restarted with SIGNAL QUIT (kill -3 <pid>).
  35.   Signal HUP (kill -1 <pid>) will reopen the logs as allways.
  36.   You can also set a maximum number of requests to serv, befor
  37.   a refork and reload is done. This might be useful, if you think you have
  38.   found a memory leak.
  39. * cgi.so: Added feature: run as docrootowner.
  40. * cgi.so: Added feature: Changeroot to docroot.
  41. * Now one can add new servers with cgi-chroot and run as uid
  42.      without any work in the config files, yust do a mkdir.
  43. Sun Jan 17 17:27:50 MET 1999
  44. * RELEASE of phttpd-1.03.00-rk, an internal release for testing.
  45. * New features:
  46. * added auth_ldap. PHTTPD can now use LDAP to authentificate.
  47.   It is only tested on Solaris 7, whose ldap-libs are MT-safe.
  48. * fdstdio.c: relay_data: Fixed handling of 0 byte cgi-output,
  49.   while to_read !=0 should be > 0.
  50.   This should also fix the cgi-died and server does not return problem.
  51. Mon Jul 27 22:35:38 MET DST 1998
  52. * RELEASE of phttpd-1.02.17-rk
  53. * -17 can use the cegos field in passwd to match against the clients
  54.   ip-addess. Use 'extended' as a key. Gecos may then be a 'regular' expression,
  55.   but only '*', '?' and '|' are allowed.
  56. * -16 had a bugfix in cgi/core engine: If a cgi did send its headerfields
  57.   with a rn at the end, this is NOT the end of the header. 
  58.   (php3 does it this way !)
  59. * Fixed a bug in authdir ('*') as authdir did not work !
  60. Thu Jun 25 15:25:06 MET DST 1998
  61. * RELEASE of phttpd-1.02.15-rk
  62. Sun Jun 14 21:56:37 MET DST 1998
  63. * Current working version is: phttpd-1.02.14-rk
  64. * Security: file.so does allways follow symlinks. This can now be
  65.   changed using 'do-not-follow-symlink' in file.conf.
  66.   cgi.so and file.so are now safe, other modules need to be
  67.   checked !
  68.   cgi.so: The 'safe' is only true, if you run the cgi in chroot.
  69.   In fact, the cgi.so does not check for symlinks, but since the
  70.   chroot is done first, one does not need to care about that problem.
  71.   dir.so is safe, if dirlistings are NOT allowed !
  72. Tue May 26 22:59:31 MET DST 1998
  73. * RELEASE of phttpd-1.02.13-rk
  74. * check-index-file should now work together with /~user expansion.
  75.   (fixed in dir.c)
  76. Tue May 26 22:11:59 MET DST 1998
  77. * RELEASE of phttpd-1.02.12-rk
  78. * Fixed bug in the source code (my alpha-makefile was there)
  79. * Fixed a BUG in connection.c:gc_thread():
  80.   gc_thread alwas terminates on startup , so gc-collection
  81.   does not work.
  82.   (Bug report from: dima@elvis.ru)
  83.   A gc_time < 10 sec will disable the use of cleanup.
  84. * Fix to SERVER_NAME in cgi.so in multimode/svs !
  85. * If servername=*, in svs-mode the incoming interface is
  86.   used as servernamed/directory-expansion, if it is  HTTP/1.0
  87.   request.
  88. * check-index-file will break /~user/ expansion.
  89.   WARNING: The default of check-index-file is yes, so /~user/
  90.   WILL NOT WORK !
  91. Fri May  8 14:02:52 MET DST 1998 Roland Kaltefleiter (rk@netuse.de)
  92. * RELEASE of phttpd-1.02.11-rk
  93. * Fixed BUG's in dir.so in dirlisting: URL's need to be quotetd !
  94. * added new global function into url.c to make servername from cip !
  95. * check-index-file added 
  96. * changes to dir.so: urlrewriting is now also called befor the
  97.   handler is checked vs the index.file
  98. * fixed bug in mime_freeheaders (thanks to dima@elvis.ru).
  99. Thu Apr  2 00:13:52 MET DST 1998 Roland Kaltefleiter (rk@netuse.de)
  100. * RELEASE of phttpd-1.02.07-rk
  101. * Fixed some minor bugs.
  102. * Added cgi-run-bin-dir as an option !
  103. * A new complex cgi2.so is in progress, supporting 
  104.   tables for uid/gid and newroot, thus one only need ONE
  105.   module for several user/server.
  106.   This module is ONLY available for Sparc/Solaris in the binary distribution !
  107. Tue Mar 10 12:39:45 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  108. * RELEASE of phttpd-1.02.05-rk
  109. * Fixed bug/disable of 1.02.04:
  110.   option -F   --primary-config-file   String    Path to primary config file
  111.   option -f behaves as usual.
  112. Mon Mar  9 19:38:39 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  113. * RELEASE of phttpd-1.02.04-rk
  114. * Fixed the BUG: Always read phttpd.conf, even if -f option is used !
  115. * Fixed BUG in cgi.c: exec-needs-homedir has a string error.
  116. Thu Feb 26 20:02:27 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  117. * RELEASE of phttpd-1.02.02-rk
  118. * Added 'content-header = { ... } to file-module
  119.   Based on ULR-Pattern, additional hedaervalues can be sent !
  120.         * Fixed a BUG in url-rewriting
  121. Tue Feb 17 19:18:44 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  122.  
  123.         * RELEASE of phttpd-1.02.00-rk - This is a stable release.
  124.         * Fixed a BUG in core-engine, that could case phttpd to dump core
  125.           in a GET query without a HTTP/1.x !
  126.         * Fixed a BUG in the new acl-auth-handler part.
  127.         * See sample.acl for more on the acl-auth-handler.
  128. Sun Feb  1 20:07:59 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  129. * RELEASE of phttpd-1.01.01-rk
  130. * There was a BUG in SIGTERM in phttpd-1.01-rk-alpha from
  131.   a recent test. Daemon may not terminate !
  132. * Added Keyword 'auth' beside 'accept|reject' to the ACL-Handler.
  133.   See 'sample.acl' for more !
  134. * Fixed a minor bug in cgi.so. 
  135. * Some updates to the docs...
  136. Tue Jan 27 15:15:15 MET 1998 Roland Kaltefleiter (rk@netuse.de)
  137. * RELEASE of phttpd-1.01-rk-alpha
  138.   This is a version 1.0 !
  139.           Should be bug free !
  140.         * Added support for software  virtual servers
  141.         * Added support for software and multi-ip-address virtual servers
  142.           using one single process.
  143.         * Fixed PATH-translatet BUG in cgi.so
  144.         * Added presetting of env-Variable in cgi-module (see cgi.conf)
  145.         * Warning: ncsa-Server-side include are NOT checked for
  146.           software  virtual servers support. Code should work, but
  147.           since we do not use ncsa-Server-side includes here, no time to
  148.           test.
  149.         * Added extend access suport: $HOME-Filed of auth_file - module
  150.           can be used for more detailed aceess (see file.conf cgi.conf )
  151.           in file and cgi-module.
  152.           (dir and other modules are in progress and expected to 
  153.           have that support in Version 1.02
  154.         - Outlook:
  155.           + Support for authentification with LDAP is in work and
  156.             should be available in March/April 1998.
  157.           + API-Documentation is in work.
  158.           + Extended Manual is going to be written.
  159.             (Help wantet !!)
  160.             
  161. Mon Nov 24 00:08:54 MET 1997 Roland Kaltefleiter (rk@netuse.de)
  162. * Released Version: 0.99.77d+rk-pl3.4
  163. * Some bugs in new software virtual servers fixed.
  164. * some code clean up 
  165. Tue Nov 18 20:40:49 MET 1997 Roland Kaltefleiter (rk@netuse.de)
  166. * Released Version: 0.99.77b+rk-pl3.1
  167. * Added support for software virtual servers (HTTP/1.1)
  168. * Fixed some bugs in cgi.so with chroot and virtual servers.
  169. * Fixed some bugs in http-put !
  170. *****
  171. Maintainer of sourcecode changed: Please contact rk@netuse.de !
  172. *****
  173. * Bug in 'read-needs-homedir' fixed; Return code was wrong under some condition
  174.   (not found instead of 403 forbidden !)
  175. Wed Apr  9 00:46:25 1997  Peter Eriksson  <pen@signum.se>
  176. * Even more changes. The authentication stuff in now contained
  177.   in "struct authinfo", located in "struct httpinfo" via a
  178.   pointer. (used to be located as a structure inside
  179.   "struct connectioninfo").
  180. Mon Apr  7 02:25:30 1997  Peter Eriksson  <pen@signum.se>
  181. * Major changes: main.c cleaned up and split into a couple of
  182.   more files, dns.c and ident.c created, clist.c removed,
  183.   connection.c created and restructured (partly from clist
  184.   and other files). server.c created.
  185. * struct connectioninfo now contains a new member, "sip" of type
  186.   "struct serverinfo" which contains server-specific information,
  187.   like the "server_url".
  188. * struct addressinfo is no more. Has been replaced by
  189.   "struct dnsinfo" and "struct identinfo". This also
  190.   affects members of "struct connectioninfo" which changes
  191.   correspondingly.
  192. Thu Apr  3 19:22:53 1997  Peter Eriksson  <pen@signum.se>
  193. * NCSA-HTML: Fix for CGI subprocesses (from RK)
  194. * Added fix from RK to process.c for chroot() to work correctly.
  195. Thu Apr  3 17:05:42 1997  Peter Eriksson  <pen@signum.se>
  196. * Released version 0.99.76
  197. Wed Apr  2 22:53:42 1997  Peter Eriksson  <pen@signum.se>
  198. * Changed the Common Log Format day-of-month to use two digits
  199.   (with leading zero).
  200. * Some more patches from RK installed to finish up the
  201.   implementation of PUT/DELETE.
  202. * Removed the (buggy) SIGUSR1 handling in Ackpfd.
  203. Wed Mar 26 20:32:49 1997  Peter Eriksson  <pen@signum.se>
  204. * http.c: Bugfix for RK's multi-virtual-server stuff.
  205. Mon Mar 24 21:23:05 1997  Peter Eriksson  <pen@signum.se>
  206. * fd_gets() can now dynamically allocate it's string.
  207. * Fixed the quoted-?-in-URL bug. Side effect of bug fix is
  208.   that "?anything in url-rewriting rules doesn't work anymore.
  209.   (How should it work really?)
  210.   
  211. * phttpd.conf: url-authenticate changed name to read-authenticate.
  212.        url-access changed name to host-access.
  213.   
  214.   Similar changes also took place in url.c/urlcache.c/main.c
  215.         * PH: Changed the way queries are sent to the server in
  216.   case of a user specifying multi-word choices.
  217. * Added patches from RK to allow PUT/DELETE in limited directories
  218.   based in auth_file authentication. Slightly hacked by me
  219.   while I applied the patch...
  220.   
  221. Thu Mar 13 17:14:42 1997  Peter Eriksson  <pen@signum.se>
  222. * Added the "user-basedir" option to "phttpd.conf". If this
  223.   is set to a directory, then all user requests (~USER) are
  224.   assumed to be located below $user-basedir/$USER/$user-dir.
  225. * Added a safe "s_unlink()".
  226. * Fixed a coredumping bug in CGI if running at debug level 5
  227.   and having URL like this: http://foo.bar.com/cgi-bin/prog/AB%3FCD
  228. * etc/rotate.logs: Updated and cleaned up a lot.
  229. Wed Mar 12 19:19:35 1997  Peter Eriksson  <pen@signum.se>
  230. * "phttpd.gif" - a new logotype for Phttpd has now been included
  231.   in the HTML documentation!
  232. * Default "server_user" to "nobody". Gracefully handle
  233.   NULL server_user.
  234. * Created s_tmpname() and s_tmpfile() in safeio.c to create
  235.   unique temporary filenames and file (descriptors).
  236. * Replaced mktemp() and manual open in NCSA_HTML with s_tmpfile().
  237. Mon Mar 10 23:46:36 1997  Peter Eriksson  <pen@signum.se>
  238. * Replaced ctype.h/isXXX()/toXXX() macros with 8bit safer versions
  239.   called s_isXXX() and s_toXXX().
  240. * Rewrote the signal handling totally. Now uses sigwait().
  241. * SIGHUP now closes and reopens the stderr and request log files
  242.   correctly.
  243. * solaris.c:s_sleep(): Use cond_timedwait() instead of sleep().
  244. * Fixed the stderr logging problems when using -w/ackpfd.
  245. * solaris.c: Use nice(2) instead of setpriority()
  246. * config.so: Use <table> to print a lot of things.
  247.   
  248. * fd_foreach() was changed to not deadlock in case some
  249.   fd buffer is busy for a long time.
  250. * Added a mutex lock around dup2() (in s_dup2()) since it
  251.   isn't MT Safe according to the SunOS 5.5.1 manual page.
  252. Sat Mar  8 21:45:57 1997  Peter Eriksson  <pen@signum.se>
  253. * Released version 0.99.75
  254. * Fixed a bug in s_strcat() and s_strncat() with handling
  255.   zero-length strings as the source argument.
  256.   
  257. * Changed two occurances of s_abort() in s_strcat and s_strncat
  258.   to non fatal errors (they will be logged via syslog()).
  259. * Increased a couple of URL and Path buffer sizes from 1024 to 2048.
  260. Thu Mar  6 23:37:02 1997  Drazen Kacar <dave@fly.cc.fer.hr>
  261. * Bug fix for the range handling code, didn't make sure
  262.   that the range didn't extend beyond the end of the file.
  263.   
  264. Thu Mar  6 13:32:42 1997  Peter Eriksson  <pen@signum.se>
  265. * Disabled the code in NCSA-HTML that checks for "If-Modified-Since"
  266.   since it was incorrect. 
  267. Thu Mar  6 01:06:35 1997  Peter Eriksson  <pen@signum.se>
  268. * Released version 0.99.74
  269. * Updated "osf.c" and the Makefiles for Digital Unix 4.0 support.
  270.   Still doesn't work though.
  271.   
  272. * Added "-z text" ld options for linking modules when using Solaris.
  273. * Cleaned up the modules Makefile a bit.
  274. Wed Mar  5 13:18:36 1997  Peter Eriksson  <pen@signum.se>
  275. * fscache.h: Changed type of data.content buffer to "char *".
  276. * Disabled s_sleep() in safeio.c (use the one in solaris.c instead).
  277. Wed Mar  5 01:57:20 1997  Peter Eriksson  <pen@signum.se>
  278. * FILE: Fixed: The appending of a "/" was accidentially deleted
  279.   when redirecting to DIR
  280. * NCSA-HTML: Add: <!--#user--> now supports a "mailto=[user@]domain"
  281.   tag.
  282. Wed Mar  5 00:54:53 1997  Peter Eriksson  <pen@signum.se>
  283. * Modifed the Makefile in the modules directory to remove
  284.   all *.so files when "clean"ing instead of just the ones in the
  285.   LIBS list.
  286. Wed Mar  5 00:36:38 1997  Drazen Kacar <dave@fly.cc.fer.hr>
  287. * Implement simple range requests as per RFC 2068.
  288. Tue Mar  4 22:48:52 1997  Peter Eriksson  <pen@signum.se>
  289. * Changed the failure modes of the safe string copying functions.
  290.   Now it will silently limit the size of the destination string to the
  291.   maximum size allowed (and include a terminating NUL). 
  292. * s_strndup() renamed to s_strxdup().
  293. * s_sprintf() added. If HAVE_VSNPRINTF is defined then this
  294.   function will use the safe __vsnprintf() available in Solaris 2.5/2.5.1
  295.   else it will make an half-hearted attempt at checking for buffer overflows
  296.   (and will s_abort() in case of error)  .
  297. * Replaced all calls to sprintf() with the safer version.
  298. * Fixed gethostbyaddr() (changed into s_gethostbyaddr_r()) in file.c
  299. Mon Mar  3 21:52:30 1997  Peter Eriksson  <pen@signum.se>
  300. * Fixed a bug in the NCSA-HTML module that caused it to
  301.   get confused regarding what file was the current one in case
  302.   of file-not-found errors... (This fixes some coredumping bugs!)
  303. * Changed the DIR module to include the server_url in the header.
  304. * Corrected the return value from s_strcpy() and s_strcat().
  305.   (It incorrectly included the terminating NUL).
  306. Sun Mar  2 16:32:25 1997  Peter Eriksson  <pen@signum.se>
  307. * Added s_strcpy(), s_strcat(), s_strncpy() & s_strncat() to safeio.c.
  308. * Changed all occurances of strcpy(), strncpy() and strcat()
  309.   to the safe versions. And added some checks for the
  310.   return status code.
  311. * Added an "autofail.h" header file that automatically
  312.   makes code using non-safe versions  of some common
  313.   system calls fail at compilation time.
  314.   
  315. * Removed the LESS feature.
  316. * Removed a lot of unneccessary sprintf:s.
  317. * Cleaned up the main() function.
  318. Sat Mar  1 15:02:05 1997  Drazen Kacar <dave@fly.cc.fer.hr>
  319. * http.c: Missing terminating CRLF for HEAD requests.
  320. * Content-Language headers added to the FILE and NCSA-HTML modules.
  321.   (see phttpd.conf for an example)
  322. Sat Mar  1 13:05:46 1997  Peter Eriksson  <pen@signum.se>
  323. * Fixed bug in error.c for RK's Multimode:
  324.   Must use s_gethostbyaddr_r and not the non-MT-sfae gethostbyaddr()
  325. * Started moving Solaris-specific code to solaris.c from safeio.c
  326. * Generalized the auth code a bit (added some fields to the
  327.   auth struct in connectioninfo). This make the structure
  328.   incompatible with previously compiled modules!
  329. * Now uses priocntl() instead of setpriority() for Solaris.
  330. Sat Mar  1 02:28:37 1997  Peter Eriksson  <pen@signum.se>
  331. * Added a table "global-modules" to Phttpd.conf. Any
  332.   modules/shared libraries listed here gets loaded,
  333.   and made available for other modules to use, at startup.
  334. * Added a check for ".nodir" in a directory - if it exists
  335.   then a directory listing is denied.
  336. Sat Mar  1 00:36:36 1997  Peter Eriksson  <pen@signum.se>
  337. * Added a few missing config files.
  338. * Removed the "auth_cfile" module.
  339. * Fixed a coredumping bug in NCSA-HTML (would crash if
  340.   referencing non-existant files in a commands).
  341. * Added the <!--#user name="username"--> command to
  342.   the NCSA-HTML module. Outputs the full name (Gecos field
  343.   from Passwd database) inside a HREF pointing to the
  344.   users' own home pages (/~user).
  345. Fri Feb 28 19:59:10 1997  Peter Eriksson  <pen@signum.se>
  346. * Added a few missing module .conf files.
  347. * Fixed a small type in etc/phttpd.init.
  348. Fri Feb 28 18:25:16 1997  Drazen Kacar  <dave@fly.cc.fer.hr>
  349. * Updated the ASIS module to work correctly with the HEAD
  350.   method. Also automatically adds the Date: and Server:
  351.   headers.
  352. Fri Feb 28 03:07:21 1997  Peter Eriksson  <pen@signum.se>
  353. * Merged most of the Posix Threads code into the main
  354.   distribution. It doesn't work correctly yet, but it's
  355.   on it's way atleast... Most of the code compiles on
  356.   Digital Unix 4.0 (but it doesn't run, and there are
  357.   missing pieces :-)
  358. Fri Feb 28 00:21:44 1997  Peter Eriksson  <pen@signum.se>
  359. * Added the "next_proxy.so". This is a simple proxy module
  360.   that forwards HTTP Proxy requests to a specified (in
  361.   the configuration file) other Proxy server.
  362. Thu Feb 27 22:38:02 1997  Roland Kaltefleiter <rk@netuse.de>
  363. * Added support for encrypted (passwd-style) auth_file
  364.   authentication files.
  365. * Added to the CGI module the possibility to do
  366.   a chroot, to nice the subprocess and setting
  367.   some process limits (CPU, Mem and FDs).
  368. * Added an option to the DIR module to disable directory
  369.   listings. Default is to NOT allow listings.
  370.   
  371. * Added to the NCSA-HTML module the possibility to do
  372.   a chroot, to nice the subprocess and setting
  373.   some process limits (CPU, Mem and FDs) when the
  374.   module starts subprocesses.
  375. * Added to the FILE module the possibility to enable/disable
  376.   the PUT method. Default is disabled.
  377.   
  378. * Added support for a sort of multiple-WWW-servers in one
  379.   process.
  380. * proc_run() changed (more parameters passed)
  381. * Fixed a missing buf1 arg in error.c:error_access().
  382. * Added error_method_denied()
  383. Thu Feb 27 22:06:17 1997  Peter Eriksson  <pen@signum.se>
  384. * Changed default installation directory from /opt/www to
  385.   /opt/phttpd.
  386. * Changed default database directory to /opt/phttpd/db.
  387. * Changed default user public directory from ".public" to "pub"
  388.   (works much better with PCs and Macintoshes)
  389. * Updated the /etc/init.d/phttpd start/stop script.
  390. Sun Feb 23 19:34:20 1997  Peter Eriksson  <pen@signum.se>
  391. * auth_file.c: Allow multiple space/TAB between user & pwd.
  392. Sun Feb 23 19:33:59 1997  Peter Eriksson  <pen@signum.se>
  393. * Released version 0.99.73
  394. Sun Feb 23 02:10:55 1997  Marcus E Hennecke <hennecke@dbag.ulm.DaimlerBenz.com>
  395. * Lot's of fixes to the ncsa module.
  396. Sun Feb 23 01:55:51 1997  Drazen Kacar <dave@fly.cc.fer.hr>
  397. * HEAD handling errors (missing final rn) in a lot of modules.
  398. * Three memory leaks in error.c fixed.
  399. Sun Feb 23 01:44:11 1997  Valery P. Ukhno <vpu@module.vympel.msk.ru>
  400. * Fixed a coredumping bug in the 404 Not Found error message
  401.   printing routine (error.c). 
  402. * Fixed a Not Modifed bug in the ncsa html module.
  403. Wed Dec  4 11:06:36 1996  Peter Eriksson  <pen@signum.se>
  404. * Added support for user customizable error pages. See
  405.   the <error-pages> table in phttpd.conf.
  406. * The PH module now can include a page header and not just
  407.   a footer. (Directive "header-file").
  408. Wed Apr 10 23:57:29 1996  Peter Eriksson  <pen@signum.se>
  409. * Major cleanups (support for multiple accept():ing threads
  410.   on the same file descriptors removed, support for multiple
  411.   subprocesses removed, stack_size parameter removed).
  412. * config.so: generalized a bit (no longer uses a hardcoded
  413.   list of variables to display - takes it's info from the
  414.   global_cfg_options struct/table).
  415. * Supports a way to handle reconfigure/restart at SIGHUP.
  416.      Only works for Phttpd's started from Ackpfd currently:
  417.      Interacts with Ackpfd to start a new server, and terminates
  418.      itself in a way which should avoid disruptions of service.
  419. Wed Apr  3 20:54:12 1996  Peter Eriksson  <pen@signum.se>
  420. * auth_file now sets the cip->auth.user field correctly.
  421. Tue Mar 26 21:42:53 1996  Peter Eriksson  <pen@signum.se>
  422. * Added a super-simple text-file user/password "auth_file.so"
  423.   authorization module.
  424. * Virtualized the User/Password authorization code - it is
  425.   now possible to write authentication dynamically loadable
  426.   modules. The system password authentication stuff is now
  427.   moved into an "auth_syspwd.so" module.
  428. Tue Mar 26 09:58:09 1996  Peter Eriksson  <pen@signum.se>
  429. * Fixed a bug in the url_rewriting parts that I introduced in .72
  430. Mon Mar 18 20:45:41 1996  Peter Eriksson  <pen@signum.se>
  431. * Released 0.99.72
  432. * Fixed a "spelling" error (SIGKILL when I meant SIGTERM :-) in main.c
  433. * Makefile improvement when doing "make install.all"
  434. * Added a sanity check in the dir module in case some
  435.   user tries to access a file with trailing slashes...
  436. * Now truncates the pidfile correctly.
  437. Tue Mar 12 11:21:46 1996  Peter Eriksson  <pen@signum.se>
  438. * Madvice flag argument isn't an or:able bit field. Fixed in
  439.   fscache.c, mbox.c, ncsa-html.c
  440. Thu Feb 29 23:32:19 1996  Peter Eriksson  <pen@signum.se>
  441. * Released 0.99.71
  442. * CGI&NCSA: Added/fixed "LOCAL_HOST" environment variable.
  443. * phttpd.h: Moved the "struct addressinfo_s" out to level 0.
  444. * http_sendheaders(): Change the second argument ("time_t"
  445.      to "struct connectioninfo")
  446. * Implemented "Connection:" reply.
  447. Sun Jan 21 19:02:29 1996  Peter Eriksson  <pen@signum.se>
  448. * fdstdio: Added ENXIO to the list of errno's to log at
  449.   level LOG_INFO instead of LOG_ERR in fd_write().
  450. * Moved the /cgi-bin/* pattern match up to the top of the
  451.   list in the distributed "ptttpd.conf" file.
  452. Thu Jan 11 17:09:14 1996  Peter Eriksson  <pen@signum.se>
  453. * Now logs the original URL, and not the rewritten one.
  454. * CGI: Added environment vars "PHTTPD_ORIG_URL" and
  455.   "PHTTPD_ORIG_REQUEST", containing the original URL/Request
  456.   strings before rewriting.
  457. Wed Jan 10 20:24:28 1996  Peter Eriksson  <pen@signum.se>
  458. * Corrected the parsing of IDENT return data.
  459. * Fixed erroneous double HTTP headers output in the file
  460.   module (only happens if a file as too restrictive permissions)
  461. * Fixed CGI problems with POST
  462. Jan  9 23:37:56 1996  Peter Eriksson  <pen@signum.se>
  463. * Released 0.99.70
  464. Sat Jan  6 12:28:30 1996  Peter Eriksson  <pen@signum.se>
  465. * Added IDENT support. Enable with the config file option
  466.   "ident-lookups = true" if you really need it.
  467. * Log file now outputs "-" instead of "0" for log entries where
  468.   the "length" parameter isn't available.
  469.      
  470. * CGI: Added config option "copy-environ", a colon-separated
  471.   list of environment variables to pass down from the parent
  472.   (Phttpd) process to CGI subprocesses.
  473. Sat Jan  6 00:26:19 1996  Peter Eriksson  <pen@signum.se>
  474. * Fixed binary data passing bug in NPH-style CGI scripts.
  475. * Removed the special-caseing code for NPH-style scripts (not
  476.   needed).
  477. Thu Jan  4 00:34:54 1996  Peter Eriksson  <pen@signum.se>
  478. * The default uid/gid the server runs as if nothing else
  479.   is specified is now nobody/nobody (60001/60001).
  480. Thu Jan  4 00:18:16 1996  Peter Eriksson  <pen@signum.se>
  481. * Moved the Referer and User-Agent log fields to the end of
  482.   the line, and made them optional (extended-logging = true).
  483. * Now logs the IDENT "user" and authenticated "user" fields
  484.   in the log file (if data is available).
  485. * Fixed coredumping problem with files with insufficent
  486.   access rights on them.
  487.   
  488. Wed Jan  3 00:15:15 1996  Peter Eriksson  <pen@signum.se>
  489. * Added phttpd.conf bool option: keepalive-connections
  490.   to control if the "Connection: Keep-Alive" feature should
  491.   be supported or not.
  492. Tue Jan  2 08:52:46 1996  Peter Eriksson  <pen@signum.se>
  493. * Now also logs the Referer: and User-Agent: fields in the
  494.   Common Log Format log file.
  495. Fri Dec 22 17:20:21 1995  Peter Eriksson  <pen@signum.se>
  496. * FILE: Send default file type for suffix-less files.
  497. * Removed an unneccessary h_errno declaration to fix a
  498.   UnixWare compilation error.
  499. Wed Dec 13 19:21:45 1995  Peter Eriksson  <pen@signum.se>
  500. * DIR: Fixed core-dumping bug when doing dir listings, and
  501.   the directory contains symbolic links pointing at non-existing
  502.   fs objects and one isn't running in debug mode.
  503. Sun Dec 10 14:34:10 1995  Peter Eriksson  <pen@signum.se>
  504. * NCSA-HTML: Implemented the <!--#exec cmd=".."--> feature.
  505. Thu Dec  7 20:35:01 1995  Peter Eriksson  <pen@signum.se>
  506. * Added a set of cover routines for opendir/readdir/closedir
  507.   to implement a workaround for AFS problems, and it also makes
  508.   it work better generally.
  509. Thu Dec  7 15:45:04 1995  Peter Eriksson  <pen@signum.se>
  510. * Released 0.99.69
  511. Wed Dec  6 15:29:18 1995  Peter Eriksson  <pen@signum.se>
  512. * Found and fixed bugs in usercache/hostcache:update.
  513. Tue Dec  5 21:11:24 1995  Peter Eriksson  <pen@signum.se>
  514. * Fixed another update-handling bug i all caches.
  515. Tue Dec  5 16:50:14 1995  Peter Eriksson  <pen@signum.se>
  516. * Fixed coredumping bug i usercache handling.
  517. Mon Dec  4 17:01:17 1995  Peter Eriksson  <pen@signum.se>
  518. * ackpfd: Some file descriptor (stdin, stdout, stderr)
  519.   handling fixes to avoid some hangups.
  520. * Fixes with the accept_lock mutex and with the "-w" wait-mode
  521.   handling
  522. Sat Dec  2 17:39:30 1995  Peter Eriksson  <pen@signum.se>
  523. * Added User (name -> passwd) and Host (name & addr -> hostent)
  524.   caches.
  525. Fri Dec  1 14:47:20 1995  Peter Eriksson  <pen@signum.se>
  526. * Fixed the handling of multiple accept()ing threads and processes.
  527. * Added IPTOS_LOWDELAY IP option.
  528. Wed Nov 29 18:30:49 1995  Peter Eriksson  <pen@signum.se>
  529. * MBOX module: Fixed Keep-Alive problem.
  530. Mon Nov 27 18:09:14 1995  Peter Eriksson  <pen@signum.se>
  531. * CGI: max-environ (the max number of environment vars per
  532.   process, default 256) and max-processes (if non-zero, limits
  533.   the max number of concurrent CGI processes, default = 0).
  534. Mon Nov 27 14:20:06 1995  Peter Eriksson  <pen@signum.se>
  535. * Fixed the default values for "-L", "-P", "-C" and "-E"
  536.   options which got lost in the change to the new config stuff.
  537. * ptester: Now uses the real time instead of the time which
  538.   should have passed. Also handles keepalive connections correctly
  539.   when calculating the number of bytes/requests etc..
  540. Mon Nov 27 02:50:29 1995  Peter Eriksson  <pen@signum.se>
  541. * fd_flush() now uses a background thread to write out
  542.   the data, this increases the interleaving possible
  543.   and (for example) makes "Keep-Alive"-style connections
  544.   4-5 times faster. Should also increase the speed of
  545.   proxy connections and CGI-scripts output.
  546. Thu Nov 23 17:11:48 1995  Peter Eriksson  <pen@signum.se>
  547. * Changed the calling interface to the modules "pm_init()"
  548.   function for greater flexibility in the future.
  549. Wed Nov 22 21:24:23 1995  Peter Eriksson  <pen@signum.se>
  550. * Rewrote parts of the command line / config file
  551.   parsing. One can now use long options on the command
  552.   line. See "phttpd --help" for more info.
  553. * Disabled the FD_LOCK in fdstdio.
  554. * Moved some small utility programs to "src/utils".
  555. Wed Nov 22 14:44:10 1995  Peter Eriksson  <pen@signum.se>
  556. * Update the last-modified field correctly in ncsa-html.
  557. Wed Nov 22 11:43:53 1995  Peter Eriksson  <pen@signum.se>
  558. * CGI-module now creates some convenience variables
  559.   (not part of the CGI/1.1 standard) of the form
  560.   "PHTTPD_QUERY_var" for each QUERY_STRING "var=val" pair.
  561.   It also decodes the "var" and "val" strings.
  562. Tue Nov 21 01:48:50 1995  Peter Eriksson  <pen@signum.se>
  563. * The documentation updated slightly.
  564. Mon Nov 20 01:22:51 1995  Peter Eriksson  <pen@signum.se>
  565. * A "gopher_proxy" module added. 
  566. Sun Nov 19 22:42:19 1995  Peter Eriksson  <pen@signum.se>
  567. * Added an "orig_url" member to the "httpinfo" structure
  568.   which will contain the original URL header (before
  569.   any rewriting has occured).
  570. Sun Nov 19 19:55:53 1995  Peter Eriksson  <pen@signum.se>
  571. * Fixed a core-dumping bug which occurs if one specifies
  572.   a server-user which doesn't exist in the system, and
  573.   one does not specify a server-group.
  574. Thu Nov 16 14:37:31 1995  Peter Eriksson  <pen@signum.se>
  575. * MAP: Handle last line in map modules correctly.
  576.        Documentation update (from Marcus).
  577. Wed Nov 15 17:55:09 1995  Peter Eriksson  <pen@signum.se>
  578. * Modified the access code to use getspnam_r() instead
  579.   of getpwnam_r().
  580. Wed Nov 15 15:46:36 1995  Peter Eriksson  <pen@signum.se>
  581. * Pragma: No-Cache now supported (causes the Fscache to always
  582.   reload the files or dirs).
  583. * -d now prevents stderr from being changed to /dev/null.
  584. Tue Nov 14 21:48:29 1995  Peter Eriksson  <pen@signum.se>
  585. * MAP module now accepts r as end of line delimitors also.
  586. * CGI module updated to be CGI Version 1.1 compliant.
  587. * Updated the CGI module's handling of extra HTTP headers.
  588. * Fixed the CGI module's handling of PATH_INFO and PATH_TRANSLATED.
  589. * fd_gets() now also accepts r as an end-of-line char.
  590. Tue Nov 14 01:27:13 1995  Peter Eriksson  <pen@signum.se>
  591. * Released 0.99.68
  592. * Added the same type of Mutex wrappers around the gethost...
  593.   calls as is used around the getpw... and getgr... calls to
  594.   fix hangs caused by the buggy RPC code in the YP and NIS+
  595.   libraries.
  596. Tue Nov  7 16:29:14 1995  Peter Eriksson  <pen@signum.se>
  597. * Fixed memory leak in pm_exit() in several modules
  598. Mon Nov  6 21:15:02 1995  Peter Eriksson  <pen@signum.se>
  599. * A new module "http_proxy" implemented which is a
  600.   (very) simple HTTP proxy module. Not currently cacheing.
  601. Mon Nov  6 18:48:28 1995  Peter Eriksson  <pen@signum.se>
  602. * Fixed a deadlocking bug in cache.c:garb_thread().
  603. * Modified the PH module to make it possible to specify
  604.   a footer text to include.
  605. Thu Nov  2 23:41:41 1995  Peter Eriksson  <pen@signum.se>
  606. * New version of strmatch.c from Marcus which fixes a
  607.   bug that prevented it from matching "foo*" to "foo".
  608. Thu Nov  2 21:58:08 1995  Peter Eriksson  <pen@signum.se>
  609. * Added an AFS readdir_r() bug workaround. If you want
  610.   to use Phttpd to do directory listings on AFS volumes
  611.   you _may_ have to make sure "ENABLE_AFS_WORKAROUND" is
  612.   defined in the top level Makefile, and then in "phttpd.conf"
  613.   add "posix_path_max = 1024".
  614. * Found and fixed a deadlocking bug in fscache.
  615. * Fixed a bug in the DIR module where failure to stat()
  616.   files in a directory caused a core dump.
  617. Thu Nov  2 08:39:17 1995  Peter Eriksson  <pen@signum.se>
  618. * Added "LOCAL_ADDR" and "LOCAL_HOST" environment
  619.   variables for CGI scripts (gives the local IP# and hostname
  620.   for the server, can be useful for servers serving multiple
  621.   hosts).
  622. Wed Nov  1 11:48:21 1995  Peter Eriksson  <pen@signum.se>
  623. * Fixed a memory leak in the DIR module.
  624. * Fixed security problem with AUTHENTICATE and CGI scripts.
  625. * Install ".purify" Purify option files.
  626. Tue Oct 31 23:50:26 1995  Peter Eriksson  <pen@signum.se>
  627. * Refixed SIGUSR1 to do what it used to do.
  628. * Added a SIGTERM handler to terminate nicely.
  629. Mon Oct 30 14:29:52 1995  Peter Eriksson  <pen@signum.se>
  630. * DIR: Added a safety fix (dir.size == 0) before alloca().
  631. * DIR: Fixed the logging of the URL for counting the requests
  632.   to the directories if one uses <!--#count--> in "index.shtml"
  633.   files.
  634. Sun Oct 29 22:24:09 1995  Peter Eriksson  <pen@signum.se>
  635. * Released 0.99.66
  636. * Added cache (URL & FS) statistics.
  637. Sun Oct 29 13:57:39 1995  Peter Eriksson  <pen@signum.se>
  638. * Added a fix for a core-dumping bug in the MAP module.
  639.     (from Greg Moeller <gkm@moe.magic.mb.ca>)
  640. Sat Oct 28 17:23:32 1995  Peter Eriksson  <pen@signum.se>
  641. * Fixed the url-rewrite, url-redirect, url-predirect,
  642.   url-access and url-authenticate code.
  643. Fri Oct 27 18:23:22 1995  Peter Eriksson  <pen@signum.se>
  644. * Print the directory icons in a multicolumn table
  645. * Reactivated the "add_href"-table in the DIR module.
  646. Thu Oct 26 19:16:42 1995  Peter Eriksson  <pen@signum.se>
  647. * Rewrote the DIR module (better looking output :-)
  648.   Still more things to be done there though.
  649. * Modified the fscache to 1) work better and 2) do an
  650.   fscache lookup for every file found when loading a
  651.   directory content)
  652. Wed Oct 25 17:31:40 1995  Peter Eriksson  <pen@signum.se>
  653. * Added a background cache garbing thread for caches.
  654. * Modified the single "ttl" param into three ("refresh",
  655.   "ttl" and "gc-interval").
  656. * Only check stat-struct members st_size, st_mtime and st_inode
  657.   when comparing if the file has been changed.
  658. Tue Oct 24 16:57:03 1995  Peter Eriksson  <pen@signum.se>
  659. * Replaced the s_malloc() of struct connectioninfo in
  660.   the accept_thread with a statically allocated array to
  661.   increase parallellism.
  662.   
  663. * Added an URL (rewrite,redirect,access,auth,handler) cache.
  664. * Added ECONNRESET to the EPIPE checks.
  665. Tue Oct 24 14:16:41 1995  Peter Eriksson  <pen@signum.se>
  666. * Added support for the "Connection: Keep-Alive" feature.
  667. * Implemented a smart file system cache (fscache.c) and
  668.   a generic cache type.
  669. * Fixed a bug in the dir module, which caused it to sometimes
  670.   not display all entries (Also rewrote it due to the fscache
  671.   above).
  672. * The file and asis modules also rewritten to use the fscache.
  673. Sat Oct 14 02:35:34 1995  Peter Eriksson  <pen@signum.se>
  674. * Modified the modules table, and the file:content-type and
  675.   file:content-encoding tables to use hashtables.
  676. * Implemented a hashtable for faster table searches.
  677. Fri Oct  6 05:55:07 1995  Peter Eriksson  <pen@signum.se>
  678. * Added a "accept-threads" (-A) option to Phttpd so that
  679.   one can have multiple threads doing accept() concurrently.
  680. Tue Oct  3 00:39:05 1995  Peter Eriksson  <pen@signum.se>
  681. * Modifed the url rewriting stuff to also be able to
  682.   include "request" stuff (the text after a "?" in an URL)
  683.   thanks to a patch from Thomas Bellman <bellman@lysator.liu.se>
  684. Mon Sep 25 18:47:57 1995  Peter Eriksson  <pen@signum.se>
  685. * Added a "server-processes" config file directive to be able
  686.   to run multiple parallell server processes. This seems to
  687.   not work 100% correctly yet, due to some bugs in Solaris.
  688. * Made my email address not clickable in error messages.
  689. Thu Sep 14 11:18:57 1995  Peter Eriksson  <pen@signum.se>
  690. * Modified the "/etc/init.d/phttpd" startup script to
  691.   specify a full path to the "ndd" program.
  692. * Updated the patch list in "INSTALL".
  693. Mon Sep 11 21:16:10 1995  Peter Eriksson  <pen@signum.se>
  694. * Updated the "dir" module with changes from Guenther Fischer.
  695.   (Sorted, and also display file size and modification times).
  696. Sun Sep 10 17:30:11 1995  Peter Eriksson  <pen@signum.se>
  697. * Released 0.99.64
  698. * Added a hostname resolving background thread, enabled by
  699.   a phttpd.conf option ("hostname-lookups = true").
  700. * Modified cgi.c to add the "REMOTE_HOST" env. var. if
  701.   the client hostname is available. Other vars added:
  702.   REMOTE_IDENT (not currently set since no IDENT
  703.    lookup is done)
  704.   AUTH_TYPE (set to the authentication type if used)
  705.   REMOTE_USER (set to the authenticated user if used)
  706.   
  707. * Modified logger.c to log the hostname if available.
  708. * Modified access.c to enable "host" access control in
  709.   addition to the previous "address" keyword.
  710. * Added authentication level "Basic", using the system
  711.   password database.
  712. Fri Sep  8 17:41:45 1995  Peter Eriksson  <pen@signum.se>
  713. * Released 0.99.63
  714. * Added a simple host IP# access control scheme. Configurable
  715.   from phttpd.conf, see the "url-access" section. See the
  716.   file "examples/sample.acl" on how to control access.
  717. * Rewrote the url-redirect and url-permanent-redirect handling
  718.   to also use "strmatch".
  719. Wed Sep  6 00:28:27 1995  Peter Eriksson  <pen@signum.se>
  720. * Moved the s_close() call in modules/file up to just after
  721.   the mmap() call. This shortens the time the file descriptor
  722.   is in use so it won't have to stay open all the time
  723.   while the file contents is transmitted to the client.
  724. Sat Sep  2 00:31:08 1995  Peter Eriksson  <pen@signum.se>
  725. * Updated the syslog() messages in fdstdio.c
  726. Fri Aug 18 23:56:18 1995  Peter Eriksson  <pen@signum.se>
  727. * Further updates of Dhttpd and Ptester.
  728. Wed Aug 16 00:22:19 1995  Peter Eriksson  <pen@signum.se>
  729. * Released 0.99.62
  730. * ASIS: Removed an erronous call to fd_putc('n') if HTTP/1.0
  731. * Updated dserver and ptesters with new command line options
  732.   (now understands "-H" for help)
  733. * Changed the default "socket-sndbuf" and "socket-rcvbuf"
  734.   parameters to 0 (ie, don't set it: ie, use 8KB). It turns
  735.   out the setsockopt() calls to resize these buffers take
  736.   quite a long time...
  737. * Renamed "dserver" to "dhttpd".
  738. Sat Aug 12 00:24:08 1995  Peter Eriksson  <pen@signum.se>
  739. * mmap() returns MAP_FAILED on error, not NULL (from Chris)
  740. Fri Aug 11 18:04:18 1995  Peter Eriksson  <pen@signum.se>
  741. * Released 0.99.61
  742. * Upp'ed the listen() backlog default parameter to 1024
  743. * Updated the "ptester" module.
  744. * Added a "dserver" dummy WWW server (for benchmarking purposes).
  745. * Modified the "dir" module to make use of the "suffix-path".
  746. Wed Aug  9 12:33:21 1995  Peter Eriksson  <pen@signum.se>
  747. * Updated "strmatch.c" and "atotm.c" from Marcus.
  748. * Added "asis" module from Marcus.
  749. * Added a "suffix-path" option to the main config file.
  750.   This can be used to try to locate one of multiple files
  751.   by appending a suffix from the suffix-path list.
  752. Tue Aug  8 16:45:15 1995  Peter Eriksson  <pen@signum.se>
  753. * cgi.c: Added a fd_shutdown() call to correctly handle
  754.   CGI scripts that doesn't output any data.
  755. Tue Aug  8 07:16:26 1995  Peter Eriksson  <pen@signum.se>
  756. * cgi.c: Fixed fcntl() calls: Should have used GETFL/SETFL
  757.   instead of GETFD/SETFD.
  758. * Default to use Bound threads instead of Unbound ones. It seems
  759.   like there are some problems with unbound threads scheduling
  760.   on monoprocessor machines or something. It works better with
  761.   Bound threads anyway.
  762. Sun Aug  6 22:22:01 1995  Peter Eriksson  <pen@signum.se>
  763. * More cgi.c cleanups: Moved the thr_join() to the end of
  764.   the request handler. Don't output a CONTENT_LENGTH message
  765.   if none is sent.
  766. Fri Aug  4 23:29:00 1995  Peter Eriksson  <pen@signum.se>
  767. * Fixed the "Forwarded:" message (from Chris)
  768. Fri Aug  4 09:29:18 1995  Peter Eriksson  <pen@signum.se>
  769. * Removed the mutex-lock in s_dup2().
  770. * Updated the "mbox.so" module.
  771. Thu Aug  3 22:09:10 1995  Peter Eriksson  <pen@signum.se>
  772. * Added a 'url-permanent-redirects' table in phttpd.conf, and
  773.   modified http_redirect() to take a code argument to specify
  774.   if the redirect should be 301(permanent) or 302(temporarily).
  775. * Cleaned up cgi.c some more.
  776. Thu Aug  3 21:14:50 1995  Peter Eriksson  <pen@signum.se>
  777. * Added a third argument to fd_relay(), a flag to select if the 
  778.   relaying should be undirectional or bidirectional.
  779. Thu Aug  3 08:02:34 1995  Peter Eriksson  <pen@signum.se>
  780. * Fixed a bug in fdstdio.c:_fd_fill() which would
  781.   terminate reads prematurely at 8192-boundaries.
  782. Wed Aug  2 20:30:30 1995  Peter Eriksson  <pen@signum.se>
  783. * Fixed a bug in html.c:html_strquote() which would
  784.   cause the server to occasionally core dump with a SIGSEGV.
  785. * Updated Marcus' ncsa-html.c file.
  786. Wed Aug  2 08:55:46 1995  Peter Eriksson  <pen@signum.se>
  787. * Fixed problems with _fd_fionread() and _fd_read() with normal
  788.   files.
  789. * Changed getsockname() syslog level to LOG_INFO.
  790. * Don't used BOUND threads by default for the requests 
  791.   (causes problems sometimes, especially for servers with 
  792.   many concurrent requests during long times - the problems show
  793.   up as system hangs and similary). Bound threads (which makes
  794.   the server handle the requests faster can still be enabled
  795.   by using the command line option "-B" or the "bound-threads = true"
  796.   config file option.
  797. Mon Jul 31 22:23:57 1995  Peter Eriksson  <pen@signum.se>
  798. * Released version 0.99.60.
  799. * Added Mats 謍rman <matoh@lysator.liu.se>'s "mbox.so" module.
  800. * Modifed html_email() to be slightly smarted with regard
  801.   to if it should put '<' and '>' around the email address.
  802. Mon Jul 31 20:53:17 1995  Peter Eriksson  <pen@signum.se>
  803. * Added Marcus' NCSA-style server-side includes. (ncsa-html.so)
  804. * Fixed a bug in logger.c:log_reopen(), called mutex_unlock()
  805.   with the wrong mutex variable. (From Marcus)
  806. * Updated "isproxy.so" to use fd_connect() and struct sockaddr
  807.   instead of the text versions (increases the speed of connections
  808.   in a big way).
  809. * Added a "-B" command line option to make it possible to
  810.   select between using BOUND threads or not for the requests.
  811.   
  812. Mon Jul 31 09:32:40 1995  Peter Eriksson  <pen@signum.se>
  813.   * Fixed a big bug in safeio.c:s_get[pw,gr]* functions -
  814.   they wouldn't release their mutex if called with an
  815.   unknown user/group.
  816.   
  817. * Added a "s_abort()" function that doesn't send signals
  818.   (which causes a thread switch - which is very annoying
  819.   then running it under a debugger).
  820. * Fixed some file descriptor leaks and memory bugs in the
  821.   CGI module.
  822. * Modified "ptester" to use fd_connect() (with struct sockaddr_in)
  823.   instead of the old fd_connect()/fd_sconnect() - removes a lot
  824.   of slow (and uneccessary) string->struct sockaddr translations.
  825. * Some smaller casting fixes to make Sun's C compiler stop complaining.
  826. * Fixed a couple of Makefile bugs.
  827. Sun Jul 30 14:17:26 1995  Peter Eriksson  <pen@signum.se>
  828. * Changed some syslog() priorities.
  829. * Added calls to initgroups() in ackpfd
  830. * Renamed phttpd's config file options "server-uid" and
  831.   "server-gid" to "server-user" and "server-group" and fixed
  832.   the code so one can use names for those options. Also added
  833.   an initgroups() call.
  834.   
  835. Sat Jul 22 01:12:52 1995  Peter Eriksson  <pen@signum.se>
  836. * Fixed a couple of bugs in mime.c (from Marcus)
  837. * Updated the var.so module (from Marcus).
  838. * src/ackpfd/ackpfd.c (main): Added calls to getpwnam() and getgrnam().
  839. Sat Jul 22 00:40:16 1995  Peter Eriksson  <pen@signum.se>
  840. * Added Marcus' var.so module.
  841. Fri Jul 21 19:46:21 1995  Peter Eriksson  <pen@signum.se>
  842. * Renamed fd_connect() to fd_sconnect(), and
  843.   created a new fd_connect() that takes a struct sockaddr
  844.   as an argument.
  845. Fri Jul 21 13:43:42 1995  Peter Eriksson  <pen@signum.se>
  846. * Fixed all thr_create() calls to use the stack_size variable.
  847. * Fixed a duplicate s_free() call in mime.c (From Chris@Infoseek)
  848. Thu Jul 20 14:59:52 1995  Peter Eriksson  <pen@signum.se>
  849. * Moved default location of "phttpd.conf" file from /etc
  850.   to INSTROOT/etc/phttpd.conf. Also modified Makefile and
  851.   main.c to use relative paths from INSTROOT instead of
  852.   hardcoded absolute paths.
  853.   
  854. * Added "stack-size" config file option. Needed since the
  855.   default stack size for PC's running Solaris 2.4 is much too
  856.   small.
  857. Thu Jul 20 03:22:20 1995  Peter Eriksson  <pen@signum.se>
  858. * CGI module: PATH_TRANSLATED is now full (absolute) path.
  859. Thu Jul 20 01:40:23 1995  Peter Eriksson  <pen@signum.se>
  860. * Added the URL counting patches from Marcus.
  861. Wed Jul 19 23:08:28 1995  Peter Eriksson  <pen@signum.se>
  862. * Added "path" config option for the CGI module to enable
  863.   the PATH for CGI scripts to be user-configurable. (From Marcus)
  864. * Fixed a bug in the new s_realloc() function.
  865. Tue Jul 18 20:05:57 1995  Peter Eriksson  <pen@signum.se>
  866. * Created a "safeio.c" file that contains cover
  867.   routines for syscalls (and other) that can be
  868.   interrupted - or need other special handling.
  869. * Removed "xalloc.c" -> functions moved to safeio.c
  870.   (and renamed).
  871. * Applied some fixes to the MAP modules from Marcus:
  872. Return status 204 instead of 200 if user clicked
  873. outside any "active" region and no default URL has
  874. been specified.
  875. "point" can now be used in CERN compatibility "mode".
  876. Fixed a "hip->length" bug.
  877. Tue Jul 18 02:25:09 1995  Peter Eriksson  <pen@signum.se>
  878. * Released version 0.99.59.
  879. * Added a workaround to fix the fact that getpwnam_r() doesn't
  880.   seem to be as MT-SAFE as it should be - this should fix a
  881.   number of hangs seen when multiple users files are accessed
  882.   concurrently. (Fix is a mutex lock around getpwnam_r()).
  883. * Added "stderr-file" config-option and "-E" command-line option
  884.   to control where stderr output is being sent (applies to 
  885.   debug output and stderr output from CGI scripts).
  886. * SIGUSR1 -> increase debug level with +1
  887. * SIGUSR2 -> decrease debug level with -1
  888. * CGI module: Only try to setuid/setgid to some other user 
  889.   when running CGI scripts if the server was started by "root".
  890. Mon Jul 17 14:50:32 1995  Peter Eriksson  <pen@signum.se>
  891. * http.c:http_not_modified(): Removed the Last-Modifed and
  892.   Content-Type header lines.
  893. Wed Jul 12 21:36:20 1995  Peter Eriksson  <pen@signum.se>
  894. * Released 0.99.58.
  895.         * Added a "web_admin_email" configuration option to phttpd.conf
  896.           and modified the error message sent by the server to include
  897.           this information if available. Also added "web_admin_name" and 
  898.   "web_admin_home" options.
  899. * Modified the CGI module to not send things written to stderr
  900.   to the client.
  901. * Included Marcus' strmatch.c and atotm.c files/functions.
  902. * Modified url.c:url_gethandlers() to use strmatch(). Also
  903.   modified the default phttpd.conf file.
  904. * Modified the FILE module to use atotm() on the "if-modified-since"
  905.   code. 
  906. * Fixed a bug in fdstdio:_fd_read().
  907. * Added a DOCUMENT_ROOT environment variable in the CGI module.
  908. * Added a mime_freeheaders() call at the end of mime_getheaders()
  909.   incase of errors to close one memory leak.
  910.         * mime_getline(): EOF seen in a line causes the whole line to
  911.           be invalid and it to return -1.
  912. * Fixed the setuid/setgid code in the CGI module so it won't
  913.           run users scripts as root if the server is running as root..
  914.   (and the server isn't setuid' to some other user). 
  915. *  Added three configuration options to the CGI module, two
  916.    to allow CGI scripts not in users directories to be run as
  917.    some other user than the server itself. And a third option
  918.    to control if users are allowed to run CGI scripts or not.
  919. Thu Jun 22 22:10:20 1995  Peter Eriksson  <pen@signum.se>
  920. * Modified the DIR module to be more flexible in the way
  921.   icons are selected. Also modified the dir.conf file.
  922. Thu Jun 22 21:49:29 1995  Marcus E. Hennecke  <marcush@cache.crc.ricoh.com>
  923. * Added "server-addr" to /etc/phttpd.conf so it is possible
  924.   to bind a server to a specific interface (to facilitate
  925.   multiple servers on one machine).
  926. Thu Jun 22 00:56:53 1995  Peter Eriksson  <pen@signum.se>
  927. * Released 0.99.57
  928. * Fixed METHOD=POST bug in the CGI module.
  929.   * Added the "TZ" environment variable in the CGI module
  930. Thu Jun 22 00:12:48 1995  Marcus E. Hennecke  <marcush@cache.crc.ricoh.com>
  931. * Modified the "map" module to be NCSA and CERN compatible.
  932. Thu Jun 15 23:23:29 1995  Peter Eriksson  <pen@signum.se>
  933. * Added the "default-type" config option for "file.so".
  934. * Fixed HTTP return code bug for "If-Modified-Since:".
  935. Sat Jun  3 12:43:38 1995  Peter Eriksson  <pen@signum.se>
  936. * Added a "pid-file" configuration option to /etc/phttpd.conf
  937. Fri Jun  2 13:28:19 1995  Peter Eriksson  <pen@signum.se>
  938. * Released 0.99.56
  939. * Some more CGI module fixes.
  940. Thu Jun  1 14:12:51 1995  Peter Eriksson  <pen@signum.se>
  941.         * Released 0.99.54
  942. * Modified the CGI module to support path arguments like:
  943. /cgi-bin/imagemap/foo/bar/fubar.gif
  944.   (where /cgi-bin/imagemap is the program to execute)
  945.   
  946. * Modified the CGI module to handle variants of Headers
  947.   transmitted from the CGI process better.
  948. Tue May 30 01:56:15 1995  Peter Eriksson  <pen@signum.se>
  949. * Released 0.99.53
  950. * Added the "logcvt-ip2n" and "rotate.logs" program and script
  951. Sun May 28 22:55:07 1995  Peter Eriksson  <pen@signum.se>
  952. * Released 0.99.52
  953.     
  954. * Moved some global variables and init code to fdstdio.c
  955. * Removed the '-o' command line option (and config file option)
  956. * Added the "ptester" program - can be used to benchmark WWW servers.
  957. Wed May 24 16:14:13 1995  Peter Eriksson  <pen@signum.se>
  958. * Released 0.99.51
  959. * Close and reopen the log file when receiving SIGHUP
  960. * Removed redundant http:// from startup message
  961. * Fixed timezone handling around 00:00 o'clock.
  962. * Updated the Phttpd information page