Checkout Tools
  • last updated 7 hours ago
Constraints: committers
Constraints: files
Constraints: dates
update license header text
  1. … 235 more files in changeset.
Revert copyright date change patch. Wait until we have

a universal policy and procedure... we cannot willy

nilly change the dates unless significant or

material changes are made.

  1. … 207 more files in changeset.
Update to 2006

  1. … 207 more files in changeset.
general property cleanup

  1. … 847 more files in changeset.
apply Apache License, Version 2.0

  1. … 49 more files in changeset.
* src/modules/standard/mod_auth_db.c (get_db_pw): Fix build with

Berkeley DB 4.x where x > 0.

PR: 21443

* src/modules/standard/mod_usertrack.c (spot_cookie): Remove unused

variable 'i' added in r1.57.

  1. … 1 more file in changeset.
update license to 2004

  1. … 158 more files in changeset.
update license to 2003.

  1. … 156 more files in changeset.
Add support for Berkeley-DB/4.x to mod_auth_db.c

  1. … 1 more file in changeset.
Update our copyright for this year, plus fix two files that had included

the wrong license.

  1. … 155 more files in changeset.
Change everything to The Apache Software License 1.1

  1. … 133 more files in changeset.
Change URLs for the HTTP server project to point to

  1. … 135 more files in changeset.
It's already late 2000, and our copyright notices still say "1999".

  1. … 135 more files in changeset.
Added support for Berkeley-DB/3.x to mod_auth_db.

Submitted by: Steve Atkins <>

Cleaned up and reviewed by: Ralf S. Engelschall

PR: 5382

  1. … 1 more file in changeset.

Fix some spacing issues in the SHA1 and ap_validate_password

changes. ap_validate_password() isn't called by anything in

the core, so the link may well omit it -- causing DSO mod_auth*

modules to fail to load. Force a reference to it into the

core server so that won't happen. As soon as ap_checkpass.c

includes any other symbols routinely referenced by the core,

the kludge at the bottom of http_main.c can go away. Or earlier,

if someone finds a better solution.

  1. … 8 more files in changeset.
In order to fold in support for SHA / LDAP Directory Interchange

Format style passwords (which make integration or migration between

apache and netscape intstallations easier) the following has been done:

1. move ap_validate_passwd() out into its own function, and

change includes from ap_md5.h into ap_checkpasswd.h in the

various auth sections.

2. collate some to64 encodings into a single ap_to64

3. Add a ap_sha1.c along the lines of ap_md5.c

4. Add some flags to htpasswd, and make some man page chnages

Added some blurp in the html docs.

5. add a directory SHA1 in support with some usefull examples

for peoply trying to integrate or migrate from/to netscape


Obtained from Clinton Wong <> and reworked into

something sepearate from ap_mda5c.c

But it could benefit from further abstraction; same goed for the

various base64, uunecode and mime-style base64 encoders we have

floating around.

Also, we could deal with string lenghts and verify lengths better.

Added Files:









Modified Files:












  1. … 19 more files in changeset.

Rework the ap_MD5Encode() routine to use FreeBSD's algorithm

and a private significator ("$apr1"); also make it reentrant.

Abstract the password checking into a new routine,

ap_validate_password(plaintext, hashed), and modify mod_auth*.c

to use it instead of each doing the algorithm check.

Obtained from: FreeBSD 3.0 /usr/src/lib/libcrypt/crypt.c (MD5)

  1. … 10 more files in changeset.
We have found the prototype for crypt. Since people actually once in

a while are "nice enough" to write in telling me that they know where

the prototype is on their system based on that comment, plus we

don't do the casting associated with the comment any more, it can

go away.


Obtained from:

Submitted by:

Reviewed by:

  1. … 2 more files in changeset.
Minor compilation bugfix

  1. … 1 more file in changeset.

Enhance the authentication password handling so that stored

passwords can be encrypted with either DES or MD5. htpasswd can

now generate either on systems that allow both, and MD5 on

Win32. .htpasswd files can contain both types; usernames

with passwords encrypted with MD5 and usernames with DES

passwords can appear in the same file. The authentication

modules (mod_auth, mod_auth_db, mod_auth_dbm) autosense the

correct algorithm from the stored password.

This gives us encrypted passwords on Win32 at last. This is

only the first part of the patch; some changes to allow the

Win32 side to build properly are being fixed and should be

committed to-morrow. However, Unix systems can build with

and use these immediately.

Submitted by: Ryan Bloom <rbb@Raleigh.IBM.Com>

Reviewed by: Ken Coar

  1. … 8 more files in changeset.
``Oh, by the way: the same procedure as last year?

The same procedure as _every_ year, James!''

So, a lot of touched files here, but it's just a tiny harmless patch.

As every year we bump up the year number in our copyright headers.

1. "199x-1998" => "199x-1999"

2. "1998" => "1998-1999"

  1. … 126 more files in changeset.
Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not

initialized correctly and the db_open() call used an invalid mode


Because compare especially this section from db_dbt(3):

| In order to ensure compatibility with future releases of DB, all

| fields of the DBT structure that are not explic- itly set should be

| initialized to 0 before the first time the structure is used. Do this

| by declaring the structure external or static, or by calling the C

| library routine bzero(3) or memset(3).

Submitted by: Ron Klatchko <>

PR: 3171

  1. … 1 more file in changeset.
Fix `require ...' directive parsing in mod_auth, mod_auth_dbm and mod_auth_db

by using ap_getword_white() (which uses ap_isspace()) instead of

ap_getword(..., ' ') (which parses only according to spaces but not tabs).

Submitted by: James Morris <>

Reviewed and extended to other mods: Ralf S. Engelschall

PR: 3105

  1. … 3 more files in changeset.
Add support for Berkeley-DB/2.x (in addition to Berkeley-DB/1.x) to

mod_auth_db to both be friendly to users who wants to use this version

and to avoid problems under platforms where only version 2.x is present.

Submitted by: Dan Jacobowitz <>

Enhanced by: Ralf S. Engelschall

  1. … 2 more files in changeset.
Correct the error_log mess in a uniform manner. Add ap_log_rerror() which

includes the client ip address in the log message (it takes a request_rec *

instead of a server_rec *).

PR: 2661

  1. … 37 more files in changeset.
added 'const' in a couple of causes because Ben fixed this in the include file. This fixes the compiler warning for all the sent_pw pointers

  1. … 3 more files in changeset.

The used renaming configuration:


bind_address ap_bind_address

coredump_dir ap_coredump_dir

daemons_limit ap_daemons_limit

daemons_max_free ap_daemons_max_free

daemons_min_free ap_daemons_min_free

daemons_to_start ap_daemons_to_start

excess_requests_per_child ap_excess_requests_per_child

group_id ap_group_id

listenbacklog ap_listenbacklog

listeners ap_listeners

lock_fname ap_lock_fname

max_requests_per_child ap_max_requests_per_child

pid_fname ap_pid_fname

restart_time ap_restart_time

scoreboard_fname ap_scoreboard_fname

server_argv0 ap_server_argv0

server_confname ap_server_confname

server_post_read_config ap_server_post_read_config

server_pre_read_config ap_server_pre_read_config

server_root ap_server_root

standalone ap_standalone

threads_per_child ap_threads_per_child

user_id ap_user_id

user_name ap_user_name

suexec_enabled ap_suexec_enabled

day_snames ap_day_snames

dummy_mutex ap_dummy_mutex

month_snames ap_month_snames

rfc1413_timeout ap_rfc1413_timeout

scoreboard_image ap_scoreboard_image

MD5Final ap_MD5Final

MD5Init ap_MD5Init

MD5Update ap_MD5Update

add_cgi_vars ap_add_cgi_vars

add_common_vars ap_add_common_vars

add_module ap_add_module

add_named_module ap_add_named_module

add_per_dir_conf ap_add_per_dir_conf

add_per_url_conf ap_add_per_url_conf

allow_options ap_allow_options

allow_overrides ap_allow_overrides

append_arrays ap_append_arrays

array_cat ap_array_cat

auth_name ap_auth_name

auth_type ap_auth_type

basic_http_header ap_basic_http_header

bclose ap_bclose

bcreate ap_bcreate

bfilbuf ap_bfilbuf

bfileno ap_bfileno

bflsbuf ap_bflsbuf

bflush ap_bflush

bgetopt ap_bgetopt

bgets ap_bgets

bhalfduplex ap_bhalfduplex

block_alarms ap_block_alarms

blookc ap_blookc

bnonblock ap_bnonblock

bonerror ap_bonerror

bpushfd ap_bpushfd

bputs ap_bputs

bprintf ap_bprintf

bread ap_bread

bsetflag ap_bsetflag

bsetopt ap_bsetopt

bskiplf ap_bskiplf

bvputs ap_bvputs

bwrite ap_bwrite

bytes_in_free_blocks ap_bytes_in_free_blocks

bytes_in_pool ap_bytes_in_pool

call_exec ap_call_exec

can_exec ap_can_exec

cfg_closefile ap_cfg_closefile

cfg_getc ap_cfg_getc

cfg_getline ap_cfg_getline

chdir_file ap_chdir_file

check_access ap_check_access

check_alarm ap_check_alarm

check_auth ap_check_auth

check_cmd_context ap_check_cmd_context

check_user_id ap_check_user_id

checkmask ap_checkmask

child_exit_modules ap_child_exit_modules

child_init_modules ap_child_init_modules

child_terminate ap_child_terminate

cleanup_for_exec ap_cleanup_for_exec

clear_module_list ap_clear_module_list

clear_pool ap_clear_pool

clear_table ap_clear_table

close_piped_log ap_close_piped_log

construct_server ap_construct_server

construct_url ap_construct_url

copy_array ap_copy_array

copy_array_hdr ap_copy_array_hdr

copy_table ap_copy_table

core_reorder_directories ap_core_reorder_directories

count_dirs ap_count_dirs

create_environment ap_create_environment

create_per_dir_config ap_create_per_dir_config

create_request_config ap_create_request_config

default_port_for_request ap_default_port_for_request

default_port_for_scheme ap_default_port_for_scheme

default_type ap_default_type

destroy_pool ap_destroy_pool

destroy_sub_req ap_destroy_sub_req

die ap_die

discard_request_body ap_discard_request_body

document_root ap_document_root

each_byterange ap_each_byterange

error_log2stderr ap_error_log2stderr

escape_html ap_escape_html

escape_path_segment ap_escape_path_segment

escape_shell_cmd ap_escape_shell_cmd

exists_scoreboard_image ap_exists_scoreboard_image

finalize_request_protocol ap_finalize_request_protocol

finalize_sub_req_protocol ap_finalize_sub_req_protocol

find_command ap_find_command

find_command_in_modules ap_find_command_in_modules

find_last_token ap_find_last_token

find_linked_module ap_find_linked_module

find_module_name ap_find_module_name

find_path_info ap_find_path_info

find_pool ap_find_pool

find_token ap_find_token

find_types ap_find_types

fini_vhost_config ap_fini_vhost_config

fnmatch ap_fnmatch

force_library_loading ap_force_library_loading

get_basic_auth_pw ap_get_basic_auth_pw

get_client_block ap_get_client_block

get_gmtoff ap_get_gmtoff

get_local_host ap_get_local_host

get_module_config ap_get_module_config

get_remote_host ap_get_remote_host

get_remote_logname ap_get_remote_logname

get_server_name ap_get_server_name

get_server_port ap_get_server_port

get_time ap_get_time

get_token ap_get_token

get_virthost_addr ap_get_virthost_addr

getparents ap_getparents

getword ap_getword

getword_conf ap_getword_conf

getword_conf_nc ap_getword_conf_nc

getword_nc ap_getword_nc

getword_nulls ap_getword_nulls

getword_nulls_nc ap_getword_nulls_nc

getword_white ap_getword_white

getword_white_nc ap_getword_white_nc

gm_timestr_822 ap_gm_timestr_822

gname2id ap_gname2id

handle_command ap_handle_command

hard_timeout ap_hard_timeout

header_parse ap_header_parse

ht_time ap_ht_time

ind ap_ind

index_of_response ap_index_of_response

init_alloc ap_init_alloc

init_modules ap_init_modules

init_vhost_config ap_init_vhost_config

init_virtual_host ap_init_virtual_host

internal_redirect ap_internal_redirect

internal_redirect_handler ap_internal_redirect_handler

invoke_handler ap_invoke_handler

is_directory ap_is_directory

is_fnmatch ap_is_fnmatch

is_initial_req ap_is_initial_req

is_matchexp ap_is_matchexp

is_url ap_is_url

keepalive_timeout ap_keepalive_timeout

kill_cleanup ap_kill_cleanup

kill_cleanups_for_fd ap_kill_cleanups_for_fd

kill_cleanups_for_socket ap_kill_cleanups_for_socket

kill_timeout ap_kill_timeout

limit_section ap_limit_section

log_assert ap_log_assert

log_pid ap_log_pid

log_printf ap_log_printf

log_reason ap_log_reason

log_transaction ap_log_transaction

log_unixerr ap_log_unixerr

make_array ap_make_array

make_dirstr ap_make_dirstr

make_dirstr_parent ap_make_dirstr_parent

make_dirstr_prefix ap_make_dirstr_prefix

make_full_path ap_make_full_path

make_sub_pool ap_make_sub_pool

make_table ap_make_table

matches_request_vhost ap_matches_request_vhost

meets_conditions ap_meets_conditions

merge_per_dir_configs ap_merge_per_dir_configs

no2slash ap_no2slash

note_auth_failure ap_note_auth_failure

note_basic_auth_failure ap_note_basic_auth_failure

note_cleanups_for_fd ap_note_cleanups_for_fd

note_cleanups_for_file ap_note_cleanups_for_file

note_cleanups_for_socket ap_note_cleanups_for_socket

note_digest_auth_failure ap_note_digest_auth_failure

note_subprocess ap_note_subprocess

null_cleanup ap_null_cleanup

open_logs ap_open_logs

open_piped_log ap_open_piped_log

overlay_tables ap_overlay_tables

palloc ap_palloc

parseHTTPdate ap_parseHTTPdate

parse_htaccess ap_parse_htaccess

parse_uri ap_parse_uri

parse_uri_components ap_parse_uri_components

parse_hostinfo_components ap_parse_hostinfo_components

parse_vhost_addrs ap_parse_vhost_addrs

pcalloc ap_pcalloc

pcfg_open_custom ap_pcfg_open_custom

pcfg_openfile ap_pcfg_openfile

pclosedir ap_pclosedir

pclosef ap_pclosef

pclosesocket ap_pclosesocket

pduphostent ap_pduphostent

pfclose ap_pfclose

pfdopen ap_pfdopen

pfopen ap_pfopen

pgethostbyname ap_pgethostbyname

pool_is_ancestor ap_pool_is_ancestor

pool_join ap_pool_join

popendir ap_popendir

popenf ap_popenf

pregcomp ap_pregcomp

pregfree ap_pregfree

pregsub ap_pregsub

process_request ap_process_request

process_resource_config ap_process_resource_config

proxy_add_header ap_proxy_add_header

proxy_c2hex ap_proxy_c2hex

proxy_cache_check ap_proxy_cache_check

proxy_cache_error ap_proxy_cache_error

proxy_cache_tidy ap_proxy_cache_tidy

proxy_cache_update ap_proxy_cache_update

proxy_canon_netloc ap_proxy_canon_netloc

proxy_canonenc ap_proxy_canonenc

proxy_connect_handler ap_proxy_connect_handler

proxy_date_canon ap_proxy_date_canon

proxy_del_header ap_proxy_del_header

proxy_doconnect ap_proxy_doconnect

proxy_ftp_canon ap_proxy_ftp_canon

proxy_ftp_handler ap_proxy_ftp_handler

proxy_garbage_coll ap_proxy_garbage_coll

proxy_garbage_init ap_proxy_garbage_init

proxy_get_header ap_proxy_get_header

proxy_hash ap_proxy_hash

proxy_hex2c ap_proxy_hex2c

proxy_hex2sec ap_proxy_hex2sec

proxy_host2addr ap_proxy_host2addr

proxy_http_canon ap_proxy_http_canon

proxy_http_handler ap_proxy_http_handler

proxy_is_domainname ap_proxy_is_domainname

proxy_is_hostname ap_proxy_is_hostname

proxy_is_ipaddr ap_proxy_is_ipaddr

proxy_is_word ap_proxy_is_word

proxy_liststr ap_proxy_liststr

proxy_log_uerror ap_proxy_log_uerror

proxy_read_headers ap_proxy_read_headers

proxy_sec2hex ap_proxy_sec2hex

proxy_send_fb ap_proxy_send_fb

proxy_send_headers ap_proxy_send_headers

proxyerror ap_proxyerror

psignature ap_psignature

psocket ap_psocket

pstrcat ap_pstrcat

pstrdup ap_pstrdup

pstrndup ap_pstrndup

psprintf ap_psprintf

pvsprintf ap_pvsprintf

push_array ap_push_array

rationalize_mtime ap_rationalize_mtime

read_config ap_read_config

read_request ap_read_request

register_cleanup ap_register_cleanup

register_other_child ap_register_other_child

remove_module ap_remove_module

requires ap_requires

reset_timeout ap_reset_timeout

response_code_string ap_response_code_string

rfc1413 ap_rfc1413

rflush ap_rflush

rind ap_rind

rprintf ap_rprintf

rputc ap_rputc

rputs ap_rputs

run_cleanup ap_run_cleanup

run_fixups ap_run_fixups

run_post_read_request ap_run_post_read_request

run_sub_req ap_run_sub_req

rvputs ap_rvputs

rwrite ap_rwrite

satisfies ap_satisfies

scan_script_header_err ap_scan_script_header_err

scan_script_header_err_buff ap_scan_script_header_err_buff

send_error_response ap_send_error_response

send_fb ap_send_fb

send_fb_length ap_send_fb_length

send_fd ap_send_fd

send_fd_length ap_send_fd_length

send_header_field ap_send_header_field

send_http_header ap_send_http_header

send_http_options ap_send_http_options

send_http_trace ap_send_http_trace

send_mmap ap_send_mmap

send_size ap_send_size

server_root_relative ap_server_root_relative

set_byterange ap_set_byterange

set_callback_and_alarm ap_set_callback_and_alarm

set_content_length ap_set_content_length

set_etag ap_set_etag

set_file_slot ap_set_file_slot

set_flag_slot ap_set_flag_slot

set_keepalive ap_set_keepalive

set_last_modified ap_set_last_modified

set_module_config ap_set_module_config

set_name_virtual_host ap_set_name_virtual_host

set_string_slot ap_set_string_slot

set_string_slot_lower ap_set_string_slot_lower

set_sub_req_protocol ap_set_sub_req_protocol

setup_client_block ap_setup_client_block

setup_prelinked_modules ap_setup_prelinked_modules

should_client_block ap_should_client_block

show_directives ap_show_directives

show_modules ap_show_modules

soft_timeout ap_soft_timeout

some_auth_required ap_some_auth_required

spawn_child_err ap_spawn_child_err

spawn_child_err_buff ap_spawn_child_err_buff

srm_command_loop ap_srm_command_loop

start_restart ap_start_restart

start_shutdown ap_start_shutdown

str_tolower ap_str_tolower

strcasecmp_match ap_strcasecmp_match

strcmp_match ap_strcmp_match

sub_req_lookup_file ap_sub_req_lookup_file

sub_req_lookup_uri ap_sub_req_lookup_uri

sync_scoreboard_image ap_sync_scoreboard_image

table_add ap_table_add

table_addn ap_table_addn

table_do ap_table_do

table_get ap_table_get

table_merge ap_table_merge

table_mergen ap_table_mergen

table_set ap_table_set

table_setn ap_table_setn

table_unset ap_table_unset

time_process_request ap_time_process_request

tm2sec ap_tm2sec

translate_name ap_translate_name

uname2id ap_uname2id

unblock_alarms ap_unblock_alarms

unescape_url ap_unescape_url

unparse_uri_components ap_unparse_uri_components

unregister_other_child ap_unregister_other_child

update_child_status ap_update_child_status

update_mtime ap_update_mtime

update_vhost_from_headers ap_update_vhost_from_headers

update_vhost_given_ip ap_update_vhost_given_ip

util_init ap_util_init

util_uri_init ap_util_uri_init

uudecode ap_uudecode

vbprintf ap_vbprintf

apapi_get_server_built ap_get_server_built

apapi_get_server_version ap_get_server_version

aplog_error ap_log_error

log_error ap_log_error_old

os_escape_path ap_escape_path

os_canonical_filename ap_canonical_filename

acquire_mutex ap_acquire_mutex

create_mutex ap_create_mutex

destroy_mutex ap_destroy_mutex

open_mutex ap_open_mutex

release_mutex ap_release_mutex

os_is_path_absolute ap_is_path_absolute

prelinked_modules ap_prelinked_modules

preloaded_modules ap_preloaded_modules

  1. … 108 more files in changeset.
Modify the licence clauses for 1.3 to prohibit derived packages

from claiming to be "Apache" without the AG's permission. (Always

the intent, I believe, but previously not explicit enough.)

Hopefully this will help deter further dilution of the brand.

Reviewed by: Paul Sutton, Ben Laurie, Jim Jagielski, Randy Terbush,

Roy Fielding, Chuck Murcko, Mark Cox, Ralf Engeschall,

Sameer Parekh, Martin Kraemer, Dean Gaudet, Brian Behlendorf

  1. … 124 more files in changeset.
Added hints to the source and documentation what version is needed

and where to find that version on the net.

PR#: 1423

  1. … 1 more file in changeset.