SEC-1802: Add digits to valid URL scheme regex.

This commit is contained in:
Luke Taylor 2011-10-21 17:24:05 +01:00
parent 2fd0a65049
commit f1e63f3008
2 changed files with 2 additions and 1 deletions

View File

@ -129,7 +129,7 @@ public final class UrlUtils {
* Decides if a URL is absolute based on whether it contains a valid scheme name, as defined in RFC 1738.
*/
public static boolean isAbsoluteUrl(String url) {
final Pattern ABSOLUTE_URL = Pattern.compile("\\A[a-z.+-]+://.*", Pattern.CASE_INSENSITIVE);
final Pattern ABSOLUTE_URL = Pattern.compile("\\A[a-z0-9.+-]+://.*", Pattern.CASE_INSENSITIVE);
return ABSOLUTE_URL.matcher(url).matches();
}

View File

@ -13,6 +13,7 @@ public class UrlUtilsTests {
@Test
public void absoluteUrlsAreMatchedAsAbsolute() throws Exception {
assertTrue(UrlUtils.isAbsoluteUrl("http://something/"));
assertTrue(UrlUtils.isAbsoluteUrl("http1://something/"));
assertTrue(UrlUtils.isAbsoluteUrl("HTTP://something/"));
assertTrue(UrlUtils.isAbsoluteUrl("https://something/"));
assertTrue(UrlUtils.isAbsoluteUrl("a://something/"));