164 references to RequestRejectionReason
InMemory.FunctionalTests (1)
ChunkedRequestTests.cs (1)
966
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, badReqEx.Reason);
Microsoft.AspNetCore.Server.Kestrel.Core (145)
BadHttpRequestException.cs (3)
16
internal BadHttpRequestException(string message, int statusCode,
RequestRejectionReason
reason)
20
internal BadHttpRequestException(string message, int statusCode,
RequestRejectionReason
reason, HttpMethod? requiredMethod)
38
internal
RequestRejectionReason
Reason { get; }
Internal\Http\Http1ChunkedEncodingMessageBody.cs (5)
113
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTimeout);
348
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.BadChunkSizeData);
426
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.BadChunkExtension);
472
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.BadChunkSuffix);
531
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.BadChunkSizeData);
Internal\Http\Http1Connection.cs (44)
210
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestLineTooLong);
253
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
344
return HttpParseResult.Error(
RequestRejectionReason
.RequestLineTooLong);
384
return HttpParseResult.Error(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
570
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.ConnectMethodRequired);
614
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.OptionsMethodRequired);
742
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MissingHostHeader);
746
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MultipleHostHeaders);
756
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
767
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
800
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
809
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
906
HandleBadRequest(result.Buffer,
RequestRejectionReason
.InvalidRequestLine);
910
HandleBadRequest(result.Buffer,
RequestRejectionReason
.MalformedRequestInvalidHeaders);
926
HandleBadRequest(result.Buffer,
RequestRejectionReason
.RequestHeadersTimeout);
951
case
RequestRejectionReason
.UnrecognizedHTTPVersion:
953
case
RequestRejectionReason
.InvalidRequestLine:
954
case
RequestRejectionReason
.RequestLineTooLong:
955
case
RequestRejectionReason
.InvalidRequestTarget:
957
case
RequestRejectionReason
.InvalidRequestHeadersNoCRLF:
958
case
RequestRejectionReason
.InvalidRequestHeader:
959
case
RequestRejectionReason
.InvalidContentLength:
960
case
RequestRejectionReason
.MultipleContentLengths:
961
case
RequestRejectionReason
.MalformedRequestInvalidHeaders:
962
case
RequestRejectionReason
.InvalidCharactersInHeaderName:
963
case
RequestRejectionReason
.LengthRequiredHttp10:
964
case
RequestRejectionReason
.OptionsMethodRequired:
965
case
RequestRejectionReason
.ConnectMethodRequired:
966
case
RequestRejectionReason
.MissingHostHeader:
967
case
RequestRejectionReason
.MultipleHostHeaders:
968
case
RequestRejectionReason
.InvalidHostHeader:
970
case
RequestRejectionReason
.HeadersExceedMaxTotalSize:
972
case
RequestRejectionReason
.TooManyHeaders:
974
case
RequestRejectionReason
.TlsOverHttpError:
976
case
RequestRejectionReason
.UnexpectedEndOfRequestContent:
998
private void HandleBadRequest(ReadOnlySequence<byte> requestData,
RequestRejectionReason
reason)
1012
if (parseResult.ErrorReason ==
RequestRejectionReason
.InvalidRequestHeadersNoCRLF)
1043
if (ex.Reason ==
RequestRejectionReason
.UnrecognizedHTTPVersion)
1117
RequestRejectionReason
.UnrecognizedHTTPVersion => HttpVersionNotSupportedResponsePrefix,
1118
RequestRejectionReason
.RequestHeadersTimeout => RequestTimeoutResponsePrefix,
1119
RequestRejectionReason
.RequestBodyTimeout => RequestTimeoutResponsePrefix,
1120
RequestRejectionReason
.HeadersExceedMaxTotalSize => HeadersTooLargeResponsePrefix,
1121
RequestRejectionReason
.TooManyHeaders => HeadersTooLargeResponsePrefix,
1122
RequestRejectionReason
.RequestLineTooLong => RequestLineTooLongResponsePrefix,
Internal\Http\Http1ContentLengthMessageBody.cs (6)
46
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTimeout);
85
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTimeout);
132
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTimeout);
250
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTooLarge, maxRequestBodySize.GetValueOrDefault().ToString(CultureInfo.InvariantCulture));
272
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.UnexpectedEndOfRequestContent);
277
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTimeout);
Internal\Http\Http1MessageBody.cs (4)
121
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTooLarge, maxRequestBodySize.ToString(CultureInfo.InvariantCulture));
166
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.FinalTransferCodingNotChunked, transferEncoding);
213
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.LengthRequiredHttp10, context.Method);
242
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.UnexpectedEndOfRequestContent);
Internal\Http\HttpParser.cs (22)
170
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, baseOffset, length + 1);
186
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, baseOffset, length + 1);
199
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, baseOffset, length);
227
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, baseOffset, length);
347
=> throw GetInvalidRequestException(
RequestRejectionReason
.InvalidRequestHeader, headerLine);
350
private BadHttpRequestException GetInvalidRequestException(
RequestRejectionReason
reason, ReadOnlySpan<byte> headerLine)
366
if (result.ErrorReason ==
RequestRejectionReason
.InvalidRequestHeadersNoCRLF)
511
return HttpParseResult.Error(
RequestRejectionReason
.UnrecognizedHTTPVersion, baseOffset + offset, versionLength);
529
var
reason = IsTlsHandshake(span)
530
?
RequestRejectionReason
.TlsOverHttpError
531
:
RequestRejectionReason
.InvalidRequestLine;
541
var
reason = IsTlsHandshake(requestLine)
542
?
RequestRejectionReason
.TlsOverHttpError
543
:
RequestRejectionReason
.InvalidRequestLine;
553
var
reason = IsTlsHandshake(fullLine)
554
?
RequestRejectionReason
.TlsOverHttpError
555
:
RequestRejectionReason
.InvalidRequestLine;
616
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeadersNoCRLF, headerLineStart, crIndex + 2);
621
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, headerLineStart, crIndex + 2);
642
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, headerLineStart, lfIndex + 1);
683
return HttpParseResult.Error(
RequestRejectionReason
.InvalidRequestHeader, headerLineStart, headerLineLength);
690
return HttpParseResult.Error(
RequestRejectionReason
.MalformedRequestInvalidHeaders);
Internal\Http\HttpProtocol.cs (2)
578
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.TooManyHeaders);
1423
RequestRejectionReason
.InvalidRequestTarget,
Internal\Http\HttpRequestHeaders.cs (5)
87
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidContentLength, value);
98
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MultipleContentLengths);
105
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidContentLength, value.GetRequestHeaderString(HeaderNames.ContentLength, EncodingSelector, checkForNewlineChars: false));
117
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MultipleContentLengths);
129
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidContentLength, value.GetRequestHeaderString(HeaderNames.ContentLength, EncodingSelector, checkForNewlineChars: false));
Internal\Http\IHttpParser.cs (5)
16
private readonly
RequestRejectionReason
_errorReason;
20
private HttpParseResult(ParseStatus status,
RequestRejectionReason
errorReason = default, int errorOffset = 0, int errorLength = 0)
35
public
RequestRejectionReason
ErrorReason => _errorReason;
50
public static HttpParseResult Error(
RequestRejectionReason
reason) => new(ParseStatus.Error, reason);
53
public static HttpParseResult Error(
RequestRejectionReason
reason, int offset, int length) => new(ParseStatus.Error, reason, offset, length);
Internal\Http\MessageBody.cs (1)
200
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTooLarge, maxRequestBodySize.ToString(CultureInfo.InvariantCulture));
Internal\Http2\Http2Connection.cs (2)
263
Log.ConnectionBadRequest(ConnectionId, KestrelBadHttpRequestException.GetException(
RequestRejectionReason
.RequestHeadersTimeout));
1673
catch (BadHttpRequestException bre) when (bre.Reason ==
RequestRejectionReason
.TooManyHeaders)
Internal\Http2\Http2MessageBody.cs (1)
40
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTooLarge, maxRequestBodySize.GetValueOrDefault().ToString(CultureInfo.InvariantCulture));
Internal\Http2\Http2Stream.cs (2)
222
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
228
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.TooManyHeaders);
Internal\Http3\Http3Connection.cs (1)
907
Log.ConnectionBadRequest(ConnectionId, KestrelBadHttpRequestException.GetException(
RequestRejectionReason
.RequestHeadersTimeout));
Internal\Http3\Http3MessageBody.cs (1)
31
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestBodyTooLarge, maxRequestBodySize.GetValueOrDefault().ToString(CultureInfo.InvariantCulture));
Internal\Http3\Http3Stream.cs (2)
1014
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
1020
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.TooManyHeaders);
Internal\Infrastructure\HttpUtilities.cs (1)
97
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidCharactersInHeaderName);
KestrelBadHttpRequestException.cs (38)
15
internal static void Throw(
RequestRejectionReason
reason)
21
internal static void Throw(
RequestRejectionReason
reason, HttpMethod method)
28
internal static BadHttpRequestException GetException(
RequestRejectionReason
reason)
33
case
RequestRejectionReason
.InvalidRequestHeadersNoCRLF:
36
case
RequestRejectionReason
.InvalidRequestLine:
39
case
RequestRejectionReason
.MalformedRequestInvalidHeaders:
42
case
RequestRejectionReason
.MultipleContentLengths:
45
case
RequestRejectionReason
.UnexpectedEndOfRequestContent:
48
case
RequestRejectionReason
.BadChunkSuffix:
51
case
RequestRejectionReason
.BadChunkSizeData:
54
case
RequestRejectionReason
.BadChunkExtension:
57
case
RequestRejectionReason
.ChunkedRequestIncomplete:
60
case
RequestRejectionReason
.InvalidCharactersInHeaderName:
63
case
RequestRejectionReason
.RequestLineTooLong:
66
case
RequestRejectionReason
.HeadersExceedMaxTotalSize:
69
case
RequestRejectionReason
.TooManyHeaders:
72
case
RequestRejectionReason
.RequestHeadersTimeout:
75
case
RequestRejectionReason
.RequestBodyTimeout:
78
case
RequestRejectionReason
.OptionsMethodRequired:
81
case
RequestRejectionReason
.ConnectMethodRequired:
84
case
RequestRejectionReason
.MissingHostHeader:
87
case
RequestRejectionReason
.MultipleHostHeaders:
90
case
RequestRejectionReason
.InvalidHostHeader:
93
case
RequestRejectionReason
.UnrecognizedHTTPVersion:
96
case
RequestRejectionReason
.InvalidRequestHeader:
108
internal static void Throw(
RequestRejectionReason
reason, string detail)
114
internal static void Throw(
RequestRejectionReason
reason, StringValues detail)
121
internal static BadHttpRequestException GetException(
RequestRejectionReason
reason, string detail)
126
case
RequestRejectionReason
.TlsOverHttpError:
129
case
RequestRejectionReason
.InvalidRequestLine:
132
case
RequestRejectionReason
.InvalidRequestTarget:
135
case
RequestRejectionReason
.InvalidRequestHeader:
138
case
RequestRejectionReason
.InvalidContentLength:
141
case
RequestRejectionReason
.UnrecognizedHTTPVersion:
144
case
RequestRejectionReason
.FinalTransferCodingNotChunked:
147
case
RequestRejectionReason
.LengthRequiredHttp10:
150
case
RequestRejectionReason
.InvalidHostHeader:
153
case
RequestRejectionReason
.RequestBodyTooLarge:
Microsoft.AspNetCore.Server.Kestrel.Core.Tests (18)
Http1\Http1ConnectionTests.cs (1)
59
Assert.Equal(
RequestRejectionReason
.MalformedRequestInvalidHeaders, exception.Reason);
HttpParserTests.cs (4)
593
Assert.Equal(
RequestRejectionReason
.TlsOverHttpError, badHttpRequestException.Reason);
822
Assert.Equal(
RequestRejectionReason
.UnrecognizedHTTPVersion, exception.Reason);
873
Assert.Equal(
RequestRejectionReason
.UnrecognizedHTTPVersion, result.ErrorReason);
937
Assert.Equal(
RequestRejectionReason
.InvalidRequestHeader, result.ErrorReason);
MessageBodyTests.cs (13)
781
ex.Reason ==
RequestRejectionReason
.RequestBodyTimeout);
1227
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex0.Reason);
1228
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex1.Reason);
1229
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex2.Reason);
1230
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex3.Reason);
1260
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex0.Reason);
1261
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex1.Reason);
1262
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex2.Reason);
1263
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex3.Reason);
1287
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex0.Reason);
1288
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex1.Reason);
1289
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex2.Reason);
1290
Assert.Equal(
RequestRejectionReason
.UnexpectedEndOfRequestContent, ex3.Reason);