Fix strict Host: header checking on EBCDIC
on zOS, isascii() really means 7 bit ascii, but our strings
are in ebcdic for 99.95% of the lifetime of the server.
remove initial isascii check entirely
We are already checking an even narrower set of characters
just below.
Submitted by: covener
Reviewed/backported by: jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@
1775827 13f79535-47bb-0310-9956-
ffa450edef68
PATCHES ACCEPTED TO BACKPORT FROM TRUNK:
[ start all new proposals below, under PATCHES PROPOSED. ]
- *) core: remove isascci check before narrower checks in vhost checking
- trunk patch: http://svn.apache.org/r1775199
- http://svn.apache.org/r1775664
- 2.4.x patch: trunk works + CHANGES
- +1: covener, jim, ylavic
*) mod_http: Optimize bad headers handling workflow
Trunk version of patch:
int is_dotted_decimal = 1, leading_zeroes = 0, dots = 0;
for (ch = host; *ch; ch++) {
- if (!apr_isascii(*ch)) {
- goto bad;
- }
- else if (apr_isalpha(*ch) || *ch == '-') {
+ if (apr_isalpha(*ch) || *ch == '-') {
is_dotted_decimal = 0;
}
else if (ch[0] == '.') {