System\Net\Http\SocketsHttpHandler\Http2Connection.cs (39)
218FrameHeader.WriteTo(_outgoingBuffer.AvailableSpan, 2 * FrameHeader.SettingLength, FrameType.Settings, FrameFlags.None, streamId: 0);
234FrameHeader.WriteTo(_outgoingBuffer.AvailableSpan, FrameHeader.WindowUpdateLength, FrameType.WindowUpdate, FrameFlags.None, streamId: 0);
504if (frameHeader.Type != FrameType.Settings || frameHeader.AckFlag)
506if (frameHeader.Type == FrameType.GoAway)
583case FrameType.Headers:
587case FrameType.Data:
591case FrameType.Settings:
595case FrameType.Priority:
599case FrameType.Ping:
603case FrameType.WindowUpdate:
607case FrameType.RstStream:
611case FrameType.GoAway:
615case FrameType.AltSvc:
619case FrameType.PushPromise: // Should not happen, since we disable this in our initial SETTINGS
620case FrameType.Continuation: // Should only be received while processing headers in ProcessHeadersFrame
664Debug.Assert(frameHeader.Type == FrameType.Headers);
695if (frameHeader.Type != FrameType.Continuation ||
767Debug.Assert(frameHeader.Type == FrameType.AltSvc);
796Debug.Assert(frameHeader.Type == FrameType.Data);
825Debug.Assert(frameHeader.Type == FrameType.Settings);
982Debug.Assert(frameHeader.Type == FrameType.Priority);
996Debug.Assert(frameHeader.Type == FrameType.Ping);
1030Debug.Assert(frameHeader.Type == FrameType.WindowUpdate);
1067Debug.Assert(frameHeader.Type == FrameType.RstStream);
1133Debug.Assert(frameHeader.Type == FrameType.GoAway);
1315FrameHeader.WriteTo(writeBuffer.Span, 0, FrameType.Settings, FrameFlags.Ack, streamId: 0);
1339FrameHeader.WriteTo(span, FrameHeader.PingLength, FrameType.Ping, state.isAck ? FrameFlags.Ack : FrameFlags.None, streamId: 0);
1354FrameHeader.WriteTo(span, FrameHeader.RstStreamLength, FrameType.RstStream, FrameFlags.None, s.streamId);
1726FrameHeader.WriteTo(span, current.Length, FrameType.Headers, flags, s.http2Stream.StreamId);
1738FrameHeader.WriteTo(span, current.Length, FrameType.Continuation, flags, s.http2Stream.StreamId);
1797FrameHeader.WriteTo(writeBuffer.Span, s.current.Length, FrameType.Data, FrameFlags.None, s.streamId);
1817FrameHeader.WriteTo(writeBuffer.Span, 0, FrameType.Data, FrameFlags.EndStream, s.streamId);
1831FrameHeader.WriteTo(span, FrameHeader.WindowUpdateLength, FrameType.WindowUpdate, FrameFlags.None, s.streamId);
1977public readonly FrameType Type;
1991public FrameHeader(int payloadLength, FrameType type, FrameFlags flags, int streamId)
2013FrameType type = (FrameType)buffer[3];
2019public static void WriteTo(Span<byte> destination, int payloadLength, FrameType type, FrameFlags flags, int streamId)
2022Debug.Assert(type <= FrameType.Last);