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)
209
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.RequestLineTooLong);
252
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
343
return HttpParseResult.Error(
RequestRejectionReason
.RequestLineTooLong);
383
return HttpParseResult.Error(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
569
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.ConnectMethodRequired);
613
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.OptionsMethodRequired);
713
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MissingHostHeader);
717
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.MultipleHostHeaders);
727
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
738
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
771
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
780
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.InvalidHostHeader, hostText);
877
HandleBadRequest(result.Buffer,
RequestRejectionReason
.InvalidRequestLine);
881
HandleBadRequest(result.Buffer,
RequestRejectionReason
.MalformedRequestInvalidHeaders);
897
HandleBadRequest(result.Buffer,
RequestRejectionReason
.RequestHeadersTimeout);
922
case
RequestRejectionReason
.UnrecognizedHTTPVersion:
924
case
RequestRejectionReason
.InvalidRequestLine:
925
case
RequestRejectionReason
.RequestLineTooLong:
926
case
RequestRejectionReason
.InvalidRequestTarget:
928
case
RequestRejectionReason
.InvalidRequestHeadersNoCRLF:
929
case
RequestRejectionReason
.InvalidRequestHeader:
930
case
RequestRejectionReason
.InvalidContentLength:
931
case
RequestRejectionReason
.MultipleContentLengths:
932
case
RequestRejectionReason
.MalformedRequestInvalidHeaders:
933
case
RequestRejectionReason
.InvalidCharactersInHeaderName:
934
case
RequestRejectionReason
.LengthRequiredHttp10:
935
case
RequestRejectionReason
.OptionsMethodRequired:
936
case
RequestRejectionReason
.ConnectMethodRequired:
937
case
RequestRejectionReason
.MissingHostHeader:
938
case
RequestRejectionReason
.MultipleHostHeaders:
939
case
RequestRejectionReason
.InvalidHostHeader:
941
case
RequestRejectionReason
.HeadersExceedMaxTotalSize:
943
case
RequestRejectionReason
.TooManyHeaders:
945
case
RequestRejectionReason
.TlsOverHttpError:
947
case
RequestRejectionReason
.UnexpectedEndOfRequestContent:
969
private void HandleBadRequest(ReadOnlySequence<byte> requestData,
RequestRejectionReason
reason)
983
if (parseResult.ErrorReason ==
RequestRejectionReason
.InvalidRequestHeadersNoCRLF)
1014
if (ex.Reason ==
RequestRejectionReason
.UnrecognizedHTTPVersion)
1088
RequestRejectionReason
.UnrecognizedHTTPVersion => HttpVersionNotSupportedResponsePrefix,
1089
RequestRejectionReason
.RequestHeadersTimeout => RequestTimeoutResponsePrefix,
1090
RequestRejectionReason
.RequestBodyTimeout => RequestTimeoutResponsePrefix,
1091
RequestRejectionReason
.HeadersExceedMaxTotalSize => HeadersTooLargeResponsePrefix,
1092
RequestRejectionReason
.TooManyHeaders => HeadersTooLargeResponsePrefix,
1093
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)
560
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.TooManyHeaders);
1405
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));
1647
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)
901
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)
1010
KestrelBadHttpRequestException.Throw(
RequestRejectionReason
.HeadersExceedMaxTotalSize);
1016
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);