Christophe Jaillet
7e96ac17cf
Use 'ap_array_str_contains' to simplify code.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1719255 13f79535-47bb-0310-9956-ffa450edef68
2015-12-11 04:40:20 +00:00
Yann Ylavic
c80e6b2a34
Use new ap_casecmpstr[n]() functions where appropriate (not exhaustive).
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1715876 13f79535-47bb-0310-9956-ffa450edef68
2015-11-23 16:46:01 +00:00
Yann Ylavic
3c9ddf44bf
Revert r1715789: will re-commit without spurious functional changes.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1715869 13f79535-47bb-0310-9956-ffa450edef68
2015-11-23 16:28:36 +00:00
Yann Ylavic
29843dc73f
Use new ap_casecmpstr[n]() functions where appropriate (not exhaustive).
...
[Reverted by r1715869]
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1715789 13f79535-47bb-0310-9956-ffa450edef68
2015-11-23 12:33:09 +00:00
Stefan Eissing
a58cc8eef0
reverting unwanted loss of missing case
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1702954 13f79535-47bb-0310-9956-ffa450edef68
2015-09-14 13:57:09 +00:00
Stefan Eissing
ea390af213
httpd compiles warning free on gcc and every new warning will be treated as an error, standard c-89 is enforced
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1702948 13f79535-47bb-0310-9956-ffa450edef68
2015-09-14 13:29:35 +00:00
Rainer Jung
7439a429d6
Expression parser: Optimize another concatenation
...
case by using iteration instead of recursion.
We have a relatively small recursion limit of
about 10 operations. This is a compilation
limit (a define). It can be hit if many expr
vars or function calls are concatenated.
The new optimization is very similar to the
existing one, which optimizes consecutive
concatenations in node2 of the tree. The new
one optimizes consecutive concatenations in
node 1.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1657685 13f79535-47bb-0310-9956-ffa450edef68
2015-02-05 20:33:59 +00:00
Eric Covener
829e98c57d
looks like debug left in r1642154
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1647125 13f79535-47bb-0310-9956-ffa450edef68
2014-12-21 11:47:26 +00:00
Ruediger Pluem
ddc48bf250
* Correctly indent
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643220 13f79535-47bb-0310-9956-ffa450edef68
2014-12-05 10:02:57 +00:00
Daniel Gruno
f1d7ed9cde
ap_expr: Add filemod function for checking file modification times.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643145 13f79535-47bb-0310-9956-ffa450edef68
2014-12-05 00:46:33 +00:00
Jan Kaluža
529b4906a6
* ap_expr: Fix replace() func when length of "from" != length of "to".
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1643094 13f79535-47bb-0310-9956-ffa450edef68
2014-12-03 11:10:50 +00:00
Jan Kaluža
bd41584fcb
* ap_exr: Add replace(string, from, to) function.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1642154 13f79535-47bb-0310-9956-ffa450edef68
2014-11-27 13:46:11 +00:00
Christophe Jaillet
268e463e27
tab vs space
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1633528 13f79535-47bb-0310-9956-ffa450edef68
2014-10-22 05:22:09 +00:00
Christophe Jaillet
2785b009e9
Silent some cppcheck warnings.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1621806 13f79535-47bb-0310-9956-ffa450edef68
2014-09-01 14:40:01 +00:00
Christophe Jaillet
089d2e0373
Do not use deprecated define.
...
No change in generated code because MODULE_MAGIC_NUMBER is defined as:
#define MODULE_MAGIC_NUMBER MODULE_MAGIC_NUMBER_MAJOR
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1611871 13f79535-47bb-0310-9956-ffa450edef68
2014-07-19 09:46:20 +00:00
Christophe Jaillet
80e41b5819
Tweak a AP_DEBUG_ASSERT condition.
...
Valid index to use 'req_header_var_names' are 0...6
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1595321 13f79535-47bb-0310-9956-ffa450edef68
2014-05-16 19:37:07 +00:00
Graham Leggett
1c88c53282
Only include the ldap escaping if present within APR.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1589995 13f79535-47bb-0310-9956-ffa450edef68
2014-04-25 11:19:56 +00:00
Graham Leggett
7c05d5e069
Add the ldap function to the expression API, allowing LDAP filters and
...
distinguished names based on expressions to be escaped correctly to
guard against LDAP injection.
Note: this requires at least APR v1.6.0 or above for the apr_escape API.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1589986 13f79535-47bb-0310-9956-ffa450edef68
2014-04-25 10:55:04 +00:00
Graham Leggett
a3dca551c1
Move two variable assignments off the fast path.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1588448 13f79535-47bb-0310-9956-ffa450edef68
2014-04-18 11:47:06 +00:00
Stefan Fritsch
2f358e7e17
add md5 function, too
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1458004 13f79535-47bb-0310-9956-ffa450edef68
2013-03-18 21:16:18 +00:00
Stefan Fritsch
bbf4902d58
simplify code by using ap_bin2hex()
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1458003 13f79535-47bb-0310-9956-ffa450edef68
2013-03-18 21:13:31 +00:00
Graham Leggett
3140d79ef9
Expression parser: use hex encoding for the sha1 hash.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1457610 13f79535-47bb-0310-9956-ffa450edef68
2013-03-18 00:27:38 +00:00
Graham Leggett
5d47953112
Remove the comment, this is done.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1457520 13f79535-47bb-0310-9956-ffa450edef68
2013-03-17 19:10:01 +00:00
Graham Leggett
c0c5f9db2a
Expression parser: Add the ability to apply a SHA1 hash to strings within
...
the parser.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1457450 13f79535-47bb-0310-9956-ffa450edef68
2013-03-17 13:52:58 +00:00
Graham Leggett
cc78b3134b
Expression parser: Add the ability to base64 encode and base64 decode
...
strings within the parser.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1457437 13f79535-47bb-0310-9956-ffa450edef68
2013-03-17 12:49:27 +00:00
Stefan Fritsch
4aad88eb93
Add SERVER_PROTOCOL_VERSION, SERVER_PROTOCOL_VERSION_MAJOR,
...
SERVER_PROTOCOL_VERSION_MINOR ap_expr variables.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1410755 13f79535-47bb-0310-9956-ffa450edef68
2012-11-17 17:43:33 +00:00
Stefan Fritsch
6c8ea86f41
ap_expr: Add req_novary function that allows HTTP header lookups
...
without adding the name to the Vary header
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1403483 13f79535-47bb-0310-9956-ffa450edef68
2012-10-29 20:34:18 +00:00
Stefan Fritsch
76f782e188
Various code cleanup to avoid compiler, cppcheck, or clang warnings:
...
modules/debugging/mod_firehose.c: Make some internal functions static
(to do: logs_cleanup() is unused)
modules/filters/mod_charset_lite.c: Remove dead assignments
modules/filters/mod_include.c: likewise
modules/metadata/mod_usertrack.c: likewise
modules/proxy/mod_proxy_ftp.c: likewise
modules/ssl/ssl_engine_pphrase.c: likewise
modules/proxy/mod_proxy_balancer.c: likewise;
Remove NULL check that can never happen
modules/proxy/proxy_util.c: Axe NULL-check that can never happen and if it
would, it would just mask another bug
os/unix/unixd.c: likewise
modules/http/http_filters.c: Remove sub-condition that is always true
modules/lua/mod_lua.c: Add default cases to switch statements
modules/generators/mod_autoindex.c: Unsigned value can never be < 0
server/util_expr_eval.c: Fix compiler warnings with VC and on OS2
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1220493 13f79535-47bb-0310-9956-ffa450edef68
2011-12-18 17:52:59 +00:00
Graham Leggett
cb21a0dbcc
Further clarify the naming of the entity that directly connects to us by
...
calling that entity a client instead of a peer.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1214015 13f79535-47bb-0310-9956-ffa450edef68
2011-12-14 01:10:52 +00:00
Graham Leggett
ad489c105b
Further clarify the naming of the entity that originates the request by
...
calling that entity a useragent instead of a client.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1214005 13f79535-47bb-0310-9956-ffa450edef68
2011-12-14 00:33:46 +00:00
Stefan Fritsch
e6d1031885
Explicitly cast function pointer, to remove 'const'.
...
Hopefully this makes the NetWare compiler happy.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1213567 13f79535-47bb-0310-9956-ffa450edef68
2011-12-13 05:53:50 +00:00
Stefan Fritsch
e0a5a7882e
Fix names of unary operators like '-s' being compared case insensitively.
...
Improve error message if op or function is not found. Document '-s' operator.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1212883 13f79535-47bb-0310-9956-ffa450edef68
2011-12-10 21:26:00 +00:00
Stefan Fritsch
0f05cbe719
Fix a few compiler warning reported by Steffen:
...
- some signed/unsigned mismatches
- const for a function does not make sense
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1210378 13f79535-47bb-0310-9956-ffa450edef68
2011-12-05 09:38:44 +00:00
Stefan Fritsch
26d5fb7164
Add some more log message tags
...
Remove some log message tags from ap_log_* calls that log lots of
different error messages, in particular the config parsing errors.
Not sure how we should handle those.
ssl_util.c: Downgrade some dynamic locking messages from level DEBUG
to TRACE1-3
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1210252 13f79535-47bb-0310-9956-ffa450edef68
2011-12-04 22:09:24 +00:00
Stefan Fritsch
92e366007c
Add lots of unique tags to error log messages
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1209766 13f79535-47bb-0310-9956-ffa450edef68
2011-12-02 23:02:04 +00:00
Graham Leggett
394e5594d6
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.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1206291 13f79535-47bb-0310-9956-ffa450edef68
2011-11-25 19:42:04 +00:00
Jim Jagielski
f94cf9a7f0
Hello. Let's compile again.
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1204998 13f79535-47bb-0310-9956-ffa450edef68
2011-11-22 14:02:25 +00:00
Graham Leggett
7df4fb3537
Add the ability to access the connection level remote IP address from the
...
expression parser.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1204990 13f79535-47bb-0310-9956-ffa450edef68
2011-11-22 13:40:58 +00:00
Graham Leggett
4ee7eea4cf
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).
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1204968 13f79535-47bb-0310-9956-ffa450edef68
2011-11-22 13:10:39 +00:00
Stefan Fritsch
294efcbd32
clarify comment
...
remove broken recursion counting bits
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1204090 13f79535-47bb-0310-9956-ffa450edef68
2011-11-19 22:06:16 +00:00
Stefan Fritsch
92663b1e32
Limit recursion in ap_expr evaluation to avoid unbounded stack usage
...
* evaluate chains of ||, &&, and string concatenation non-recursively
* limit other types of recursion to 20 levels
* avoid some string copies if concatenating more than 2 strings
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1204087 13f79535-47bb-0310-9956-ffa450edef68
2011-11-19 21:58:48 +00:00
Stefan Fritsch
02302c9049
regex related cleanups:
...
- use AP_MAX_REG_MATCH where appropriate
- in mod_proxy_ftp, compile the "ls -s1" regex only once instead of once per request
- add some coments
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1185898 13f79535-47bb-0310-9956-ffa450edef68
2011-10-18 22:02:26 +00:00
Stefan Fritsch
1951a037bf
More cleanup: Expand tabs and some more indentation fixes
...
No functional change
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1174929 13f79535-47bb-0310-9956-ffa450edef68
2011-09-23 18:08:42 +00:00
Jim Jagielski
427c85bd23
Cleanup effort in prep for GA push:
...
Trim trailing whitespace... no func change
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1174751 13f79535-47bb-0310-9956-ffa450edef68
2011-09-23 13:39:32 +00:00
Stefan Fritsch
8281a318cf
Do proper length checks in the expression scanner. This allows to remove the
...
8K length limit for expressions. Strings/Regexs in an expression are still
limited to 8K, though.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1157362 13f79535-47bb-0310-9956-ffa450edef68
2011-08-13 09:59:43 +00:00
Stefan Fritsch
f0cf7722ba
Use ap_unescape_url_keep2f() in ap_expr unescape func. ap_unescape_url()
...
forbidding encoded slashes is not useful here.
Log failures.
Improve docs.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1151373 13f79535-47bb-0310-9956-ffa450edef68
2011-07-27 08:03:41 +00:00
Stefan Fritsch
481fac5ce2
Make the SERVER_NAME variable include [ ] for literal IPv6 addresses, as
...
mandated by RFC 3875
PR: 26005
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1147614 13f79535-47bb-0310-9956-ffa450edef68
2011-07-17 13:56:28 +00:00
Stefan Fritsch
46d4791a5d
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
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1142164 13f79535-47bb-0310-9956-ffa450edef68
2011-07-02 07:45:00 +00:00
Stefan Fritsch
0ddae368ab
Add REQUEST_STATUS variable to ap_expr
...
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1142163 13f79535-47bb-0310-9956-ffa450edef68
2011-07-02 07:32:26 +00:00
Stefan Fritsch
255f723fef
We already have ap_str_tolower(), so also add ap_str_toupper() function and use
...
it where possible.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1138617 13f79535-47bb-0310-9956-ffa450edef68
2011-06-22 20:24:27 +00:00