From 0b1e6e42e3cc94e746a3a9453dd9b0702062b757 Mon Sep 17 00:00:00 2001 From: Chris Bargren Date: Mon, 28 Dec 2015 07:40:15 -0700 Subject: [PATCH] Updating change to http_parser to reflect PR for nodejs/http-parser The parser now also supports digits, '-' and '.'. https://github.com/nodejs/http-parser/pull/276 --- deps/http-parser/http_parser.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/deps/http-parser/http_parser.c b/deps/http-parser/http_parser.c index b793d7011..27bdd2081 100644 --- a/deps/http-parser/http_parser.c +++ b/deps/http-parser/http_parser.c @@ -99,7 +99,7 @@ do { \ FOR##_mark = NULL; \ } \ } while (0) - + /* Run the data callback FOR and consume the current byte */ #define CALLBACK_DATA(FOR) \ CALLBACK_DATA_(FOR, p - FOR##_mark, p - data + 1) @@ -444,6 +444,9 @@ parse_url_char(enum state s, const char ch) return s_req_path; } + /* The schema must start with an alpha character. After that, it may + * consist of digits, '+', '-' or '.', followed by a ':'. + */ if (IS_ALPHA(ch)) { return s_req_schema; } @@ -451,7 +454,7 @@ parse_url_char(enum state s, const char ch) break; case s_req_schema: - if (IS_ALPHA(ch) || ch == '+') { + if (IS_ALPHANUM(ch) || ch == '+' || ch == '-' || ch == '.') { return s; }