Project

General

Profile

Bug #946

URL encoding leads to "400 - Bad Request"

Added by Anonymous about 13 years ago. Updated over 3 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
core
Target version:
Start date:
Due date:
% Done:

100%

Estimated time:
Missing in 1.5.x:

Description

From: http://forum.lighttpd.net/topic/508

You can't browse to a ip specified in hexadecimal form with lighttpd.
http://0x51a99898/ - lighttpd.net - gives 400 - Bad Request
http://0x40e9a763/ - google.com - works fine

This also applies to partial/full hex/octal encoding.

Like the following links to google.
They had http:// infront of them but it marked this ticket as spam :(

0x40.0xe9.0xa7.0x63
0x40.233.0xa7.99
010072323543

Hope i did this right,

-Wouter

-- Wouter

#1

Updated by Anonymous over 11 years ago

can confirm this is still the case in 1.5 rev 2140

#2

Updated by Anonymous over 11 years ago

stbuehler (IRC) took a look at this today, this seems to have fixed it (i myself have done min testing at this stage - very quick test on 1.5)

diff --git a/src/request.c b/src/request.c
index 4298873..4f83175 100644
--- a/src/request.c
++ b/src/request.c
@ -125,7 +125,7 @ static int request_check_hostname(server srv, connection *con, buffer *host) {
}
} else if (i == 0) {
/
the first character of the hostname */
- if (!light_isalpha(c)) {
if (!light_isalnum(c)) {
return -1;
}
label_len++;

#3

Updated by gstrauss almost 4 years ago

  • Description updated (diff)

Issue at least partially addressed in the following. Not sure if fully addressed.

commit b87d3e804be04e79c1d3d8b5fc12dac06087dc7d
Author: Stefan B├╝hler <stbuehler@web.de>
Date:   Tue Jul 14 12:57:27 2009 +0000

    Allow digits in hostnames in more places (fixes #1148)

    git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2586 152afb58-edef-0310-8abb-c4023f1b3aa9

#4

Updated by gstrauss over 3 years ago

  • Status changed from New to Patch Pending
  • Assignee deleted (jan)
  • Target version set to 1.4.40
#5

Updated by gstrauss over 3 years ago

  • Status changed from Patch Pending to Fixed
  • % Done changed from 0 to 100

Also available in: Atom