Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
z
Classes
Class List
Class Hierarchy
Class Members
All
:
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Properties
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
grpc
src
core
ext
transport
chttp2
transport
frame_settings.h
Go to the documentation of this file.
1
/*
2
*
3
* Copyright 2015 gRPC authors.
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
*/
18
19
#ifndef GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_FRAME_SETTINGS_H
20
#define GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_FRAME_SETTINGS_H
21
22
#include <
grpc/support/port_platform.h
>
23
24
#include <stddef.h>
25
#include <
stdint.h
>
26
27
#include <
grpc/slice.h
>
28
29
#include "
src/core/ext/transport/chttp2/transport/frame.h
"
30
#include "
src/core/ext/transport/chttp2/transport/http2_settings.h
"
31
#include "
src/core/lib/iomgr/error.h
"
32
33
typedef
enum
{
34
GRPC_CHTTP2_SPS_ID0
,
35
GRPC_CHTTP2_SPS_ID1
,
36
GRPC_CHTTP2_SPS_VAL0
,
37
GRPC_CHTTP2_SPS_VAL1
,
38
GRPC_CHTTP2_SPS_VAL2
,
39
GRPC_CHTTP2_SPS_VAL3
40
}
grpc_chttp2_settings_parse_state
;
41
42
struct
grpc_chttp2_settings_parser
{
43
grpc_chttp2_settings_parse_state
state
;
44
uint32_t
*
target_settings
;
45
uint8_t
is_ack
;
46
uint16_t
id
;
47
uint32_t
value
;
48
uint32_t
incoming_settings
[
GRPC_CHTTP2_NUM_SETTINGS
];
49
};
50
/* Create a settings frame by diffing old & new, and updating old to be new */
51
grpc_slice
grpc_chttp2_settings_create
(
uint32_t
* old_settings,
52
const
uint32_t
* new_settings,
53
uint32_t
force_mask,
size_t
count
);
54
/* Create an ack settings frame */
55
grpc_slice
grpc_chttp2_settings_ack_create
(
void
);
56
57
grpc_error_handle
grpc_chttp2_settings_parser_begin_frame
(
58
grpc_chttp2_settings_parser
*
parser
,
uint32_t
length
,
uint8_t
flags
,
59
uint32_t
*
settings
);
60
grpc_error_handle
grpc_chttp2_settings_parser_parse
(
void
*
parser
,
61
grpc_chttp2_transport
* t,
62
grpc_chttp2_stream
* s,
63
const
grpc_slice
&
slice
,
64
int
is_last);
65
66
#endif
/* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_FRAME_SETTINGS_H */
grpc_chttp2_settings_parser::incoming_settings
uint32_t incoming_settings[GRPC_CHTTP2_NUM_SETTINGS]
Definition:
frame_settings.h:48
slice.h
uint16_t
unsigned short uint16_t
Definition:
stdint-msvc2008.h:79
grpc_chttp2_settings_parser
Definition:
frame_settings.h:42
grpc_chttp2_settings_ack_create
grpc_slice grpc_chttp2_settings_ack_create(void)
Definition:
frame_settings.cc:88
uint8_t
unsigned char uint8_t
Definition:
stdint-msvc2008.h:78
grpc_chttp2_stream
Definition:
src/core/ext/transport/chttp2/transport/internal.h:456
uint32_t
unsigned int uint32_t
Definition:
stdint-msvc2008.h:80
http2_settings.h
asyncio_get_stats.parser
parser
Definition:
asyncio_get_stats.py:34
grpc_chttp2_settings_parser::state
grpc_chttp2_settings_parse_state state
Definition:
frame_settings.h:43
GRPC_CHTTP2_SPS_VAL1
@ GRPC_CHTTP2_SPS_VAL1
Definition:
frame_settings.h:37
slice
grpc_slice slice
Definition:
src/core/lib/surface/server.cc:467
GRPC_CHTTP2_SPS_VAL3
@ GRPC_CHTTP2_SPS_VAL3
Definition:
frame_settings.h:39
grpc_slice
Definition:
include/grpc/impl/codegen/slice.h:65
error.h
grpc_chttp2_settings_parser_parse
grpc_error_handle grpc_chttp2_settings_parser_parse(void *parser, grpc_chttp2_transport *t, grpc_chttp2_stream *s, const grpc_slice &slice, int is_last)
Definition:
frame_settings.cc:120
grpc_chttp2_settings_parser::target_settings
uint32_t * target_settings
Definition:
frame_settings.h:44
GRPC_CHTTP2_SPS_ID1
@ GRPC_CHTTP2_SPS_ID1
Definition:
frame_settings.h:35
stdint.h
grpc_chttp2_settings_parser::is_ack
uint8_t is_ack
Definition:
frame_settings.h:45
grpc_chttp2_settings_parser_begin_frame
grpc_error_handle grpc_chttp2_settings_parser_begin_frame(grpc_chttp2_settings_parser *parser, uint32_t length, uint8_t flags, uint32_t *settings)
Definition:
frame_settings.cc:94
frame.h
GRPC_CHTTP2_NUM_SETTINGS
#define GRPC_CHTTP2_NUM_SETTINGS
Definition:
http2_settings.h:38
grpc_chttp2_settings_parser::id
uint16_t id
Definition:
frame_settings.h:46
check_version.settings
settings
Definition:
check_version.py:61
absl::flags_internal
Definition:
abseil-cpp/absl/flags/commandlineflag.h:40
count
int * count
Definition:
bloaty/third_party/googletest/googlemock/test/gmock_stress_test.cc:96
grpc_chttp2_settings_create
grpc_slice grpc_chttp2_settings_create(uint32_t *old_settings, const uint32_t *new_settings, uint32_t force_mask, size_t count)
Definition:
frame_settings.cc:56
grpc_chttp2_settings_parse_state
grpc_chttp2_settings_parse_state
Definition:
frame_settings.h:33
grpc_chttp2_transport
Definition:
src/core/ext/transport/chttp2/transport/internal.h:238
GRPC_CHTTP2_SPS_VAL0
@ GRPC_CHTTP2_SPS_VAL0
Definition:
frame_settings.h:36
GRPC_CHTTP2_SPS_VAL2
@ GRPC_CHTTP2_SPS_VAL2
Definition:
frame_settings.h:38
grpc_chttp2_settings_parser::value
uint32_t value
Definition:
frame_settings.h:47
grpc_error
Definition:
error_internal.h:42
length
std::size_t length
Definition:
abseil-cpp/absl/time/internal/test_util.cc:57
GRPC_CHTTP2_SPS_ID0
@ GRPC_CHTTP2_SPS_ID0
Definition:
frame_settings.h:34
port_platform.h
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:59:22