|
@@ -5,6 +5,7 @@ using System;
|
|
|
using System.Collections.Generic;
|
|
using System.Collections.Generic;
|
|
|
using System.Diagnostics;
|
|
using System.Diagnostics;
|
|
|
using System.Buffers;
|
|
using System.Buffers;
|
|
|
|
|
+using System.Buffers.Binary;
|
|
|
using System.IO.Pipelines;
|
|
using System.IO.Pipelines;
|
|
|
using System.Numerics;
|
|
using System.Numerics;
|
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.CompilerServices;
|
|
@@ -7052,6 +7053,37 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
|
|
|
+ internal static unsafe ushort ReadUnalignedLittleEndian_ushort(ref byte source)
|
|
|
|
|
+ {
|
|
|
|
|
+ ushort result = Unsafe.ReadUnaligned<ushort>(ref source);
|
|
|
|
|
+ if (!BitConverter.IsLittleEndian)
|
|
|
|
|
+ {
|
|
|
|
|
+ result = BinaryPrimitives.ReverseEndianness(result);
|
|
|
|
|
+ }
|
|
|
|
|
+ return result;
|
|
|
|
|
+ }
|
|
|
|
|
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
|
|
|
+ internal static unsafe uint ReadUnalignedLittleEndian_uint(ref byte source)
|
|
|
|
|
+ {
|
|
|
|
|
+ uint result = Unsafe.ReadUnaligned<uint>(ref source);
|
|
|
|
|
+ if (!BitConverter.IsLittleEndian)
|
|
|
|
|
+ {
|
|
|
|
|
+ result = BinaryPrimitives.ReverseEndianness(result);
|
|
|
|
|
+ }
|
|
|
|
|
+ return result;
|
|
|
|
|
+ }
|
|
|
|
|
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
|
|
|
+ internal static unsafe ulong ReadUnalignedLittleEndian_ulong(ref byte source)
|
|
|
|
|
+ {
|
|
|
|
|
+ ulong result = Unsafe.ReadUnaligned<ulong>(ref source);
|
|
|
|
|
+ if (!BitConverter.IsLittleEndian)
|
|
|
|
|
+ {
|
|
|
|
|
+ result = BinaryPrimitives.ReverseEndianness(result);
|
|
|
|
|
+ }
|
|
|
|
|
+ return result;
|
|
|
|
|
+ }
|
|
|
[MethodImpl(MethodImplOptions.AggressiveOptimization)]
|
|
[MethodImpl(MethodImplOptions.AggressiveOptimization)]
|
|
|
public unsafe void Append(ReadOnlySpan<byte> name, ReadOnlySpan<byte> value, bool checkForNewlineChars)
|
|
public unsafe void Append(ReadOnlySpan<byte> name, ReadOnlySpan<byte> value, bool checkForNewlineChars)
|
|
|
{
|
|
{
|
|
@@ -7064,7 +7096,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
switch (name.Length)
|
|
switch (name.Length)
|
|
|
{
|
|
{
|
|
|
case 2:
|
|
case 2:
|
|
|
- if (((Unsafe.ReadUnaligned<ushort>(ref nameStart) & 0xdfdfu) == 0x4554u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ushort(ref nameStart) & 0xdfdfu) == 0x4554u))
|
|
|
{
|
|
{
|
|
|
flag = 0x4000000000L;
|
|
flag = 0x4000000000L;
|
|
|
values = ref _headers._TE;
|
|
values = ref _headers._TE;
|
|
@@ -7072,7 +7104,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 3:
|
|
case 3:
|
|
|
- if (((Unsafe.ReadUnaligned<ushort>(ref nameStart) & 0xdfdfu) == 0x4956u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)2) & 0xdfu) == 0x41u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ushort(ref nameStart) & 0xdfdfu) == 0x4956u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)2) & 0xdfu) == 0x41u))
|
|
|
{
|
|
{
|
|
|
flag = 0x200000000000L;
|
|
flag = 0x200000000000L;
|
|
|
values = ref _headers._Via;
|
|
values = ref _headers._Via;
|
|
@@ -7080,7 +7112,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 4:
|
|
case 4:
|
|
|
- var firstTerm4 = (Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu);
|
|
|
|
|
|
|
+ var firstTerm4 = (ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu);
|
|
|
if ((firstTerm4 == 0x54534f48u))
|
|
if ((firstTerm4 == 0x54534f48u))
|
|
|
{
|
|
{
|
|
|
flag = 0x4L;
|
|
flag = 0x4L;
|
|
@@ -7101,13 +7133,13 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 5:
|
|
case 5:
|
|
|
- if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfffu) == 0x5441503au) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)4) & 0xdfu) == 0x48u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfffu) == 0x5441503au) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)4) & 0xdfu) == 0x48u))
|
|
|
{
|
|
{
|
|
|
flag = 0x40L;
|
|
flag = 0x40L;
|
|
|
values = ref _headers._Path;
|
|
values = ref _headers._Path;
|
|
|
nameStr = HeaderNames.Path;
|
|
nameStr = HeaderNames.Path;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu) == 0x474e4152u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)4) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu) == 0x474e4152u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)4) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x800000000L;
|
|
flag = 0x800000000L;
|
|
|
values = ref _headers._Range;
|
|
values = ref _headers._Range;
|
|
@@ -7115,32 +7147,32 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 6:
|
|
case 6:
|
|
|
- var firstTerm6 = (Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu);
|
|
|
|
|
- if ((firstTerm6 == 0x45434341u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x5450u))
|
|
|
|
|
|
|
+ var firstTerm6 = (ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu);
|
|
|
|
|
+ if ((firstTerm6 == 0x45434341u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x5450u))
|
|
|
{
|
|
{
|
|
|
flag = 0x1L;
|
|
flag = 0x1L;
|
|
|
values = ref _headers._Accept;
|
|
values = ref _headers._Accept;
|
|
|
nameStr = HeaderNames.Accept;
|
|
nameStr = HeaderNames.Accept;
|
|
|
}
|
|
}
|
|
|
- else if ((firstTerm6 == 0x4b4f4f43u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4549u))
|
|
|
|
|
|
|
+ else if ((firstTerm6 == 0x4b4f4f43u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4549u))
|
|
|
{
|
|
{
|
|
|
flag = 0x20000L;
|
|
flag = 0x20000L;
|
|
|
values = ref _headers._Cookie;
|
|
values = ref _headers._Cookie;
|
|
|
nameStr = HeaderNames.Cookie;
|
|
nameStr = HeaderNames.Cookie;
|
|
|
}
|
|
}
|
|
|
- else if ((firstTerm6 == 0x45505845u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x5443u))
|
|
|
|
|
|
|
+ else if ((firstTerm6 == 0x45505845u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x5443u))
|
|
|
{
|
|
{
|
|
|
flag = 0x100000L;
|
|
flag = 0x100000L;
|
|
|
values = ref _headers._Expect;
|
|
values = ref _headers._Expect;
|
|
|
nameStr = HeaderNames.Expect;
|
|
nameStr = HeaderNames.Expect;
|
|
|
}
|
|
}
|
|
|
- else if ((firstTerm6 == 0x4749524fu) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u))
|
|
|
|
|
|
|
+ else if ((firstTerm6 == 0x4749524fu) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u))
|
|
|
{
|
|
{
|
|
|
flag = 0x100000000L;
|
|
flag = 0x100000000L;
|
|
|
values = ref _headers._Origin;
|
|
values = ref _headers._Origin;
|
|
|
nameStr = HeaderNames.Origin;
|
|
nameStr = HeaderNames.Origin;
|
|
|
}
|
|
}
|
|
|
- else if ((firstTerm6 == 0x47415250u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x414du))
|
|
|
|
|
|
|
+ else if ((firstTerm6 == 0x47415250u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x414du))
|
|
|
{
|
|
{
|
|
|
flag = 0x200000000L;
|
|
flag = 0x200000000L;
|
|
|
values = ref _headers._Pragma;
|
|
values = ref _headers._Pragma;
|
|
@@ -7148,37 +7180,37 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 7:
|
|
case 7:
|
|
|
- if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfffu) == 0x54454d3au) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4f48u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x44u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfffu) == 0x54454d3au) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4f48u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x44u))
|
|
|
{
|
|
{
|
|
|
flag = 0x20L;
|
|
flag = 0x20L;
|
|
|
values = ref _headers._Method;
|
|
values = ref _headers._Method;
|
|
|
nameStr = HeaderNames.Method;
|
|
nameStr = HeaderNames.Method;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfffu) == 0x4843533au) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4d45u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfffu) == 0x4843533au) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4d45u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x80L;
|
|
flag = 0x80L;
|
|
|
values = ref _headers._Scheme;
|
|
values = ref _headers._Scheme;
|
|
|
nameStr = HeaderNames.Scheme;
|
|
nameStr = HeaderNames.Scheme;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu) == 0x47474142u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4741u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu) == 0x47474142u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4741u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x4000L;
|
|
flag = 0x4000L;
|
|
|
values = ref _headers._Baggage;
|
|
values = ref _headers._Baggage;
|
|
|
nameStr = HeaderNames.Baggage;
|
|
nameStr = HeaderNames.Baggage;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu) == 0x45464552u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4552u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x52u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu) == 0x45464552u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4552u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x52u))
|
|
|
{
|
|
{
|
|
|
flag = 0x1000000000L;
|
|
flag = 0x1000000000L;
|
|
|
values = ref _headers._Referer;
|
|
values = ref _headers._Referer;
|
|
|
nameStr = HeaderNames.Referer;
|
|
nameStr = HeaderNames.Referer;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu) == 0x52475055u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4441u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu) == 0x52475055u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4441u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x80000000000L;
|
|
flag = 0x80000000000L;
|
|
|
values = ref _headers._Upgrade;
|
|
values = ref _headers._Upgrade;
|
|
|
nameStr = HeaderNames.Upgrade;
|
|
nameStr = HeaderNames.Upgrade;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<uint>(ref nameStart) & 0xdfdfdfdfu) == 0x4e524157u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x47u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_uint(ref nameStart) & 0xdfdfdfdfu) == 0x4e524157u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)6) & 0xdfu) == 0x47u))
|
|
|
{
|
|
{
|
|
|
flag = 0x400000000000L;
|
|
flag = 0x400000000000L;
|
|
|
values = ref _headers._Warning;
|
|
values = ref _headers._Warning;
|
|
@@ -7186,7 +7218,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 8:
|
|
case 8:
|
|
|
- var firstTerm8 = (Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfffdfdfuL);
|
|
|
|
|
|
|
+ var firstTerm8 = (ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfffdfdfuL);
|
|
|
if ((firstTerm8 == 0x484354414d2d4649uL))
|
|
if ((firstTerm8 == 0x484354414d2d4649uL))
|
|
|
{
|
|
{
|
|
|
flag = 0x2000000L;
|
|
flag = 0x2000000L;
|
|
@@ -7201,7 +7233,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 9:
|
|
case 9:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x54414c534e415254uL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)8) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x54414c534e415254uL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)8) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x40000000000L;
|
|
flag = 0x40000000000L;
|
|
|
values = ref _headers._Translate;
|
|
values = ref _headers._Translate;
|
|
@@ -7209,37 +7241,37 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 10:
|
|
case 10:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x495443454e4e4f43uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4e4fu))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x495443454e4e4f43uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4e4fu))
|
|
|
{
|
|
{
|
|
|
flag = 0x2L;
|
|
flag = 0x2L;
|
|
|
values = ref _headers._Connection;
|
|
values = ref _headers._Connection;
|
|
|
nameStr = HeaderNames.Connection;
|
|
nameStr = HeaderNames.Connection;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4547412d52455355uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x544eu))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4547412d52455355uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x544eu))
|
|
|
{
|
|
{
|
|
|
flag = 0x8L;
|
|
flag = 0x8L;
|
|
|
values = ref _headers._UserAgent;
|
|
values = ref _headers._UserAgent;
|
|
|
nameStr = HeaderNames.UserAgent;
|
|
nameStr = HeaderNames.UserAgent;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfffuL) == 0x49524f485455413auL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x5954u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfffuL) == 0x49524f485455413auL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x5954u))
|
|
|
{
|
|
{
|
|
|
flag = 0x10L;
|
|
flag = 0x10L;
|
|
|
values = ref _headers._Authority;
|
|
values = ref _headers._Authority;
|
|
|
nameStr = HeaderNames.Authority;
|
|
nameStr = HeaderNames.Authority;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x494c412d5045454buL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4556u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x494c412d5045454buL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4556u))
|
|
|
{
|
|
{
|
|
|
flag = 0x40000000L;
|
|
flag = 0x40000000L;
|
|
|
values = ref _headers._KeepAlive;
|
|
values = ref _headers._KeepAlive;
|
|
|
nameStr = HeaderNames.KeepAlive;
|
|
nameStr = HeaderNames.KeepAlive;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d54534555514552uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4449u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d54534555514552uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4449u))
|
|
|
{
|
|
{
|
|
|
flag = 0x2000000000L;
|
|
flag = 0x2000000000L;
|
|
|
values = ref _headers._RequestId;
|
|
values = ref _headers._RequestId;
|
|
|
nameStr = HeaderNames.RequestId;
|
|
nameStr = HeaderNames.RequestId;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x4154534543415254uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4554u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x4154534543415254uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4554u))
|
|
|
{
|
|
{
|
|
|
flag = 0x10000000000L;
|
|
flag = 0x10000000000L;
|
|
|
values = ref _headers._TraceState;
|
|
values = ref _headers._TraceState;
|
|
@@ -7247,7 +7279,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 11:
|
|
case 11:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x5241504543415254uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4e45u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)10) & 0xdfu) == 0x54u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x5241504543415254uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(ushort)))) & 0xdfdfu) == 0x4e45u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)10) & 0xdfu) == 0x54u))
|
|
|
{
|
|
{
|
|
|
flag = 0x8000000000L;
|
|
flag = 0x8000000000L;
|
|
|
values = ref _headers._TraceParent;
|
|
values = ref _headers._TraceParent;
|
|
@@ -7255,19 +7287,19 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 12:
|
|
case 12:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d544e45544e4f43uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x45505954u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d544e45544e4f43uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x45505954u))
|
|
|
{
|
|
{
|
|
|
flag = 0x10000L;
|
|
flag = 0x10000L;
|
|
|
values = ref _headers._ContentType;
|
|
values = ref _headers._ContentType;
|
|
|
nameStr = HeaderNames.ContentType;
|
|
nameStr = HeaderNames.ContentType;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4d49542d43505247uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x54554f45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4d49542d43505247uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x54554f45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x1000000L;
|
|
flag = 0x1000000L;
|
|
|
values = ref _headers._GrpcTimeout;
|
|
values = ref _headers._GrpcTimeout;
|
|
|
nameStr = HeaderNames.GrpcTimeout;
|
|
nameStr = HeaderNames.GrpcTimeout;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfffdfdfdfuL) == 0x57524f462d58414duL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x53445241u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfffdfdfdfuL) == 0x57524f462d58414duL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x53445241u))
|
|
|
{
|
|
{
|
|
|
flag = 0x80000000L;
|
|
flag = 0x80000000L;
|
|
|
values = ref _headers._MaxForwards;
|
|
values = ref _headers._MaxForwards;
|
|
@@ -7275,25 +7307,25 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 13:
|
|
case 13:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x5a49524f48545541uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f495441u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x4eu))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x5a49524f48545541uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f495441u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x4eu))
|
|
|
{
|
|
{
|
|
|
flag = 0x2000L;
|
|
flag = 0x2000L;
|
|
|
values = ref _headers._Authorization;
|
|
values = ref _headers._Authorization;
|
|
|
nameStr = HeaderNames.Authorization;
|
|
nameStr = HeaderNames.Authorization;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfffdfdfdfdfdfuL) == 0x4f432d4548434143uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f52544eu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x4cu))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfffdfdfdfdfdfuL) == 0x4f432d4548434143uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f52544eu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x4cu))
|
|
|
{
|
|
{
|
|
|
flag = 0x8000L;
|
|
flag = 0x8000L;
|
|
|
values = ref _headers._CacheControl;
|
|
values = ref _headers._CacheControl;
|
|
|
nameStr = HeaderNames.CacheControl;
|
|
nameStr = HeaderNames.CacheControl;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x434e452d43505247uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4e49444fu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x47u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x434e452d43505247uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4e49444fu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x47u))
|
|
|
{
|
|
{
|
|
|
flag = 0x800000L;
|
|
flag = 0x800000L;
|
|
|
values = ref _headers._GrpcEncoding;
|
|
values = ref _headers._GrpcEncoding;
|
|
|
nameStr = HeaderNames.GrpcEncoding;
|
|
nameStr = HeaderNames.GrpcEncoding;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xffdfdfdfdfffdfdfuL) == 0x2d454e4f4e2d4649uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4354414du) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x48u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xffdfdfdfdfffdfdfuL) == 0x2d454e4f4e2d4649uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4354414du) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)12) & 0xdfu) == 0x48u))
|
|
|
{
|
|
{
|
|
|
flag = 0x8000000L;
|
|
flag = 0x8000000L;
|
|
|
values = ref _headers._IfNoneMatch;
|
|
values = ref _headers._IfNoneMatch;
|
|
@@ -7301,13 +7333,13 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 14:
|
|
case 14:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d545045434341uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x53524148u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x5445u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d545045434341uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x53524148u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x5445u))
|
|
|
{
|
|
{
|
|
|
flag = 0x100L;
|
|
flag = 0x100L;
|
|
|
values = ref _headers._AcceptCharset;
|
|
values = ref _headers._AcceptCharset;
|
|
|
nameStr = HeaderNames.AcceptCharset;
|
|
nameStr = HeaderNames.AcceptCharset;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d544e45544e4f43uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x474e454cu) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4854u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d544e45544e4f43uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x474e454cu) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4854u))
|
|
|
{
|
|
{
|
|
|
var customEncoding = ReferenceEquals(EncodingSelector, KestrelServerOptions.DefaultHeaderEncodingSelector)
|
|
var customEncoding = ReferenceEquals(EncodingSelector, KestrelServerOptions.DefaultHeaderEncodingSelector)
|
|
|
? null : EncodingSelector(HeaderNames.ContentLength);
|
|
? null : EncodingSelector(HeaderNames.ContentLength);
|
|
@@ -7323,14 +7355,14 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 15:
|
|
case 15:
|
|
|
- var firstTerm15 = (Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfffdfdfdfdfdfdfuL);
|
|
|
|
|
- if ((firstTerm15 == 0x452d545045434341uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x444f434eu) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)14) & 0xdfu) == 0x47u))
|
|
|
|
|
|
|
+ var firstTerm15 = (ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfffdfdfdfdfdfdfuL);
|
|
|
|
|
+ if ((firstTerm15 == 0x452d545045434341uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x444f434eu) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4e49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)14) & 0xdfu) == 0x47u))
|
|
|
{
|
|
{
|
|
|
flag = 0x200L;
|
|
flag = 0x200L;
|
|
|
values = ref _headers._AcceptEncoding;
|
|
values = ref _headers._AcceptEncoding;
|
|
|
nameStr = HeaderNames.AcceptEncoding;
|
|
nameStr = HeaderNames.AcceptEncoding;
|
|
|
}
|
|
}
|
|
|
- else if ((firstTerm15 == 0x4c2d545045434341uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x55474e41u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4741u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)14) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if ((firstTerm15 == 0x4c2d545045434341uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x55474e41u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(ushort)))) & 0xdfdfu) == 0x4741u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)14) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x400L;
|
|
flag = 0x400L;
|
|
|
values = ref _headers._AcceptLanguage;
|
|
values = ref _headers._AcceptLanguage;
|
|
@@ -7338,13 +7370,13 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 17:
|
|
case 17:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfffdfdfuL) == 0x4649444f4d2d4649uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x434e49532d444549uL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)16) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfffdfdfuL) == 0x4649444f4d2d4649uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x434e49532d444549uL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)16) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x4000000L;
|
|
flag = 0x4000000L;
|
|
|
values = ref _headers._IfModifiedSince;
|
|
values = ref _headers._IfModifiedSince;
|
|
|
nameStr = HeaderNames.IfModifiedSince;
|
|
nameStr = HeaderNames.IfModifiedSince;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x524546534e415254uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfffuL) == 0x4e49444f434e452duL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)16) & 0xdfu) == 0x47u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x524546534e415254uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfffuL) == 0x4e49444f434e452duL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)16) & 0xdfu) == 0x47u))
|
|
|
{
|
|
{
|
|
|
flag = 0x20000000000L;
|
|
flag = 0x20000000000L;
|
|
|
values = ref _headers._TransferEncoding;
|
|
values = ref _headers._TransferEncoding;
|
|
@@ -7352,19 +7384,19 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 19:
|
|
case 19:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x54414c4552524f43uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x544e4f432d4e4f49uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x5845u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x54u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfdfdfdfuL) == 0x54414c4552524f43uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x544e4f432d4e4f49uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x5845u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x54u))
|
|
|
{
|
|
{
|
|
|
flag = 0x40000L;
|
|
flag = 0x40000L;
|
|
|
values = ref _headers._CorrelationContext;
|
|
values = ref _headers._CorrelationContext;
|
|
|
nameStr = HeaderNames.CorrelationContext;
|
|
nameStr = HeaderNames.CorrelationContext;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfdfdfffdfdfuL) == 0x444f4d4e552d4649uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfffdfdfdfdfdfuL) == 0x49532d4445494649uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x434eu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x45u))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfdfdfffdfdfuL) == 0x444f4d4e552d4649uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfffdfdfdfdfdfuL) == 0x49532d4445494649uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x434eu) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x45u))
|
|
|
{
|
|
{
|
|
|
flag = 0x20000000L;
|
|
flag = 0x20000000L;
|
|
|
values = ref _headers._IfUnmodifiedSince;
|
|
values = ref _headers._IfUnmodifiedSince;
|
|
|
nameStr = HeaderNames.IfUnmodifiedSince;
|
|
nameStr = HeaderNames.IfUnmodifiedSince;
|
|
|
}
|
|
}
|
|
|
- else if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfffdfdfdfdfdfuL) == 0x55412d59584f5250uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfdfuL) == 0x54415a49524f4854uL) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x4f49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x4eu))
|
|
|
|
|
|
|
+ else if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfffdfdfdfdfdfuL) == 0x55412d59584f5250uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfdfuL) == 0x54415a49524f4854uL) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(8 * sizeof(ushort)))) & 0xdfdfu) == 0x4f49u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)18) & 0xdfu) == 0x4eu))
|
|
|
{
|
|
{
|
|
|
flag = 0x400000000L;
|
|
flag = 0x400000000L;
|
|
|
values = ref _headers._ProxyAuthorization;
|
|
values = ref _headers._ProxyAuthorization;
|
|
@@ -7372,7 +7404,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 20:
|
|
case 20:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4343412d43505247uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x4f434e452d545045uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x474e4944u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfdfdfffdfdfdfdfuL) == 0x4343412d43505247uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfffdfdfdfuL) == 0x4f434e452d545045uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(4 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x474e4944u))
|
|
|
{
|
|
{
|
|
|
flag = 0x400000L;
|
|
flag = 0x400000L;
|
|
|
values = ref _headers._GrpcAcceptEncoding;
|
|
values = ref _headers._GrpcAcceptEncoding;
|
|
@@ -7380,7 +7412,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 25:
|
|
case 25:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d45444152475055uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfdfuL) == 0x4552554345534e49uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfdfdfdfdfdfdfffuL) == 0x545345555145522duL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)24) & 0xdfu) == 0x53u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xffdfdfdfdfdfdfdfuL) == 0x2d45444152475055uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfdfdfdfdfdfdfdfuL) == 0x4552554345534e49uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfdfdfdfdfdfdfffuL) == 0x545345555145522duL) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)24) & 0xdfu) == 0x53u))
|
|
|
{
|
|
{
|
|
|
flag = 0x100000000000L;
|
|
flag = 0x100000000000L;
|
|
|
values = ref _headers._UpgradeInsecureRequests;
|
|
values = ref _headers._UpgradeInsecureRequests;
|
|
@@ -7388,7 +7420,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 29:
|
|
case 29:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d535345434341uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfffdfdfdfdfdfdfuL) == 0x522d4c4f52544e4fuL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfffdfdfdfdfdfdfuL) == 0x4d2d545345555145uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f485445u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)28) & 0xdfu) == 0x44u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d535345434341uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfffdfdfdfdfdfdfuL) == 0x522d4c4f52544e4fuL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfffdfdfdfdfdfdfuL) == 0x4d2d545345555145uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x4f485445u) && ((Unsafe.AddByteOffset(ref nameStart, (IntPtr)28) & 0xdfu) == 0x44u))
|
|
|
{
|
|
{
|
|
|
flag = 0x1000L;
|
|
flag = 0x1000L;
|
|
|
values = ref _headers._AccessControlRequestMethod;
|
|
values = ref _headers._AccessControlRequestMethod;
|
|
@@ -7396,7 +7428,7 @@ namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http
|
|
|
}
|
|
}
|
|
|
break;
|
|
break;
|
|
|
case 30:
|
|
case 30:
|
|
|
- if (((Unsafe.ReadUnaligned<ulong>(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d535345434341uL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfffdfdfdfdfdfdfuL) == 0x522d4c4f52544e4fuL) && ((Unsafe.ReadUnaligned<ulong>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfffdfdfdfdfdfdfuL) == 0x482d545345555145uL) && ((Unsafe.ReadUnaligned<uint>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x45444145u) && ((Unsafe.ReadUnaligned<ushort>(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(14 * sizeof(ushort)))) & 0xdfdfu) == 0x5352u))
|
|
|
|
|
|
|
+ if (((ReadUnalignedLittleEndian_ulong(ref nameStart) & 0xdfffdfdfdfdfdfdfuL) == 0x432d535345434341uL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)sizeof(ulong))) & 0xdfffdfdfdfdfdfdfuL) == 0x522d4c4f52544e4fuL) && ((ReadUnalignedLittleEndian_ulong(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(2 * sizeof(ulong)))) & 0xdfffdfdfdfdfdfdfuL) == 0x482d545345555145uL) && ((ReadUnalignedLittleEndian_uint(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(6 * sizeof(uint)))) & 0xdfdfdfdfu) == 0x45444145u) && ((ReadUnalignedLittleEndian_ushort(ref Unsafe.AddByteOffset(ref nameStart, (IntPtr)(14 * sizeof(ushort)))) & 0xdfdfu) == 0x5352u))
|
|
|
{
|
|
{
|
|
|
flag = 0x800L;
|
|
flag = 0x800L;
|
|
|
values = ref _headers._AccessControlRequestHeaders;
|
|
values = ref _headers._AccessControlRequestHeaders;
|