grpc 1.44.0.pre2 → 1.46.3

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of grpc might be problematic. Click here for more details.

Files changed (1167) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +311 -191
  3. data/include/grpc/event_engine/event_engine.h +2 -2
  4. data/include/grpc/grpc.h +40 -14
  5. data/include/grpc/grpc_posix.h +20 -19
  6. data/include/grpc/grpc_security.h +26 -50
  7. data/include/grpc/impl/codegen/grpc_types.h +18 -21
  8. data/include/grpc/impl/codegen/port_platform.h +2 -2
  9. data/include/grpc/impl/codegen/slice.h +4 -1
  10. data/include/grpc/slice.h +0 -11
  11. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +309 -0
  12. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +122 -0
  13. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.cc +1 -1
  14. data/src/core/ext/filters/{client_idle → channel_idle}/idle_filter_state.h +5 -5
  15. data/src/core/ext/filters/client_channel/backend_metric.cc +3 -3
  16. data/src/core/ext/filters/client_channel/backup_poller.cc +12 -8
  17. data/src/core/ext/filters/client_channel/channel_connectivity.cc +5 -5
  18. data/src/core/ext/filters/client_channel/client_channel.cc +242 -153
  19. data/src/core/ext/filters/client_channel/client_channel.h +32 -29
  20. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +5 -11
  21. data/src/core/ext/filters/client_channel/connector.h +1 -1
  22. data/src/core/ext/filters/client_channel/dynamic_filters.cc +1 -2
  23. data/src/core/ext/filters/client_channel/dynamic_filters.h +1 -1
  24. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -22
  25. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -15
  26. data/src/core/ext/filters/client_channel/health/health_check_client.cc +124 -582
  27. data/src/core/ext/filters/client_channel/health/health_check_client.h +24 -160
  28. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +9 -12
  29. data/src/core/ext/filters/client_channel/http_proxy.cc +88 -110
  30. data/src/core/ext/filters/client_channel/http_proxy.h +17 -0
  31. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +1 -0
  32. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +68 -47
  33. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +15 -15
  34. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +4 -4
  35. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +7 -3
  36. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +193 -148
  37. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +2 -6
  38. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +120 -92
  39. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +88 -59
  40. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +60 -52
  41. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +51 -24
  42. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +16 -8
  43. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +245 -293
  44. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +7 -13
  45. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +126 -278
  46. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +18 -19
  47. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +62 -234
  48. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +8 -7
  49. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +82 -57
  50. data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +201 -0
  51. data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +106 -0
  52. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +35 -34
  53. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +135 -89
  54. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +7 -10
  55. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +11 -5
  56. data/src/core/ext/filters/client_channel/retry_filter.cc +236 -127
  57. data/src/core/ext/filters/client_channel/retry_service_config.cc +15 -17
  58. data/src/core/ext/filters/client_channel/retry_service_config.h +17 -11
  59. data/src/core/ext/filters/client_channel/retry_throttle.cc +9 -23
  60. data/src/core/ext/filters/client_channel/retry_throttle.h +11 -5
  61. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +7 -6
  62. data/src/core/ext/filters/client_channel/subchannel.cc +38 -41
  63. data/src/core/ext/filters/client_channel/subchannel.h +5 -4
  64. data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +544 -0
  65. data/src/core/ext/filters/client_channel/subchannel_stream_client.h +214 -0
  66. data/src/core/ext/filters/deadline/deadline_filter.cc +15 -14
  67. data/src/core/ext/filters/deadline/deadline_filter.h +3 -2
  68. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +133 -367
  69. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +24 -1
  70. data/src/core/ext/filters/fault_injection/service_config_parser.cc +5 -5
  71. data/src/core/ext/filters/fault_injection/service_config_parser.h +9 -3
  72. data/src/core/ext/filters/http/client/http_client_filter.cc +79 -455
  73. data/src/core/ext/filters/http/client/http_client_filter.h +21 -4
  74. data/src/core/ext/filters/http/client_authority_filter.cc +31 -79
  75. data/src/core/ext/filters/http/client_authority_filter.h +24 -5
  76. data/src/core/ext/filters/http/http_filters_plugin.cc +20 -18
  77. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +1 -0
  78. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +10 -2
  79. data/src/core/ext/filters/http/server/http_server_filter.cc +3 -116
  80. data/src/core/ext/filters/message_size/message_size_filter.cc +26 -34
  81. data/src/core/ext/filters/message_size/message_size_filter.h +9 -2
  82. data/src/core/ext/filters/rbac/rbac_filter.cc +13 -8
  83. data/src/core/ext/filters/rbac/rbac_filter.h +2 -0
  84. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +6 -5
  85. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +6 -1
  86. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +2 -8
  87. data/src/core/ext/filters/server_config_selector/server_config_selector.h +2 -2
  88. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +73 -200
  89. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +235 -0
  90. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +153 -10
  91. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +233 -59
  92. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -2
  93. data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -2
  94. data/src/core/ext/transport/chttp2/transport/flow_control.h +3 -3
  95. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -4
  96. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +5 -0
  97. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +2 -0
  98. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +3 -8
  99. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -1
  100. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +15 -51
  101. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +2 -2
  102. data/src/core/ext/transport/chttp2/transport/internal.h +10 -8
  103. data/src/core/ext/transport/chttp2/transport/parsing.cc +11 -3
  104. data/src/core/ext/transport/chttp2/transport/writing.cc +34 -20
  105. data/src/core/ext/transport/inproc/inproc_transport.cc +16 -12
  106. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +117 -0
  107. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +482 -0
  108. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -0
  109. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +553 -0
  110. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +182 -176
  111. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +1248 -685
  112. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +56 -0
  113. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +151 -0
  114. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +62 -0
  115. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +160 -0
  116. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +46 -0
  117. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +124 -0
  118. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +43 -0
  119. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +102 -0
  120. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +43 -0
  121. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +97 -0
  122. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +106 -0
  123. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +605 -0
  124. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +48 -0
  125. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +103 -0
  126. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +14 -12
  127. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +49 -16
  128. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +13 -11
  129. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +49 -23
  130. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +98 -96
  131. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +669 -386
  132. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +185 -173
  133. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1269 -664
  134. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +34 -26
  135. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +200 -91
  136. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +252 -238
  137. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +1670 -827
  138. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +10 -8
  139. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +42 -24
  140. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +49 -27
  141. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +272 -99
  142. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +299 -0
  143. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +1381 -0
  144. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +54 -50
  145. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +354 -190
  146. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +11 -8
  147. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +45 -25
  148. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +157 -154
  149. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1068 -582
  150. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +87 -42
  151. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +525 -167
  152. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +9 -7
  153. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +38 -24
  154. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +11 -29
  155. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +41 -101
  156. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +58 -0
  157. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +151 -0
  158. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +108 -104
  159. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +768 -410
  160. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +115 -84
  161. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +736 -349
  162. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +11 -9
  163. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +57 -31
  164. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +162 -108
  165. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +992 -397
  166. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +8 -6
  167. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +28 -17
  168. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +15 -13
  169. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +83 -49
  170. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +13 -11
  171. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +75 -34
  172. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +15 -13
  173. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +93 -49
  174. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +11 -9
  175. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +46 -26
  176. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +34 -32
  177. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +194 -109
  178. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +51 -48
  179. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +349 -190
  180. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +49 -47
  181. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +357 -188
  182. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +9 -7
  183. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +34 -21
  184. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +72 -61
  185. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +504 -260
  186. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +77 -69
  187. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +560 -301
  188. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +19 -15
  189. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +104 -49
  190. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +12 -10
  191. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +66 -41
  192. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +53 -0
  193. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +136 -0
  194. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +58 -55
  195. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +413 -235
  196. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +62 -60
  197. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +406 -237
  198. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +82 -76
  199. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +562 -294
  200. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +37 -31
  201. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +271 -142
  202. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +503 -475
  203. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +3642 -1901
  204. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +25 -19
  205. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +148 -72
  206. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +222 -0
  207. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +1052 -0
  208. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +44 -0
  209. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +88 -0
  210. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +49 -0
  211. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +103 -0
  212. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +15 -13
  213. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +77 -46
  214. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +52 -0
  215. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +134 -0
  216. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +63 -0
  217. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +250 -0
  218. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +47 -0
  219. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +94 -0
  220. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +69 -0
  221. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +213 -0
  222. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +32 -0
  223. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +42 -0
  224. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +71 -0
  225. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +218 -0
  226. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +54 -0
  227. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +146 -0
  228. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +8 -6
  229. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +34 -24
  230. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +29 -27
  231. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +188 -113
  232. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +36 -34
  233. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +260 -132
  234. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +17 -14
  235. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +86 -49
  236. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +16 -14
  237. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +86 -43
  238. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +229 -198
  239. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1553 -734
  240. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +3 -1
  241. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +2 -1
  242. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +87 -58
  243. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +554 -235
  244. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +26 -24
  245. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +156 -87
  246. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +98 -71
  247. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +622 -263
  248. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +62 -0
  249. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +160 -0
  250. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +6 -4
  251. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +22 -16
  252. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +67 -65
  253. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +474 -256
  254. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +18 -16
  255. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +107 -62
  256. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +51 -49
  257. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +347 -186
  258. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +48 -0
  259. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +112 -0
  260. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +20 -18
  261. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +124 -82
  262. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +74 -0
  263. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +214 -0
  264. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +16 -14
  265. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +99 -57
  266. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +10 -8
  267. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +50 -31
  268. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +10 -8
  269. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +48 -27
  270. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +9 -7
  271. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +38 -24
  272. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +21 -19
  273. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +117 -69
  274. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +19 -17
  275. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +123 -65
  276. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +14 -12
  277. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +85 -53
  278. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +23 -21
  279. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +150 -83
  280. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +32 -30
  281. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +230 -146
  282. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +36 -34
  283. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +235 -131
  284. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +66 -0
  285. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +201 -0
  286. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +3 -1
  287. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +2 -1
  288. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +42 -0
  289. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +139 -0
  290. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +13 -11
  291. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +62 -36
  292. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +19 -17
  293. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +98 -52
  294. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +26 -0
  295. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +41 -0
  296. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +10 -8
  297. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +40 -19
  298. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +51 -0
  299. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +127 -0
  300. data/src/core/ext/upb-generated/google/api/annotations.upb.c +8 -6
  301. data/src/core/ext/upb-generated/google/api/annotations.upb.h +22 -6
  302. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +109 -103
  303. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +720 -382
  304. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +120 -112
  305. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +795 -402
  306. data/src/core/ext/upb-generated/google/api/http.upb.c +29 -27
  307. data/src/core/ext/upb-generated/google/api/http.upb.h +216 -115
  308. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +46 -0
  309. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +111 -0
  310. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +9 -7
  311. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +38 -22
  312. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +291 -237
  313. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2076 -1030
  314. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +9 -7
  315. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +36 -20
  316. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +6 -4
  317. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +22 -16
  318. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +31 -29
  319. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +177 -93
  320. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +9 -7
  321. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +36 -20
  322. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +40 -38
  323. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +240 -149
  324. data/src/core/ext/upb-generated/google/rpc/status.upb.c +11 -9
  325. data/src/core/ext/upb-generated/google/rpc/status.upb.h +52 -30
  326. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +84 -0
  327. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +319 -0
  328. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +21 -19
  329. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +103 -48
  330. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +102 -96
  331. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +685 -359
  332. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +16 -13
  333. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +76 -41
  334. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +12 -10
  335. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +56 -35
  336. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +57 -55
  337. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +383 -219
  338. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +22 -20
  339. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +115 -63
  340. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
  341. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +764 -0
  342. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +36 -34
  343. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +189 -78
  344. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +14 -12
  345. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +53 -22
  346. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +7 -5
  347. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +15 -6
  348. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +14 -12
  349. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +55 -24
  350. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +13 -11
  351. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +49 -23
  352. data/src/core/ext/upb-generated/validate/validate.upb.c +339 -312
  353. data/src/core/ext/upb-generated/validate/validate.upb.h +2726 -1180
  354. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +110 -0
  355. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +278 -0
  356. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +55 -0
  357. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +108 -0
  358. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +38 -0
  359. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +46 -0
  360. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +34 -32
  361. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +171 -80
  362. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +53 -0
  363. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +99 -0
  364. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +8 -6
  365. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +30 -19
  366. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +18 -16
  367. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +98 -55
  368. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +14 -12
  369. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +53 -30
  370. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +46 -0
  371. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +103 -0
  372. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +12 -10
  373. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +55 -30
  374. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +20 -18
  375. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +130 -70
  376. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +12 -10
  377. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +58 -30
  378. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +23 -21
  379. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +101 -46
  380. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +207 -0
  381. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +878 -0
  382. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +52 -0
  383. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +143 -0
  384. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +65 -0
  385. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +218 -0
  386. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +10 -8
  387. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +42 -24
  388. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +84 -0
  389. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +55 -0
  390. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +127 -0
  391. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +50 -0
  392. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +14 -12
  393. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +67 -67
  394. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +43 -0
  395. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +40 -0
  396. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +53 -0
  397. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +40 -0
  398. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +49 -0
  399. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +35 -0
  400. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +46 -0
  401. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +35 -0
  402. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +46 -0
  403. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
  404. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +142 -0
  405. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +40 -0
  406. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +51 -0
  407. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +35 -0
  408. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +8 -6
  409. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +1 -1
  410. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +8 -6
  411. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +4 -4
  412. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +20 -17
  413. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +46 -46
  414. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +248 -240
  415. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +55 -55
  416. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +58 -51
  417. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +10 -10
  418. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +385 -371
  419. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +76 -76
  420. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +14 -11
  421. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +4 -4
  422. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +23 -16
  423. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +4 -4
  424. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +206 -0
  425. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
  426. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +15 -13
  427. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +22 -22
  428. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +15 -12
  429. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +4 -4
  430. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +85 -80
  431. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +73 -73
  432. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +138 -101
  433. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +26 -16
  434. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +14 -12
  435. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +4 -4
  436. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +22 -34
  437. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +4 -9
  438. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +53 -0
  439. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
  440. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +21 -18
  441. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +43 -43
  442. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +177 -166
  443. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +30 -25
  444. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +14 -12
  445. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +4 -4
  446. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +250 -221
  447. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +53 -43
  448. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +12 -9
  449. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +4 -4
  450. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +14 -11
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +7 -7
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +14 -11
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +4 -4
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +18 -15
  455. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +4 -4
  456. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +13 -11
  457. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +4 -4
  458. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +18 -15
  459. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +13 -13
  460. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +19 -16
  461. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +19 -19
  462. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +18 -15
  463. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +16 -16
  464. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +14 -11
  465. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +4 -4
  466. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +52 -45
  467. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +19 -19
  468. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +153 -147
  469. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +22 -22
  470. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +19 -16
  471. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +4 -4
  472. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +15 -12
  473. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +7 -7
  474. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +69 -0
  475. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
  476. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +17 -14
  477. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +25 -25
  478. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +17 -14
  479. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +28 -28
  480. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +23 -21
  481. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +25 -25
  482. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +36 -27
  483. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +10 -10
  484. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +826 -803
  485. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +160 -160
  486. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +52 -37
  487. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +10 -10
  488. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +188 -0
  489. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +85 -0
  490. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +54 -0
  491. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
  492. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +57 -0
  493. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
  494. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +15 -12
  495. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +7 -7
  496. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +72 -0
  497. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
  498. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +99 -0
  499. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
  500. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +52 -0
  501. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +35 -0
  502. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +71 -0
  503. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
  504. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +57 -0
  505. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +30 -0
  506. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +75 -0
  507. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +40 -0
  508. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +77 -0
  509. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
  510. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +15 -11
  511. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +4 -4
  512. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +17 -14
  513. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +16 -16
  514. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +18 -15
  515. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +10 -10
  516. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +14 -11
  517. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +7 -7
  518. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +17 -13
  519. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +4 -4
  520. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +197 -172
  521. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +63 -58
  522. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +15 -11
  523. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +1 -1
  524. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +169 -140
  525. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +24 -19
  526. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +19 -16
  527. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +10 -10
  528. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +217 -199
  529. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +24 -19
  530. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +58 -0
  531. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
  532. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +14 -11
  533. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +4 -4
  534. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +17 -14
  535. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +22 -22
  536. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +16 -13
  537. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +7 -7
  538. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +20 -17
  539. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +16 -16
  540. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +46 -0
  541. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +35 -0
  542. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +13 -10
  543. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +13 -13
  544. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +52 -0
  545. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +50 -0
  546. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +15 -12
  547. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +7 -7
  548. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +15 -12
  549. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +4 -4
  550. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +15 -12
  551. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +4 -4
  552. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +15 -12
  553. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +4 -4
  554. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +15 -12
  555. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +10 -10
  556. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +15 -12
  557. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +7 -7
  558. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +14 -12
  559. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +7 -7
  560. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +16 -13
  561. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +10 -10
  562. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +13 -10
  563. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +22 -22
  564. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +14 -11
  565. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +16 -16
  566. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +53 -0
  567. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +45 -0
  568. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +10 -8
  569. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +1 -1
  570. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +94 -0
  571. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +35 -0
  572. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +12 -10
  573. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +7 -7
  574. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +11 -8
  575. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +10 -10
  576. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
  577. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
  578. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +11 -9
  579. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +4 -4
  580. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +57 -0
  581. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +35 -0
  582. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +5 -5
  583. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +1 -1
  584. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +6 -6
  585. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +40 -40
  586. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +6 -6
  587. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +43 -43
  588. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +3 -3
  589. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +10 -10
  590. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +39 -0
  591. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +35 -0
  592. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +3 -3
  593. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +4 -4
  594. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +3 -3
  595. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +82 -82
  596. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +3 -3
  597. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +4 -4
  598. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +3 -3
  599. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +4 -4
  600. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +3 -3
  601. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +13 -13
  602. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +3 -3
  603. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +4 -4
  604. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +3 -3
  605. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +28 -28
  606. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +4 -4
  607. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +4 -4
  608. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +67 -0
  609. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
  610. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
  611. data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
  612. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +4 -4
  613. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +10 -10
  614. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +5 -5
  615. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +4 -4
  616. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +4 -4
  617. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +1 -1
  618. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +4 -4
  619. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +4 -4
  620. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +4 -4
  621. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +4 -4
  622. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +6 -6
  623. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +70 -70
  624. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +63 -0
  625. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +45 -0
  626. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +47 -0
  627. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +35 -0
  628. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +35 -0
  629. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +30 -0
  630. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +4 -4
  631. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +13 -13
  632. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +40 -0
  633. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +35 -0
  634. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +5 -5
  635. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +4 -4
  636. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +7 -7
  637. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +7 -7
  638. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +4 -4
  639. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +7 -7
  640. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +41 -0
  641. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +35 -0
  642. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +6 -6
  643. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +4 -4
  644. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +6 -6
  645. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +7 -7
  646. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +6 -6
  647. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +4 -4
  648. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +126 -0
  649. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
  650. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +40 -0
  651. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +40 -0
  652. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +52 -0
  653. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +40 -0
  654. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +5 -5
  655. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +4 -4
  656. data/src/core/ext/xds/certificate_provider_store.cc +8 -0
  657. data/src/core/ext/xds/certificate_provider_store.h +9 -0
  658. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +4 -4
  659. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +2 -2
  660. data/src/core/ext/xds/upb_utils.h +8 -6
  661. data/src/core/ext/xds/xds_api.cc +72 -35
  662. data/src/core/ext/xds/xds_api.h +4 -4
  663. data/src/core/ext/xds/xds_bootstrap.cc +37 -5
  664. data/src/core/ext/xds/xds_bootstrap.h +13 -0
  665. data/src/core/ext/xds/xds_certificate_provider.cc +2 -0
  666. data/src/core/ext/xds/xds_certificate_provider.h +8 -0
  667. data/src/core/ext/xds/xds_channel_stack_modifier.cc +14 -17
  668. data/src/core/ext/xds/xds_channel_stack_modifier.h +4 -3
  669. data/src/core/ext/xds/xds_client.cc +220 -193
  670. data/src/core/ext/xds/xds_client.h +35 -19
  671. data/src/core/ext/xds/xds_client_stats.cc +15 -15
  672. data/src/core/ext/xds/xds_client_stats.h +5 -4
  673. data/src/core/ext/xds/xds_cluster.cc +18 -16
  674. data/src/core/ext/xds/xds_cluster.h +3 -6
  675. data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +142 -0
  676. data/src/core/ext/xds/xds_cluster_specifier_plugin.h +79 -0
  677. data/src/core/ext/xds/xds_common_types.cc +10 -10
  678. data/src/core/ext/xds/xds_common_types.h +8 -23
  679. data/src/core/ext/xds/xds_endpoint.cc +14 -7
  680. data/src/core/ext/xds/xds_endpoint.h +1 -1
  681. data/src/core/ext/xds/xds_http_fault_filter.cc +7 -7
  682. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  683. data/src/core/ext/xds/xds_http_filters.cc +6 -5
  684. data/src/core/ext/xds/xds_http_filters.h +4 -4
  685. data/src/core/ext/xds/xds_http_rbac_filter.cc +5 -5
  686. data/src/core/ext/xds/xds_http_rbac_filter.h +3 -3
  687. data/src/core/ext/xds/xds_listener.cc +15 -12
  688. data/src/core/ext/xds/xds_listener.h +1 -1
  689. data/src/core/ext/xds/xds_resource_type.h +1 -1
  690. data/src/core/ext/xds/xds_route_config.cc +175 -46
  691. data/src/core/ext/xds/xds_route_config.h +14 -11
  692. data/src/core/ext/xds/xds_routing.cc +1 -1
  693. data/src/core/ext/xds/xds_server_config_fetcher.cc +20 -24
  694. data/src/core/lib/avl/avl.h +68 -5
  695. data/src/core/lib/backoff/backoff.cc +7 -10
  696. data/src/core/lib/backoff/backoff.h +8 -8
  697. data/src/core/lib/channel/call_finalization.h +86 -0
  698. data/src/core/lib/channel/call_tracer.h +4 -1
  699. data/src/core/lib/channel/channel_args.cc +161 -22
  700. data/src/core/lib/channel/channel_args.h +210 -7
  701. data/src/core/lib/channel/channel_args_preconditioning.cc +3 -8
  702. data/src/core/lib/channel/channel_args_preconditioning.h +1 -2
  703. data/src/core/lib/channel/channel_stack.cc +2 -3
  704. data/src/core/lib/channel/channel_stack.h +38 -5
  705. data/src/core/lib/channel/channel_stack_builder.cc +23 -266
  706. data/src/core/lib/channel/channel_stack_builder.h +118 -146
  707. data/src/core/lib/channel/channel_stack_builder_impl.cc +102 -0
  708. data/src/core/lib/channel/channel_stack_builder_impl.h +48 -0
  709. data/src/core/lib/channel/channel_trace.cc +3 -6
  710. data/src/core/lib/channel/connected_channel.cc +9 -4
  711. data/src/core/lib/channel/connected_channel.h +2 -1
  712. data/src/core/lib/channel/context.h +11 -0
  713. data/src/core/lib/channel/handshaker.cc +1 -1
  714. data/src/core/lib/channel/handshaker.h +1 -1
  715. data/src/core/lib/channel/promise_based_filter.cc +1002 -0
  716. data/src/core/lib/channel/promise_based_filter.h +437 -0
  717. data/src/core/lib/compression/compression.cc +1 -1
  718. data/src/core/lib/compression/compression_internal.cc +2 -8
  719. data/src/core/lib/config/core_configuration.cc +8 -2
  720. data/src/core/lib/config/core_configuration.h +39 -0
  721. data/src/core/lib/debug/stats_data.cc +2 -6
  722. data/src/core/lib/debug/stats_data.h +18 -21
  723. data/src/core/{ext/filters/max_age/max_age_filter.h → lib/event_engine/default_event_engine_factory.cc} +11 -10
  724. data/src/core/lib/event_engine/event_engine.cc +23 -8
  725. data/src/core/lib/event_engine/event_engine_factory.h +3 -0
  726. data/src/core/lib/event_engine/memory_allocator.cc +9 -13
  727. data/src/core/lib/event_engine/{event_engine_factory.cc → resolved_address.cc} +10 -20
  728. data/src/core/lib/gpr/sync_posix.cc +1 -0
  729. data/src/core/lib/gpr/time.cc +2 -1
  730. data/src/core/lib/gpr/tls.h +1 -0
  731. data/src/core/lib/gpr/useful.h +14 -0
  732. data/src/core/lib/gprpp/bitset.h +12 -0
  733. data/src/core/lib/gprpp/capture.h +76 -0
  734. data/src/core/lib/gprpp/cpp_impl_of.h +4 -0
  735. data/src/core/lib/gprpp/debug_location.h +2 -0
  736. data/src/core/lib/gprpp/match.h +73 -0
  737. data/src/core/lib/gprpp/overload.h +59 -0
  738. data/src/core/lib/gprpp/ref_counted.h +2 -0
  739. data/src/core/lib/gprpp/single_set_ptr.h +87 -0
  740. data/src/core/lib/gprpp/status_helper.cc +30 -14
  741. data/src/core/lib/gprpp/status_helper.h +4 -4
  742. data/src/core/lib/gprpp/time.cc +198 -0
  743. data/src/core/lib/gprpp/time.h +292 -0
  744. data/src/core/lib/http/format_request.cc +28 -25
  745. data/src/core/lib/http/format_request.h +7 -6
  746. data/src/core/lib/http/httpcli.cc +306 -229
  747. data/src/core/lib/http/httpcli.h +182 -77
  748. data/src/core/lib/http/httpcli_security_connector.cc +64 -75
  749. data/src/core/lib/http/httpcli_ssl_credentials.h +37 -0
  750. data/src/core/lib/http/parser.cc +80 -9
  751. data/src/core/lib/http/parser.h +15 -2
  752. data/src/core/lib/iomgr/buffer_list.h +5 -5
  753. data/src/core/lib/iomgr/error.cc +13 -12
  754. data/src/core/lib/iomgr/error.h +0 -5
  755. data/src/core/lib/iomgr/ev_apple.cc +6 -5
  756. data/src/core/lib/iomgr/ev_epoll1_linux.cc +8 -7
  757. data/src/core/lib/iomgr/ev_poll_posix.cc +7 -7
  758. data/src/core/lib/iomgr/ev_posix.cc +9 -10
  759. data/src/core/lib/iomgr/ev_posix.h +1 -1
  760. data/src/core/lib/iomgr/event_engine/pollset.cc +2 -3
  761. data/src/core/lib/iomgr/event_engine/resolver.cc +1 -1
  762. data/src/core/lib/iomgr/event_engine/tcp.cc +4 -3
  763. data/src/core/lib/iomgr/event_engine/timer.cc +3 -4
  764. data/src/core/lib/iomgr/exec_ctx.cc +3 -88
  765. data/src/core/lib/iomgr/exec_ctx.h +7 -23
  766. data/src/core/lib/iomgr/fork_posix.cc +1 -1
  767. data/src/core/lib/iomgr/iocp_windows.cc +9 -9
  768. data/src/core/lib/iomgr/iocp_windows.h +1 -1
  769. data/src/core/lib/iomgr/polling_entity.h +6 -0
  770. data/src/core/lib/iomgr/pollset.cc +1 -1
  771. data/src/core/lib/iomgr/pollset.h +4 -4
  772. data/src/core/lib/iomgr/pollset_windows.cc +2 -2
  773. data/src/core/lib/iomgr/port.h +4 -9
  774. data/src/core/lib/iomgr/resolve_address_posix.cc +1 -1
  775. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +62 -0
  776. data/src/core/lib/iomgr/socket_utils_common_posix.cc +0 -17
  777. data/src/core/lib/iomgr/tcp_client.cc +1 -1
  778. data/src/core/lib/iomgr/tcp_client.h +3 -2
  779. data/src/core/lib/iomgr/tcp_client_cfstream.cc +1 -1
  780. data/src/core/lib/iomgr/tcp_client_posix.cc +4 -4
  781. data/src/core/lib/iomgr/tcp_client_posix.h +1 -1
  782. data/src/core/lib/iomgr/tcp_client_windows.cc +1 -1
  783. data/src/core/lib/iomgr/tcp_posix.cc +95 -36
  784. data/src/core/lib/iomgr/tcp_server_posix.cc +26 -17
  785. data/src/core/lib/iomgr/tcp_windows.cc +17 -10
  786. data/src/core/lib/iomgr/timer.cc +2 -2
  787. data/src/core/lib/iomgr/timer.h +11 -6
  788. data/src/core/lib/iomgr/timer_generic.cc +96 -77
  789. data/src/core/lib/iomgr/timer_manager.cc +15 -14
  790. data/src/core/lib/iomgr/work_serializer.cc +15 -10
  791. data/src/core/lib/json/json_util.cc +4 -4
  792. data/src/core/lib/json/json_util.h +5 -5
  793. data/src/core/lib/promise/activity.cc +14 -8
  794. data/src/core/lib/promise/activity.h +143 -131
  795. data/src/core/lib/promise/arena_promise.h +188 -0
  796. data/src/core/lib/promise/call_push_pull.h +144 -0
  797. data/src/core/lib/promise/detail/basic_seq.h +92 -3
  798. data/src/core/lib/promise/detail/promise_factory.h +1 -1
  799. data/src/core/lib/promise/detail/status.h +2 -1
  800. data/src/core/lib/promise/intra_activity_waiter.h +49 -0
  801. data/src/core/lib/promise/latch.h +104 -0
  802. data/src/core/lib/promise/loop.h +34 -8
  803. data/src/core/lib/promise/poll.h +6 -0
  804. data/src/core/lib/promise/promise.h +95 -0
  805. data/src/core/lib/promise/seq.h +19 -1
  806. data/src/core/lib/promise/sleep.cc +74 -0
  807. data/src/core/lib/promise/sleep.h +66 -0
  808. data/src/core/lib/promise/try_seq.h +157 -0
  809. data/src/core/lib/resolver/resolver_factory.h +22 -26
  810. data/src/core/lib/resolver/resolver_registry.cc +98 -137
  811. data/src/core/lib/resolver/resolver_registry.h +59 -33
  812. data/src/core/lib/resource_quota/api.cc +5 -30
  813. data/src/core/lib/resource_quota/api.h +1 -1
  814. data/src/core/lib/resource_quota/memory_quota.cc +118 -94
  815. data/src/core/lib/resource_quota/memory_quota.h +100 -64
  816. data/src/core/lib/resource_quota/resource_quota.h +8 -0
  817. data/src/core/lib/security/authorization/authorization_policy_provider.h +7 -0
  818. data/src/core/lib/security/authorization/evaluate_args.cc +1 -11
  819. data/src/core/lib/security/authorization/evaluate_args.h +0 -1
  820. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +106 -0
  821. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +50 -0
  822. data/src/core/lib/security/authorization/matchers.cc +5 -5
  823. data/src/core/lib/security/authorization/matchers.h +2 -2
  824. data/src/core/lib/security/authorization/rbac_policy.cc +3 -3
  825. data/src/core/lib/security/authorization/rbac_policy.h +3 -2
  826. data/src/core/lib/security/context/security_context.h +8 -1
  827. data/src/core/lib/security/credentials/alts/alts_credentials.cc +6 -5
  828. data/src/core/lib/security/credentials/alts/alts_credentials.h +10 -0
  829. data/src/core/lib/security/credentials/call_creds_util.cc +87 -0
  830. data/src/core/lib/security/credentials/call_creds_util.h +42 -0
  831. data/src/core/lib/security/credentials/channel_creds_registry.h +97 -0
  832. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +70 -0
  833. data/src/core/lib/security/credentials/composite/composite_credentials.cc +24 -83
  834. data/src/core/lib/security/credentials/composite/composite_credentials.h +23 -11
  835. data/src/core/lib/security/credentials/credentials.cc +2 -3
  836. data/src/core/lib/security/credentials/credentials.h +70 -66
  837. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +46 -27
  838. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +1 -0
  839. data/src/core/lib/security/credentials/external/external_account_credentials.cc +49 -29
  840. data/src/core/lib/security/credentials/external/external_account_credentials.h +4 -3
  841. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -1
  842. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +33 -12
  843. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -0
  844. data/src/core/lib/security/credentials/fake/fake_credentials.cc +23 -28
  845. data/src/core/lib/security/credentials/fake/fake_credentials.h +16 -16
  846. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +19 -9
  847. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +9 -3
  848. data/src/core/lib/security/credentials/iam/iam_credentials.cc +15 -19
  849. data/src/core/lib/security/credentials/iam/iam_credentials.h +14 -9
  850. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +25 -26
  851. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +57 -0
  852. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +23 -23
  853. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +13 -9
  854. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -30
  855. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
  856. data/src/core/lib/security/credentials/local/local_credentials.cc +6 -6
  857. data/src/core/lib/security/credentials/local/local_credentials.h +10 -0
  858. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +128 -128
  859. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +57 -28
  860. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +96 -151
  861. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +56 -28
  862. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +6 -4
  863. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +14 -3
  864. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +49 -0
  865. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +8 -0
  866. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +42 -3
  867. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +19 -0
  868. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +66 -86
  869. data/src/core/lib/security/credentials/tls/tls_credentials.cc +9 -6
  870. data/src/core/lib/security/credentials/tls/tls_credentials.h +6 -0
  871. data/src/core/lib/security/credentials/xds/xds_credentials.cc +48 -50
  872. data/src/core/lib/security/credentials/xds/xds_credentials.h +36 -5
  873. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +8 -14
  874. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +1 -1
  875. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +4 -12
  876. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -2
  877. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +6 -16
  878. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +4 -9
  879. data/src/core/lib/security/security_connector/local/local_security_connector.cc +10 -18
  880. data/src/core/lib/security/security_connector/security_connector.cc +3 -11
  881. data/src/core/lib/security/security_connector/security_connector.h +20 -20
  882. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +10 -13
  883. data/src/core/lib/security/security_connector/ssl_utils.cc +15 -7
  884. data/src/core/lib/security/security_connector/ssl_utils.h +8 -3
  885. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +27 -16
  886. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +6 -6
  887. data/src/core/lib/security/transport/auth_filters.h +31 -5
  888. data/src/core/lib/security/transport/client_auth_filter.cc +90 -373
  889. data/src/core/lib/security/transport/secure_endpoint.cc +198 -129
  890. data/src/core/lib/security/transport/secure_endpoint.h +1 -1
  891. data/src/core/lib/security/transport/security_handshaker.cc +20 -10
  892. data/src/core/lib/security/transport/server_auth_filter.cc +1 -0
  893. data/src/core/lib/service_config/service_config.h +6 -51
  894. data/src/core/lib/service_config/{service_config.cc → service_config_impl.cc} +19 -16
  895. data/src/core/lib/service_config/service_config_impl.h +125 -0
  896. data/src/core/lib/service_config/service_config_parser.cc +30 -26
  897. data/src/core/lib/service_config/service_config_parser.h +36 -27
  898. data/src/core/lib/slice/slice.cc +76 -181
  899. data/src/core/lib/slice/slice.h +28 -15
  900. data/src/core/lib/slice/slice_internal.h +12 -30
  901. data/src/core/lib/slice/slice_refcount.cc +18 -0
  902. data/src/core/lib/slice/slice_refcount.h +2 -72
  903. data/src/core/lib/slice/slice_refcount_base.h +16 -120
  904. data/src/core/lib/surface/builtins.cc +6 -6
  905. data/src/core/lib/surface/call.cc +1026 -899
  906. data/src/core/lib/surface/call.h +1 -15
  907. data/src/core/lib/surface/channel.cc +28 -32
  908. data/src/core/lib/surface/channel.h +6 -7
  909. data/src/core/lib/surface/channel_init.cc +2 -3
  910. data/src/core/lib/surface/channel_init.h +3 -7
  911. data/src/core/lib/surface/completion_queue.cc +10 -9
  912. data/src/core/lib/surface/init.cc +78 -7
  913. data/src/core/lib/surface/init.h +0 -2
  914. data/src/core/lib/surface/lame_client.cc +2 -1
  915. data/src/core/lib/surface/server.cc +14 -36
  916. data/src/core/lib/surface/server.h +4 -5
  917. data/src/core/lib/surface/version.cc +2 -2
  918. data/src/core/lib/transport/bdp_estimator.cc +9 -10
  919. data/src/core/lib/transport/bdp_estimator.h +2 -2
  920. data/src/core/lib/transport/byte_stream.cc +2 -0
  921. data/src/core/lib/transport/error_utils.cc +5 -3
  922. data/src/core/lib/transport/error_utils.h +2 -15
  923. data/src/core/lib/transport/metadata_batch.h +286 -104
  924. data/src/core/lib/transport/parsed_metadata.h +33 -17
  925. data/src/core/lib/transport/status_conversion.cc +2 -2
  926. data/src/core/lib/transport/status_conversion.h +1 -1
  927. data/src/core/lib/transport/timeout_encoding.cc +32 -29
  928. data/src/core/lib/transport/timeout_encoding.h +3 -3
  929. data/src/core/lib/transport/transport.cc +3 -1
  930. data/src/core/lib/transport/transport.h +102 -2
  931. data/src/core/lib/transport/transport_impl.h +14 -0
  932. data/src/core/lib/transport/transport_op_string.cc +5 -14
  933. data/src/core/lib/uri/uri_parser.cc +4 -0
  934. data/src/core/lib/uri/uri_parser.h +1 -0
  935. data/src/core/plugin_registry/grpc_plugin_registry.cc +21 -92
  936. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +85 -0
  937. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +26 -21
  938. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +9 -1
  939. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +21 -13
  940. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -2
  941. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -1
  942. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
  943. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +2 -2
  944. data/src/core/tsi/local_transport_security.cc +3 -11
  945. data/src/core/tsi/local_transport_security.h +1 -4
  946. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +141 -0
  947. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +81 -0
  948. data/src/core/tsi/ssl_transport_security.cc +127 -39
  949. data/src/core/tsi/ssl_transport_security.h +28 -2
  950. data/src/core/tsi/transport_security_interface.h +2 -0
  951. data/src/ruby/ext/grpc/extconf.rb +1 -1
  952. data/src/ruby/ext/grpc/rb_channel.c +5 -2
  953. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +18 -24
  954. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +27 -36
  955. data/src/ruby/ext/grpc/rb_server.c +7 -4
  956. data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
  957. data/src/ruby/lib/grpc/grpc.rb +1 -1
  958. data/src/ruby/lib/grpc/version.rb +1 -1
  959. data/src/ruby/pb/generate_proto_ruby.sh +1 -0
  960. data/src/ruby/pb/test/client.rb +769 -0
  961. data/src/ruby/pb/test/server.rb +252 -0
  962. data/src/ruby/pb/test/xds_client.rb +415 -0
  963. data/third_party/cares/cares/{ares.h → include/ares.h} +73 -1
  964. data/third_party/cares/cares/{ares_dns.h → include/ares_dns.h} +9 -0
  965. data/third_party/cares/cares/{ares_rules.h → include/ares_rules.h} +0 -0
  966. data/third_party/cares/cares/{ares_version.h → include/ares_version.h} +3 -3
  967. data/third_party/cares/cares/{ares__close_sockets.c → src/lib/ares__close_sockets.c} +2 -2
  968. data/third_party/cares/cares/{ares__get_hostent.c → src/lib/ares__get_hostent.c} +1 -2
  969. data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +260 -0
  970. data/third_party/cares/cares/{ares__read_line.c → src/lib/ares__read_line.c} +0 -0
  971. data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +264 -0
  972. data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +499 -0
  973. data/third_party/cares/cares/{ares__timeval.c → src/lib/ares__timeval.c} +0 -0
  974. data/third_party/cares/cares/src/lib/ares_android.c +444 -0
  975. data/third_party/cares/cares/src/lib/ares_android.h +27 -0
  976. data/third_party/cares/cares/{ares_cancel.c → src/lib/ares_cancel.c} +0 -0
  977. data/third_party/cares/cares/{ares_create_query.c → src/lib/ares_create_query.c} +8 -17
  978. data/third_party/cares/cares/{ares_data.c → src/lib/ares_data.c} +18 -0
  979. data/third_party/cares/cares/{ares_data.h → src/lib/ares_data.h} +2 -0
  980. data/third_party/cares/cares/{ares_destroy.c → src/lib/ares_destroy.c} +0 -0
  981. data/third_party/cares/cares/{ares_expand_name.c → src/lib/ares_expand_name.c} +114 -23
  982. data/third_party/cares/cares/{ares_expand_string.c → src/lib/ares_expand_string.c} +2 -5
  983. data/third_party/cares/cares/{ares_fds.c → src/lib/ares_fds.c} +0 -0
  984. data/third_party/cares/cares/{ares_free_hostent.c → src/lib/ares_free_hostent.c} +6 -4
  985. data/third_party/cares/cares/{ares_free_string.c → src/lib/ares_free_string.c} +0 -0
  986. data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +59 -0
  987. data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +772 -0
  988. data/third_party/cares/cares/{ares_getenv.c → src/lib/ares_getenv.c} +0 -2
  989. data/third_party/cares/cares/{ares_getenv.h → src/lib/ares_getenv.h} +0 -0
  990. data/third_party/cares/cares/{ares_gethostbyaddr.c → src/lib/ares_gethostbyaddr.c} +2 -9
  991. data/third_party/cares/cares/{ares_gethostbyname.c → src/lib/ares_gethostbyname.c} +25 -20
  992. data/third_party/cares/cares/{ares_getnameinfo.c → src/lib/ares_getnameinfo.c} +4 -10
  993. data/third_party/cares/cares/{ares_getsock.c → src/lib/ares_getsock.c} +0 -0
  994. data/third_party/cares/cares/{ares_inet_net_pton.h → src/lib/ares_inet_net_pton.h} +0 -0
  995. data/third_party/cares/cares/{ares_init.c → src/lib/ares_init.c} +79 -40
  996. data/third_party/cares/cares/{ares_iphlpapi.h → src/lib/ares_iphlpapi.h} +0 -0
  997. data/third_party/cares/cares/{ares_ipv6.h → src/lib/ares_ipv6.h} +7 -0
  998. data/third_party/cares/cares/{ares_library_init.c → src/lib/ares_library_init.c} +7 -2
  999. data/third_party/cares/cares/{ares_library_init.h → src/lib/ares_library_init.h} +1 -1
  1000. data/third_party/cares/cares/{ares_llist.c → src/lib/ares_llist.c} +0 -0
  1001. data/third_party/cares/cares/{ares_llist.h → src/lib/ares_llist.h} +0 -0
  1002. data/third_party/cares/cares/{ares_mkquery.c → src/lib/ares_mkquery.c} +0 -0
  1003. data/third_party/cares/cares/src/lib/ares_nameser.h +482 -0
  1004. data/third_party/cares/cares/{ares_nowarn.c → src/lib/ares_nowarn.c} +0 -0
  1005. data/third_party/cares/cares/{ares_nowarn.h → src/lib/ares_nowarn.h} +0 -0
  1006. data/third_party/cares/cares/{ares_options.c → src/lib/ares_options.c} +0 -0
  1007. data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +209 -0
  1008. data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +212 -0
  1009. data/third_party/cares/cares/src/lib/ares_parse_caa_reply.c +199 -0
  1010. data/third_party/cares/cares/{ares_parse_mx_reply.c → src/lib/ares_parse_mx_reply.c} +2 -8
  1011. data/third_party/cares/cares/{ares_parse_naptr_reply.c → src/lib/ares_parse_naptr_reply.c} +2 -13
  1012. data/third_party/cares/cares/{ares_parse_ns_reply.c → src/lib/ares_parse_ns_reply.c} +5 -11
  1013. data/third_party/cares/cares/{ares_parse_ptr_reply.c → src/lib/ares_parse_ptr_reply.c} +53 -46
  1014. data/third_party/cares/cares/src/lib/ares_parse_soa_reply.c +179 -0
  1015. data/third_party/cares/cares/{ares_parse_srv_reply.c → src/lib/ares_parse_srv_reply.c} +2 -13
  1016. data/third_party/cares/cares/{ares_parse_txt_reply.c → src/lib/ares_parse_txt_reply.c} +3 -9
  1017. data/third_party/cares/cares/{ares_platform.c → src/lib/ares_platform.c} +0 -0
  1018. data/third_party/cares/cares/{ares_platform.h → src/lib/ares_platform.h} +0 -0
  1019. data/third_party/cares/cares/{ares_private.h → src/lib/ares_private.h} +52 -11
  1020. data/third_party/cares/cares/{ares_process.c → src/lib/ares_process.c} +127 -52
  1021. data/third_party/cares/cares/{ares_query.c → src/lib/ares_query.c} +3 -9
  1022. data/third_party/cares/cares/{ares_search.c → src/lib/ares_search.c} +5 -7
  1023. data/third_party/cares/cares/{ares_send.c → src/lib/ares_send.c} +2 -8
  1024. data/third_party/cares/cares/{ares_setup.h → src/lib/ares_setup.h} +4 -1
  1025. data/third_party/cares/cares/{ares_strcasecmp.c → src/lib/ares_strcasecmp.c} +0 -0
  1026. data/third_party/cares/cares/{ares_strcasecmp.h → src/lib/ares_strcasecmp.h} +0 -0
  1027. data/third_party/cares/cares/{ares_strdup.c → src/lib/ares_strdup.c} +0 -0
  1028. data/third_party/cares/cares/{ares_strdup.h → src/lib/ares_strdup.h} +0 -0
  1029. data/third_party/cares/cares/{ares_strerror.c → src/lib/ares_strerror.c} +0 -0
  1030. data/third_party/cares/cares/{ares_strsplit.c → src/lib/ares_strsplit.c} +4 -0
  1031. data/third_party/cares/cares/{ares_strsplit.h → src/lib/ares_strsplit.h} +0 -0
  1032. data/third_party/cares/cares/{ares_timeout.c → src/lib/ares_timeout.c} +0 -0
  1033. data/third_party/cares/cares/{ares_version.c → src/lib/ares_version.c} +0 -0
  1034. data/third_party/cares/cares/{ares_writev.c → src/lib/ares_writev.c} +0 -0
  1035. data/third_party/cares/cares/src/lib/ares_writev.h +36 -0
  1036. data/third_party/cares/cares/{bitncmp.c → src/lib/bitncmp.c} +0 -0
  1037. data/third_party/cares/cares/{bitncmp.h → src/lib/bitncmp.h} +0 -0
  1038. data/third_party/cares/cares/src/lib/config-dos.h +115 -0
  1039. data/third_party/cares/cares/{config-win32.h → src/lib/config-win32.h} +0 -0
  1040. data/third_party/cares/cares/{inet_net_pton.c → src/lib/inet_net_pton.c} +2 -8
  1041. data/third_party/cares/cares/{inet_ntop.c → src/lib/inet_ntop.c} +2 -8
  1042. data/third_party/cares/cares/{setup_once.h → src/lib/setup_once.h} +0 -0
  1043. data/third_party/cares/cares/{windows_port.c → src/lib/windows_port.c} +0 -0
  1044. data/third_party/upb/third_party/utf8_range/naive.c +92 -0
  1045. data/third_party/upb/third_party/utf8_range/range2-neon.c +157 -0
  1046. data/third_party/upb/third_party/utf8_range/range2-sse.c +170 -0
  1047. data/third_party/upb/third_party/utf8_range/utf8_range.h +9 -0
  1048. data/third_party/upb/upb/decode.c +542 -319
  1049. data/third_party/upb/upb/decode.h +43 -17
  1050. data/third_party/upb/upb/decode_fast.c +303 -301
  1051. data/third_party/upb/upb/decode_fast.h +18 -18
  1052. data/third_party/upb/upb/decode_internal.h +73 -56
  1053. data/third_party/upb/upb/def.c +1926 -1078
  1054. data/third_party/upb/upb/def.h +329 -288
  1055. data/third_party/upb/upb/def.hpp +129 -172
  1056. data/third_party/upb/upb/encode.c +208 -175
  1057. data/third_party/upb/upb/encode.h +15 -17
  1058. data/third_party/upb/upb/json_encode.c +776 -0
  1059. data/third_party/upb/upb/json_encode.h +62 -0
  1060. data/third_party/upb/upb/msg.c +142 -124
  1061. data/third_party/upb/upb/msg.h +39 -33
  1062. data/third_party/upb/upb/msg_internal.h +342 -280
  1063. data/third_party/upb/upb/port_def.inc +8 -0
  1064. data/third_party/upb/upb/port_undef.inc +1 -0
  1065. data/third_party/upb/upb/reflection.c +239 -199
  1066. data/third_party/upb/upb/reflection.h +87 -67
  1067. data/third_party/upb/upb/reflection.hpp +6 -6
  1068. data/third_party/upb/upb/table.c +231 -147
  1069. data/third_party/upb/upb/table_internal.h +129 -95
  1070. data/third_party/upb/upb/text_encode.c +113 -90
  1071. data/third_party/upb/upb/text_encode.h +10 -10
  1072. data/third_party/upb/upb/upb.c +111 -72
  1073. data/third_party/upb/upb/upb.h +157 -151
  1074. data/third_party/upb/upb/upb.hpp +31 -28
  1075. data/third_party/upb/upb/upb_internal.h +21 -11
  1076. data/third_party/zlib/crc32.c +966 -292
  1077. data/third_party/zlib/crc32.h +9441 -436
  1078. data/third_party/zlib/deflate.c +78 -30
  1079. data/third_party/zlib/deflate.h +12 -15
  1080. data/third_party/zlib/gzguts.h +3 -2
  1081. data/third_party/zlib/gzlib.c +5 -3
  1082. data/third_party/zlib/gzread.c +5 -7
  1083. data/third_party/zlib/gzwrite.c +25 -13
  1084. data/third_party/zlib/infback.c +2 -1
  1085. data/third_party/zlib/inffast.c +14 -14
  1086. data/third_party/zlib/inflate.c +39 -8
  1087. data/third_party/zlib/inflate.h +3 -2
  1088. data/third_party/zlib/inftrees.c +3 -3
  1089. data/third_party/zlib/trees.c +27 -48
  1090. data/third_party/zlib/zlib.h +123 -100
  1091. data/third_party/zlib/zutil.c +2 -2
  1092. data/third_party/zlib/zutil.h +12 -9
  1093. metadata +337 -185
  1094. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +0 -44
  1095. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +0 -83
  1096. data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -264
  1097. data/src/core/ext/filters/max_age/max_age_filter.cc +0 -560
  1098. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +0 -122
  1099. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +0 -92
  1100. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +0 -192
  1101. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +0 -52
  1102. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +0 -79
  1103. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +0 -125
  1104. data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +0 -36
  1105. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +0 -38
  1106. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +0 -64
  1107. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +0 -38
  1108. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +0 -64
  1109. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +0 -38
  1110. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +0 -64
  1111. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +0 -38
  1112. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +0 -64
  1113. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +0 -38
  1114. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +0 -64
  1115. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.c +0 -102
  1116. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/eval.upb.h +0 -306
  1117. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.c +0 -56
  1118. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/explain.upb.h +0 -135
  1119. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.c +0 -115
  1120. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/value.upb.h +0 -371
  1121. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +0 -67
  1122. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +0 -35
  1123. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +0 -68
  1124. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +0 -35
  1125. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +0 -67
  1126. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +0 -35
  1127. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +0 -75
  1128. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +0 -35
  1129. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +0 -69
  1130. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +0 -35
  1131. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/eval.upbdefs.c +0 -58
  1132. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/eval.upbdefs.h +0 -55
  1133. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/explain.upbdefs.c +0 -44
  1134. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/explain.upbdefs.h +0 -40
  1135. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/value.upbdefs.c +0 -75
  1136. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/value.upbdefs.h +0 -55
  1137. data/src/core/ext/xds/xds_channel_creds.cc +0 -108
  1138. data/src/core/ext/xds/xds_channel_creds.h +0 -50
  1139. data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1654
  1140. data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
  1141. data/src/core/lib/iomgr/iomgr_custom.cc +0 -82
  1142. data/src/core/lib/iomgr/iomgr_custom.h +0 -49
  1143. data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
  1144. data/src/core/lib/iomgr/is_epollexclusive_available.h +0 -36
  1145. data/src/core/lib/iomgr/pollset_custom.cc +0 -105
  1146. data/src/core/lib/iomgr/pollset_custom.h +0 -37
  1147. data/src/core/lib/iomgr/pollset_set_custom.cc +0 -47
  1148. data/src/core/lib/iomgr/pollset_set_custom.h +0 -26
  1149. data/src/core/lib/iomgr/resolve_address_custom.cc +0 -191
  1150. data/src/core/lib/iomgr/resolve_address_custom.h +0 -126
  1151. data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
  1152. data/src/core/lib/iomgr/tcp_client_custom.cc +0 -146
  1153. data/src/core/lib/iomgr/tcp_custom.cc +0 -350
  1154. data/src/core/lib/iomgr/tcp_custom.h +0 -85
  1155. data/src/core/lib/iomgr/tcp_server_custom.cc +0 -457
  1156. data/src/core/lib/iomgr/timer_custom.cc +0 -96
  1157. data/src/core/lib/iomgr/timer_custom.h +0 -43
  1158. data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +0 -173
  1159. data/src/core/lib/security/authorization/sdk_server_authz_filter.h +0 -67
  1160. data/src/core/lib/slice/slice_intern.cc +0 -269
  1161. data/src/core/lib/slice/slice_utils.h +0 -200
  1162. data/src/core/lib/surface/init_secure.cc +0 -103
  1163. data/third_party/cares/cares/ares_getopt.c +0 -122
  1164. data/third_party/cares/cares/ares_getopt.h +0 -53
  1165. data/third_party/cares/cares/ares_parse_a_reply.c +0 -264
  1166. data/third_party/cares/cares/ares_parse_aaaa_reply.c +0 -264
  1167. data/third_party/cares/cares/ares_parse_soa_reply.c +0 -133
@@ -42,8 +42,6 @@ typedef enum {
42
42
  GRPC_STATS_COUNTER_POLLSET_KICK_WAKEUP_FD,
43
43
  GRPC_STATS_COUNTER_POLLSET_KICK_WAKEUP_CV,
44
44
  GRPC_STATS_COUNTER_POLLSET_KICK_OWN_THREAD,
45
- GRPC_STATS_COUNTER_SYSCALL_EPOLL_CTL,
46
- GRPC_STATS_COUNTER_POLLSET_FD_CACHE_HITS,
47
45
  GRPC_STATS_COUNTER_HISTOGRAM_SLOW_LOOKUPS,
48
46
  GRPC_STATS_COUNTER_SYSCALL_WRITE,
49
47
  GRPC_STATS_COUNTER_SYSCALL_READ,
@@ -76,6 +74,7 @@ typedef enum {
76
74
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_STREAM_FLOW_CONTROL,
77
75
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL,
78
76
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS,
77
+ GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SETTINGS_ACK,
79
78
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING,
80
79
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_SETTING,
81
80
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_UPDATE,
@@ -206,10 +205,6 @@ typedef enum {
206
205
  GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_POLLSET_KICK_WAKEUP_CV)
207
206
  #define GRPC_STATS_INC_POLLSET_KICK_OWN_THREAD() \
208
207
  GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_POLLSET_KICK_OWN_THREAD)
209
- #define GRPC_STATS_INC_SYSCALL_EPOLL_CTL() \
210
- GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_SYSCALL_EPOLL_CTL)
211
- #define GRPC_STATS_INC_POLLSET_FD_CACHE_HITS() \
212
- GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_POLLSET_FD_CACHE_HITS)
213
208
  #define GRPC_STATS_INC_HISTOGRAM_SLOW_LOOKUPS() \
214
209
  GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_HISTOGRAM_SLOW_LOOKUPS)
215
210
  #define GRPC_STATS_INC_SYSCALL_WRITE() \
@@ -287,6 +282,9 @@ typedef enum {
287
282
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS() \
288
283
  GRPC_STATS_INC_COUNTER( \
289
284
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS)
285
+ #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SETTINGS_ACK() \
286
+ GRPC_STATS_INC_COUNTER( \
287
+ GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_SETTINGS_ACK)
290
288
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING() \
291
289
  GRPC_STATS_INC_COUNTER( \
292
290
  GRPC_STATS_COUNTER_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING)
@@ -398,43 +396,43 @@ typedef enum {
398
396
  GRPC_STATS_INC_COUNTER(GRPC_STATS_COUNTER_CQ_EV_QUEUE_TRANSIENT_POP_FAILURES)
399
397
  #define GRPC_STATS_INC_CALL_INITIAL_SIZE(value) \
400
398
  grpc_stats_inc_call_initial_size((int)(value))
401
- void grpc_stats_inc_call_initial_size(int value);
399
+ void grpc_stats_inc_call_initial_size(int x);
402
400
  #define GRPC_STATS_INC_POLL_EVENTS_RETURNED(value) \
403
401
  grpc_stats_inc_poll_events_returned((int)(value))
404
- void grpc_stats_inc_poll_events_returned(int value);
402
+ void grpc_stats_inc_poll_events_returned(int x);
405
403
  #define GRPC_STATS_INC_TCP_WRITE_SIZE(value) \
406
404
  grpc_stats_inc_tcp_write_size((int)(value))
407
- void grpc_stats_inc_tcp_write_size(int value);
405
+ void grpc_stats_inc_tcp_write_size(int x);
408
406
  #define GRPC_STATS_INC_TCP_WRITE_IOV_SIZE(value) \
409
407
  grpc_stats_inc_tcp_write_iov_size((int)(value))
410
- void grpc_stats_inc_tcp_write_iov_size(int value);
408
+ void grpc_stats_inc_tcp_write_iov_size(int x);
411
409
  #define GRPC_STATS_INC_TCP_READ_SIZE(value) \
412
410
  grpc_stats_inc_tcp_read_size((int)(value))
413
- void grpc_stats_inc_tcp_read_size(int value);
411
+ void grpc_stats_inc_tcp_read_size(int x);
414
412
  #define GRPC_STATS_INC_TCP_READ_OFFER(value) \
415
413
  grpc_stats_inc_tcp_read_offer((int)(value))
416
- void grpc_stats_inc_tcp_read_offer(int value);
414
+ void grpc_stats_inc_tcp_read_offer(int x);
417
415
  #define GRPC_STATS_INC_TCP_READ_OFFER_IOV_SIZE(value) \
418
416
  grpc_stats_inc_tcp_read_offer_iov_size((int)(value))
419
- void grpc_stats_inc_tcp_read_offer_iov_size(int value);
417
+ void grpc_stats_inc_tcp_read_offer_iov_size(int x);
420
418
  #define GRPC_STATS_INC_HTTP2_SEND_MESSAGE_SIZE(value) \
421
419
  grpc_stats_inc_http2_send_message_size((int)(value))
422
- void grpc_stats_inc_http2_send_message_size(int value);
420
+ void grpc_stats_inc_http2_send_message_size(int x);
423
421
  #define GRPC_STATS_INC_HTTP2_SEND_INITIAL_METADATA_PER_WRITE(value) \
424
422
  grpc_stats_inc_http2_send_initial_metadata_per_write((int)(value))
425
- void grpc_stats_inc_http2_send_initial_metadata_per_write(int value);
423
+ void grpc_stats_inc_http2_send_initial_metadata_per_write(int x);
426
424
  #define GRPC_STATS_INC_HTTP2_SEND_MESSAGE_PER_WRITE(value) \
427
425
  grpc_stats_inc_http2_send_message_per_write((int)(value))
428
- void grpc_stats_inc_http2_send_message_per_write(int value);
426
+ void grpc_stats_inc_http2_send_message_per_write(int x);
429
427
  #define GRPC_STATS_INC_HTTP2_SEND_TRAILING_METADATA_PER_WRITE(value) \
430
428
  grpc_stats_inc_http2_send_trailing_metadata_per_write((int)(value))
431
- void grpc_stats_inc_http2_send_trailing_metadata_per_write(int value);
429
+ void grpc_stats_inc_http2_send_trailing_metadata_per_write(int x);
432
430
  #define GRPC_STATS_INC_HTTP2_SEND_FLOWCTL_PER_WRITE(value) \
433
431
  grpc_stats_inc_http2_send_flowctl_per_write((int)(value))
434
- void grpc_stats_inc_http2_send_flowctl_per_write(int value);
432
+ void grpc_stats_inc_http2_send_flowctl_per_write(int x);
435
433
  #define GRPC_STATS_INC_SERVER_CQS_CHECKED(value) \
436
434
  grpc_stats_inc_server_cqs_checked((int)(value))
437
- void grpc_stats_inc_server_cqs_checked(int value);
435
+ void grpc_stats_inc_server_cqs_checked(int x);
438
436
  #else
439
437
  #define GRPC_STATS_INC_CLIENT_CALLS_CREATED()
440
438
  #define GRPC_STATS_INC_SERVER_CALLS_CREATED()
@@ -450,8 +448,6 @@ void grpc_stats_inc_server_cqs_checked(int value);
450
448
  #define GRPC_STATS_INC_POLLSET_KICK_WAKEUP_FD()
451
449
  #define GRPC_STATS_INC_POLLSET_KICK_WAKEUP_CV()
452
450
  #define GRPC_STATS_INC_POLLSET_KICK_OWN_THREAD()
453
- #define GRPC_STATS_INC_SYSCALL_EPOLL_CTL()
454
- #define GRPC_STATS_INC_POLLSET_FD_CACHE_HITS()
455
451
  #define GRPC_STATS_INC_HISTOGRAM_SLOW_LOOKUPS()
456
452
  #define GRPC_STATS_INC_SYSCALL_WRITE()
457
453
  #define GRPC_STATS_INC_SYSCALL_READ()
@@ -484,6 +480,7 @@ void grpc_stats_inc_server_cqs_checked(int value);
484
480
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_STREAM_FLOW_CONTROL()
485
481
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_TRANSPORT_FLOW_CONTROL()
486
482
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SEND_SETTINGS()
483
+ #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_SETTINGS_ACK()
487
484
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_BDP_ESTIMATOR_PING()
488
485
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_SETTING()
489
486
  #define GRPC_STATS_INC_HTTP2_INITIATE_WRITE_DUE_TO_FLOW_CONTROL_UNSTALLED_BY_UPDATE()
@@ -1,5 +1,4 @@
1
- //
2
- // Copyright 2017 gRPC authors.
1
+ // Copyright 2022 The gRPC Authors
3
2
  //
4
3
  // Licensed under the Apache License, Version 2.0 (the "License");
5
4
  // you may not use this file except in compliance with the License.
@@ -12,15 +11,17 @@
12
11
  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
12
  // See the License for the specific language governing permissions and
14
13
  // limitations under the License.
15
- //
16
-
17
- #ifndef GRPC_CORE_EXT_FILTERS_MAX_AGE_MAX_AGE_FILTER_H
18
- #define GRPC_CORE_EXT_FILTERS_MAX_AGE_MAX_AGE_FILTER_H
19
-
20
14
  #include <grpc/support/port_platform.h>
21
15
 
22
- #include "src/core/lib/channel/channel_stack.h"
16
+ #include "src/core/lib/event_engine/event_engine_factory.h"
17
+
18
+ namespace grpc_event_engine {
19
+ namespace experimental {
23
20
 
24
- extern const grpc_channel_filter grpc_max_age_filter;
21
+ std::unique_ptr<EventEngine> DefaultEventEngineFactory() {
22
+ // TODO(hork): call LibuvEventEngineFactory
23
+ return nullptr;
24
+ }
25
25
 
26
- #endif /* GRPC_CORE_EXT_FILTERS_MAX_AGE_MAX_AGE_FILTER_H */
26
+ } // namespace experimental
27
+ } // namespace grpc_event_engine
@@ -17,21 +17,36 @@
17
17
  #include <grpc/event_engine/port.h>
18
18
  #include <grpc/support/log.h>
19
19
 
20
+ #include "src/core/lib/event_engine/event_engine_factory.h"
21
+ #include "src/core/lib/gprpp/sync.h"
22
+
20
23
  namespace grpc_event_engine {
21
24
  namespace experimental {
22
25
 
23
- EventEngine::ResolvedAddress::ResolvedAddress(const sockaddr* address,
24
- socklen_t size)
25
- : size_(size) {
26
- GPR_ASSERT(size <= sizeof(address_));
27
- memcpy(&address_, address, size);
26
+ namespace {
27
+ const std::function<std::unique_ptr<EventEngine>()>* g_event_engine_factory =
28
+ nullptr;
29
+ grpc_core::Mutex* g_mu = new grpc_core::Mutex();
30
+ } // namespace
31
+
32
+ void SetDefaultEventEngineFactory(
33
+ const std::function<std::unique_ptr<EventEngine>()>* factory) {
34
+ grpc_core::MutexLock lock(g_mu);
35
+ g_event_engine_factory = factory;
28
36
  }
29
37
 
30
- const struct sockaddr* EventEngine::ResolvedAddress::address() const {
31
- return reinterpret_cast<const struct sockaddr*>(address_);
38
+ std::unique_ptr<EventEngine> CreateEventEngine() {
39
+ grpc_core::MutexLock lock(g_mu);
40
+ if (g_event_engine_factory != nullptr) {
41
+ return (*g_event_engine_factory)();
42
+ }
43
+ return DefaultEventEngineFactory();
32
44
  }
33
45
 
34
- socklen_t EventEngine::ResolvedAddress::size() const { return size_; }
46
+ EventEngine* GetDefaultEventEngine() {
47
+ static EventEngine* default_event_engine = CreateEventEngine().release();
48
+ return default_event_engine;
49
+ }
35
50
 
36
51
  } // namespace experimental
37
52
  } // namespace grpc_event_engine
@@ -27,6 +27,9 @@ namespace experimental {
27
27
  /// Strongly consider whether you could use \a CreateEventEngine instead.
28
28
  EventEngine* GetDefaultEventEngine();
29
29
 
30
+ /// Create an EventEngine using the default factory provided at link time.
31
+ std::unique_ptr<EventEngine> DefaultEventEngineFactory();
32
+
30
33
  } // namespace experimental
31
34
  } // namespace grpc_event_engine
32
35
 
@@ -26,28 +26,24 @@ namespace {
26
26
 
27
27
  // Reference count for a slice allocated by MemoryAllocator::MakeSlice.
28
28
  // Takes care of releasing memory back when the slice is destroyed.
29
- class SliceRefCount {
29
+ class SliceRefCount : public grpc_slice_refcount {
30
30
  public:
31
- static void Destroy(void* p) {
32
- auto* rc = static_cast<SliceRefCount*>(p);
33
- rc->~SliceRefCount();
34
- gpr_free(rc);
35
- }
36
31
  SliceRefCount(std::shared_ptr<internal::MemoryAllocatorImpl> allocator,
37
32
  size_t size)
38
- : base_(grpc_slice_refcount::Type::REGULAR, &refs_, Destroy, this,
39
- &base_),
33
+ : grpc_slice_refcount(Destroy),
40
34
  allocator_(std::move(allocator)),
41
35
  size_(size) {
42
36
  // Nothing to do here.
43
37
  }
44
38
  ~SliceRefCount() { allocator_->Release(size_); }
45
39
 
46
- grpc_slice_refcount* base_refcount() { return &base_; }
47
-
48
40
  private:
49
- grpc_slice_refcount base_;
50
- std::atomic<size_t> refs_{1};
41
+ static void Destroy(grpc_slice_refcount* p) {
42
+ auto* rc = static_cast<SliceRefCount*>(p);
43
+ rc->~SliceRefCount();
44
+ gpr_free(rc);
45
+ }
46
+
51
47
  std::shared_ptr<internal::MemoryAllocatorImpl> allocator_;
52
48
  size_t size_;
53
49
  };
@@ -59,7 +55,7 @@ grpc_slice MemoryAllocator::MakeSlice(MemoryRequest request) {
59
55
  void* p = gpr_malloc(size);
60
56
  new (p) SliceRefCount(allocator_, size);
61
57
  grpc_slice slice;
62
- slice.refcount = static_cast<SliceRefCount*>(p)->base_refcount();
58
+ slice.refcount = static_cast<SliceRefCount*>(p);
63
59
  slice.data.refcounted.bytes =
64
60
  static_cast<uint8_t*>(p) + sizeof(SliceRefCount);
65
61
  slice.data.refcounted.length = size - sizeof(SliceRefCount);
@@ -14,36 +14,26 @@
14
14
  #include <grpc/support/port_platform.h>
15
15
 
16
16
  #include <grpc/event_engine/event_engine.h>
17
+ #include <grpc/event_engine/port.h>
18
+ #include <grpc/support/log.h>
17
19
 
18
20
  #include "src/core/lib/gprpp/sync.h"
19
21
 
20
22
  namespace grpc_event_engine {
21
23
  namespace experimental {
22
24
 
23
- namespace {
24
- std::function<std::unique_ptr<EventEngine>()>* g_event_engine_factory = nullptr;
25
- grpc_core::Mutex* g_mu = new grpc_core::Mutex();
26
- } // namespace
27
-
28
- EventEngine* GetDefaultEventEngine() {
29
- static EventEngine* default_event_engine = CreateEventEngine().release();
30
- return default_event_engine;
25
+ EventEngine::ResolvedAddress::ResolvedAddress(const sockaddr* address,
26
+ socklen_t size)
27
+ : size_(size) {
28
+ GPR_ASSERT(size <= sizeof(address_));
29
+ memcpy(&address_, address, size);
31
30
  }
32
31
 
33
- void SetDefaultEventEngineFactory(
34
- std::function<std::unique_ptr<EventEngine>()>* factory) {
35
- grpc_core::MutexLock lock(g_mu);
36
- g_event_engine_factory = factory;
32
+ const struct sockaddr* EventEngine::ResolvedAddress::address() const {
33
+ return reinterpret_cast<const struct sockaddr*>(address_);
37
34
  }
38
35
 
39
- std::unique_ptr<EventEngine> CreateEventEngine() {
40
- grpc_core::MutexLock lock(g_mu);
41
- if (g_event_engine_factory == nullptr) {
42
- // TODO(hork): call LibuvEventEngineFactory
43
- abort();
44
- }
45
- return (*g_event_engine_factory)();
46
- }
36
+ socklen_t EventEngine::ResolvedAddress::size() const { return size_; }
47
37
 
48
38
  } // namespace experimental
49
39
  } // namespace grpc_event_engine
@@ -131,6 +131,7 @@ int gpr_cv_wait(gpr_cv* cv, gpr_mu* mu, gpr_timespec abs_deadline) {
131
131
  abs_deadline = gpr_convert_clock_type(abs_deadline, GPR_CLOCK_MONOTONIC);
132
132
  #else
133
133
  abs_deadline = gpr_convert_clock_type(abs_deadline, GPR_CLOCK_REALTIME);
134
+ abs_deadline = gpr_time_max(abs_deadline, gpr_now(abs_deadline.clock_type));
134
135
  #endif // GPR_LINUX
135
136
  abs_deadline_ts.tv_sec = static_cast<time_t>(abs_deadline.tv_sec);
136
137
  abs_deadline_ts.tv_nsec = abs_deadline.tv_nsec;
@@ -184,7 +184,8 @@ gpr_timespec gpr_time_sub(gpr_timespec a, gpr_timespec b) {
184
184
  dec++;
185
185
  }
186
186
  if (a.tv_sec == INT64_MAX || a.tv_sec == INT64_MIN) {
187
- diff = a;
187
+ diff.tv_sec = a.tv_sec;
188
+ diff.tv_nsec = a.tv_nsec;
188
189
  } else if (b.tv_sec == INT64_MIN ||
189
190
  (b.tv_sec <= 0 && a.tv_sec >= INT64_MAX + b.tv_sec)) {
190
191
  diff = gpr_inf_future(GPR_CLOCK_REALTIME);
@@ -50,6 +50,7 @@ class TlsTypeConstrainer {
50
50
 
51
51
  #include <pthread.h>
52
52
 
53
+ #include <algorithm>
53
54
  #include <array>
54
55
  #include <cstring>
55
56
 
@@ -106,6 +106,20 @@ constexpr size_t HashPointer(T* p, size_t range) {
106
106
  range;
107
107
  }
108
108
 
109
+ // Compute a+b.
110
+ // If the result is greater than INT64_MAX, return INT64_MAX.
111
+ // If the result is less than INT64_MIN, return INT64_MIN.
112
+ inline int64_t SaturatingAdd(int64_t a, int64_t b) {
113
+ if (a > 0) {
114
+ if (b > INT64_MAX - a) {
115
+ return INT64_MAX;
116
+ }
117
+ } else if (b < INT64_MIN - a) {
118
+ return INT64_MIN;
119
+ }
120
+ return a + b;
121
+ }
122
+
109
123
  inline uint32_t MixHash32(uint32_t a, uint32_t b) {
110
124
  return RotateLeft(a, 2u) ^ b;
111
125
  }
@@ -153,6 +153,18 @@ class BitSet {
153
153
  return true;
154
154
  }
155
155
 
156
+ template <typename Int>
157
+ typename std::enable_if<std::is_unsigned<Int>::value &&
158
+ (sizeof(Int) * 8 >= kTotalBits),
159
+ Int>::type
160
+ ToInt() const {
161
+ Int result = 0;
162
+ for (size_t i = 0; i < kTotalBits; i++) {
163
+ if (is_set(i)) result |= (Int(1) << i);
164
+ }
165
+ return result;
166
+ }
167
+
156
168
  private:
157
169
  // Given a bit index, return which unit it's stored in.
158
170
  static constexpr size_t unit_for(size_t bit) { return bit / kUnitBits; }
@@ -0,0 +1,76 @@
1
+ // Copyright 2021 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
+ #ifndef GRPC_CORE_LIB_GPRPP_CAPTURE_H
16
+ #define GRPC_CORE_LIB_GPRPP_CAPTURE_H
17
+
18
+ #include <grpc/support/port_platform.h>
19
+
20
+ #include <tuple>
21
+ #include <utility>
22
+
23
+ #include "absl/utility/utility.h"
24
+
25
+ namespace grpc_core {
26
+
27
+ namespace detail {
28
+
29
+ template <typename F, typename... Captures>
30
+ class Capture {
31
+ public:
32
+ explicit Capture(F f, Captures... captures)
33
+ : f_(std::move(f)), captures_(std::move(captures)...) {}
34
+
35
+ template <typename... Args>
36
+ decltype(std::declval<F>()(static_cast<Captures*>(nullptr)...,
37
+ std::declval<Args>()...))
38
+ operator()(Args... args) {
39
+ auto f = &f_;
40
+ return absl::apply(
41
+ [f, &args...](Captures&... captures) {
42
+ return (*f)(&captures..., std::move(args)...);
43
+ },
44
+ captures_);
45
+ }
46
+
47
+ private:
48
+ GPR_NO_UNIQUE_ADDRESS F f_;
49
+ GPR_NO_UNIQUE_ADDRESS std::tuple<Captures...> captures_;
50
+ };
51
+
52
+ } // namespace detail
53
+
54
+ // C++11 helper - best explained by usage:
55
+ //
56
+ // BigThing big_thing;
57
+ // auto f = Capture(
58
+ // [](BigThing* c, int a, int b) { /*...*/ },
59
+ // std::move(big_thing));
60
+ //
61
+ // results in: f being a callable that takes arguments (int a, int b), and
62
+ // captures the original value of big_thing by move. Each call, a pointer to
63
+ // each captured thing is inserted into the argument list at the beginning so it
64
+ // can be manipulated.
65
+ //
66
+ // Captured values are mutable, and it's the users responsibility to ensure,
67
+ // should this callable be invoked from different threads, that proper locking
68
+ // is implemented.
69
+ template <typename F, typename... Captures>
70
+ detail::Capture<F, Captures...> Capture(F f, Captures... captures) {
71
+ return detail::Capture<F, Captures...>(std::move(f), std::move(captures)...);
72
+ }
73
+
74
+ } // namespace grpc_core
75
+
76
+ #endif // GRPC_CORE_LIB_GPRPP_CAPTURE_H
@@ -31,6 +31,10 @@ class CppImplOf {
31
31
  return reinterpret_cast<CppType*>(c_type);
32
32
  }
33
33
 
34
+ static const CppType* FromC(const CType* c_type) {
35
+ return reinterpret_cast<const CppType*>(c_type);
36
+ }
37
+
34
38
  // Retrieve a c pointer (of the same ownership as this)
35
39
  CType* c_ptr() {
36
40
  return reinterpret_cast<CType*>(static_cast<CppType*>(this));
@@ -42,6 +42,8 @@ class DebugLocation {
42
42
  #else
43
43
  class DebugLocation {
44
44
  public:
45
+ DebugLocation() {}
46
+ DebugLocation(const char* /* file */, int /* line */) {}
45
47
  const char* file() const { return nullptr; }
46
48
  int line() const { return -1; }
47
49
  };
@@ -0,0 +1,73 @@
1
+ // Copyright 2021 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
+ #ifndef GRPC_CORE_LIB_GPRPP_MATCH_H
16
+ #define GRPC_CORE_LIB_GPRPP_MATCH_H
17
+
18
+ #include <grpc/support/port_platform.h>
19
+
20
+ #include "absl/types/variant.h"
21
+
22
+ #include "src/core/lib/gprpp/overload.h"
23
+
24
+ namespace grpc_core {
25
+
26
+ namespace detail {
27
+
28
+ template <typename... Cases>
29
+ struct MatchPointerExtractor {
30
+ OverloadType<Cases...> cases;
31
+ template <typename T>
32
+ auto operator()(T& value) -> decltype(cases(&value)) {
33
+ return cases(&value);
34
+ }
35
+ };
36
+
37
+ } // namespace detail
38
+
39
+ /// Match on a variant.
40
+ /// Given variant \a value, and a set of callables \a fs, call the appropriate
41
+ /// callable based on the type contained in \a value.
42
+ ///
43
+ /// Example (prints "hoorah"):
44
+ /// variant<int, string> v = 42;
45
+ /// Match(v,
46
+ /// [](int i) { puts("hoorah"); },
47
+ /// [](string s) { puts("boo"); });
48
+ template <typename... Fs, typename T0, typename... Ts>
49
+ auto Match(const absl::variant<T0, Ts...>& value, Fs... fs)
50
+ -> decltype(std::declval<OverloadType<Fs...>>()(std::declval<T0>())) {
51
+ return absl::visit(Overload(std::move(fs)...), value);
52
+ }
53
+
54
+ /// A version of Match that takes a mutable pointer to a variant and calls its
55
+ /// overload callables with a mutable pointer to the current variant value.
56
+ ///
57
+ /// Example:
58
+ /// variant<int, string> v = 42;
59
+ /// MatchMutable(&v,
60
+ /// [](int* i) { *i = 1; },
61
+ /// [](string* s) { *s = "foo"; });
62
+ /// // v now contains 1.
63
+ template <typename... Fs, typename T0, typename... Ts>
64
+ auto MatchMutable(absl::variant<T0, Ts...>* value, Fs... fs)
65
+ -> decltype(std::declval<OverloadType<Fs...>>()(std::declval<T0*>())) {
66
+ return absl::visit(detail::MatchPointerExtractor<Fs...>{OverloadType<Fs...>(
67
+ std::move(fs)...)},
68
+ *value);
69
+ }
70
+
71
+ } // namespace grpc_core
72
+
73
+ #endif // GRPC_CORE_LIB_GPRPP_MATCH_H
@@ -0,0 +1,59 @@
1
+ // Copyright 2021 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
+ #ifndef GRPC_CORE_LIB_GPRPP_OVERLOAD_H
16
+ #define GRPC_CORE_LIB_GPRPP_OVERLOAD_H
17
+
18
+ #include <grpc/support/port_platform.h>
19
+
20
+ #include <utility>
21
+
22
+ namespace grpc_core {
23
+
24
+ template <typename... Cases>
25
+ struct OverloadType;
26
+ // Compose one overload with N more -- use inheritance to leverage using and the
27
+ // empty base class optimization.
28
+ template <typename Case, typename... Cases>
29
+ struct OverloadType<Case, Cases...> : public Case,
30
+ public OverloadType<Cases...> {
31
+ explicit OverloadType(Case&& c, Cases&&... cases)
32
+ : Case(std::forward<Case>(c)),
33
+ OverloadType<Cases...>(std::forward<Cases>(cases)...) {}
34
+ using Case::operator();
35
+ using OverloadType<Cases...>::operator();
36
+ };
37
+ // Overload of a single case is just that case itself
38
+ template <typename Case>
39
+ struct OverloadType<Case> : public Case {
40
+ explicit OverloadType(Case&& c) : Case(std::forward<Case>(c)) {}
41
+ using Case::operator();
42
+ };
43
+
44
+ /// Compose callables into a single callable.
45
+ /// e.g. given [](int i) { puts("a"); } and [](double d) { puts("b"); },
46
+ /// return a callable object like:
47
+ /// struct {
48
+ /// void operator()(int i) { puts("a"); }
49
+ /// void operator()(double i) { puts("b"); }
50
+ /// };
51
+ /// Preserves all captures.
52
+ template <typename... Cases>
53
+ OverloadType<Cases...> Overload(Cases... cases) {
54
+ return OverloadType<Cases...>(std::move(cases)...);
55
+ }
56
+
57
+ } // namespace grpc_core
58
+
59
+ #endif // GRPC_CORE_LIB_GPRPP_OVERLOAD_H
@@ -281,6 +281,8 @@ template <typename Child, typename Impl = PolymorphicRefCount,
281
281
  UnrefBehavior UnrefBehaviorArg = kUnrefDelete>
282
282
  class RefCounted : public Impl {
283
283
  public:
284
+ using RefCountedChildType = Child;
285
+
284
286
  // Note: Depending on the Impl used, this dtor can be implicitly virtual.
285
287
  ~RefCounted() = default;
286
288