/
Http2Frame.GoAway.cs
31 lines (28 loc) · 1.26 KB
/
Http2Frame.GoAway.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http2
{
/* https://tools.ietf.org/html/rfc7540#section-6.8
+-+-------------------------------------------------------------+
|R| Last-Stream-ID (31) |
+-+-------------------------------------------------------------+
| Error Code (32) |
+---------------------------------------------------------------+
| Additional Debug Data (*) |
+---------------------------------------------------------------+
*/
internal partial class Http2Frame
{
public int GoAwayLastStreamId { get; set; }
public Http2ErrorCode GoAwayErrorCode { get; set; }
public void PrepareGoAway(int lastStreamId, Http2ErrorCode errorCode)
{
PayloadLength = 8;
Type = Http2FrameType.GOAWAY;
Flags = 0;
StreamId = 0;
GoAwayLastStreamId = lastStreamId;
GoAwayErrorCode = errorCode;
}
}
}