System\Net\Http\SocketsHttpHandler\Http2Connection.cs (39)
208FrameHeader.WriteTo(_outgoingBuffer.AvailableSpan, 2 * FrameHeader.SettingLength, FrameType.Settings, FrameFlags.None, streamId: 0);
224FrameHeader.WriteTo(_outgoingBuffer.AvailableSpan, FrameHeader.WindowUpdateLength, FrameType.WindowUpdate, FrameFlags.None, streamId: 0);
491if (frameHeader.Type != FrameType.Settings || frameHeader.AckFlag)
493if (frameHeader.Type == FrameType.GoAway)
570case FrameType.Headers:
574case FrameType.Data:
578case FrameType.Settings:
582case FrameType.Priority:
586case FrameType.Ping:
590case FrameType.WindowUpdate:
594case FrameType.RstStream:
598case FrameType.GoAway:
602case FrameType.AltSvc:
606case FrameType.PushPromise: // Should not happen, since we disable this in our initial SETTINGS
607case FrameType.Continuation: // Should only be received while processing headers in ProcessHeadersFrame
651Debug.Assert(frameHeader.Type == FrameType.Headers);
682if (frameHeader.Type != FrameType.Continuation ||
754Debug.Assert(frameHeader.Type == FrameType.AltSvc);
783Debug.Assert(frameHeader.Type == FrameType.Data);
812Debug.Assert(frameHeader.Type == FrameType.Settings);
968Debug.Assert(frameHeader.Type == FrameType.Priority);
982Debug.Assert(frameHeader.Type == FrameType.Ping);
1016Debug.Assert(frameHeader.Type == FrameType.WindowUpdate);
1053Debug.Assert(frameHeader.Type == FrameType.RstStream);
1119Debug.Assert(frameHeader.Type == FrameType.GoAway);
1295FrameHeader.WriteTo(writeBuffer.Span, 0, FrameType.Settings, FrameFlags.Ack, streamId: 0);
1310FrameHeader.WriteTo(span, FrameHeader.PingLength, FrameType.Ping, state.isAck ? FrameFlags.Ack : FrameFlags.None, streamId: 0);
1322FrameHeader.WriteTo(span, FrameHeader.RstStreamLength, FrameType.RstStream, FrameFlags.None, s.streamId);
1675FrameHeader.WriteTo(span, current.Length, FrameType.Headers, flags, s.http2Stream.StreamId);
1687FrameHeader.WriteTo(span, current.Length, FrameType.Continuation, flags, s.http2Stream.StreamId);
1746FrameHeader.WriteTo(writeBuffer.Span, s.current.Length, FrameType.Data, FrameFlags.None, s.streamId);
1766FrameHeader.WriteTo(writeBuffer.Span, 0, FrameType.Data, FrameFlags.EndStream, s.streamId);
1780FrameHeader.WriteTo(span, FrameHeader.WindowUpdateLength, FrameType.WindowUpdate, FrameFlags.None, s.streamId);
1902public readonly FrameType Type;
1916public FrameHeader(int payloadLength, FrameType type, FrameFlags flags, int streamId)
1938FrameType type = (FrameType)buffer[3];
1944public static void WriteTo(Span<byte> destination, int payloadLength, FrameType type, FrameFlags flags, int streamId)
1947Debug.Assert(type <= FrameType.Last);