4 instantiations of HttpParseResult
Microsoft.AspNetCore.Server.Kestrel.Core (4)
Internal\Http\IHttpParser.cs (4)
44public static HttpParseResult Incomplete => new(ParseStatus.Incomplete); 47public static HttpParseResult Complete => new(ParseStatus.Complete); 50public static HttpParseResult Error(RequestRejectionReason reason) => new(ParseStatus.Error, reason); 53public static HttpParseResult Error(RequestRejectionReason reason, int offset, int length) => new(ParseStatus.Error, reason, offset, length);
67 references to HttpParseResult
Microsoft.AspNetCore.Server.Kestrel.Core (67)
Internal\Http\Http1Connection.cs (21)
275private HttpParseResult TryParseRequestCore(ref SequenceReader<byte> reader) 289return HttpParseResult.Incomplete; 297var startLineResult = TryTakeStartLineCore(ref reader); 307return HttpParseResult.Incomplete; 310var headersResult = TryTakeMessageHeadersCore(ref reader, trailers: false); 318return HttpParseResult.Complete; 320return HttpParseResult.Incomplete; 323return HttpParseResult.Incomplete; 326private HttpParseResult TryTakeStartLineCore(ref SequenceReader<byte> reader) 335HttpParseResult TryTrimAndTakeStartLineCore(ref SequenceReader<byte> reader) 340var result = _parser.TryParseRequestLine(new Http1ParsingHandler(this), ref trimmedReader); 347return HttpParseResult.Error(RequestRejectionReason.RequestLineTooLong); 351return HttpParseResult.Complete; 355private HttpParseResult TryTakeMessageHeadersCore(ref SequenceReader<byte> reader, bool trailers) 363var result = _parser.TryParseHeaders(new Http1ParsingHandler(this, trailers), ref reader); 373HttpParseResult TryTrimAndTakeMessageHeadersCore(ref SequenceReader<byte> reader, bool trailers) 378var result = _parser.TryParseHeaders(new Http1ParsingHandler(this, trailers), ref trimmedReader); 387return HttpParseResult.Error(RequestRejectionReason.HeadersExceedMaxTotalSize); 392return HttpParseResult.Complete; 886HttpParseResult parseResult; 1035private BadHttpRequestException CreateBadRequestException(HttpParseResult parseResult, ReadOnlySequence<byte> buffer)
Internal\Http\HttpParser.cs (40)
81var result = TryParseRequestLine(handler, ref reader); 95var result = TryParseHeaders(handler, ref reader); 104HttpParseResult IHttpParser<TRequestHandler>.TryParseRequestLine(TRequestHandler handler, ref SequenceReader<byte> reader) 107HttpParseResult IHttpParser<TRequestHandler>.TryParseHeaders(TRequestHandler handler, ref SequenceReader<byte> reader) 129private HttpParseResult TryParseMultiSpanHeader(TRequestHandler handler, ref SequenceReader<byte> reader, out int headerLength) 145return HttpParseResult.Incomplete; 160return HttpParseResult.Incomplete; 169return HttpParseResult.Incomplete; 179return HttpParseResult.Incomplete; 187return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, baseOffset, length + 1); 204return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, baseOffset, length + 1); 218return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, baseOffset, length); 246return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, baseOffset, length); 250return HttpParseResult.Complete; 380private void ThrowParseError(HttpParseResult result, ReadOnlySequence<byte> buffer) 406internal HttpParseResult TryParseRequestLine(TRequestHandler handler, ref SequenceReader<byte> reader) 416return HttpParseResult.Incomplete; 433var result = TryGetUnknownMethodLength(requestLine, baseOffset, out methodEnd); 539return HttpParseResult.Error(RequestRejectionReason.UnrecognizedHTTPVersion, baseOffset + offset, versionLength); 547return HttpParseResult.Complete; 550private static HttpParseResult TryGetUnknownMethodLength(ReadOnlySpan<byte> span, int baseOffset, out int methodEnd) 560return HttpParseResult.Error(reason, baseOffset, span.Length); 564return HttpParseResult.Complete; 567private static HttpParseResult GetRequestLineError(ReadOnlySpan<byte> requestLine, int baseOffset) 572return HttpParseResult.Error(reason, baseOffset, requestLine.Length); 575private static HttpParseResult GetRequestLineError(ReadOnlySpan<byte> requestLine, ref SequenceReader<byte> reader, int baseOffset) 584return HttpParseResult.Error(reason, baseOffset, fullLine.Length); 590internal HttpParseResult TryParseHeaders(TRequestHandler handler, ref SequenceReader<byte> reader) 602return HttpParseResult.Complete; 639return HttpParseResult.Incomplete; 644return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeadersNoCRLF, headerLineStart, crIndex + 2); 649return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, headerLineStart, crIndex + 2); 660return HttpParseResult.Complete; 671return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, headerLineStart, lfIndex + 1); 682return HttpParseResult.Complete; 689var multiSpanResult = TryParseMultiSpanHeader(handler, ref reader, out var length); 696return HttpParseResult.Incomplete; 714return HttpParseResult.Error(RequestRejectionReason.InvalidRequestHeader, headerLineStart, headerLineLength); 721return HttpParseResult.Error(RequestRejectionReason.MalformedRequestInvalidHeaders); 725return HttpParseResult.Incomplete;
Internal\Http\IHttpParser.cs (6)
44public static HttpParseResult Incomplete => new(ParseStatus.Incomplete); 47public static HttpParseResult Complete => new(ParseStatus.Complete); 50public static HttpParseResult Error(RequestRejectionReason reason) => new(ParseStatus.Error, reason); 53public static HttpParseResult Error(RequestRejectionReason reason, int offset, int length) => new(ParseStatus.Error, reason, offset, length); 62HttpParseResult TryParseRequestLine(TRequestHandler handler, ref SequenceReader<byte> reader); 64HttpParseResult TryParseHeaders(TRequestHandler handler, ref SequenceReader<byte> reader);