0d41a27b130b9c89cf3d9dd1e528381ebdffd6d9 1471449 |
|
24-Apr-2013 |
rpluem |
* Fix null pointer dereference in case SetEnvif and SetEnvIfExpr are used
together.
PR: 54881 |
9b215039e33b392e4babf7cc26694ae55d26034f 1343099 |
|
27-May-2012 |
sf |
Compile the regex used by is_header_regex() only once during startup
This should save some memory, especially with .htaccess |
a221184be5b40f8349982d94cda02b98068ce0d8 1214003 |
|
14-Dec-2011 |
minfrin |
Further clarify the naming of the entity that originates the request by
calling that entity a useragent instead of a client. |
185aa71728867671e105178b4c66fbc22b65ae26 1209766 |
|
03-Dec-2011 |
sf |
Add lots of unique tags to error log messages |
8269892c0023355f51a3f67be442662aefdc6f92 1206291 |
|
25-Nov-2011 |
minfrin |
Introduce a per connection "peer_ip" and a per request "client_ip" to
distinguish between the raw IP address of the connection and the effective
IP address of the request. |
49fd87ed00b95bdd7a4cfc874e5c5fe4a04faf5a 1204968 |
|
22-Nov-2011 |
minfrin |
Introduce a per request version of the remote IP address, which can be
optionally modified by a module when the effective IP of the client
is not the same as the real IP of the client (such as a load balancer). |
f90acecd463d233aab8ad0a74acee3f616f6586c 1198966 |
|
07-Nov-2011 |
sf |
More ap_pregsub error checking/logging |
dbcebab5451c15100d22ef5a1cd0c80237e33a93 1180828 |
|
10-Oct-2011 |
sf |
Remove OID match which was never in a GA releas and is obsoleted by
SetEnvIfExpr with PeerExtList() |
d95a7ac0fe7a06495c3aab5d684b4174f9ab282c 1142164 |
|
02-Jul-2011 |
sf |
Add string valued expressions to ap_expr, do some API cleanup
- add possibility to have expressions that evaluate to a string and not to
a boolean value
- modify ap_expr_parse_cmd() interface to support this and make it more
convenient to use in general
- rename AP_EXPR_FLAGS_* to AP_EXPR_FLAG_* for consistency |
4fca72b7b53b5419325e06837c98266148111b52 1098162 |
|
30-Apr-2011 |
trawick |
fix some dead assignments found by the clang analyzer |
95bdb0646ee6c0d3c267ac650d3e306232e6e6a9 1060072 |
|
17-Jan-2011 |
sf |
Fix segfault for loglevel >= trace2 |
68dfc95acc4fde241e0124dd29cdda973bd6ec2c 1042146 |
|
04-Dec-2010 |
sf |
Rename ap_expr's typedef names:
ap_expr -> ap_expr_t
ap_expr_parse_ctx -> ap_expr_parse_ctx_t
ap_expr_eval_ctx -> ap_expr_eval_ctx_t
ap_expr_lookup_fn -> ap_expr_lookup_fn_t
ap_expr_node_op -> ap_expr_node_op_e |
db22e2367727951142c8f275ce04c12b4f80132b 1039876 |
|
28-Nov-2010 |
sf |
Fix SetEnvIfExpr to work with expressions that do not set the regexp
reference data.
Add some trace logging. |
bd76fb50ade4e4dcbff33d74b9c5338693222ada 1039789 |
|
28-Nov-2010 |
sf |
Fix segfault on parse error |
144806982c1764b6bdd45caab786fcd620e9f3b5 1037540 |
|
21-Nov-2010 |
sf |
More ap_expr updates:
- minor bump for ap_expr_exec_re() introduced in r1037504
- actually commit the changes to allow using backreferences in SetEnvIfExpr
- automatically add the correct entries to the Vary-header if the result of
an expression evaluation depends on a request header
(can be turned off by setting the AP_EXPR_FLAGS_DONT_VARY flag)
- set AP_EXPR_FLAGS_DONT_VARY in mod_log_config's conditional logging
- fix various off-by-one errors in req_table_func |
21ccb6cd9272c9066a8f5bb3e7785f46115289de 1037137 |
|
20-Nov-2010 |
sf |
Add SetEnvIfExpr directive to set env var depending on expression. |
a17d57a5a27ce416f2f1bbf0087df40fee237f27 1033145 |
|
09-Nov-2010 |
sf |
use temp_pool for some temporary regexps |
36ef8f77bffe75d1aa327882be1b5bdbe2ff567a 951895 |
|
06-Jun-2010 |
sf |
Use the new APLOG_USE_MODULE/AP_DECLARE_MODULE macros everywhere to take
advantage of per-module loglevels |
820e91baab4f9a45001d668698d2fae3501cb4b0 947651 |
|
24-May-2010 |
trawick |
odd assortment of spelling fixes |
842ae4bd224140319ae7feec1872b93dfd491143 420983 |
|
11-Jul-2006 |
fielding |
update license header text |
3d81f57512275ca06a60a9bcbd23c1f8b429fdf2 395228 |
|
19-Apr-2006 |
colm |
Update the copyright year in all .c, .h and .xml files |
f05787953018140838ad51456c86c965d6a86267 345053 |
|
16-Nov-2005 |
jim |
No functional change: remove "internal" tab spacing/formatting. |
e8f95a682820a599fe41b22977010636be5c2717 332306 |
|
10-Nov-2005 |
jim |
No functional Change: Removing trailing whitespace. This also
means that "blank" lines consisting of just spaces or
tabs are now really blank lines |
43c3e6a4b559b76b750c245ee95e2782c15b4296 332305 |
|
10-Nov-2005 |
jim |
No functional change: simple detabbing of indented code. |
3e976e5310058fce42ae8a5db9f1eb14d45707fa 326058 |
|
18-Oct-2005 |
jfclere |
C++ comments are not supported by some compilers (ReliantUnix). |
f3113806da78da13ef573045537760db6e849d21 289968 |
|
18-Sep-2005 |
dreid |
Catch up with the changes to mod_ssl and rename the
function pointer to reflect the change. With this change
this module now builds again. |
f4a39f521ccbeffed03218ca056e51851e8f89de 224718 |
|
25-Jul-2005 |
jorton |
* modules/metadata/mod_setenvif.c: Unconditionally include mod_ssl.h.
(setenvif_post_config): Fix prototype fubar. |
713b1ebd69defeb9e7a9507d2784dd1bd8cf32ac 220307 |
|
22-Jul-2005 |
martin |
Allow extraction of the values of SSL certificate extensions into
environment variables, so that their value can be used by any
module that is aware of environment variables, as in:
SetEnvIf OID("2.16.840.1.113730.1.13") "(.*) Generated (Certificate)" ca=$1
sets
ca=TinyCA
if the cert was issued by TinyCA.
Similarly,
SetenvIf OID("2.16.840.1.113730.1.13") "(.*)" NetscapeComment=$1
will set $NetscapeComment to the whole string.
It is technically allowed to have multiple instances of an extension
field, all with the same oid. In this case, the environment variable
will be set to the list of all fields, separated by commas.
The [PATCH] uses a cross-module call from mod_setenvif to
mod_ssl (the latter may also be missing: in this case the
variable will never be set). It calls a common function
in the ssl module that is also used for the SSLRequire
directive's test. |
ef5650b61a8e35f3cc93ec07e73efc17ea329894 153384 |
|
11-Feb-2005 |
jorton |
Move the POSIX reg* implementations into the ap_* namespace;
internalise the ap_reg*<->PCRE wrapper:
* configure.in: Add srclib/pcre to the include path.
* include/ap_regex.h: Renamed from include/pcreposix.h. Prefix all
constants with AP_; prefix all functions and types with ap_. Define
AP_DECLARE to nothing if necessary. Remove regcomp error codes.
* include/httpd.h: Include ap_regex.h not pcreposix.h.
(ap_pregcomp, ap_regexec, ap_regfree): s/regex_t/ap_regex_t/.
(ap_regexec, ap_regerror): Prototypes moved to ap_regex.h.
* server/util.c (regex_cleanup, ap_pregcomp, ap_pregsub, ap_pregfree):
Adjust for ap_ prefixed types. (ap_regexec, ap_regerror): Removed.
* server/Makefile.in: Build util_pcre.c.
* server/util_pcre.c: Copied from srclib/pcre/pcreposix.c; remove use
of PCRE-internals to do error mapping; rename types to add AP_/ap_
prefixes as above. Use APR includes. (ap_regerror): Use apr_snprintf.
* srclib/pcre/Makefile.in: Don't build pcreposix.c into libpcre.la.
* modules/*: Update to use new type and constant names.
PR: 27750 (part one)
Submitted by: Andres Salomon <dilinger voxel.net>, Joe Orton |
08cb74ca432a8c24e39f17dedce527e6a47b8001 151408 |
|
04-Feb-2005 |
jerenkrantz |
Update copyright year to 2005 and standardize on current copyright owner line. |
e6c244ee56578707b20a86e0e938498299a93b6c 103328 |
|
10-Apr-2004 |
nd |
Fix a bunch of cases where the return code of the regex compiler
was not checked properly. This affects: mod_setenvif, mod_usertrack,
mod_proxy, mod_proxy_ftp and core.
PR: 28218 |
bcccfc984c481af611fa4ffc3e2732400b041cfe 102734 |
|
21-Feb-2004 |
nd |
remove support for Remote_User variable, which never worked at all.
PR: 25725 |
78cd48acd325773619d78ac0d7263a99a8922fae 102618 |
|
09-Feb-2004 |
nd |
fix name of The Apache Software Foundation |
52f13df58bab77959915d669d156f89c3f1aa7ed 102572 |
|
08-Feb-2004 |
nd |
fix copyright dates according to the first check in |
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dc 102525 |
|
06-Feb-2004 |
nd |
apply Apache License, Version 2.0 |
baa9f185fdeb3034b62691b9e0ac5a46a064b5f3 102437 |
|
28-Jan-2004 |
nd |
catch another edge case |
26a4456dd6f1a5d7d7fff766551461a578687c4a 102135 |
|
01-Jan-2004 |
nd |
update license to 2004. |
6a3b299491bf7f9ba09b943b7238b170111b69cc 101665 |
|
02-Nov-2003 |
nd |
fix optimizer to not throw away a regex if it stumbles over it.
PR: 24219 |
bbe046d7cbb950ab3e372e4119ae001a5fe52ed4 101556 |
|
24-Oct-2003 |
striker |
Fold in the CAN-2003-0542 regex patch. |
ba6c07204bd224fa5d4cd0e6b8bf256d6daffb74 98659 |
|
14-Feb-2003 |
nd |
Extend the SetEnvIf directive to capture subexpressions of the
matched value. |
d6d558e3b9da8a69f7a990987a2636a2a37e7802 98628 |
|
12-Feb-2003 |
nd |
style issues. no code changes. |
33bdcae1f7a1a65e351dda2a766a0cf28b1e695d 98573 |
|
03-Feb-2003 |
nd |
finished that boring job:
update license to 2003.
Happy New Year! ;-)) |
bba68504b5cf2f8b246bd4f898f6cb62c2628379 97705 |
|
30-Nov-2002 |
brianp |
Fix for BrowserMatchNoCase, which was incorrectly treating non-regex
patterns as case-sensitive
Submitted by: Andr�� Malo
Reviewed by: Brian Pane |
84854ca5d35fb9f101da948858097c88457eece8 97494 |
|
12-Nov-2002 |
coar |
Add a SERVER_ADDR keyword to match the CGI environment variable,
to allow conditional setting according to the IP address on
which the server received the request. |
34da94d6797f36c17df72a559d9a25435ac0d6f3 97394 |
|
04-Nov-2002 |
stoddard |
Detabbify |
30fcbf13f231707060989a1a6b281f41e6ad56b7 95030 |
|
10-May-2002 |
brianp |
Fixed a segfault |
335ed4f3c06e2452141f725df445351cf2be60c7 95029 |
|
10-May-2002 |
trawick |
fix a build failure with some non-gcc compilers...
an example message: "The ":" operator is not allowed between
"const char*" and "int"." |
d312e7ba70aeb1594af9f3271e4802a6f48a3c4b 95027 |
|
10-May-2002 |
brianp |
Performance fix: When a BrowserMatch or SetEnvIf pattern doesn't
actually require regular expression parsing, use a fast string search
instead. |
bc8fd1b0b1afdf89b8d28eefa8cd74e26ba97986 93918 |
|
13-Mar-2002 |
fielding |
Update our copyright for this year. |
cd0132df6f05df6800141a29a6c60b64618670de 92120 |
|
22-Nov-2001 |
dougm |
two performance improvements:
- switch from using r->notes to r->request_config
- avoid a strcmp() when checking if val eq '!'
PR:
Obtained from:
Submitted by:
Reviewed by: |
d4f351074a8f7af5e41aa0a70410816436608e3d 91860 |
|
11-Nov-2001 |
ianh |
This patch changes the apr_table_elts macro so that it provides
access to the internals of an apr_table_t via a const pointer
instead of the current non-const pointer.
Submitted by: Brian Pane <BPane@pacbell.net>
Reviewed by: Ian Holsman |
4192c91889a84b18aec0b046a94a2b2863be204c 89353 |
|
12-Jun-2001 |
stoddard |
Extend mod_setenvif to support specifying regular expressions
on the SetEnvIf (and SetEnvIfNoCase) directive attribute field.
Example: SetEnvIf ^TS* [a-z].* HAVE_TS
will cause HAVE_TS to be set if any of the request headers begins
with "TS" and has a value that begins with any character in the
set [a-z]. [Bill Stoddard] |
0e53795adff9a7b18ac2db4a87ed2c60e063672c 89325 |
|
09-Jun-2001 |
stoddard |
Enable SetEnvIf to handle taking a regex on the header name (SPECIAL_NOT case).
For example:
SetEnvIf ^TS* ^[a-z].* HAVE_TS
will cause HAVE_TS to be set if a header beginning with TS appears in the request
and the value of that header starts with [a-z] |
5116c0fd82197f5bf0bbe33155cd36a452fcf6ce 88795 |
|
10-Apr-2001 |
wrowe |
icase is intialized as the result of an (a == b) expression, it makes
no sense as an unsigned, and this eliminates all compiler emits from
the module |
928f342270fd8ca02a36f484072d35063121171f 88484 |
|
09-Mar-2001 |
trawick |
tweak ap_get_remote_host() so that the caller can find out if she got
back an IP address
mod_access needed to know this, but the old code didn't handle IPv6 |
48dd659ac15d9054061ddce8f3cd24fa07e0e0dd 88295 |
|
24-Feb-2001 |
gstein |
toss ENUM_BITFIELD. used in one place (but didn't need to be used), and it
certainly wasn't namespace protected. |
b99dbaab171d91e1b664397cc40e039d0c087c65 88184 |
|
16-Feb-2001 |
fielding |
Update copyright to 2001 |
024cd9589e52cf11ce765dfddb5b5f0c6e421a48 88061 |
|
10-Feb-2001 |
gstein |
*) continued header revamping
*) torch some headers (and some libs) from the autoconf stuff |
066877f1a045103acfdd376d48cdd473c33f409b 88019 |
|
08-Feb-2001 |
dougm |
renaming various functions for consistency sake
see: http://apr.apache.org/~dougm/apr_rename.pl
PR:
Obtained from:
Submitted by:
Reviewed by: |
b980ad7fdc218b4855cde9f75a747527f50c554d 87731 |
|
19-Jan-2001 |
wrowe |
The big change. This is part 3 of the apr-util symbols rename, please
see the first commit of srclib/apr-util/include (cvs apr-util/include)
for the quick glance at symbols changed. |
73e8b26287de5c06fa470d36162e103dbac9c7e5 87697 |
|
17-Jan-2001 |
wrowe |
Provide apr_pool_t arg to register_hooks, since anything they do in that
step -must- be done with a pool that will not outlive the cmd pool, from
which they may have been dynamically loaded. |
e95f5a6ebefb83d0e8a82cbc4db7d354957a817d 87604 |
|
07-Jan-2001 |
ben |
Make handlers use hooks. |
3d96ee83babeec32482c9082c9426340cee8c44d 86609 |
|
16-Oct-2000 |
wrowe |
Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols
for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)
and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE.
All _VAR_ flavors changes to _DATA to be absolutely clear.
Thank you Greg, for the most obvious suggestion. |
10a4cdd68ef1ca0e54af296fe1d08ac00150c90b 86008 |
|
06-Aug-2000 |
wrowe |
Remaining cleanup of ap_ -> apr_ and AP_ -> APR_ transformation...
see src/lib/apr/apr_compat.h for most details.
Also a few minor nits to get Win32 to build.
PR:
Obtained from:
Submitted by:
Reviewed by: |
1ccd992d37d62c8cb2056126f2234f64ec189bfd 85976 |
|
02-Aug-2000 |
dougm |
prefix libapr functions and types with apr_ |
b6055b7832a0e4d0818416252fff5925aaebae4b 85867 |
|
21-Jul-2000 |
rbb |
Move all APR functions related to strings to their own directory, and
create a new header for those functions. This is the first step to
removing the apr/lib directory completely, and moving those files/functions
to descriptive directories. |
d41217398f0e1031adbb6f5bd37f45737c805def 85723 |
|
28-Jun-2000 |
trawick |
Include strings.h for strcasecmp(), strncasecmp(), and bzero().
Include time.h for time().
This removes a bunch of compiler warnings with gcc -Wall on AIX.
Submitted by: Jeff Trawick, Victor Orlikowski |
ebe70c2684539a5fb2d899241d1601710dfa38a4 85607 |
|
18-Jun-2000 |
trawick |
Use the new command-handler initializer macros in a few more modules,
cleaning up the resulting warnings. |
b4a6dfb838d9820516bbca38bd466fca7d31809b 85447 |
|
06-Jun-2000 |
coar |
Bring forward a change from 1.3 (the ability to use SetEnvIf*
and BrowserMatch* in .htaccess files). |
e68becff3c3ddc18723c9799b8cc2e6e9c3dbd66 85318 |
|
28-May-2000 |
wrowe |
PR:
Obtained from:
Submitted by:
Reviewed by:
Reverse out all _EXPORT_VAR changes back to their original _VAR_EXPORT
names for linkage (API_, CORE_, and MODULE_). |
30c289e6bc6d28d210b21edd800ab2cfc78a8381 85309 |
|
27-May-2000 |
wrowe |
This patch corrects the issues from the AP_EXPORT and linkage
specification arguments to the ap_hooks.h declarations. As with
the APR_ and AP_ patches, API_VAR_EXPORT becomes API_EXPORT_VAR,
and MODULE_VAR_EXPORT becomes MODULE_EXPORT_VAR.
I will be happy to revert the inclusion of ap_config.h from
httpd.h if this bothers anyone. More individual modules need
to be patched if we do so.
The API_EXPORTs all moved into central storage in the ap_config.h
header. Without WIN32 or API_STATIC compile time declarations,
these macros remain no-ops.
This patch also moves the following data from http_main to http_config:
const char *ap_server_argv0;
const char *ap_server_root;
ap_array_header_t *ap_server_pre_read_config;
ap_array_header_t *ap_server_post_read_config;
ap_array_header_t *ap_server_config_defines;
And the following variables had already moved into ap_hooks.c:
ap_pool_t *g_pHookPool; (initialized now in http_config)
int g_bDebugHooks; (out of http_config)
const char *g_szCurrentHookName; (out of http_config)
The changes to http_main.c are in preparation for that module to
move out to a seperate .exe for win32. Other platforms will be
unaffected, outside of these changes. |
ff72a628571224579194f37cf8db96186ae889a5 85045 |
|
26-Apr-2000 |
dougm |
add AP_ prefix to *HOOK* macros |
404e2e1f8ad30c2d996f5fb6b3a9a4a4a14a004b 84963 |
|
14-Apr-2000 |
rbb |
Change ap_context_t to ap_pool_t. This compiles, runs, and serves pages
on Linux, but probably breaks somewhere. |
ab2c1c1c83ec91415565da5a71fbc15d9685caa6 84879 |
|
31-Mar-2000 |
fielding |
Update to Apache Software License version 1.1 |
64185f9824e42f21ca7b9ae6c004484215c031a7 84725 |
|
10-Mar-2000 |
rbb |
Fix all the License issues. Including:
s/Apache Group/Apache Software Foundation/
s/1999/2000/
s/Sascha's license/ASF license |
2d71630471d1c23f0137309e3c3957c633ecbfd6 84531 |
|
28-Jan-2000 |
rbb |
Include ap_config.h before httpd.h, this ensures that AP_USE_HSREGEX is
defined correctly in all C files. |
540bbdd4d087610fc0563f0dc3aab2fc5defbad9 84512 |
|
23-Jan-2000 |
stoddard |
Fix compile breaks on Windows. |
b4c8a80f7dbfc9b56dbe03bdc28f0b5eb5f23697 83852 |
|
31-Aug-1999 |
rbb |
Changed pools to contexts. Tested with prefork and pthread mpm's. I'll
check this out tomorrow and make sure everything was checked in correctly. |
fd0edaa8e3d4dd67d0604ccef2e96b071db96643 83770 |
|
26-Aug-1999 |
fielding |
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]
Port a bunch of modules to the new module structure.
["Michael H. Voase" <mvoase@midcoast.com.au>]
Submitted by: Ben Laurie |
17db3022778ec47c890504b9378961c428bfddc8 83767 |
|
26-Aug-1999 |
fielding |
user and ap_auth_type fields were moved from connection_rec to request_rec
Submitted by: Ryan Bloom |
0f081398cf0eef8cc7c66a535d450110a92dc8ae 83751 |
|
24-Aug-1999 |
fielding |
Apache 1.3.9 baseline for the Apache 2.0 repository.
Obtained from: Apache 1.3.9 (minus unused files), tag APACHE_1_3_9
Submitted by: Apache Group |