Skip to content
CHANGES 450 KiB
Newer Older
3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000
     errno => ap_status_t changes a while back.  Plus a fix to
     chunked encoding introduced right at the beginning of 2.0.
     [Dean Gaudet]

  *) Revamped UNIX build system to use autoconf and libtool.
     [Manoj Kasichainula, Sascha Schumann]

  *) port mod_rewrite to 2.0. [Paul J. Reder <rederpj@raleigh.ibm.com>]

  *) More rigorous checking of Host: headers to fix security problems
     with mass name-based virtual hosting (whether using mod_rewrite
     or mod_vhost_alias).
     [Ben Hyde, Tony Finch]
  
  *) Add back support for UseCanonicalName in <Directory> containers.
     [Manoj Kasichainula]

  *) Added APLOG_STARTUP log type.  This allows us to write an error
     message without any of the date and time information.  As a part
     of this change, I also removed all of the calls to fprintf(stderr
     and replaced them with calls to ap_log_error using APLOG_STARTUP
     writing to stderr is no longer portable, because we don't direct 
     stderr to the error log on all platforms.
     [Ryan Bloom] 
 
  *) Convert error logging functions to take errno as an argument.
     This makes our error logs more portable, because some Windows API's 
     don't set errno.  This change allows us to still output a valid
     message on all of our platforms.
     [Ryan Bloom]

  *) mod_mime_magic runs in 2.0-dev now.
     [Paul Reder <rederpj@raleigh.ibm.com>]

  *) sendfile has been added to APR.
     [John Zedlewski <zedlwski@Princeton.EDU>]

  *) buff.c has been converted to no longer use errno.
     [Manoj Kasichainula]

  *) mod_speling runs in 2.0-dev now: a bug in readdir_r handling and
     interface adaption to APR functions did it. [Martin Kraemer]

  *) Support DSOs properly on 32-bit HP-UX 11.0
     [Dilip Khandekar <dilip@cup.hp.com>]

  *) Updated MM in APR source tree from version 1.0.8 to 1.0.11
     [Ralf S. Engelschall]

  *) Cleaned APR build environment integration and bootstrap APR 
     automatically for developers from src/Configure.
     [Ralf S. Engelschall]

  *) Fixed building of src/support/htpasswd.c
     [Ralf S. Engelschall]

  *) When generating the Location: header, mod_speling forgot
     to escape the spelling-fixed uri. (Forw-Port from 1.3)
     [Martin Kraemer]

  *) Moved mod_auth_digest.c from experimental to standard. [Roy Fielding]

  *) Change all pools to APR contexts.  This is the first step to
     incorporating APR into Apache. [Ryan Bloom]

  *) Move "handler not found" warning message to below the check
     for a wildcard handler.  [Dirk <dirkm@teleport.com>, Roy Fielding]
     PR#2584, PR#2751, PR#3349, PR#3436, PR#3548, PR#4384, PR#4795, PR#4807

  *) Support line-continuation feature in config.option file and
     allow the loading of multiple option sections at once via
     ``--with-option=<section1>,<section2>,...''
     [Ralf S. Engelschall]

  *) Rebuilt CVS repository with Apache 1.3.9 as basis.  [Roy Fielding]

Changes with Apache MPM

  *) Use asynchronous AcceptEx() and a completion port to accept and
     dispatch connections to threads in Windows NT/2000. 
     [Bill Stoddard]

  *) Implement WINNT Win32 MPM from original Win32 code in http_main.c
     [Bill Stoddard]  

  *) Implement the APACI --with-option facility 
     (per default used the config.option file).
     [Ralf S. Engelschall]

  *) MPM BEOS port.  [David Reid <abb37@dial.pipex.com>]

  *) Start to implement module-defined hooks that are a) fast and b) typesafe.
     Replace pre_connection module call with a register_hook call and
     implement pre_connection as a hook. The intent is that these hooks will
     be extended to allow Apache to be multi-protocol, and also to allow the
     calling order to be specified on a per-hook/per-module basis.
     [Ben Laurie]

  *) Implement mpm_* methods as "modules". Each method gets its own
     subdir in src/modules (eg: src/modules/prefork). Selection
     of method uses Rule MPM_METHOD.  [Jim Jagielski]

  *) Port the hybrid server from the apache-apr repository as
     mpm_mpmt_pthread.  [Manoj Kasichainula]

  *) os/unix/unixd.[ch]: detach, setuid, setgid, stuff which will be common
     amongst the unix MPMs.

  *) mpm_prefork: throw away all the alarm/timeout crud; and clean up the
     signal handling for the new world order.  [Dean Gaudet]

  *) Crude ap_thread_mutex abstraction so that we get the pthread stuff out
     of alloc.c for now.  [Dean Gaudet]

  *) Handle partial large writes correctly.  [Ben Laurie]

  *) Eliminate conn_rec's pointer to server. All it knows is the base server
     based on IP/port.  [Ben Laurie]

  *) Port a bunch of modules to the new module structure.
     ["Michael H. Voase" <mvoase@midcoast.com.au>]

  *) I/O layering and BUFF revamp.  See docs/buff.txt.  [Dean Gaudet]

  *) Basic restructuring to introduce the MPM concept; includes various
     changes to the module API... better described by
     docs/initial_blurb.txt.  [Dean Gaudet]

Changes with Apache pthreads

  *) New buff option added: BO_TIMEOUT. It describes the timeout for
     buff operations (generally over a network).
     [Dean Gaudet, Ryan Bloom, Manoj Kasichainula]

  *) Created http_accept abstraction. Added 4 new functions (not exported):
     init_accept(), begin_accepting_requests(), get_request(), 
     stop_accepting_requests() [Bill Stoddard]

  *) Fix to ap_rprintf call that allows mod_info to work properly.
     [James Morris <jmorris@intercode.com.au>]

  *) user and ap_auth_type fields were moved from connection_rec to 
     request_rec. [Ryan Bloom] 

  *) Removed the ap_block_alarms and ap_unblock_alarm calls.  These aren't
     needed in a threaded server.

  *) Initial pthread implementation from from Dean's apache-nspr code.
     [Bill Stoddard, Ryan Bloom]


Changes with Apache 1.3.9

  *) Remove bogus error message when a redirect doesn't set Location.
     Instead, use an empty string to avoid coredump if the error message
     was supposed to include a location.  [Roy Fielding]

  *) Don't allow configure to include mod_auth_digest unless it is
     explicitly requested, even if the user asked for all modules.
     [Roy Fielding]

  *) Translate module names to dll names for OS/2 so that they are no more
     than 8 characters long and have an extension of "dll" instead of "so".
     [Brian Havard]

  *) Print out pointer to Rule DEV_RANDOM when truerand lib not found.
     Fix test-compile check to check for randbyte instead of trand32.
     Use ap_base64encode_binary/decode instead of copy in mod_auth_digest.c
     and tweak to make Amaya happier.  [Ronald Tschalär]

  *) Ensure that the installed expat include files are world readable,
     just like the other header files.  [Martin Kraemer]

  *) Fixed generated AddModule adjustments in APACI's `configure' script
     in order to allow (new) modules like mod_vhost_alias to be handled
     correctly (which was touched by the adjustments for mod_alias).
     [Ralf S. Engelschall]

  *) For binary builds, add -R flag to apachectl to work around the lack of
     an absolute path to the ./libexec directory where the libhttp.ep file
     is needed for SHARED_CORE architectures.  [Randy Terbush]

  *) WIN32: Create the CGI script process as DETACHED.  This may solve the
     problem observed by some Win95/98 users where they get CGI script
     output sent to the console.  [Bill Stoddard]

  *) Fix (re)naming in the uuencode/decode section. The ap/ap_
     routines are now called ap_base64* and are 'plain' (i.e., no 
     pool access or anything clever). Inside util.c the routines acting
     like pstrdup are called ap_pbase64encode() and ap_pbase64decode().
     The oddly named ap_uuencode(), ap_uudecode() are kept around for
     now but deprecated.  [dirkx]

  *) Clean up the base64 and SHA1 additions and make sure they are
     represented in the ApacheCore.def, ApacheCoreOS2.def, and httpd.exp
     files.  [Roy Fielding]

  *) WIN32: Migrate to InstallShield 5.5 and provide a bit more error
     checking.  Allow compiling on VS 6.0.  [Randy Terbush]

  *) Fixed assumption of absolute paths in binbuild.sh.  [Tony Finch]

  *) Use TestCompile to search for the truerand library (rather than blindly
     assuming its existence). If it is not found, complain (but do not
     exit - yet).  [Martin Kraemer]

  *) We forgot to add the new exported function names to
     src/support/httpd.exp.  [Bill Stoddard, Randy Terbush]

  *) Add description of -T command-line option to usage().
     [Ralf S. Engelschall]

  *) For "some" platforms (notably, EBCDIC based ones), libos needs to be
     searched only AFTER libap has been searched, because libap needs
     some symbols from libos.  [Martin Kraemer]

  *) Fix conflict with original mod_digest related to the symbol of the
     module dispatch list (which has to be unique for DSO and follow the
     usual conventions for the installation procedure).
     [Ralf S. Engelschall]

  *) Add a dbm-library check for the "usual places" (-ldbm, -lndbm, -ldb)
     for other platforms as well.  [Martin Kraemer]

  *) Make ap_sha1.c compile for EBCDIC platforms: replace remaining LONG
     types by AP_LONG and replace reference to renamed variable 'ubuf'
     by 'buffer'.  [Martin Kraemer]

Changes with Apache 1.3.8 [not released]

  *) Flush the output buffer immediately after sending an error or redirect
     response, since the result may be needed by the client to abort a
     long data transfer or restart a series of pipelined requests.
     [Tom Vaughan <tvaughan@aventail.com>, Roy Fielding]

  *) PORT: Improved compilation and DSO support on Sequent DYNIX/ptx.
     [Ian Turner <iant@sequent.com>] PR#4735

  *) Local struct mmap in http_core.c conflicted with system structure
     name on DYNIX -- changed to mmap_rec.  [Roy Fielding] PR#4735

  *) Added updated mod_digest as modules/experimental/mod_auth_digest.
     [Ronald Tschalär <ronald@innovation.ch>]

  *) Fix a memory leak where the module counts were getting messed
     up across restarts.  [David Harris <dharris@drh.net>]

  *) CIDR addresses such as a.b.c.d/24 where d != 0 weren't handled
     properly in mod_access.
     ["Paul J. Reder" <rederpj@raleigh.ibm.com>] PR#4770

  *) RewriteLock/RewriteMap didn't work properly with virtual hosts.
     [Dmitry Khrustalev <dima@bog.msu.su>] PR#3874

  *) PORT: Support for compaq/tandem/com.
     [Michael Ottati <michael.ottati@compaq.com>, dirkx]

  *) Added SHA1 password encryption support to easy migration from 
     Netscape servers. See support/SHA1 for more information.
     Caused the separation of ap_md5.c into md5, sha1 and a general
     ap_checkpass.c with just a validate_passwd routine. Added a
     couple of flags to support/htpasswd. Some reuse of the to64()
     function; hence renamed to ap_to64().
     [Dirk-Willem van Gulik, Clinton Wong <clintdw@netcom.com>]

  *) Change for EBCDIC platforms (TPF and BS2000) to correctly deal
     with ASCII/EBCDIC conversions in "ident" query.
     [David McCreedy <McCreedy@us.ibm.com>]

  *) Get rid of redefinition warning on MAC_OS_X_SERVER platform.
     Change "Power Macintosh" to Power* so if uname prints "Power Book"
     we're still happy on Rhapsody platforms.  [Wilfredo Sanchez]

  *) Fix SIGSEGV on some systems because the Vary fix below included
     a call to table_do with a variable argument list that was not
     NULL terminated.  Replaced with better implementation. [Roy Fielding]

Changes with Apache 1.3.7 [not released]

  *) The "Vary" response header field is now sanitised right before
     the header is sent back to the client.  Multiple "Vary" fields
     are combined, and duplicate tokens (e.g., "Vary: host, host" or
     "Vary: host, negotiate, host, accept-language") are reduced to
     single instances.  This is a better solution than the force-no-vary
     one (which is still valid for clients that can't cope with Vary
     at all).  PR#3118 [Dean Gaudet, Roy Fielding, Ken Coar]

  *) Portability changes for BeOS. [David Reid abb37@dial.pipex.com]

  *) Link DSO's with "gcc -shared" instead of "ld -Bshareable" at 
     least on Linux and FreeBSD for now.  
     [Rasmus Lerdorf]

  *) Win32: More apache -k restart work. Restarts are now honored
     immediately and connections in the listen queue are -not- lost.
     This is made possible by the use of the WSADuplicateSocket()
     call.  The listeners are opened in the parent, duplicated, then
     the duplicates are passed to the child. The original listen sockets 
     are not closed by the parent across a restart, thus the listen queue 
     is preserved.
     [Bill Stoddard <stoddard@raleigh.ibm.com>]

  *) Fix handling of case when a client has sent "Expect: 100-continue"
     and we are going to respond with an error, but get stuck waiting to
     discard the body in the pointless hope of preserving the connection.
     [Roy Fielding, Joe Orton <jeo101@york.ac.uk>] PR#4499, PR#3806

  *) Fix 'configure' to work correctly with SysV-based versions of
     'tr' (consistent with Configure's use as well). [Jim Jagielski]

  *) apxs: Add "-S var=val" option which allows for override of CFG_*
     built-in values. Add "-e" option which works like -i but doesn't
     install the DSO; useful for editing httpd.conf with apxs. Fix
     editing code so that multiple invocations of apxs -a will not
     create duplicate LoadModule/AddModule entries; apxs can now be
     used to re- enable/disable a module.  [Wilfredo Sanchez]

  *) Win32: Update the server to use Winsock 2. Specifically, link with
     ws2_32.lib rather than wsock32.lib.  This gives us access to 
     WSADuplcateSocket() in addition to some other enhanced comm APIs.
     Win 95 users may need to update their TCP/IP stack to pick up
     Winsock 2. (See http://www.microsoft.com/windows95/downloads/)
     [Bill Stoddard stoddard@raleigh.ibm.com]

  *) Win32: Redirect CGI script stderr (script debug info) into the 
     error.log when CGI scripts fail. This makes Apache on Win32 
     behave more like Unix.      
     [Bill Stoddard stoddard@raleigh.ibm.com]

  *) Fixed `httpd' usage display: -D was missing.
     [Ralf S. Engelschall] PR#4614

  *) Fix `make r' test procedure in src/regex/: ap_isprint was not found.
     [Ralf S. Engelschall] PR#4561, PR#4562

  *) OS/2: Fix problem with accept lock semaphores where server would die with
     "OS2SEM: Error 105 getting accept lock. Exiting!" 
     [Brian Havard] PR#4505

  *) Add DSO support for DGUX 4.x using gcc. Tested on x86 platforms.
     [Randy Terbush <randy@covalent.net>]
 
  *) Add the new mass-vhost module (mod_vhost_alias.c) developed and
     used by Demon Internet, Ltd. [Tony Finch <fanf@demon.net>]

  *) Better GCC detection for DSO flags under Solaris 2 where the `cc' 
     command potentially _is_ GCC. [Ralf S. Engelschall]

  *) Fix apxs build issues on AIX 
     [Rasmus Lerdorf <rasmus@raleigh.ibm.com>]

  *) DocumentRoot Checking: Under previous versions, when Apache
     first started up, it used to do a stat of each DocumentRoot to
     see if it existed and was a directory. If not, then an error
     message was printed. THIS HAS BEEN DISABLED. If DocumentRoot
     does not exist, you will get error messages in error_log. If
     the '-t' command line option is used (to check the configuration)
     the check of DocumentRoot IS performed. An additional command
     line option, '-T', has been added if you want to avoid the
     DocumentRoot check even when checking the configuration.
     [Jim Jagielski]

  *) Win32: The query switch "apache -S" didn't exit after showing the
     vhost settings. That was inconsistent with the other query functions.
     [Bill Stoddard - Fixed by Martin on Unix in 1.3.4]

  *) Win32: Changed behaviour of apache -k restart. 
     Previously, the server would drain all connections in the stack's
     listen queue before honoring the restart. On a busy server, this
     could take hours.  Now, a restart is honored almost immediately. 
     All connections in Apache's queues are handled but connections in 
     the stack's listen queue are discarded. Restart triggered by 
     MaxRequestPerChild is unchanged.
     [Bill Stoddard <stoddard@raleigh.ibm.com>]

  *) Win32: Eliminated unnecessary call to wait_for_multiple_objects in
     the accept loop. Good for a 5% performance boost. Cleaned up 
     parent/child process management code. 
     [Bill Stoddard <stoddard@raleigh.ibm.com>]

  *) Added ceiling on file size for memory mapped files.
     [John Giannandrea <jg@meer.net>] PR#4122

  *) Fix ndbm.h include problems with brain-dead glibc >= 2.1 which 
     has ndbm.h in a non-standard db1/ subdir. PR#4431, PR#4528
     [Henri Gomez <gomez@slib.fr>, Ralf S. Engelschall] 

  *) Determine AP_BYTE_ORDER for ap_config_auto.h and already
     use this at least for Expat. [Ralf S. Engelschall]

  *) Allow .module files to specify libraries with Lib:.
     [Ben Laurie]

  *) Allow SetEnvIf[NoCase] to test environment variables as well
     as header fields and request attributes.  [Ken Coar]

  *) Fix mod_autoindex's handling of ScanHTMLTitles when file
     content-types are "text/html;parameters".  PR#4524  [Ken Coar]

  *) Remove "mxb" support from mod_negotiation -- it was a draft feature
     never accepted into any standard, and it opens up certain DoS
     attacks.  [Koen Holtman <Koen.Holtman@cern.ch>]

  *) TestCompile updated. We can now run programs and output the
     results during the Configure process. [ Jim Jagielski]

  *) The source is now quad (long long) aware as needed. Specifically,
     the Configure process determines the correct size of off_t and
     *void. When the OS/platform/compiler supports quads, ap_snprintf()
     provides for the 'q' format qualifier (if quads are not available,
     'q' is silently "demoted" to long). [Jim Jagielski]

  *) When the username or password fed to htpasswd is too long, include the
     size limit in the error message.  Also report illegal characters
     (currently only ':') in the username.  Add the size restrictions
     to the man page.  [Ken Coar]

  *) Fixed the configure --without-support option so it doesn't result in
     an infinite loop.  [Marc Slemko]

  *) Piped error logs could cause a segfault if an error occured
     during configuration after a restart.
     [Aidan Cully <aidan@panix.com>] PR#4456

  *) If a "Location" field was stored in r->err_headers_out rather
     than r->headers_out, redirect processing wouldn't find it and
     the server would core dump on ap_escape_html(NULL).  Check both
     tables and raise HTTP_INTERNAL_SERVER_ERROR with a log message
     if Location isn't set.  [Doug MacEachern, Ken Coar]

  *) Add RULE_EXPAT, the src/lib/ directory structure, and a modified copy
     of the Expat 1.0.2 distribution. [Greg Stein]

  *) Replace regexec() calls with calls to a new API stub function
     ap_regexec().  This solves problems with DSO modules which use the regex
     library. [Jens-Uwe Mager <jum@helios.de>, Ralf S. Engelschall]

  *) Add 'Request_Protocol' special keyword to mod_setenvif so that
     environment variables can be set according to the protocol version
     (e.g., HTTP/0.9 or HTTP/1.1) of the request.  [Ken Coar]

  *) Add DSO support for OpenStep (Mach 4.2) platform.
     [Ralf S. Engelschall, Rex Dieter <rdieter@math.unl.edu>] PR#3997

  *) Fix sed regex for generating ap_config_auto.h in src/Configure.
     [Jan Gallo <gallo@pvt.sk>] PR#3690, PR#4373
 
  *) Switch to /bin/sh5 in APACI on Ultrix and friends to avoid problems with
     their brain-dead /bin/sh. [Ralf S. Engelschall] PR#4372

  *) Better DSO flags recognition on NetBSD platforms using ELF.
     [Todd Vierling <tv@pobox.com>] PR#4310

  *) Always log months in english format for %t in mod_log_config.
     [Petr Lampa <lampa@fee.vutbr.cz>] PR#4366, 679

  *) Support for server-parsed and multiview-determined ReadmeName and
     HeaderName files in mod_autoindex. Removed the restriction on
     "/"s in ReadmeName and HeaderName directives since the *sub_req*
     routines will deal with the access issues. (It's now possible to
     have {site|group|project|customer|...} wide readmes and headers.)
     [Raymond S Brand <rsbx@rsbx.net>, Ken Coar] PR#1574, 3026, 3529,
     3569, 4256

  *) When stat() fails, don't assume anything about the contents of
     the struct stat.  [Ed Korthof <ed@bitmechanic.com>]

  *) It's OK for a semop to return EINTR, just loop around and try
     again.  [Dean Gaudet]

  *) Fix configuration engine re-entrant hangups, which solve a
     handful of problems seen with mod_perl <Perl> configuration sections
     [Salvador Ortiz Garcia <sog@msg.com.mx>]

  *) Mac OS and Mac OS X Server now use the appropriate custom layout
     by default when building with APACI; allow for platform-specific
     variable defaults in configure. [Wilfredo Sanchez]

  *) Do setgid() before initgroups() in http_main; some platforms
     zap the grouplist when setgid() is called.  This was fixed in
     suexec earlier, but the main httpd code missed the change.
     [Rob Saccoccio <robs@InfiniteTechnology.com>]  PR#2579

  *) Add recognition of .tgz as a gzipped tarchive.
     [Bertrand de Singly <bertrand.de-singly@polytechnique.fr>]  PR#2364

  *) mod_include's fsize/flastmod should allow only relative paths, just
     like "include file".  [Jaroslav Benkovsky <benkovsk@pha.pvt.cz>]

  *) OS/2: Add support for building loadable modules using DLLs.
     [Brian Havard]

  *) Add iconsdir, htdocsdir, and cgidir to config.layout.
     [Wilfredo Sanchez]

  *) Fix minor but annoying bug with the test for Configuration.tmpl
     being newer than Configuration so that it is less likely to fail
     when using APACI and shadow sources. [Wilfredo Sanchez]

  *) PORT: Add initial support for Mac OS (versions 10.0 and
     greater). Use Mac OS X Server layout for now. Clean up dyld code
     in unix/os.c, and don't install the dyld error handlers, which
     are no longer needed in Mac OS. [Wilfredo Sanchez]

  *) Rename Rhapsody layout to "Mac OS X Server". Change install
     locations to appropriate ones for user-built (as opposed to
     system) installs. [Wilfredo Sanchez]

  *) Modify mod_autoindex's handling of AddDescription so that the
     behaviour matches the documentation.  [Ken Coar] PR#1898, 3072.

  *) Add functionality to the install-bindist.sh script created by
     binbuild.sh to use tar when copying distribution files to the
     serverroot. This allows upgrading an existing installation
     without nesting the new distribution in the old.

     install-bindist.sh now detects the local perl5 path to install
     apxs and dbmmanage with proper path to perl interpreter.

     Add an install-binsupport target which copies the source files
     for apxs and dbmmanage to bindist to allow these scripts to
     be properly installed relative to the destination serverroot.
     [Randy Terbush, Covalent Technologies, randy@covalent.net]

  *) Fix intermittent SEGV in ap_proxy_cache_error() in
     src/modules/proxy_util.c where a NULL filepointer and
     temporary filename were closed and unlinked.
     [Graham Leggett <minfrin@sharp.fm>,
     Tim Costello <tjcostel@socs.uts.edu.au>] PR#3178

  *) Fix inconsistent error messages reported by mod_proxy.
     [Graham Leggett <minfrin@sharp.fm>]

  *) OS/2: Fix terminating CGIs that aren't compiled by EMX GCC when a 
     connection is aborted.  [Brian Havard]

  *) Force the LANG envariable to the known state of "C" so that we
     have assurance about how string manipulators (e.g., tr) will
     function.  [Ken Coar]  PR#1630

  *) Add a directive to allow customising of the tracking cookie name.
     [Ken Coar]  PR#2921, 4303

  *) Add "force-no-vary" envariable to allow servers to work around
     clients that choke on "Vary" fields in the response header.
     [Ken Coar, Dmitry Khrustalev <dima@zippy.machaon.ru>]  PR#4118

  *) Fixed a bug in mod_dir that causes a child process will infinitely
     recurse when it attemps to handle a request for a directory wnd the
     value of the DirectoryIndex directive is a single dot. Also likely
     to happen for anyother values of DirectoryIndex that will map back
     to the same directory. The handler now only considers regular files
     as being index candidates. No PR#s found.
     [Raymond S Brand <rsbx@rsbx.net>]

  *) Ease configuration debugging by making TestCompile fall back to
     using "make" if the $MAKE variable is unset [Martin Kraemer]

  *) Fixed the ServerSignature directive to work as documented.
     [Raymond S Brand <rsbx@rsbx.net>] PR#4248

  *) Add "opt" (SysV-style) layout to config.layout. [Raymond S Brand
     <rsbx@rsbx.net>]

  *) Add APACI --without-execstrip option which can be used to disable the
     stripping of executables on installation.  This is very important for DSO
     and debugging situations. [Ralf S. Engelschall]

  *) Add support for OS/2 (case insenstive filesystem, .exe suffix, etc)
     to APACI files and related scripts. 
     [Yitzchak Scott-Thoennes <sthoenna@efn.org>, Ralf S. Engelschall] PR#4269

  *) Add support for standalone mode in TPF
     [Joe Moenich <moenich@us.ibm.com>]

  *) Fix number of bytes copied by read_connection() in src/support/ab.c
     [Jim Cox <jc@superlink.net>] PR#4271

  *) Fix special RewriteCond "-s" pattern matching.
     [Bob Finch <bob@nas.com>]

  *) Fix value quoting in src/Configure script for ap_config_auto.h 
     [Paul Sutton <paul@awe.com>]

  *) Make sure RewriteLock can be used only in the global context, (i.e.
     outside of any <VirtualHost> sections) because it's a global facility of
     the rewrite engine. [Ralf S. Engelschall]

  *) Fix the ownership delegation for proxy directory under `make install'.
     [Ralf S. Engelschall]

  *) APACI would not correctly build suexec. [Maria Verina
     <mariav@icgeb.trieste.it>] PR#4260

  *) mod_mime_magic passed only the first 4k of a file to
     uncompress/gzip, but those tools sometimes do not produce
     any output unless a sufficient portion of the compressed
     file is input.  Change to pass the entire file -- but
     only read 4k of output.
     [Marcin Cieslak <saper@system.pl>] PR#4097

  *) "IndexOptions None" generated extra spaces at the end of each
     line.  [inkling@firstnethou.com] PR#3770

  *) The "100 Continue" response wasn't being sent after internal
     redirects. [Jose KAHAN <kahan@w3.org>] PR#3910, 3806, 3575

  *) When padding the name with spaces for display, mod_autoindex would
     count &, <, and > in their escaped width, messing up the display.
     [Dean Gaudet] PR#4075, 3758

  *) PORT: fixed a compilation problem on NEXT.
     [Jacques Distler <distler@golem.ph.utexas.edu>] PR#4130

  *) r->request_time wasn't being set properly in certain error conditions.
     [Dean Gaudet] PR#4156

  *) PORT: deal with UTS compiler error in http_protocol.c
     [Dave Dykstra <dwd@bell-labs.com>] PR#4189

  *) Add ap_vrprintf() function.  [John Tobey <jtobey@banta-im.com>] PR#4246

  *) Fix the mod_mime hash table to work properly with locales other
     than C.  [Dean Gaudet] PR#3427

  *) Fix a memory leak which is exacerbated by certain configurations.
     [Dean Gaudet] PR#4225

  *) Prevent clobbering saved IFS values in APACI. [Jim Jagielski]

  *) Fix buffer overflows in ap_uuencode and ap_uudecode pointed out
     by "Peter 'Luna' Altberg <peter@altberg.nu>" and PR#3422
     [Peter 'Luna' Altberg <peter@altberg.nu>, Ronald Tschalär]

  *) Make {Set,Unset,Pass}Env per-directory instead of per-server.
     [Ben Laurie]

  *) Correct an apparent typo: on the Windows and MPE platforms, the
     htpasswd utility was limiting passwords to only 8 characters.
     [Ken Coar]

  *) EBCDIC platforms: David submitted patches for two bugs in the
     MD5 digest port for EBCDIC machines:
     a) the htdigest utility overwrote the old contents of the digest file
     b) the Content-MD5 header value (ContentDigest directive) was wrong
     when the returned file was not converted from EBCDIC, but was a
     binary (e.g., image file) in the first place.
     [David McCreedy <mccreedy@us.ibm.com>]

  *) support/htpasswd now permits the password to be specified on the
     command line with the '-b' switch.  This is useful when passwords
     need to be maintained by scripts -- particularly in the Win32
     environment.  [Ken Coar]

  *) Win32: Win32 multiple services patch. Added capability to install and
     run multiple copies of apache as individual services.

     Example 1:
     apache -n apache1 -i -f c:/httpd.conf
        Installs apache as service 'apache1' and associates c:/httpd.conf
        with that service.
     net start apache1
        Starts apache1 service.
     net stop apache1
        Stops apache1 service

     Example 2:
     apache -n apache2 -i
        Installs apache as service 'apache2'. httpd.conf is located under
        the default server root (/apache/conf/httpd.conf).
     net start apache2
        Starts apache2 service.

     Example 3:
     apache -n apache3 -i -d c:/program files/apache
        Install apache as service 'apache3' and sets server root to
        c:/program files/apache.

     Example 4:
     apache -n apache2 -k restart
        Restart apache2 service 

     [Keith Wannamaker, Ken Parzygnat, Bill Stoddard]

  *) Correct the signed/unsigned character handling for the MD5 routines;
     mismatches were causing compilation problems with gcc -pedantic and
     in the TPF cross-compilation.  [Ken Coar]

  *) OS/2: Rework CGI handling to use spawn*() instead of fork/exec, achieving
     a roughly 5 fold speed up. [Brian Havard]

  *) proxy ftp: instead of using the hardwired string "text/plain" as
     a fallback type for files served by the ftp proxy, use the
     ap_default_type() function to determine the configured type.
     This allows for special configurations like
        <Directory proxy:ftp://some.host>
        DefaultType gargle/blurb
        </Directory>
     Additionally, add the Content-Encoding: header to FTP proxy replies
     when the encoding is defined (by the AddEncoding directive).
     Because it was missing, it was almost impossible to browse compressed
     files using the FTP proxy (works now perfectly in Communicator).
     The ftp proxy now also returns the Date: and Server: header lines (if not
     much else... This code is "somewhat" broken) like normal requests do.
     [Martin Kraemer]

  *) Be more smart in APACI's configure script when determining the UID/GID
     for User/Group directives and use the determined UID/GID to initialize
     the permissions on the proxycachedir.
     [Dirk-Willem van Gulik, Ralf S. Engelschall]

  *) Changed the forking-prior-to-cleanup in the proxy module to first
     check wether it actually needs to collect garbage. This reduces 
     the number of fork()s from one/request to just the odd one an hour.
     [Dirk-Willem van Gulik]

  *) Added proxy, auth and header support to src/support/ab.c. Added a
     README file to src/support/
     [Dirk-Willem van Gulik]

  *) Don't hard-code the path to AWK in --shadow bootstrapping Makefile.
     [Ralf S. Engelschall] PR#4050

  *) Add support for DSO module compilation on BSD/OS 3.x.
     [Randy Terbush, Covalent Technologies]

  *) Fix sed-substitutions in `make install': path elements like `httpd/conf'
     (for instance from an APACI configure --sysconfdir=/etc/httpd/conf
     option) were substituted with $(TARGET).conf, etc. Same for other strings
     with dots where the dot wasn't matched as plain text. 
     [Ralf S. Engelschall]

  *) PORT: Add support for FreeBSD 4.x [Ralf S. Engelschall]

  *) Fix verbose output of APACI configure (option -v) 
     [Martin Kraemer, Ralf S. Engelschall]

Changes with Apache 1.3.6

  *) Removed new PassAllEnv code due to DSO problems. [Lars Eilebrecht]

Changes with Apache 1.3.5 [not released]

  *) M_INVALID needed a value within the scope of METHODS so that unknown
     methods can be access controlled.  [Roy Fielding] PR#3821

  *) Added PassAllEnv; makes server's entire environment available
     to CGIs and SSIs executed within directive's scope.  [Ken Coar]

  *) ap_uuencode() always added two trailing '='s and encoding of
     8 bit characters on a machine with signed char may produced
     incorrect results. Additionally ap_uuencode() should now
     work correctly on EBCDIC platforms.
     [Ronald Tschalär <ronald@innovation.ch>] PR#3411

  *) WIN32: Binary installer now runs the configuration DLL before
     the reboot prompt (which is only given if MSVCRT.DLL system
     DLL is new or updated). This should avoid the configuration
     directory being empty after installation. [Paul Sutton]
     PR#3767, 3800, 3827, 3850, 3900, 3953, 3988

  *) WIN32: Binary installer now creates Start menu options to start
     and stop Apache as a console application and to uninstall
     the Apache service on NT. [Paul Sutton] PR#3741

  *) WIN32: Apache.exe now contains an icon. [Paul Sutton]

  *) PORT: Switch back to using fcntl() locking on Linux -- instabilities
     have been reported with flock() locking (probably related to kernel
     version).  [Dean Gaudet] PR#2723, 3531

  *) Using APACI, the main config file (usually httpd.conf) was
     not being adjusted as $(TARGET).conf. [Wilfredo Sanchez
     <wsanchez@apple.com>]

  *) PORT: AIX does not require the SHARED_CODE "hack"
     [Ryan Bloom <rbb@raleigh.ibm.com>]

  *) Set-Cookie headers were being doubled up for some CGIs by the O(n^2)
     avoidance code added in 1.3.3.
     [Dean Gaudet, Jeff Lewis <lewis@stanford.edu>] PR#3872

  *) ap_isxdigit was somehow neglected when adding the ap_isfoo() macros
     for 8-bit safeness.  [Dean Gaudet]

  *) PORT: Use -fPIC instead of -fpic on Solaris and SunOS for compiling DSOs
     because SPARCs have a small machine-specific maximum size for the Global
     Offset Table which is often exceeded when compiling one of the larger
     third-party modules with Apache. [Peter Urban <Peter.Urban@epfl.ch>] PR#3977

  *) Move the directive `ExtendedStatus' in httpd.conf-dist-win _after_ the
     DSO/DLL section because it's a directive from mod_status and isn't
     available before the DLL of mod_status is loaded.
     [Martin POESCHL <mpoeschl@gmx.net>] PR#3936

  *) SECURITY: Fix a bug in the calculation of the buffer size for the line 
     continuation facility in Apache's configuration files which could 
     lead to a buffer overflow situation.
     [Thomas Devanneaux <Thomas.Devanneaux@enst.fr>] PR#3617

  *) Make documentation and error messages of APACI's --activate-module=FILE 
     option more clear. [Jan Wolter <janc@wwnet.net>] PR#3995

  *) Fix the gcc version check (for enabling the `inline' facility) to 
     really support all future gcc versions >= 2.7 until we know more.
     [John Tobey <jtobey@banta-im.com>] PR#3983

  *) Let APACI's configure script correctly complain for unknown --enable-XXX
     and --disable-XXX options. [Ralf S. Engelschall] PR#3958

  *) Link the shared core bootstrap program (``Rule SHARED_CORE=yes'') also
     against libap.a and use its ap_snprintf() instead of sprintf() to avoid
     possible buffer overflows. [Ralf S. Engelschall]

  *) Remove no longer used non-API function ap_single_module_init().
     [Ralf S. Engelschall]

  *) Add Apple's Mac OS X Server Layout "Rhapsody" to config.layout.
     [Wilfredo Sanchez]

  *) Add cgidir, htdocsdir, iconsdir variables to Makefile.tmpl in order
     to make platform installations easier.  [Wilfredo Sanchez]

  *) In configure, do not append the target name to the directory path if
     the path already contains "apache".  [Ralf S. Engelschall]

  *) SIGPIPE is now ignored by the server core.  The request write routines
     (ap_rputc, ap_rputs, ap_rvputs, ap_rwrite, ap_rprintf, ap_rflush) now
     correctly check for output errors and mark the connection as aborted.
     Replaced many direct (unchecked) calls to ap_b* routines with the
     analogous ap_r* calls.  [Roy Fielding]

  *) Enhanced mod_rewrite's mapfile handling: The in-core cache for text and
     DBM format mapfiles now uses a 4-way hash table with LRU functionality.
     Furthermore map lookups for non-existent keys are now cached as well.
     Additionally "txt" maps are now parsed with simple string functions
     instead of using ap_pregcomp(). As a side effect a bug that prevented
     the usage of keys containing the "," character was fixed.
     The changes drastically improve the performance when large rewrite maps
     are in use.
     [Michael van Elst <mlelstv@serpens.swb.de>, Lars Eilebrecht] PR#3160

  *) Added ap_sub_req_method_uri() for doing a subrequest with a method
     other than GET, and const'd the definition of method in request_rec.
     [Greg Stein]

  *) Use proper pid_t type for saving PIDs in alloc.c.  [John Bley]

  *) Replaced use of WIN32 define with HAVE_DRIVE_LETTERS to indicate
     when the OS allows a DOS drive letter within pathnames.  [Brian Havard]

  *) Add %V to mod_log_config, this logs the hostname according to the
     UseCanonicalName setting (this is the pre-1.3.4 behaviour of
     %v).  Useful for mass vhosting.  [Tony Finch <dot@dotat.at>]

  *) Add support for \n and \t to mod_log_config, can be used to produce
     more reliable logs with multiline entries.  [Tony Finch <dot@dotat.at>]

  *) Fixed a few compiler nits.  [John Bley <jbb6@acpub.duke.edu>]

  *) Added informative error messages for failed munmap() and fseek() calls
     in http_core.c. [John Bley, Roy Fielding]

  *) Added some informative error messages for some failed malloc()
     calls. [John Bley <jbb6@acpub.duke.edu>, Jim Jagielski]

  *) OS/2 ap_os_canonical_filename()'s behaviour is improved: ap_assert()
     is removed. This allows <Directory proxy:*> directives to work and
     prevents invalid requests from killing the process.
     [Brian Havard <brianh@kheldar.apana.org.au>]

  *) Reorganised FAQ document.
     [Joshua Slive <slive@finance.commerce.ubc.ca>] PR#2497

  *) src/support/: The ApacheBench benchmark program was overhauled by
     David N. Welton: you can now have it generate an HTML TABLE, presumably
     for integration into other HTML sources. David updated the ab man page
     as well and added some missing descriptions. Thanks!
     [David N. Welton <davidw@prosa.it>]

  *) Win32: The filename validity checker now allows filenames containing
     characters in the range 0x80 to 0xff (for example accented characters).
     [Paul Sutton] PR#3890

  *) Added conditional logging based upon environment variables to
     mod_log_config.  mod_log_referer and mod_log_agent
     are now deprecated.  [Ken Coar]

  *) Allow apache acting as a proxy server to relay the real
     reason of a failure to a client rather than the "internal
     server error" it does currently. The general exposure mechanism
     can be triggered by any module by setting the "verbose-error-to"
     note to "*"; this allows more than just proxy errors to be exposed.
     [Cliff Skolnick, Roy Fielding, Martin Kraemer] Related to PR#3455, 4086

  *) Moved man pages for ab and apachectrl to section 8.
     [Wilfredo Sanchez, Roy Fielding]

  *) Added -S option to install.sh so that options can be passed to
     strip on some platforms. [Ralf S. Engelschall, Wilfredo Sanchez]

  *) Tweak modules Makefile generated by Configure so that it handles
     the test case of no modules being selected. [chaz@reliant.com]

  *) Added a <LimitExcept method ...> sectioning directive that allows
     the user to assign authentication control to any HTTP method that
     is *not* given in the argument list; i.e., the logical negation
     of the <Limit> directive.  This is particularly useful for controlling
     access on methods unknown to the Apache core, but perhaps known by
     some module or CGI script. [Roy Fielding, Tony Finch]

  *) Prevent apachectl from complaining if the PIDFILE exists but
     does not contain a process id, as might occur if the server is
     being rapidly restarted. [Wilfredo Sanchez]

  *) Win32: Add global symbols missing from ApacheCore.def. [Carl Olsen]

  *) Entity tag comparisons for If-Match and If-None-Match were not being
     performed correctly -- weak tags might cause false positives.  Also,
     strong comparison wasn't properly enforced in all cases.
     [Roy Fielding, Ken Coar, Dean Gaudet] PR#2065, 3657

  *) OS/2: Supply OS/2 error code instead of errno on semaphore errors.
     [Brian Havard]

  *) Work around a bug in Lynx regarding its sending "Negotiate: trans"
     even though it doesn't understand TCN.  [Koen Holtman, Roy Fielding]

  *) Added ap_size_list_item(), ap_get_list_item(), and ap_find_list_item()
     to util.c for parsing an HTTP header field value to extract the next
     list item, taking into account the possible presence of nested comments,
     quoted-pairs, and quoted-strings. ap_get_list_item() also removes
     insignificant whitespace and lowercases non-quoted tokens.
     [Roy Fielding] PR#2065

  *) proxy: The various calls to ap_proxyerror() can return HTTP/1.1 status
     code different from 500. This allows the proxy to, e.g., return
     "403 Forbidden" for ProxyBlock'ed URL's. [Martin Kraemer] Related to PR#3455

  *) Fix ordering of language variants for the case where the traditional
     negotiation algorithm is being used with multiple language variants
     and no Accept-Language. [James Treacy <treacy@debian.org>] PR#3299, 3688

  *) Do not round the TCN quality calculation to 5 decimal places,
     unlike RFC 2296, because the calculation might need 12 decimal places
     to get the right result.  [Roy Fielding]

  *) Remove unused code to disable transparent negotiation when
     negotiating on encoding only, as we now handle encoding too
     (though this is nonstandard for TCN), remove charset=ISO-8859-1
     fiddle from the fiddle-averse RVSA comparison, and fix bugs in
     some debugging statements within mod_negotiation. [Koen Holtman]

  *) Fixed a rare memory corruption possibility in mod_dir if the index
     file is negotiable and no acceptable variant can be found.
     [Dean Gaudet, Roy Fielding, Martin Kraemer]

  *) Win32: Add new config directive, ScriptInterpreterSource, to enable
     searching the Win32 registry for script interpreters.
     [Bill Stoddard]

  *) Win32: The compiled-in default filename for the error log is now
     error.log, which matches the default in the distributed httpd.conf.
     [Paul Sutton]

  *) Win32: Any error messages from -i or -u command line options are now
     displayed on the console output rather than sent to the error log.
     Also the "Running Apache..." message is not output unless Apache is
     going to serve requests. [Paul Sutton]

  *) Rework the MD5 authentication scheme to use FreeBSD's algorithm,
     and use a private significator ('$apr1$') to mark passwords as
     being smashed with our own algorithm.  Also abstract the password
     checking into a new ap_validate_password() routine.  [Ken Coar]

  *) Win32: The filename validity checker now allows "COM" but refuses 
     access to "COM1" through "COM4". This allows filenames such
     as "com.name" to be served. [Paul Sutton] PR#3769.

  *) BS2000: Adapt to the new ufork() system call interface which will
     make subtasking easier on the OSD/POSIX mainframe environment.
     [Martin Kraemer]

  *) Add a compatibility define for escape_uri() -> ap_escape_uri() to
     ap_compat.h. [David White <david@persimmon.com>] PR#3725

  *) Make NDBM file suffix determination for mod_rewrite more accurate, i.e.
     use `.db' instead of `.pag' not only for FreeBSD, but also when
     the NDBM library looks like Berkeley-DB based.
     [Ralf S. Engelschall] PR#3773

  *) Add ability to handle DES or MD5 authentication passwords.
     [Ryan Bloom <rbb@Raleigh.IBM.Com>]

  *) Fix O(n^2) memory consumption in mod_speling.  [Dean Gaudet]

  *) SECURITY: Avoid some buffer overflow problems when escaping
     quoted strings.  (This overflow was on the heap and we believe
     impossible to exploit.)  [Rick Perry <perry@ece.vill.edu>]