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
lib
surface
validate_metadata.h
Go to the documentation of this file.
1
/*
2
*
3
* Copyright 2017 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_LIB_SURFACE_VALIDATE_METADATA_H
20
#define GRPC_CORE_LIB_SURFACE_VALIDATE_METADATA_H
21
22
#include <
grpc/support/port_platform.h
>
23
24
#include <
stdint.h
>
25
26
#include <cstring>
27
28
#include <
grpc/slice.h
>
29
#include <
grpc/support/log.h
>
30
31
#include "
src/core/lib/iomgr/error.h
"
32
33
grpc_error_handle
grpc_validate_header_key_is_legal
(
const
grpc_slice
&
slice
);
34
grpc_error_handle
grpc_validate_header_nonbin_value_is_legal
(
35
const
grpc_slice
&
slice
);
36
37
int
grpc_is_binary_header_internal
(
const
grpc_slice
&
slice
);
38
inline
int
grpc_key_is_binary_header
(
const
uint8_t
*
buf
,
size_t
length
) {
39
if
(
length
< 5)
return
0;
40
return
0 == memcmp(
buf
+
length
- 4,
"-bin"
, 4);
41
}
42
inline
int
grpc_is_refcounted_slice_binary_header
(
const
grpc_slice
&
slice
) {
43
GPR_DEBUG_ASSERT
(
slice
.
refcount
!=
nullptr
);
44
return
grpc_key_is_binary_header
(
slice
.
data
.
refcounted
.
bytes
,
45
slice
.
data
.
refcounted
.
length
);
46
}
47
48
#endif
/* GRPC_CORE_LIB_SURFACE_VALIDATE_METADATA_H */
grpc_is_refcounted_slice_binary_header
int grpc_is_refcounted_slice_binary_header(const grpc_slice &slice)
Definition:
validate_metadata.h:42
grpc_is_binary_header_internal
int grpc_is_binary_header_internal(const grpc_slice &slice)
Definition:
validate_metadata.cc:126
log.h
grpc_slice::refcount
struct grpc_slice_refcount * refcount
Definition:
include/grpc/impl/codegen/slice.h:66
grpc_validate_header_nonbin_value_is_legal
grpc_error_handle grpc_validate_header_nonbin_value_is_legal(const grpc_slice &slice)
Definition:
validate_metadata.cc:116
GPR_DEBUG_ASSERT
#define GPR_DEBUG_ASSERT(x)
Definition:
include/grpc/impl/codegen/log.h:103
slice.h
grpc_slice::grpc_slice_data::grpc_slice_refcounted::length
size_t length
Definition:
include/grpc/impl/codegen/slice.h:69
buf
voidpf void * buf
Definition:
bloaty/third_party/zlib/contrib/minizip/ioapi.h:136
uint8_t
unsigned char uint8_t
Definition:
stdint-msvc2008.h:78
slice
grpc_slice slice
Definition:
src/core/lib/surface/server.cc:467
grpc_slice
Definition:
include/grpc/impl/codegen/slice.h:65
grpc_validate_header_key_is_legal
grpc_error_handle grpc_validate_header_key_is_legal(const grpc_slice &slice)
Definition:
validate_metadata.cc:83
error.h
stdint.h
grpc_slice::grpc_slice_data::refcounted
struct grpc_slice::grpc_slice_data::grpc_slice_refcounted refcounted
grpc_slice::data
union grpc_slice::grpc_slice_data data
grpc_slice::grpc_slice_data::grpc_slice_refcounted::bytes
uint8_t * bytes
Definition:
include/grpc/impl/codegen/slice.h:70
grpc_error
Definition:
error_internal.h:42
length
std::size_t length
Definition:
abseil-cpp/absl/time/internal/test_util.cc:57
grpc_key_is_binary_header
int grpc_key_is_binary_header(const uint8_t *buf, size_t length)
Definition:
validate_metadata.h:38
port_platform.h
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:49