Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ProcessAltSvcFrame()

void System.Net.Http.Http2Connection.ProcessAltSvcFrame ( FrameHeader frameHeader)
inlineprivate

Definition at line 2221 of file Http2Connection.cs.

2222 {
2223 if (System.Net.NetEventSource.Log.IsEnabled())
2224 {
2225 Trace($"{frameHeader}", "ProcessAltSvcFrame");
2226 }
2227 ReadOnlySpan<byte> readOnlySpan = _incomingBuffer.ActiveSpan.Slice(0, frameHeader.PayloadLength);
2229 {
2230 readOnlySpan = readOnlySpan.Slice(2);
2231 if ((frameHeader.StreamId != 0 && value == 0) || (frameHeader.StreamId == 0 && readOnlySpan.Length >= value && readOnlySpan.Slice(0, value).SequenceEqual(_pool.Http2AltSvcOriginUri)))
2232 {
2234 string @string = Encoding.ASCII.GetString(readOnlySpan);
2235 _pool.HandleAltSvc(new string[1] { @string }, null);
2236 }
2237 }
2238 _incomingBuffer.Discard(frameHeader.PayloadLength);
2239 }
static bool TryReadUInt16BigEndian(ReadOnlySpan< byte > source, out ushort value)
System.Net.ArrayBuffer _incomingBuffer
readonly HttpConnectionPool _pool
override void Trace(string message, [CallerMemberName] string memberName=null)
void HandleAltSvc(IEnumerable< string > altSvcHeaderValues, TimeSpan? responseAge)
static readonly System.Net.NetEventSource Log
static Encoding ASCII
Definition Encoding.cs:511

References System.Net.Http.Http2Connection._incomingBuffer, System.Net.Http.Http2Connection._pool, System.Text.Encoding.ASCII, System.Net.Http.HttpConnectionPool.HandleAltSvc(), System.Net.Http.HttpConnectionPool.Http2AltSvcOriginUri, System.Net.NetEventSource.Log, System.Net.Http.Http2Connection.Trace(), System.Buffers.Binary.BinaryPrimitives.TryReadUInt16BigEndian(), and System.value.

Referenced by System.Net.Http.Http2Connection.ProcessIncomingFramesAsync().