diff --git a/examples/http-parser/http_parser.c b/examples/http-parser/http_parser.c index 0c11eb8..610da57 100644 --- a/examples/http-parser/http_parser.c +++ b/examples/http-parser/http_parser.c @@ -1627,9 +1627,14 @@ size_t http_parser_execute (http_parser *parser, /* Exit, the rest of the connect is in a different protocol. */ if (parser->upgrade) { - parser->state = NEW_MESSAGE(); - CALLBACK_NOTIFY(message_complete); - return (p - data) + 1; + /* We want to use http_parser for tunneling connection + transparently */ + /* Read body until EOF */ + parser->state = s_body_identity_eof; + break; + /* parser->state = NEW_MESSAGE(); */ + /* CALLBACK_NOTIFY(message_complete); */ + /* return (p - data) + 1; */ } if (parser->flags & F_SKIPBODY) {