Skip to content

Fix node errors#37

Merged
MDA2AV merged 1 commit intomainfrom
fix/node
Feb 13, 2026
Merged

Fix node errors#37
MDA2AV merged 1 commit intomainfrom
fix/node

Conversation

@MDA2AV
Copy link
Copy Markdown
Owner

@MDA2AV MDA2AV commented Feb 13, 2026

The bug: new URL(req.url, "http://") throws TypeError: Invalid URL when Host
is empty, crashing the Node process. All 102 tests after COMP-HOST-EMPTY-VALUE
failed because the server was dead.

@MDA2AV MDA2AV linked an issue Feb 13, 2026 that may be closed by this pull request
@github-actions
Copy link
Copy Markdown

Http11Probe — Compliance Comparison

Server Score
Node 103/127 ████████████████░░░░ 81%

Compliance

Server BASELINE BARE-LF-REQUEST-LINE BARE-LF-HEADER OBS-FOLD SP-BEFORE-COLON MULTI-SP-REQUEST-LINE MISSING-HOST INVALID-VERSION EMPTY-HEADER-NAME CR-ONLY-LINE-ENDING MISSING-TARGET FRAGMENT-IN-TARGET HTTP09-REQUEST INVALID-HEADER-NAME HEADER-NO-COLON DUPLICATE-HOST CL-NON-NUMERIC CL-PLUS-SIGN WHITESPACE-BEFORE-HEADERS DUPLICATE-HOST-SAME HOST-WITH-USERINFO HOST-WITH-PATH ASTERISK-WITH-GET OPTIONS-STAR UNKNOWN-TE-501 LEADING-CRLF ABSOLUTE-FORM METHOD-CASE POST-CL-BODY POST-CL-ZERO POST-NO-CL-NO-TE POST-CL-UNDERSEND CHUNKED-BODY CHUNKED-MULTI CHUNKED-EMPTY CHUNKED-NO-FINAL UPGRADE-POST UPGRADE-MISSING-CONN UPGRADE-UNKNOWN METHOD-CONNECT EXPECT-UNKNOWN GET-WITH-CL-BODY CHUNKED-EXTENSION UPGRADE-INVALID-VER METHOD-TRACE HOST-EMPTY-VALUE REQUEST-LINE-TAB VERSION-MISSING-MINOR VERSION-LEADING-ZEROS VERSION-WHITESPACE CONNECTION-CLOSE HTTP10-DEFAULT-CLOSE HTTP10-NO-HOST HTTP12-VERSION TRACE-WITH-BODY CHUNKED-TRAILER-VALID CHUNKED-HEX-UPPERCASE
Expected 2xx 400 or close (pass), 2xx (warn) 400 or close (pass), 2xx (warn) 400 400 400 or 2xx 400 400/505 or close 400 or close 400 400 or close 400 or 2xx 400/close/timeout 400 or close 400 or close 400 400 or close 400 or close 400 or close 400 400 or close 400 or close 400 or close 2xx 400/501 or close 400 or 2xx 2xx preferred; 400 warns 400/405/501 or 2xx 2xx 2xx or close 2xx or close 400/close/timeout 2xx 2xx 2xx or close 400/close/timeout !101 !101 !101 400/405/501 or close 417 or 2xx 400 or 2xx 2xx preferred; 400 warns non-101 (426 preferred) 405/501 or 2xx 400 or close 400 or 2xx 400 or close 400 or close 400 or close 2xx + close 2xx + close 200 or 400 200 or 505 400/405 or 200 2xx 2xx
Node 200 400 400 400 400 ⚠️200 400 400 400 400 400 ⚠️200 TimedOut 400 400 200 400 400 400 200 200 200 200 200 400 ⚠️200 200 400 200 200 200 TimedOut 200 200 200 TimedOut 200 200 200 ClosedByServer 417 ⚠️200 200 ⚠️200 ⚠️200 200 400 400 400 400 200 200 ⚠️200 400 ⚠️200 200 200

Smuggling

Server CL-TE-BOTH DUPLICATE-CL CL-LEADING-ZEROS TE-XCHUNKED TE-TRAILING-SPACE TE-SP-BEFORE-COLON CL-NEGATIVE CLTE-PIPELINE TECL-PIPELINE CL-TRAILING-SPACE TE-DOUBLE-CHUNKED CL-EXTRA-LEADING-SP TE-CASE-MISMATCH CL-COMMA-DIFFERENT TE-NOT-FINAL-CHUNKED TE-HTTP10 CHUNK-BARE-SEMICOLON BARE-CR-HEADER-VALUE CL-OCTAL CHUNK-UNDERSCORE TE-EMPTY-VALUE TE-LEADING-COMMA TE-DUPLICATE-HEADERS CHUNK-HEX-PREFIX CL-HEX-PREFIX CL-INTERNAL-SPACE CHUNK-LEADING-SP CHUNK-MISSING-TRAILING-CRLF CHUNK-EXT-LF CHUNK-SPILL CHUNK-LF-TERM CHUNK-EXT-CTRL CHUNK-EXT-CR TE-VTAB TE-FORMFEED TE-NULL CHUNK-LF-TRAILER TE-IDENTITY CHUNK-NEGATIVE TRANSFER_ENCODING CL-COMMA-SAME CHUNKED-WITH-PARAMS EXPECT-100-CL TRAILER-CL TRAILER-TE TRAILER-HOST TRAILER-AUTH HEAD-CL-BODY OPTIONS-CL-BODY CL-UNDERSCORE CL-NEGATIVE-ZERO CL-DOUBLE-ZERO CL-LEADING-ZEROS-OCTAL TE-OBS-FOLD TE-TRAILING-COMMA TE-TAB-BEFORE-VALUE ABSOLUTE-URI-HOST-MISMATCH MULTIPLE-HOST-COMMA CHUNK-BARE-CR-TERM TRAILER-CONTENT-TYPE
Expected 400 or 2xx 400 or close 400 or 2xx 400/501 or close 400/501 or 2xx+close 400 or close 400 or close 400 or close 400 or close 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or close 400 or close 400 or close 400 or close 400 or close 400 or close 400 or close 400 or close 400 or 2xx 400 or close 400 or close 400 or close 400 or close 400 or close 400 or close 400 or 2xx 400 or close 400 or 2xx 400 or close 400 or close 400 or close 400 or close 400 or close 400 or 2xx 400/501 or close 400 or close 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or 2xx 400 or close 400 or close 400 or 2xx 400 or 2xx 400 or 2xx+close 400 or 2xx 400 or 2xx 400 or 2xx 400 or close 400 or close 400 or 2xx
Node 400 400 ⚠️200 400 400 400 400 400 400 ⚠️200 400 ⚠️200 400 400 400 400 400 400 400 400 200 400 400 400 400 400 400 400 400 400 400 400 400 400 400 400 400 400 400 ⚠️200 400 400 100 400 400 ⚠️200 ⚠️200 ⚠️200 ⚠️200 400 400 ⚠️200 ⚠️200 400 400 400 ⚠️200 200 400 ⚠️200

Malformed Input

Server BINARY-GARBAGE LONG-URL LONG-HEADER-VALUE MANY-HEADERS NUL-IN-URL CONTROL-CHARS-HEADER INCOMPLETE-REQUEST EMPTY-REQUEST LONG-HEADER-NAME LONG-METHOD NON-ASCII-HEADER-NAME NON-ASCII-URL CL-OVERFLOW WHITESPACE-ONLY-LINE NUL-IN-HEADER-VALUE CHUNK-SIZE-OVERFLOW H2-PREFACE CL-EMPTY CL-TAB-BEFORE-VALUE URL-BACKSLASH URL-OVERLONG-UTF8 URL-PERCENT-NULL URL-PERCENT-CRLF CHUNK-EXT-64K RANGE-OVERLAPPING POST-CL-HUGE-NO-BODY
Expected 400/close/timeout 400/414/431 or close 400/431 or close 400/431 or close 400 or close 400 or close 400/close/timeout 400/close/timeout 400/431 or close 400 or close 400 or close 400 or close 400 or close 400/close/timeout 400 or close 400 or close 400/505/close/timeout 400 or close 400 or 2xx 400 or 2xx/404 400 or close 400 or 2xx/404 400 or 2xx/404 400 or 2xx 200/206/400/416 400/close/timeout
Node 400 431 431 431 400 400 TimedOut TimedOut 431 400 400 400 400 400 400 400 400 400 ⚠️200 ⚠️200 400 ⚠️200 ⚠️200 413 ⚠️200 TimedOut

Header Normalization

Server UNDERSCORE-CL SP-BEFORE-COLON-CL TAB-IN-NAME CASE-TE UNDERSCORE-TE
Expected Reject/drop (pass), normalize (fail), preserve (warn) Reject/drop (pass), normalize (fail), preserve (warn) Reject/drop (pass), normalize (fail), preserve (warn) Reject/drop (pass), normalize casing (fail), preserve (warn) Reject/drop (pass), normalize (fail), preserve (warn)
Node ⚠️200 400 400 400 ⚠️200

Commit: 46c959c

@MDA2AV MDA2AV merged commit 7c59c87 into main Feb 13, 2026
1 check passed
@MDA2AV MDA2AV deleted the fix/node branch February 14, 2026 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Issues with NodeJS

1 participant