• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2022 gRPC authors.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15# File format:
16#
17# Each config var gets a name, and a type (one of string, int, bool).
18#
19# A default value is provided. Defaults prefixed by '$' are read as expressions,
20# otherwise they're assumed literals.
21# A description field must be present.
22#
23# Optionally, a force-load-on-access: true flag can be added to force checking
24# the environment variables every time the value is queried, to match legacy
25# behavior for some environment variables.
26#
27# Optionally, fuzz: true can be added to enable fuzzers to explore variations
28# in this config var with their regular fuzzing work - or fuzz: FunctionName
29# can be used to specify that the config space be explored, but FunctionName should be called to pre-format/validate the value for fuzzing.
30# Such functions should be listed in fuzz_config_vars_helpers.h.
31
32- name: experiments
33  type: comma_separated_string
34  description:
35    A comma separated list of currently active experiments. Experiments may be
36    prefixed with a '-' to disable them.
37  default:
38  fuzz_type: uint64
39  fuzz: ValidateExperimentsStringForFuzzing
40- name: client_channel_backup_poll_interval_ms
41  type: int
42  default: 5000
43  description:
44    Declares the interval in ms between two backup polls on client channels.
45    These polls are run in the timer thread so that gRPC can process
46    connection failures while there is no active polling thread.
47    They help reconnect disconnected client channels (mostly due to
48    idleness), so that the next RPC on this channel won't fail. Set to 0 to
49    turn off the backup polls.
50- name: dns_resolver
51  default:
52  type: string
53  description:
54    Declares which DNS resolver to use. The default is ares if gRPC is built
55    with c-ares support. Otherwise, the value of this environment variable is
56    ignored.
57  fuzz: true
58- name: trace
59  type: comma_separated_string
60  default:
61  description:
62    A comma separated list of tracers that provide additional insight into
63    how gRPC C core is processing requests via debug logs.
64  fuzz: true
65- name: verbosity
66  type: string
67  prelude: |
68    #ifndef GPR_DEFAULT_LOG_VERBOSITY_STRING
69    #define GPR_DEFAULT_LOG_VERBOSITY_STRING "ERROR"
70    #endif  // !GPR_DEFAULT_LOG_VERBOSITY_STRING
71  default: $GPR_DEFAULT_LOG_VERBOSITY_STRING
72  description:
73    Default gRPC logging verbosity
74  fuzz: true
75- name: stacktrace_minloglevel
76  type: string
77  default:
78  description:
79    Messages logged at the same or higher level than this will print stacktrace
80  fuzz: true
81- name: enable_fork_support
82  type: bool
83  description: Enable fork support
84  prelude: |
85    #ifdef GRPC_ENABLE_FORK_SUPPORT
86    #define GRPC_ENABLE_FORK_SUPPORT_DEFAULT true
87    #else
88    #define GRPC_ENABLE_FORK_SUPPORT_DEFAULT false
89    #endif  // GRPC_ENABLE_FORK_SUPPORT
90  default: $GRPC_ENABLE_FORK_SUPPORT_DEFAULT
91  fuzz: true
92- name: poll_strategy
93  type: string
94  description:
95    Declares which polling engines to try when starting gRPC.
96    This is a comma-separated list of engines, which are tried in priority
97    order first -> last.
98  default: all
99- name: abort_on_leaks
100  type: bool
101  default: false
102  description:
103    A debugging aid to cause a call to abort() when gRPC objects are leaked
104    past grpc_shutdown()
105- name: system_ssl_roots_dir
106  type: string
107  default:
108  description: Custom directory to SSL Roots
109  force-load-on-access: true
110- name: default_ssl_roots_file_path
111  type: string
112  default:
113  description: Path to the default SSL roots file.
114  force-load-on-access: true
115- name: not_use_system_ssl_roots
116  type: bool
117  default: false
118  description: Disable loading system root certificates.
119- name: ssl_cipher_suites
120  type: string
121  description: A colon separated list of cipher suites to use with OpenSSL
122  default: "TLS_AES_128_GCM_SHA256:\
123    TLS_AES_256_GCM_SHA384:\
124    TLS_CHACHA20_POLY1305_SHA256:\
125    ECDHE-ECDSA-AES128-GCM-SHA256:\
126    ECDHE-ECDSA-AES256-GCM-SHA384:\
127    ECDHE-RSA-AES128-GCM-SHA256:\
128    ECDHE-RSA-AES256-GCM-SHA384"
129- name: absl_logging
130  type: bool
131  default: false
132  description:
133    Use absl logging from within gpr_log.
134