mirror of
https://github.com/php/php-src.git
synced 2026-03-26 17:22:15 +01:00
Fix for bug #51192 (FILTER_VALIDATE_URL will invalidate a hostname that includes '-'). Original patch by solar@azrael.ws.
This commit is contained in:
@@ -467,7 +467,7 @@ void php_filter_validate_url(PHP_INPUT_FILTER_PARAM_DECL) /* {{{ */
|
||||
s = url->host;
|
||||
|
||||
while (s < e) {
|
||||
if (!isalnum((int)*(unsigned char *)s) && *s != '_' && *s != '.') {
|
||||
if (!isalnum((int)*(unsigned char *)s) && *s != '-' && *s != '.') {
|
||||
goto bad_url;
|
||||
}
|
||||
s++;
|
||||
|
||||
13
ext/filter/tests/bug51192.phpt
Normal file
13
ext/filter/tests/bug51192.phpt
Normal file
@@ -0,0 +1,13 @@
|
||||
--TEST--
|
||||
bug 51192, FILTER_VALIDATE_URL will invalidate a hostname that includes '-'
|
||||
--SKIPIF--
|
||||
<?php if (!extension_loaded("filter")) die("skip"); ?>
|
||||
--FILE--
|
||||
<?php
|
||||
var_dump(filter_var('http://example.com/path', FILTER_VALIDATE_URL));
|
||||
var_dump(filter_var('http://exa-mple.com/path', FILTER_VALIDATE_URL));
|
||||
var_dump(filter_var('http://exa_mple.com/path', FILTER_VALIDATE_URL));
|
||||
--EXPECT--
|
||||
string(23) "http://example.com/path"
|
||||
string(24) "http://exa-mple.com/path"
|
||||
bool(false)
|
||||
Reference in New Issue
Block a user