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 
23 
24 #include <stddef.h>
25 #include <stdint.h>
26 
27 #include <grpc/slice.h>
28 
32 
33 typedef enum {
41 
49 };
50 /* Create a settings frame by diffing old & new, and updating old to be new */
52  const uint32_t* new_settings,
53  uint32_t force_mask, size_t count);
54 /* Create an ack settings frame */
56 
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