grpc 1.62.0 → 1.64.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1761) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +463 -2007
  3. data/include/grpc/byte_buffer.h +1 -2
  4. data/include/grpc/census.h +1 -2
  5. data/include/grpc/compression.h +1 -2
  6. data/include/grpc/credentials.h +1222 -0
  7. data/include/grpc/event_engine/endpoint_config.h +2 -2
  8. data/include/grpc/event_engine/event_engine.h +4 -2
  9. data/include/grpc/event_engine/extensible.h +2 -2
  10. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -2
  11. data/include/grpc/event_engine/memory_allocator.h +1 -2
  12. data/include/grpc/event_engine/memory_request.h +2 -2
  13. data/include/grpc/event_engine/slice.h +1 -2
  14. data/include/grpc/event_engine/slice_buffer.h +1 -2
  15. data/include/grpc/grpc.h +8 -8
  16. data/include/grpc/grpc_audit_logging.h +1 -2
  17. data/include/grpc/grpc_crl_provider.h +3 -2
  18. data/include/grpc/grpc_cronet.h +1 -2
  19. data/include/grpc/grpc_posix.h +1 -2
  20. data/include/grpc/grpc_security.h +1 -1173
  21. data/include/grpc/impl/call.h +1 -2
  22. data/include/grpc/impl/channel_arg_names.h +4 -3
  23. data/include/grpc/impl/grpc_types.h +1 -2
  24. data/include/grpc/impl/slice_type.h +2 -2
  25. data/include/grpc/module.modulemap +2 -0
  26. data/include/grpc/slice.h +1 -2
  27. data/include/grpc/slice_buffer.h +1 -2
  28. data/include/grpc/support/alloc.h +2 -2
  29. data/include/grpc/support/json.h +2 -2
  30. data/include/grpc/support/log.h +3 -3
  31. data/include/grpc/support/metrics.h +51 -0
  32. data/include/grpc/support/string_util.h +0 -1
  33. data/include/grpc/support/sync.h +0 -1
  34. data/include/grpc/support/sync_abseil.h +0 -1
  35. data/include/grpc/support/sync_custom.h +0 -1
  36. data/include/grpc/support/sync_generic.h +1 -2
  37. data/include/grpc/support/sync_posix.h +1 -2
  38. data/include/grpc/support/time.h +2 -2
  39. data/src/core/{lib/channel → channelz}/channel_trace.cc +56 -62
  40. data/src/core/{lib/channel → channelz}/channel_trace.h +21 -19
  41. data/src/core/{lib/channel → channelz}/channelz.cc +68 -6
  42. data/src/core/{lib/channel → channelz}/channelz.h +54 -12
  43. data/src/core/{lib/channel → channelz}/channelz_registry.cc +7 -6
  44. data/src/core/{lib/channel → channelz}/channelz_registry.h +7 -7
  45. data/src/core/client_channel/client_channel_filter.cc +106 -100
  46. data/src/core/client_channel/client_channel_filter.h +8 -18
  47. data/src/core/client_channel/client_channel_internal.h +4 -3
  48. data/src/core/client_channel/client_channel_service_config.h +5 -4
  49. data/src/core/client_channel/config_selector.h +5 -4
  50. data/src/core/client_channel/connector.h +1 -1
  51. data/src/core/client_channel/dynamic_filters.cc +3 -2
  52. data/src/core/client_channel/dynamic_filters.h +1 -1
  53. data/src/core/client_channel/local_subchannel_pool.cc +5 -3
  54. data/src/core/client_channel/retry_filter.cc +1 -1
  55. data/src/core/client_channel/retry_filter.h +4 -3
  56. data/src/core/client_channel/retry_filter_legacy_call_data.cc +6 -5
  57. data/src/core/client_channel/retry_filter_legacy_call_data.h +9 -9
  58. data/src/core/client_channel/retry_service_config.h +3 -3
  59. data/src/core/client_channel/retry_throttle.h +3 -2
  60. data/src/core/client_channel/subchannel.cc +15 -14
  61. data/src/core/client_channel/subchannel.h +7 -8
  62. data/src/core/client_channel/subchannel_pool_interface.h +1 -1
  63. data/src/core/client_channel/subchannel_stream_client.cc +6 -8
  64. data/src/core/client_channel/subchannel_stream_client.h +2 -2
  65. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -52
  66. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +2 -14
  67. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +27 -25
  68. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +10 -11
  69. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +8 -9
  70. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +4 -4
  71. data/src/core/ext/filters/http/client/http_client_filter.cc +5 -4
  72. data/src/core/ext/filters/http/client/http_client_filter.h +5 -5
  73. data/src/core/ext/filters/http/client_authority_filter.cc +4 -3
  74. data/src/core/ext/filters/http/client_authority_filter.h +5 -4
  75. data/src/core/ext/filters/http/http_filters_plugin.cc +15 -35
  76. data/src/core/ext/filters/http/message_compress/compression_filter.cc +17 -15
  77. data/src/core/ext/filters/http/message_compress/compression_filter.h +10 -9
  78. data/src/core/ext/filters/http/server/http_server_filter.cc +3 -3
  79. data/src/core/ext/filters/http/server/http_server_filter.h +5 -5
  80. data/src/core/ext/filters/message_size/message_size_filter.cc +24 -28
  81. data/src/core/ext/filters/message_size/message_size_filter.h +8 -6
  82. data/src/core/ext/filters/rbac/rbac_filter.cc +5 -7
  83. data/src/core/ext/filters/rbac/rbac_filter.h +5 -5
  84. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
  85. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +12 -12
  86. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +3 -2
  87. data/src/core/ext/gcp/metadata_query.cc +4 -3
  88. data/src/core/ext/gcp/metadata_query.h +2 -2
  89. data/src/core/ext/transport/chttp2/alpn/alpn.cc +4 -3
  90. data/src/core/ext/transport/chttp2/alpn/alpn.h +2 -2
  91. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +17 -22
  92. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +2 -3
  93. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +48 -11
  94. data/src/core/ext/transport/chttp2/server/chttp2_server.h +3 -3
  95. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +6 -6
  96. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +1 -2
  97. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +8 -7
  98. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +1 -2
  99. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +80 -128
  100. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +25 -7
  101. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +15 -12
  102. data/src/core/ext/transport/chttp2/transport/decode_huff.cc +2 -2
  103. data/src/core/ext/transport/chttp2/transport/decode_huff.h +2 -2
  104. data/src/core/ext/transport/chttp2/transport/flow_control.cc +4 -4
  105. data/src/core/ext/transport/chttp2/transport/flow_control.h +4 -4
  106. data/src/core/ext/transport/chttp2/transport/frame.cc +4 -4
  107. data/src/core/ext/transport/chttp2/transport/frame.h +2 -2
  108. data/src/core/ext/transport/chttp2/transport/frame_data.cc +3 -3
  109. data/src/core/ext/transport/chttp2/transport/frame_data.h +1 -2
  110. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +5 -5
  111. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +1 -2
  112. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +3 -3
  113. data/src/core/ext/transport/chttp2/transport/frame_ping.h +1 -2
  114. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +3 -3
  115. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +1 -2
  116. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +1 -2
  117. data/src/core/ext/transport/chttp2/transport/frame_settings.h +1 -2
  118. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +4 -4
  119. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +1 -2
  120. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +2 -2
  121. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +4 -3
  122. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +1 -2
  123. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +10 -9
  124. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +2 -2
  125. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.cc +4 -3
  126. data/src/core/ext/transport/chttp2/transport/hpack_parse_result.h +3 -3
  127. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +25 -73
  128. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -4
  129. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +5 -5
  130. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +2 -2
  131. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +2 -2
  132. data/src/core/ext/transport/chttp2/transport/http2_settings.h +2 -2
  133. data/src/core/ext/transport/chttp2/transport/http_trace.cc +2 -2
  134. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +2 -2
  135. data/src/core/ext/transport/chttp2/transport/internal.h +7 -7
  136. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc +4 -3
  137. data/src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.h +2 -2
  138. data/src/core/ext/transport/chttp2/transport/parsing.cc +19 -24
  139. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.cc +1 -2
  140. data/src/core/ext/transport/chttp2/transport/ping_abuse_policy.h +2 -2
  141. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +3 -3
  142. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +1 -2
  143. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +1 -2
  144. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +2 -2
  145. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +7 -6
  146. data/src/core/ext/transport/chttp2/transport/varint.cc +2 -2
  147. data/src/core/ext/transport/chttp2/transport/varint.h +4 -3
  148. data/src/core/ext/transport/chttp2/transport/write_size_policy.cc +4 -3
  149. data/src/core/ext/transport/chttp2/transport/write_size_policy.h +2 -2
  150. data/src/core/ext/transport/chttp2/transport/writing.cc +69 -53
  151. data/src/core/ext/transport/inproc/inproc_transport.cc +18 -16
  152. data/src/core/ext/transport/inproc/inproc_transport.h +1 -2
  153. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +16 -16
  154. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +1 -2
  155. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb.h +243 -230
  156. data/src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c +42 -48
  157. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb.h +289 -265
  158. data/src/core/ext/upb-gen/envoy/admin/v3/clusters.upb_minitable.c +62 -70
  159. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb.h +238 -226
  160. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump.upb_minitable.c +42 -50
  161. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb.h +937 -882
  162. data/src/core/ext/upb-gen/envoy/admin/v3/config_dump_shared.upb_minitable.c +182 -208
  163. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb.h +77 -76
  164. data/src/core/ext/upb-gen/envoy/admin/v3/init_dump.upb_minitable.c +9 -9
  165. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb.h +86 -84
  166. data/src/core/ext/upb-gen/envoy/admin/v3/listeners.upb_minitable.c +13 -13
  167. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb.h +49 -42
  168. data/src/core/ext/upb-gen/envoy/admin/v3/memory.upb_minitable.c +13 -13
  169. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb.h +28 -24
  170. data/src/core/ext/upb-gen/envoy/admin/v3/metrics.upb_minitable.c +7 -7
  171. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb.h +28 -24
  172. data/src/core/ext/upb-gen/envoy/admin/v3/mutex_stats.upb_minitable.c +7 -7
  173. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb.h +357 -318
  174. data/src/core/ext/upb-gen/envoy/admin/v3/server_info.upb_minitable.c +86 -86
  175. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb.h +23 -20
  176. data/src/core/ext/upb-gen/envoy/admin/v3/tap.upb_minitable.c +5 -7
  177. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb.h +40 -32
  178. data/src/core/ext/upb-gen/envoy/annotations/deprecation.upb_minitable.c +4 -4
  179. data/src/core/ext/upb-gen/envoy/annotations/resource.upb.h +24 -20
  180. data/src/core/ext/upb-gen/envoy/annotations/resource.upb_minitable.c +4 -4
  181. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb.h +517 -473
  182. data/src/core/ext/upb-gen/envoy/config/accesslog/v3/accesslog.upb_minitable.c +105 -125
  183. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb.h +1207 -1108
  184. data/src/core/ext/upb-gen/envoy/config/bootstrap/v3/bootstrap.upb_minitable.c +261 -289
  185. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb.h +163 -152
  186. data/src/core/ext/upb-gen/envoy/config/cluster/v3/circuit_breaker.upb_minitable.c +29 -43
  187. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb.h +1265 -1137
  188. data/src/core/ext/upb-gen/envoy/config/cluster/v3/cluster.upb_minitable.c +276 -346
  189. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb.h +32 -28
  190. data/src/core/ext/upb-gen/envoy/config/cluster/v3/filter.upb_minitable.c +7 -9
  191. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb.h +212 -188
  192. data/src/core/ext/upb-gen/envoy/config/cluster/v3/outlier_detection.upb_minitable.c +53 -69
  193. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb.h +564 -508
  194. data/src/core/ext/upb-gen/envoy/config/common/matcher/v3/matcher.upb_minitable.c +123 -131
  195. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb.h +340 -309
  196. data/src/core/ext/upb-gen/envoy/config/core/v3/address.upb_minitable.c +69 -83
  197. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb.h +25 -22
  198. data/src/core/ext/upb-gen/envoy/config/core/v3/backoff.upb_minitable.c +5 -11
  199. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb.h +786 -688
  200. data/src/core/ext/upb-gen/envoy/config/core/v3/base.upb_minitable.c +171 -189
  201. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb.h +367 -343
  202. data/src/core/ext/upb-gen/envoy/config/core/v3/config_source.upb_minitable.c +72 -80
  203. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb.h +19 -16
  204. data/src/core/ext/upb-gen/envoy/config/core/v3/event_service_config.upb_minitable.c +4 -4
  205. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb.h +23 -20
  206. data/src/core/ext/upb-gen/envoy/config/core/v3/extension.upb_minitable.c +5 -7
  207. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb.h +77 -76
  208. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_method_list.upb_minitable.c +9 -9
  209. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb.h +539 -471
  210. data/src/core/ext/upb-gen/envoy/config/core/v3/grpc_service.upb_minitable.c +125 -141
  211. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb.h +672 -632
  212. data/src/core/ext/upb-gen/envoy/config/core/v3/health_check.upb_minitable.c +137 -137
  213. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb.h +44 -43
  214. data/src/core/ext/upb-gen/envoy/config/core/v3/http_service.upb_minitable.c +7 -7
  215. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb.h +35 -30
  216. data/src/core/ext/upb-gen/envoy/config/core/v3/http_uri.upb_minitable.c +8 -8
  217. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb.h +713 -637
  218. data/src/core/ext/upb-gen/envoy/config/core/v3/protocol.upb_minitable.c +166 -208
  219. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb.h +65 -61
  220. data/src/core/ext/upb-gen/envoy/config/core/v3/proxy_protocol.upb_minitable.c +10 -12
  221. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb.h +65 -61
  222. data/src/core/ext/upb-gen/envoy/config/core/v3/resolver.upb_minitable.c +11 -13
  223. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb.h +91 -83
  224. data/src/core/ext/upb-gen/envoy/config/core/v3/socket_option.upb_minitable.c +17 -17
  225. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb.h +102 -93
  226. data/src/core/ext/upb-gen/envoy/config/core/v3/substitution_format_string.upb_minitable.c +22 -22
  227. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb.h +25 -22
  228. data/src/core/ext/upb-gen/envoy/config/core/v3/udp_socket_config.upb_minitable.c +5 -11
  229. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb.h +162 -145
  230. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint.upb_minitable.c +32 -40
  231. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb.h +314 -287
  232. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/endpoint_components.upb_minitable.c +70 -74
  233. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb.h +330 -309
  234. data/src/core/ext/upb-gen/envoy/config/endpoint/v3/load_report.upb_minitable.c +66 -66
  235. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb.h +16 -14
  236. data/src/core/ext/upb-gen/envoy/config/listener/v3/api_listener.upb_minitable.c +3 -7
  237. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb.h +516 -478
  238. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener.upb_minitable.c +110 -120
  239. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb.h +495 -468
  240. data/src/core/ext/upb-gen/envoy/config/listener/v3/listener_components.upb_minitable.c +89 -101
  241. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb.h +88 -78
  242. data/src/core/ext/upb-gen/envoy/config/listener/v3/quic_config.upb_minitable.c +19 -37
  243. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb.h +41 -36
  244. data/src/core/ext/upb-gen/envoy/config/listener/v3/udp_listener_config.upb_minitable.c +8 -26
  245. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb.h +46 -40
  246. data/src/core/ext/upb-gen/envoy/config/metrics/v3/metrics_service.upb_minitable.c +13 -13
  247. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb.h +307 -279
  248. data/src/core/ext/upb-gen/envoy/config/metrics/v3/stats.upb_minitable.c +60 -64
  249. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb.h +382 -358
  250. data/src/core/ext/upb-gen/envoy/config/overload/v3/overload.upb_minitable.c +70 -70
  251. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb.h +540 -490
  252. data/src/core/ext/upb-gen/envoy/config/rbac/v3/rbac.upb_minitable.c +122 -136
  253. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb.h +339 -327
  254. data/src/core/ext/upb-gen/envoy/config/route/v3/route.upb_minitable.c +48 -70
  255. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb.h +3407 -3145
  256. data/src/core/ext/upb-gen/envoy/config/route/v3/route_components.upb_minitable.c +700 -752
  257. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb.h +100 -91
  258. data/src/core/ext/upb-gen/envoy/config/route/v3/scoped_route.upb_minitable.c +20 -20
  259. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb.h +472 -430
  260. data/src/core/ext/upb-gen/envoy/config/tap/v3/common.upb_minitable.c +102 -116
  261. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb.h +28 -24
  262. data/src/core/ext/upb-gen/envoy/config/trace/v3/datadog.upb_minitable.c +7 -7
  263. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb.h +23 -20
  264. data/src/core/ext/upb-gen/envoy/config/trace/v3/dynamic_ot.upb_minitable.c +5 -7
  265. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb.h +42 -36
  266. data/src/core/ext/upb-gen/envoy/config/trace/v3/http_tracer.upb_minitable.c +9 -13
  267. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb.h +58 -55
  268. data/src/core/ext/upb-gen/envoy/config/trace/v3/lightstep.upb_minitable.c +9 -13
  269. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb.h +146 -136
  270. data/src/core/ext/upb-gen/envoy/config/trace/v3/opencensus.upb_minitable.c +30 -30
  271. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb.h +69 -65
  272. data/src/core/ext/upb-gen/envoy/config/trace/v3/opentelemetry.upb_minitable.c +15 -15
  273. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb.h +16 -14
  274. data/src/core/ext/upb-gen/envoy/config/trace/v3/service.upb_minitable.c +3 -7
  275. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb.h +67 -58
  276. data/src/core/ext/upb-gen/envoy/config/trace/v3/skywalking.upb_minitable.c +14 -24
  277. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb.h +64 -56
  278. data/src/core/ext/upb-gen/envoy/config/trace/v3/xray.upb_minitable.c +14 -20
  279. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb.h +58 -50
  280. data/src/core/ext/upb-gen/envoy/config/trace/v3/zipkin.upb_minitable.c +16 -16
  281. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb.h +986 -832
  282. data/src/core/ext/upb-gen/envoy/data/accesslog/v3/accesslog.upb_minitable.c +269 -281
  283. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +35 -35
  284. data/src/core/ext/upb-gen/envoy/extensions/clusters/aggregate/v3/cluster.upb_minitable.c +3 -3
  285. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb.h +102 -88
  286. data/src/core/ext/upb-gen/envoy/extensions/filters/common/fault/v3/fault.upb_minitable.c +25 -25
  287. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb.h +224 -204
  288. data/src/core/ext/upb-gen/envoy/extensions/filters/http/fault/v3/fault.upb_minitable.c +46 -62
  289. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +66 -58
  290. data/src/core/ext/upb-gen/envoy/extensions/filters/http/rbac/v3/rbac.upb_minitable.c +14 -24
  291. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb.h +160 -153
  292. data/src/core/ext/upb-gen/envoy/extensions/filters/http/router/v3/router.upb_minitable.c +28 -30
  293. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +51 -44
  294. data/src/core/ext/upb-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb_minitable.c +12 -12
  295. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1349 -1230
  296. data/src/core/ext/upb-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb_minitable.c +293 -309
  297. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +16 -14
  298. data/src/core/ext/upb-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb_minitable.c +3 -7
  299. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb.h +61 -54
  300. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/client_side_weighted_round_robin/v3/client_side_weighted_round_robin.upb_minitable.c +13 -23
  301. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb.h +124 -108
  302. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/common/v3/common.upb_minitable.c +29 -37
  303. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb.h +14 -12
  304. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/pick_first/v3/pick_first.upb_minitable.c +3 -3
  305. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +66 -58
  306. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb_minitable.c +20 -20
  307. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +16 -14
  308. data/src/core/ext/upb-gen/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb_minitable.c +3 -7
  309. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb.h +518 -493
  310. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/common.upb_minitable.c +82 -108
  311. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +92 -80
  312. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/secret.upb_minitable.c +23 -29
  313. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +497 -457
  314. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls.upb_minitable.c +110 -124
  315. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +58 -55
  316. data/src/core/ext/upb-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb_minitable.c +9 -11
  317. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb.h +206 -185
  318. data/src/core/ext/upb-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upb_minitable.c +48 -64
  319. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb.h +7 -6
  320. data/src/core/ext/upb-gen/envoy/service/discovery/v3/ads.upb_minitable.c +1 -1
  321. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb.h +766 -710
  322. data/src/core/ext/upb-gen/envoy/service/discovery/v3/discovery.upb_minitable.c +140 -150
  323. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb.h +102 -98
  324. data/src/core/ext/upb-gen/envoy/service/load_stats/v3/lrs.upb_minitable.c +17 -17
  325. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb.h +310 -288
  326. data/src/core/ext/upb-gen/envoy/service/status/v3/csds.upb_minitable.c +67 -67
  327. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb.h +30 -26
  328. data/src/core/ext/upb-gen/envoy/type/http/v3/cookie.upb_minitable.c +8 -8
  329. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb.h +77 -71
  330. data/src/core/ext/upb-gen/envoy/type/http/v3/path_transformation.upb_minitable.c +13 -13
  331. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb.h +26 -22
  332. data/src/core/ext/upb-gen/envoy/type/matcher/v3/filter_state.upb_minitable.c +6 -6
  333. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb.h +70 -60
  334. data/src/core/ext/upb-gen/envoy/type/matcher/v3/http_inputs.upb_minitable.c +15 -15
  335. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb.h +77 -71
  336. data/src/core/ext/upb-gen/envoy/type/matcher/v3/metadata.upb_minitable.c +14 -14
  337. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb.h +44 -43
  338. data/src/core/ext/upb-gen/envoy/type/matcher/v3/node.upb_minitable.c +7 -7
  339. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb.h +28 -24
  340. data/src/core/ext/upb-gen/envoy/type/matcher/v3/number.upb_minitable.c +6 -6
  341. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb.h +19 -16
  342. data/src/core/ext/upb-gen/envoy/type/matcher/v3/path.upb_minitable.c +4 -4
  343. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb.h +65 -56
  344. data/src/core/ext/upb-gen/envoy/type/matcher/v3/regex.upb_minitable.c +15 -19
  345. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb.h +14 -12
  346. data/src/core/ext/upb-gen/envoy/type/matcher/v3/status_code_input.upb_minitable.c +2 -2
  347. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb.h +97 -89
  348. data/src/core/ext/upb-gen/envoy/type/matcher/v3/string.upb_minitable.c +18 -18
  349. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb.h +63 -59
  350. data/src/core/ext/upb-gen/envoy/type/matcher/v3/struct.upb_minitable.c +10 -10
  351. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb.h +134 -121
  352. data/src/core/ext/upb-gen/envoy/type/matcher/v3/value.upb_minitable.c +29 -29
  353. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb.h +135 -121
  354. data/src/core/ext/upb-gen/envoy/type/metadata/v3/metadata.upb_minitable.c +26 -26
  355. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb.h +141 -122
  356. data/src/core/ext/upb-gen/envoy/type/tracing/v3/custom_tag.upb_minitable.c +37 -37
  357. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb.h +49 -42
  358. data/src/core/ext/upb-gen/envoy/type/v3/hash_policy.upb_minitable.c +11 -11
  359. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb.h +14 -12
  360. data/src/core/ext/upb-gen/envoy/type/v3/http_status.upb_minitable.c +3 -3
  361. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb.h +35 -30
  362. data/src/core/ext/upb-gen/envoy/type/v3/percent.upb_minitable.c +8 -8
  363. data/src/core/ext/upb-gen/envoy/type/v3/range.upb.h +63 -54
  364. data/src/core/ext/upb-gen/envoy/type/v3/range.upb_minitable.c +15 -15
  365. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb.h +58 -50
  366. data/src/core/ext/upb-gen/envoy/type/v3/ratelimit_strategy.upb_minitable.c +14 -14
  367. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb.h +28 -24
  368. data/src/core/ext/upb-gen/envoy/type/v3/semantic_version.upb_minitable.c +7 -7
  369. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb.h +32 -28
  370. data/src/core/ext/upb-gen/envoy/type/v3/token_bucket.upb_minitable.c +7 -9
  371. data/src/core/ext/upb-gen/google/api/annotations.upb.h +10 -8
  372. data/src/core/ext/upb-gen/google/api/annotations.upb_minitable.c +1 -1
  373. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb.h +581 -524
  374. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/checked.upb_minitable.c +118 -146
  375. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb.h +616 -544
  376. data/src/core/ext/upb-gen/google/api/expr/v1alpha1/syntax.upb_minitable.c +136 -152
  377. data/src/core/ext/upb-gen/google/api/http.upb.h +176 -162
  378. data/src/core/ext/upb-gen/google/api/http.upb_minitable.c +34 -34
  379. data/src/core/ext/upb-gen/google/api/httpbody.upb.h +49 -47
  380. data/src/core/ext/upb-gen/google/api/httpbody.upb_minitable.c +8 -8
  381. data/src/core/ext/upb-gen/google/protobuf/any.upb.h +21 -18
  382. data/src/core/ext/upb-gen/google/protobuf/any.upb_minitable.c +5 -5
  383. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb.h +2456 -2358
  384. data/src/core/ext/upb-gen/google/protobuf/descriptor.upb_minitable.c +367 -486
  385. data/src/core/ext/upb-gen/google/protobuf/duration.upb.h +21 -18
  386. data/src/core/ext/upb-gen/google/protobuf/duration.upb_minitable.c +5 -5
  387. data/src/core/ext/upb-gen/google/protobuf/empty.upb.h +7 -6
  388. data/src/core/ext/upb-gen/google/protobuf/empty.upb_minitable.c +1 -1
  389. data/src/core/ext/upb-gen/google/protobuf/struct.upb.h +134 -116
  390. data/src/core/ext/upb-gen/google/protobuf/struct.upb_minitable.c +27 -29
  391. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb.h +21 -18
  392. data/src/core/ext/upb-gen/google/protobuf/timestamp.upb_minitable.c +5 -5
  393. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb.h +126 -108
  394. data/src/core/ext/upb-gen/google/protobuf/wrappers.upb_minitable.c +27 -27
  395. data/src/core/ext/upb-gen/google/rpc/status.upb.h +49 -47
  396. data/src/core/ext/upb-gen/google/rpc/status.upb_minitable.c +8 -8
  397. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb.h +107 -92
  398. data/src/core/ext/upb-gen/opencensus/proto/trace/v1/trace_config.upb_minitable.c +27 -27
  399. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb.h +77 -61
  400. data/src/core/ext/upb-gen/src/proto/grpc/gcp/altscontext.upb_minitable.c +21 -21
  401. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb.h +577 -518
  402. data/src/core/ext/upb-gen/src/proto/grpc/gcp/handshaker.upb_minitable.c +121 -127
  403. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb.h +46 -40
  404. data/src/core/ext/upb-gen/src/proto/grpc/gcp/transport_security_common.upb_minitable.c +10 -16
  405. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb.h +28 -24
  406. data/src/core/ext/upb-gen/src/proto/grpc/health/v1/health.upb_minitable.c +6 -6
  407. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb.h +265 -238
  408. data/src/core/ext/upb-gen/src/proto/grpc/lb/v1/load_balancer.upb_minitable.c +57 -63
  409. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb.h +96 -82
  410. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls.upb_minitable.c +19 -19
  411. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb.h +496 -466
  412. data/src/core/ext/upb-gen/src/proto/grpc/lookup/v1/rls_config.upb_minitable.c +81 -85
  413. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb.h +99 -82
  414. data/src/core/ext/upb-gen/udpa/annotations/migrate.upb_minitable.c +16 -16
  415. data/src/core/ext/upb-gen/udpa/annotations/security.upb.h +31 -26
  416. data/src/core/ext/upb-gen/udpa/annotations/security.upb_minitable.c +6 -6
  417. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb.h +10 -8
  418. data/src/core/ext/upb-gen/udpa/annotations/sensitive.upb_minitable.c +1 -1
  419. data/src/core/ext/upb-gen/udpa/annotations/status.upb.h +31 -26
  420. data/src/core/ext/upb-gen/udpa/annotations/status.upb_minitable.c +6 -6
  421. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb.h +24 -20
  422. data/src/core/ext/upb-gen/udpa/annotations/versioning.upb_minitable.c +4 -4
  423. data/src/core/ext/upb-gen/validate/validate.upb.h +2620 -2458
  424. data/src/core/ext/upb-gen/validate/validate.upb_minitable.c +363 -507
  425. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb.h +99 -82
  426. data/src/core/ext/upb-gen/xds/annotations/v3/migrate.upb_minitable.c +16 -16
  427. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb.h +31 -26
  428. data/src/core/ext/upb-gen/xds/annotations/v3/security.upb_minitable.c +6 -6
  429. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb.h +10 -8
  430. data/src/core/ext/upb-gen/xds/annotations/v3/sensitive.upb_minitable.c +1 -1
  431. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb.h +93 -78
  432. data/src/core/ext/upb-gen/xds/annotations/v3/status.upb_minitable.c +17 -17
  433. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb.h +24 -20
  434. data/src/core/ext/upb-gen/xds/annotations/v3/versioning.upb_minitable.c +4 -4
  435. data/src/core/ext/upb-gen/xds/core/v3/authority.upb.h +14 -12
  436. data/src/core/ext/upb-gen/xds/core/v3/authority.upb_minitable.c +3 -3
  437. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb.h +23 -20
  438. data/src/core/ext/upb-gen/xds/core/v3/cidr.upb_minitable.c +5 -7
  439. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb.h +58 -50
  440. data/src/core/ext/upb-gen/xds/core/v3/collection_entry.upb_minitable.c +15 -15
  441. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb.h +33 -23
  442. data/src/core/ext/upb-gen/xds/core/v3/context_params.upb_minitable.c +8 -8
  443. data/src/core/ext/upb-gen/xds/core/v3/extension.upb.h +23 -20
  444. data/src/core/ext/upb-gen/xds/core/v3/extension.upb_minitable.c +5 -7
  445. data/src/core/ext/upb-gen/xds/core/v3/resource.upb.h +32 -28
  446. data/src/core/ext/upb-gen/xds/core/v3/resource.upb_minitable.c +9 -9
  447. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb.h +103 -93
  448. data/src/core/ext/upb-gen/xds/core/v3/resource_locator.upb_minitable.c +21 -21
  449. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb.h +37 -32
  450. data/src/core/ext/upb-gen/xds/core/v3/resource_name.upb_minitable.c +9 -13
  451. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb.h +127 -93
  452. data/src/core/ext/upb-gen/xds/data/orca/v3/orca_load_report.upb_minitable.c +34 -34
  453. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb.h +44 -43
  454. data/src/core/ext/upb-gen/xds/service/orca/v3/orca.upb_minitable.c +6 -6
  455. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb.h +23 -20
  456. data/src/core/ext/upb-gen/xds/type/matcher/v3/cel.upb_minitable.c +6 -6
  457. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb.h +79 -78
  458. data/src/core/ext/upb-gen/xds/type/matcher/v3/domain.upb_minitable.c +9 -11
  459. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb.h +7 -6
  460. data/src/core/ext/upb-gen/xds/type/matcher/v3/http_inputs.upb_minitable.c +1 -1
  461. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb.h +86 -84
  462. data/src/core/ext/upb-gen/xds/type/matcher/v3/ip.upb_minitable.c +13 -13
  463. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb.h +324 -285
  464. data/src/core/ext/upb-gen/xds/type/matcher/v3/matcher.upb_minitable.c +74 -82
  465. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb.h +237 -234
  466. data/src/core/ext/upb-gen/xds/type/matcher/v3/range.upb_minitable.c +30 -36
  467. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb.h +33 -28
  468. data/src/core/ext/upb-gen/xds/type/matcher/v3/regex.upb_minitable.c +7 -7
  469. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb.h +97 -89
  470. data/src/core/ext/upb-gen/xds/type/matcher/v3/string.upb_minitable.c +18 -18
  471. data/src/core/ext/upb-gen/xds/type/v3/cel.upb.h +53 -46
  472. data/src/core/ext/upb-gen/xds/type/v3/cel.upb_minitable.c +12 -18
  473. data/src/core/ext/upb-gen/xds/type/v3/range.upb.h +63 -54
  474. data/src/core/ext/upb-gen/xds/type/v3/range.upb_minitable.c +15 -15
  475. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb.h +23 -20
  476. data/src/core/ext/upb-gen/xds/type/v3/typed_struct.upb_minitable.c +5 -7
  477. data/src/core/ext/upbdefs-gen/envoy/admin/v3/certs.upbdefs.h +2 -5
  478. data/src/core/ext/upbdefs-gen/envoy/admin/v3/clusters.upbdefs.h +2 -5
  479. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump.upbdefs.h +2 -5
  480. data/src/core/ext/upbdefs-gen/envoy/admin/v3/config_dump_shared.upbdefs.h +2 -5
  481. data/src/core/ext/upbdefs-gen/envoy/admin/v3/init_dump.upbdefs.h +2 -5
  482. data/src/core/ext/upbdefs-gen/envoy/admin/v3/listeners.upbdefs.h +2 -5
  483. data/src/core/ext/upbdefs-gen/envoy/admin/v3/memory.upbdefs.h +2 -5
  484. data/src/core/ext/upbdefs-gen/envoy/admin/v3/metrics.upbdefs.h +2 -5
  485. data/src/core/ext/upbdefs-gen/envoy/admin/v3/mutex_stats.upbdefs.h +2 -5
  486. data/src/core/ext/upbdefs-gen/envoy/admin/v3/server_info.upbdefs.h +2 -5
  487. data/src/core/ext/upbdefs-gen/envoy/admin/v3/tap.upbdefs.h +2 -5
  488. data/src/core/ext/upbdefs-gen/envoy/annotations/deprecation.upbdefs.h +2 -5
  489. data/src/core/ext/upbdefs-gen/envoy/annotations/resource.upbdefs.h +2 -5
  490. data/src/core/ext/upbdefs-gen/envoy/config/accesslog/v3/accesslog.upbdefs.h +2 -5
  491. data/src/core/ext/upbdefs-gen/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +2 -5
  492. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +2 -5
  493. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/cluster.upbdefs.h +2 -5
  494. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/filter.upbdefs.h +2 -5
  495. data/src/core/ext/upbdefs-gen/envoy/config/cluster/v3/outlier_detection.upbdefs.h +2 -5
  496. data/src/core/ext/upbdefs-gen/envoy/config/common/matcher/v3/matcher.upbdefs.h +2 -5
  497. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/address.upbdefs.h +2 -5
  498. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/backoff.upbdefs.h +2 -5
  499. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/base.upbdefs.h +2 -5
  500. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/config_source.upbdefs.h +2 -5
  501. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/event_service_config.upbdefs.h +2 -5
  502. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/extension.upbdefs.h +2 -5
  503. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_method_list.upbdefs.h +2 -5
  504. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/grpc_service.upbdefs.h +2 -5
  505. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/health_check.upbdefs.h +2 -5
  506. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_service.upbdefs.h +2 -5
  507. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/http_uri.upbdefs.h +2 -5
  508. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/protocol.upbdefs.h +2 -5
  509. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/proxy_protocol.upbdefs.h +2 -5
  510. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/resolver.upbdefs.h +2 -5
  511. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/socket_option.upbdefs.h +2 -5
  512. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/substitution_format_string.upbdefs.h +2 -5
  513. data/src/core/ext/upbdefs-gen/envoy/config/core/v3/udp_socket_config.upbdefs.h +2 -5
  514. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint.upbdefs.h +2 -5
  515. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +2 -5
  516. data/src/core/ext/upbdefs-gen/envoy/config/endpoint/v3/load_report.upbdefs.h +2 -5
  517. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/api_listener.upbdefs.h +2 -5
  518. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener.upbdefs.h +2 -5
  519. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/listener_components.upbdefs.h +2 -5
  520. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/quic_config.upbdefs.h +2 -5
  521. data/src/core/ext/upbdefs-gen/envoy/config/listener/v3/udp_listener_config.upbdefs.h +2 -5
  522. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/metrics_service.upbdefs.h +2 -5
  523. data/src/core/ext/upbdefs-gen/envoy/config/metrics/v3/stats.upbdefs.h +2 -5
  524. data/src/core/ext/upbdefs-gen/envoy/config/overload/v3/overload.upbdefs.h +2 -5
  525. data/src/core/ext/upbdefs-gen/envoy/config/rbac/v3/rbac.upbdefs.h +2 -5
  526. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route.upbdefs.h +2 -5
  527. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/route_components.upbdefs.h +2 -5
  528. data/src/core/ext/upbdefs-gen/envoy/config/route/v3/scoped_route.upbdefs.h +2 -5
  529. data/src/core/ext/upbdefs-gen/envoy/config/tap/v3/common.upbdefs.h +2 -5
  530. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/datadog.upbdefs.h +2 -5
  531. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/dynamic_ot.upbdefs.h +2 -5
  532. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/http_tracer.upbdefs.h +2 -5
  533. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/lightstep.upbdefs.h +2 -5
  534. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opencensus.upbdefs.h +2 -5
  535. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/opentelemetry.upbdefs.h +2 -5
  536. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/service.upbdefs.h +2 -5
  537. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/skywalking.upbdefs.h +2 -5
  538. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/trace.upbdefs.h +2 -5
  539. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/xray.upbdefs.h +2 -5
  540. data/src/core/ext/upbdefs-gen/envoy/config/trace/v3/zipkin.upbdefs.h +2 -5
  541. data/src/core/ext/upbdefs-gen/envoy/data/accesslog/v3/accesslog.upbdefs.h +2 -5
  542. data/src/core/ext/upbdefs-gen/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +2 -5
  543. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +2 -5
  544. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +2 -5
  545. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +2 -5
  546. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/router/v3/router.upbdefs.h +2 -5
  547. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +2 -5
  548. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +2 -5
  549. data/src/core/ext/upbdefs-gen/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +2 -5
  550. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +2 -5
  551. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +2 -5
  552. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +2 -5
  553. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +2 -5
  554. data/src/core/ext/upbdefs-gen/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +2 -5
  555. data/src/core/ext/upbdefs-gen/envoy/extensions/upstreams/http/v3/http_protocol_options.upbdefs.h +2 -5
  556. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/ads.upbdefs.h +2 -5
  557. data/src/core/ext/upbdefs-gen/envoy/service/discovery/v3/discovery.upbdefs.h +2 -5
  558. data/src/core/ext/upbdefs-gen/envoy/service/load_stats/v3/lrs.upbdefs.h +2 -5
  559. data/src/core/ext/upbdefs-gen/envoy/service/status/v3/csds.upbdefs.h +2 -5
  560. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/cookie.upbdefs.h +2 -5
  561. data/src/core/ext/upbdefs-gen/envoy/type/http/v3/path_transformation.upbdefs.h +2 -5
  562. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/filter_state.upbdefs.h +2 -5
  563. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/http_inputs.upbdefs.h +2 -5
  564. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/metadata.upbdefs.h +2 -5
  565. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/node.upbdefs.h +2 -5
  566. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/number.upbdefs.h +2 -5
  567. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/path.upbdefs.h +2 -5
  568. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/regex.upbdefs.h +2 -5
  569. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/status_code_input.upbdefs.h +2 -5
  570. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/string.upbdefs.h +2 -5
  571. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/struct.upbdefs.h +2 -5
  572. data/src/core/ext/upbdefs-gen/envoy/type/matcher/v3/value.upbdefs.h +2 -5
  573. data/src/core/ext/upbdefs-gen/envoy/type/metadata/v3/metadata.upbdefs.h +2 -5
  574. data/src/core/ext/upbdefs-gen/envoy/type/tracing/v3/custom_tag.upbdefs.h +2 -5
  575. data/src/core/ext/upbdefs-gen/envoy/type/v3/hash_policy.upbdefs.h +2 -5
  576. data/src/core/ext/upbdefs-gen/envoy/type/v3/http.upbdefs.h +2 -5
  577. data/src/core/ext/upbdefs-gen/envoy/type/v3/http_status.upbdefs.h +2 -5
  578. data/src/core/ext/upbdefs-gen/envoy/type/v3/percent.upbdefs.h +2 -5
  579. data/src/core/ext/upbdefs-gen/envoy/type/v3/range.upbdefs.h +2 -5
  580. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_strategy.upbdefs.h +2 -5
  581. data/src/core/ext/upbdefs-gen/envoy/type/v3/ratelimit_unit.upbdefs.h +2 -5
  582. data/src/core/ext/upbdefs-gen/envoy/type/v3/semantic_version.upbdefs.h +2 -5
  583. data/src/core/ext/upbdefs-gen/envoy/type/v3/token_bucket.upbdefs.h +2 -5
  584. data/src/core/ext/upbdefs-gen/google/api/annotations.upbdefs.h +2 -5
  585. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/checked.upbdefs.h +2 -5
  586. data/src/core/ext/upbdefs-gen/google/api/expr/v1alpha1/syntax.upbdefs.h +2 -5
  587. data/src/core/ext/upbdefs-gen/google/api/http.upbdefs.h +2 -5
  588. data/src/core/ext/upbdefs-gen/google/api/httpbody.upbdefs.h +2 -5
  589. data/src/core/ext/upbdefs-gen/google/protobuf/any.upbdefs.h +2 -5
  590. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.c +385 -384
  591. data/src/core/ext/upbdefs-gen/google/protobuf/descriptor.upbdefs.h +2 -5
  592. data/src/core/ext/upbdefs-gen/google/protobuf/duration.upbdefs.h +2 -5
  593. data/src/core/ext/upbdefs-gen/google/protobuf/empty.upbdefs.h +2 -5
  594. data/src/core/ext/upbdefs-gen/google/protobuf/struct.upbdefs.h +2 -5
  595. data/src/core/ext/upbdefs-gen/google/protobuf/timestamp.upbdefs.h +2 -5
  596. data/src/core/ext/upbdefs-gen/google/protobuf/wrappers.upbdefs.h +2 -5
  597. data/src/core/ext/upbdefs-gen/google/rpc/status.upbdefs.h +2 -5
  598. data/src/core/ext/upbdefs-gen/opencensus/proto/trace/v1/trace_config.upbdefs.h +2 -5
  599. data/src/core/ext/upbdefs-gen/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +2 -5
  600. data/src/core/ext/upbdefs-gen/udpa/annotations/migrate.upbdefs.h +2 -5
  601. data/src/core/ext/upbdefs-gen/udpa/annotations/security.upbdefs.h +2 -5
  602. data/src/core/ext/upbdefs-gen/udpa/annotations/sensitive.upbdefs.h +2 -5
  603. data/src/core/ext/upbdefs-gen/udpa/annotations/status.upbdefs.h +2 -5
  604. data/src/core/ext/upbdefs-gen/udpa/annotations/versioning.upbdefs.h +2 -5
  605. data/src/core/ext/upbdefs-gen/validate/validate.upbdefs.h +2 -5
  606. data/src/core/ext/upbdefs-gen/xds/annotations/v3/migrate.upbdefs.h +2 -5
  607. data/src/core/ext/upbdefs-gen/xds/annotations/v3/security.upbdefs.h +2 -5
  608. data/src/core/ext/upbdefs-gen/xds/annotations/v3/sensitive.upbdefs.h +2 -5
  609. data/src/core/ext/upbdefs-gen/xds/annotations/v3/status.upbdefs.h +2 -5
  610. data/src/core/ext/upbdefs-gen/xds/annotations/v3/versioning.upbdefs.h +2 -5
  611. data/src/core/ext/upbdefs-gen/xds/core/v3/authority.upbdefs.h +2 -5
  612. data/src/core/ext/upbdefs-gen/xds/core/v3/cidr.upbdefs.h +2 -5
  613. data/src/core/ext/upbdefs-gen/xds/core/v3/collection_entry.upbdefs.h +2 -5
  614. data/src/core/ext/upbdefs-gen/xds/core/v3/context_params.upbdefs.h +2 -5
  615. data/src/core/ext/upbdefs-gen/xds/core/v3/extension.upbdefs.h +2 -5
  616. data/src/core/ext/upbdefs-gen/xds/core/v3/resource.upbdefs.h +2 -5
  617. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_locator.upbdefs.h +2 -5
  618. data/src/core/ext/upbdefs-gen/xds/core/v3/resource_name.upbdefs.h +2 -5
  619. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/cel.upbdefs.h +2 -5
  620. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/domain.upbdefs.h +2 -5
  621. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/http_inputs.upbdefs.h +2 -5
  622. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/ip.upbdefs.h +2 -5
  623. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/matcher.upbdefs.h +2 -5
  624. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/range.upbdefs.h +2 -5
  625. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/regex.upbdefs.h +2 -5
  626. data/src/core/ext/upbdefs-gen/xds/type/matcher/v3/string.upbdefs.h +2 -5
  627. data/src/core/ext/upbdefs-gen/xds/type/v3/cel.upbdefs.h +2 -5
  628. data/src/core/ext/upbdefs-gen/xds/type/v3/range.upbdefs.h +2 -5
  629. data/src/core/ext/upbdefs-gen/xds/type/v3/typed_struct.upbdefs.h +2 -5
  630. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.cc +80 -0
  631. data/src/core/handshaker/endpoint_info/endpoint_info_handshaker.h +37 -0
  632. data/src/core/{lib/transport → handshaker}/handshaker.cc +8 -6
  633. data/src/core/{lib/transport → handshaker}/handshaker.h +4 -5
  634. data/src/core/{lib/transport → handshaker}/handshaker_factory.h +20 -5
  635. data/src/core/{lib/transport → handshaker}/handshaker_registry.cc +3 -3
  636. data/src/core/{lib/transport → handshaker}/handshaker_registry.h +6 -6
  637. data/src/core/{lib/transport → handshaker/http_connect}/http_connect_handshaker.cc +5 -6
  638. data/src/core/{lib/transport → handshaker/http_connect}/http_connect_handshaker.h +3 -3
  639. data/src/core/{client_channel → handshaker/http_connect}/http_proxy_mapper.cc +9 -10
  640. data/src/core/{client_channel → handshaker/http_connect}/http_proxy_mapper.h +7 -7
  641. data/src/core/{lib/handshaker → handshaker}/proxy_mapper.h +5 -5
  642. data/src/core/{lib/handshaker → handshaker}/proxy_mapper_registry.cc +3 -3
  643. data/src/core/{lib/handshaker → handshaker}/proxy_mapper_registry.h +6 -6
  644. data/src/core/{lib/security/transport → handshaker/security}/secure_endpoint.cc +5 -5
  645. data/src/core/{lib/security/transport → handshaker/security}/secure_endpoint.h +4 -5
  646. data/src/core/{lib/security/transport → handshaker/security}/security_handshaker.cc +29 -20
  647. data/src/core/{lib/security/transport → handshaker/security}/security_handshaker.h +8 -7
  648. data/src/core/{lib/security/transport → handshaker/security}/tsi_error.cc +2 -2
  649. data/src/core/{lib/security/transport → handshaker/security}/tsi_error.h +3 -3
  650. data/src/core/{lib/transport → handshaker/tcp_connect}/tcp_connect_handshaker.cc +8 -8
  651. data/src/core/{lib/transport → handshaker/tcp_connect}/tcp_connect_handshaker.h +3 -3
  652. data/src/core/lib/address_utils/parse_address.cc +13 -4
  653. data/src/core/lib/address_utils/parse_address.h +2 -2
  654. data/src/core/lib/address_utils/sockaddr_utils.cc +23 -10
  655. data/src/core/lib/address_utils/sockaddr_utils.h +2 -2
  656. data/src/core/lib/avl/avl.h +2 -2
  657. data/src/core/lib/backoff/backoff.cc +2 -2
  658. data/src/core/lib/backoff/backoff.h +2 -2
  659. data/src/core/lib/backoff/random_early_detection.cc +2 -2
  660. data/src/core/lib/backoff/random_early_detection.h +2 -2
  661. data/src/core/lib/channel/call_finalization.h +3 -3
  662. data/src/core/lib/channel/call_tracer.cc +10 -11
  663. data/src/core/lib/channel/call_tracer.h +15 -14
  664. data/src/core/lib/channel/channel_args.cc +4 -4
  665. data/src/core/lib/channel/channel_args.h +1 -2
  666. data/src/core/lib/channel/channel_args_preconditioning.cc +2 -2
  667. data/src/core/lib/channel/channel_args_preconditioning.h +1 -2
  668. data/src/core/lib/channel/channel_stack.cc +17 -7
  669. data/src/core/lib/channel/channel_stack.h +6 -2
  670. data/src/core/lib/channel/channel_stack_builder.cc +2 -2
  671. data/src/core/lib/channel/channel_stack_builder.h +2 -2
  672. data/src/core/lib/channel/channel_stack_builder_impl.cc +135 -2
  673. data/src/core/lib/channel/channel_stack_builder_impl.h +2 -2
  674. data/src/core/lib/channel/channel_stack_trace.cc +2 -2
  675. data/src/core/lib/channel/connected_channel.cc +25 -43
  676. data/src/core/lib/channel/context.h +29 -1
  677. data/src/core/lib/channel/metrics.cc +334 -0
  678. data/src/core/lib/channel/metrics.h +365 -0
  679. data/src/core/lib/channel/promise_based_filter.cc +70 -75
  680. data/src/core/lib/channel/promise_based_filter.h +251 -154
  681. data/src/core/lib/channel/status_util.cc +2 -2
  682. data/src/core/lib/channel/status_util.h +1 -2
  683. data/src/core/lib/channel/tcp_tracer.h +6 -2
  684. data/src/core/lib/compression/compression.cc +1 -2
  685. data/src/core/lib/compression/compression_internal.cc +36 -3
  686. data/src/core/lib/compression/compression_internal.h +4 -2
  687. data/src/core/lib/compression/message_compress.cc +9 -8
  688. data/src/core/lib/compression/message_compress.h +1 -2
  689. data/src/core/lib/config/config_vars.cc +8 -6
  690. data/src/core/lib/config/config_vars.h +6 -2
  691. data/src/core/lib/config/config_vars_non_generated.cc +2 -2
  692. data/src/core/lib/config/core_configuration.cc +9 -8
  693. data/src/core/lib/config/core_configuration.h +8 -8
  694. data/src/core/lib/config/load_config.cc +4 -4
  695. data/src/core/lib/config/load_config.h +2 -2
  696. data/src/core/lib/debug/event_log.cc +3 -3
  697. data/src/core/lib/debug/event_log.h +2 -2
  698. data/src/core/lib/debug/histogram_view.cc +2 -2
  699. data/src/core/lib/debug/histogram_view.h +2 -2
  700. data/src/core/lib/debug/stats.cc +2 -2
  701. data/src/core/lib/debug/stats.h +2 -2
  702. data/src/core/lib/debug/stats_data.cc +271 -28
  703. data/src/core/lib/debug/stats_data.h +178 -2
  704. data/src/core/lib/debug/trace.cc +1 -2
  705. data/src/core/lib/debug/trace.h +2 -2
  706. data/src/core/lib/event_engine/ares_resolver.cc +18 -19
  707. data/src/core/lib/event_engine/ares_resolver.h +2 -2
  708. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +3 -1
  709. data/src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc +3 -3
  710. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +2 -1
  711. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.h +2 -1
  712. data/src/core/lib/event_engine/channel_args_endpoint_config.cc +1 -2
  713. data/src/core/lib/event_engine/channel_args_endpoint_config.h +1 -2
  714. data/src/core/lib/event_engine/common_closures.h +1 -2
  715. data/src/core/lib/event_engine/default_event_engine.cc +1 -2
  716. data/src/core/lib/event_engine/default_event_engine.h +1 -8
  717. data/src/core/lib/event_engine/default_event_engine_factory.cc +1 -2
  718. data/src/core/lib/event_engine/default_event_engine_factory.h +1 -2
  719. data/src/core/lib/event_engine/event_engine.cc +1 -2
  720. data/src/core/lib/event_engine/event_engine_context.h +30 -0
  721. data/src/core/lib/event_engine/extensions/can_track_errors.h +2 -2
  722. data/src/core/lib/event_engine/extensions/chaotic_good_extension.h +65 -0
  723. data/src/core/lib/event_engine/extensions/supports_fd.h +1 -2
  724. data/src/core/lib/event_engine/forkable.cc +7 -6
  725. data/src/core/lib/event_engine/forkable.h +1 -2
  726. data/src/core/lib/event_engine/grpc_polled_fd.h +1 -2
  727. data/src/core/lib/event_engine/handle_containers.h +1 -2
  728. data/src/core/lib/event_engine/memory_allocator_factory.h +1 -2
  729. data/src/core/lib/event_engine/poller.h +1 -2
  730. data/src/core/lib/event_engine/posix.h +9 -2
  731. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +8 -8
  732. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +1 -2
  733. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +11 -11
  734. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +1 -2
  735. data/src/core/lib/event_engine/posix_engine/event_poller.h +1 -2
  736. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +2 -2
  737. data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +2 -2
  738. data/src/core/lib/event_engine/posix_engine/grpc_polled_fd_posix.h +1 -2
  739. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +1 -2
  740. data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +2 -2
  741. data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +3 -3
  742. data/src/core/lib/event_engine/posix_engine/lockfree_event.h +2 -2
  743. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.h +2 -2
  744. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +24 -25
  745. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +11 -11
  746. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +10 -10
  747. data/src/core/lib/event_engine/posix_engine/posix_engine.h +1 -2
  748. data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +1 -2
  749. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +4 -3
  750. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +1 -2
  751. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +7 -6
  752. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +1 -2
  753. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +10 -3
  754. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -3
  755. data/src/core/lib/event_engine/posix_engine/timer.cc +1 -2
  756. data/src/core/lib/event_engine/posix_engine/timer.h +1 -2
  757. data/src/core/lib/event_engine/posix_engine/timer_heap.cc +2 -2
  758. data/src/core/lib/event_engine/posix_engine/timer_heap.h +2 -2
  759. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +5 -5
  760. data/src/core/lib/event_engine/posix_engine/timer_manager.h +1 -2
  761. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +1 -2
  762. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +1 -2
  763. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +2 -2
  764. data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +2 -2
  765. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +2 -2
  766. data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +2 -2
  767. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +2 -2
  768. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +2 -2
  769. data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +2 -2
  770. data/src/core/lib/event_engine/query_extensions.h +3 -2
  771. data/src/core/lib/event_engine/ref_counted_dns_resolver_interface.h +1 -2
  772. data/src/core/lib/event_engine/resolved_address.cc +5 -4
  773. data/src/core/lib/event_engine/resolved_address_internal.h +1 -2
  774. data/src/core/lib/event_engine/shim.cc +2 -2
  775. data/src/core/lib/event_engine/slice.cc +4 -3
  776. data/src/core/lib/event_engine/slice_buffer.cc +1 -2
  777. data/src/core/lib/event_engine/tcp_socket_utils.cc +20 -9
  778. data/src/core/lib/event_engine/tcp_socket_utils.h +3 -4
  779. data/src/core/lib/event_engine/thread_local.cc +2 -2
  780. data/src/core/lib/event_engine/thread_pool/thread_count.cc +1 -2
  781. data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -2
  782. data/src/core/lib/event_engine/thread_pool/thread_pool.h +1 -2
  783. data/src/core/lib/event_engine/thread_pool/thread_pool_factory.cc +2 -2
  784. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +8 -8
  785. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +1 -2
  786. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +2 -2
  787. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +1 -2
  788. data/src/core/lib/event_engine/time_util.cc +1 -2
  789. data/src/core/lib/event_engine/time_util.h +1 -2
  790. data/src/core/lib/event_engine/trace.cc +2 -2
  791. data/src/core/lib/event_engine/trace.h +1 -2
  792. data/src/core/lib/event_engine/utils.cc +1 -2
  793. data/src/core/lib/event_engine/utils.h +1 -2
  794. data/src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc +31 -30
  795. data/src/core/lib/event_engine/windows/iocp.cc +10 -8
  796. data/src/core/lib/event_engine/windows/win_socket.cc +11 -5
  797. data/src/core/lib/event_engine/windows/win_socket.h +3 -0
  798. data/src/core/lib/event_engine/windows/windows_endpoint.cc +13 -12
  799. data/src/core/lib/event_engine/windows/windows_engine.cc +48 -14
  800. data/src/core/lib/event_engine/windows/windows_listener.cc +61 -12
  801. data/src/core/lib/event_engine/windows/windows_listener.h +14 -0
  802. data/src/core/lib/event_engine/work_queue/basic_work_queue.cc +2 -2
  803. data/src/core/lib/event_engine/work_queue/basic_work_queue.h +1 -2
  804. data/src/core/lib/event_engine/work_queue/work_queue.h +1 -2
  805. data/src/core/lib/experiments/config.cc +66 -48
  806. data/src/core/lib/experiments/config.h +2 -2
  807. data/src/core/lib/experiments/experiments.cc +42 -246
  808. data/src/core/lib/experiments/experiments.h +26 -124
  809. data/src/core/lib/gpr/alloc.cc +3 -1
  810. data/src/core/lib/gpr/android/log.cc +1 -1
  811. data/src/core/lib/gpr/linux/log.cc +1 -1
  812. data/src/core/lib/gpr/log.cc +26 -0
  813. data/src/core/lib/gpr/posix/log.cc +1 -1
  814. data/src/core/lib/gpr/posix/sync.cc +25 -23
  815. data/src/core/lib/gpr/posix/time.cc +9 -66
  816. data/src/core/lib/gpr/posix/tmpfile.cc +3 -1
  817. data/src/core/lib/gpr/sync.cc +5 -3
  818. data/src/core/lib/gpr/time.cc +10 -8
  819. data/src/core/lib/gpr/windows/log.cc +1 -1
  820. data/src/core/lib/gpr/windows/sync.cc +3 -1
  821. data/src/core/lib/gpr/windows/time.cc +4 -1
  822. data/src/core/lib/gprpp/atomic_utils.h +2 -2
  823. data/src/core/lib/gprpp/bitset.h +2 -2
  824. data/src/core/lib/gprpp/chunked_vector.h +6 -5
  825. data/src/core/lib/gprpp/construct_destruct.h +2 -2
  826. data/src/core/lib/gprpp/crash.cc +1 -2
  827. data/src/core/lib/gprpp/crash.h +2 -2
  828. data/src/core/lib/gprpp/debug_location.h +2 -2
  829. data/src/core/lib/gprpp/directory_reader.h +2 -2
  830. data/src/core/lib/gprpp/down_cast.h +7 -7
  831. data/src/core/lib/gprpp/dual_ref_counted.h +26 -17
  832. data/src/core/lib/gprpp/env.h +2 -2
  833. data/src/core/lib/gprpp/examine_stack.cc +2 -2
  834. data/src/core/lib/gprpp/examine_stack.h +2 -2
  835. data/src/core/lib/gprpp/fork.cc +1 -2
  836. data/src/core/lib/gprpp/fork.h +2 -2
  837. data/src/core/lib/gprpp/host_port.cc +6 -4
  838. data/src/core/lib/gprpp/host_port.h +2 -2
  839. data/src/core/lib/gprpp/linux/env.cc +2 -2
  840. data/src/core/lib/gprpp/load_file.cc +4 -3
  841. data/src/core/lib/gprpp/load_file.h +2 -2
  842. data/src/core/lib/gprpp/manual_constructor.h +2 -2
  843. data/src/core/lib/gprpp/match.h +2 -2
  844. data/src/core/lib/gprpp/memory.h +1 -2
  845. data/src/core/lib/gprpp/mpscq.cc +2 -2
  846. data/src/core/lib/gprpp/mpscq.h +5 -4
  847. data/src/core/lib/gprpp/no_destruct.h +2 -2
  848. data/src/core/lib/gprpp/notification.h +2 -2
  849. data/src/core/lib/gprpp/orphanable.h +7 -4
  850. data/src/core/lib/gprpp/overload.h +2 -2
  851. data/src/core/lib/gprpp/per_cpu.cc +1 -2
  852. data/src/core/lib/gprpp/per_cpu.h +1 -2
  853. data/src/core/lib/gprpp/posix/directory_reader.cc +2 -2
  854. data/src/core/lib/gprpp/posix/stat.cc +6 -4
  855. data/src/core/lib/gprpp/posix/thd.cc +10 -10
  856. data/src/core/lib/gprpp/ref_counted.h +10 -6
  857. data/src/core/lib/gprpp/ref_counted_ptr.h +4 -3
  858. data/src/core/lib/gprpp/ref_counted_string.cc +1 -2
  859. data/src/core/lib/gprpp/ref_counted_string.h +2 -2
  860. data/src/core/lib/gprpp/single_set_ptr.h +4 -3
  861. data/src/core/lib/gprpp/sorted_pack.h +2 -2
  862. data/src/core/lib/gprpp/stat.h +2 -2
  863. data/src/core/lib/gprpp/status_helper.cc +3 -3
  864. data/src/core/lib/gprpp/status_helper.h +2 -2
  865. data/src/core/lib/gprpp/strerror.cc +2 -2
  866. data/src/core/lib/gprpp/strerror.h +2 -2
  867. data/src/core/lib/gprpp/sync.h +5 -5
  868. data/src/core/lib/gprpp/table.h +2 -2
  869. data/src/core/lib/gprpp/tchar.cc +2 -2
  870. data/src/core/lib/gprpp/thd.h +7 -7
  871. data/src/core/lib/gprpp/time.cc +6 -6
  872. data/src/core/lib/gprpp/time.h +7 -2
  873. data/src/core/lib/gprpp/time_averaged_stats.cc +2 -2
  874. data/src/core/lib/gprpp/time_util.cc +5 -4
  875. data/src/core/lib/gprpp/time_util.h +1 -2
  876. data/src/core/lib/gprpp/unique_type_name.h +2 -2
  877. data/src/core/lib/gprpp/uuid_v4.cc +37 -0
  878. data/src/core/lib/gprpp/uuid_v4.h +36 -0
  879. data/src/core/lib/gprpp/validation_errors.cc +2 -2
  880. data/src/core/lib/gprpp/validation_errors.h +2 -2
  881. data/src/core/lib/gprpp/windows/stat.cc +4 -2
  882. data/src/core/lib/gprpp/windows/thd.cc +4 -2
  883. data/src/core/lib/gprpp/work_serializer.cc +5 -5
  884. data/src/core/lib/gprpp/work_serializer.h +1 -2
  885. data/src/core/lib/http/format_request.cc +1 -2
  886. data/src/core/lib/http/format_request.h +1 -2
  887. data/src/core/lib/http/httpcli.cc +6 -6
  888. data/src/core/lib/http/httpcli.h +2 -3
  889. data/src/core/lib/http/httpcli_security_connector.cc +4 -4
  890. data/src/core/lib/http/httpcli_ssl_credentials.h +1 -2
  891. data/src/core/lib/http/parser.cc +5 -5
  892. data/src/core/lib/http/parser.h +1 -2
  893. data/src/core/lib/iomgr/buffer_list.cc +1 -2
  894. data/src/core/lib/iomgr/buffer_list.h +1 -2
  895. data/src/core/lib/iomgr/call_combiner.cc +5 -4
  896. data/src/core/lib/iomgr/call_combiner.h +1 -2
  897. data/src/core/lib/iomgr/closure.cc +2 -2
  898. data/src/core/lib/iomgr/closure.h +4 -3
  899. data/src/core/lib/iomgr/combiner.cc +7 -6
  900. data/src/core/lib/iomgr/combiner.h +1 -2
  901. data/src/core/lib/iomgr/endpoint.cc +2 -2
  902. data/src/core/lib/iomgr/endpoint.h +1 -2
  903. data/src/core/lib/iomgr/endpoint_cfstream.cc +7 -5
  904. data/src/core/lib/iomgr/endpoint_pair_posix.cc +5 -4
  905. data/src/core/lib/iomgr/endpoint_pair_windows.cc +11 -10
  906. data/src/core/lib/iomgr/error.cc +3 -3
  907. data/src/core/lib/iomgr/error.h +3 -3
  908. data/src/core/lib/iomgr/ev_epoll1_linux.cc +14 -13
  909. data/src/core/lib/iomgr/ev_poll_posix.cc +9 -9
  910. data/src/core/lib/iomgr/ev_posix.cc +1 -2
  911. data/src/core/lib/iomgr/ev_posix.h +2 -2
  912. data/src/core/lib/iomgr/event_engine_shims/closure.cc +1 -2
  913. data/src/core/lib/iomgr/event_engine_shims/closure.h +1 -2
  914. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +3 -3
  915. data/src/core/lib/iomgr/event_engine_shims/endpoint.h +1 -2
  916. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +1 -2
  917. data/src/core/lib/iomgr/event_engine_shims/tcp_client.h +1 -2
  918. data/src/core/lib/iomgr/exec_ctx.cc +5 -5
  919. data/src/core/lib/iomgr/exec_ctx.h +6 -4
  920. data/src/core/lib/iomgr/executor.cc +7 -8
  921. data/src/core/lib/iomgr/grpc_if_nametoindex.h +2 -2
  922. data/src/core/lib/iomgr/internal_errqueue.cc +1 -2
  923. data/src/core/lib/iomgr/iocp_windows.cc +9 -6
  924. data/src/core/lib/iomgr/iocp_windows.h +0 -1
  925. data/src/core/lib/iomgr/iomgr.cc +1 -2
  926. data/src/core/lib/iomgr/iomgr.h +2 -2
  927. data/src/core/lib/iomgr/iomgr_internal.cc +2 -2
  928. data/src/core/lib/iomgr/iomgr_internal.h +2 -2
  929. data/src/core/lib/iomgr/iomgr_windows.cc +4 -2
  930. data/src/core/lib/iomgr/lockfree_event.cc +4 -3
  931. data/src/core/lib/iomgr/lockfree_event.h +1 -2
  932. data/src/core/lib/iomgr/polling_entity.cc +5 -5
  933. data/src/core/lib/iomgr/pollset.cc +2 -2
  934. data/src/core/lib/iomgr/pollset.h +0 -1
  935. data/src/core/lib/iomgr/pollset_set.cc +2 -2
  936. data/src/core/lib/iomgr/pollset_set_windows.cc +2 -2
  937. data/src/core/lib/iomgr/pollset_windows.h +0 -1
  938. data/src/core/lib/iomgr/port.h +3 -0
  939. data/src/core/lib/iomgr/python_util.h +1 -2
  940. data/src/core/lib/iomgr/resolve_address.cc +1 -2
  941. data/src/core/lib/iomgr/resolve_address.h +1 -2
  942. data/src/core/lib/iomgr/resolve_address_impl.h +2 -2
  943. data/src/core/lib/iomgr/resolve_address_posix.h +2 -2
  944. data/src/core/lib/iomgr/resolve_address_windows.h +2 -2
  945. data/src/core/lib/iomgr/resolved_address.h +2 -2
  946. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +3 -1
  947. data/src/core/lib/iomgr/socket_factory_posix.h +1 -2
  948. data/src/core/lib/iomgr/socket_mutator.cc +1 -2
  949. data/src/core/lib/iomgr/socket_mutator.h +1 -2
  950. data/src/core/lib/iomgr/socket_utils.h +2 -2
  951. data/src/core/lib/iomgr/socket_utils_common_posix.cc +3 -1
  952. data/src/core/lib/iomgr/socket_utils_posix.cc +2 -2
  953. data/src/core/lib/iomgr/socket_utils_posix.h +1 -2
  954. data/src/core/lib/iomgr/socket_windows.cc +4 -3
  955. data/src/core/lib/iomgr/tcp_client.cc +2 -2
  956. data/src/core/lib/iomgr/tcp_client.h +1 -2
  957. data/src/core/lib/iomgr/tcp_client_posix.cc +5 -4
  958. data/src/core/lib/iomgr/tcp_client_windows.cc +31 -10
  959. data/src/core/lib/iomgr/tcp_posix.cc +89 -41
  960. data/src/core/lib/iomgr/tcp_server.cc +2 -2
  961. data/src/core/lib/iomgr/tcp_server.h +1 -2
  962. data/src/core/lib/iomgr/tcp_server_posix.cc +123 -109
  963. data/src/core/lib/iomgr/tcp_server_utils_posix.h +2 -2
  964. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +6 -6
  965. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +2 -1
  966. data/src/core/lib/iomgr/tcp_server_windows.cc +75 -23
  967. data/src/core/lib/iomgr/tcp_windows.cc +8 -6
  968. data/src/core/lib/iomgr/timer.cc +2 -2
  969. data/src/core/lib/iomgr/timer.h +1 -2
  970. data/src/core/lib/iomgr/timer_generic.cc +3 -3
  971. data/src/core/lib/iomgr/timer_generic.h +0 -1
  972. data/src/core/lib/iomgr/timer_heap.cc +1 -2
  973. data/src/core/lib/iomgr/timer_manager.cc +4 -3
  974. data/src/core/lib/iomgr/timer_manager.h +2 -2
  975. data/src/core/lib/iomgr/unix_sockets_posix.cc +15 -1
  976. data/src/core/lib/iomgr/unix_sockets_posix.h +1 -2
  977. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +3 -1
  978. data/src/core/lib/iomgr/vsock.cc +2 -2
  979. data/src/core/lib/iomgr/vsock.h +1 -2
  980. data/src/core/lib/json/json.h +1 -2
  981. data/src/core/lib/json/json_args.h +2 -2
  982. data/src/core/lib/json/json_channel_args.h +2 -2
  983. data/src/core/lib/json/json_object_loader.cc +1 -2
  984. data/src/core/lib/json/json_object_loader.h +2 -2
  985. data/src/core/lib/json/json_reader.cc +4 -4
  986. data/src/core/lib/json/json_reader.h +2 -2
  987. data/src/core/lib/json/json_util.cc +2 -2
  988. data/src/core/lib/json/json_util.h +2 -2
  989. data/src/core/lib/json/json_writer.cc +2 -2
  990. data/src/core/lib/json/json_writer.h +2 -2
  991. data/src/core/lib/matchers/matchers.cc +2 -2
  992. data/src/core/lib/matchers/matchers.h +2 -2
  993. data/src/core/lib/promise/activity.cc +4 -3
  994. data/src/core/lib/promise/activity.h +8 -7
  995. data/src/core/lib/promise/all_ok.h +2 -2
  996. data/src/core/lib/promise/arena_promise.h +2 -2
  997. data/src/core/lib/promise/context.h +5 -5
  998. data/src/core/lib/promise/detail/join_state.h +11 -10
  999. data/src/core/lib/promise/detail/promise_factory.h +2 -2
  1000. data/src/core/lib/promise/detail/promise_like.h +2 -2
  1001. data/src/core/lib/promise/detail/seq_state.h +194 -194
  1002. data/src/core/lib/promise/detail/status.h +4 -3
  1003. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +2 -2
  1004. data/src/core/lib/promise/for_each.h +88 -27
  1005. data/src/core/lib/promise/if.h +2 -2
  1006. data/src/core/lib/promise/interceptor_list.h +3 -3
  1007. data/src/core/lib/promise/latch.h +8 -8
  1008. data/src/core/lib/promise/loop.h +2 -2
  1009. data/src/core/lib/promise/map.h +2 -2
  1010. data/src/core/lib/promise/party.cc +45 -15
  1011. data/src/core/lib/promise/party.h +21 -23
  1012. data/src/core/lib/promise/pipe.h +15 -15
  1013. data/src/core/lib/promise/poll.h +6 -5
  1014. data/src/core/lib/promise/prioritized_race.h +2 -2
  1015. data/src/core/lib/promise/promise.h +2 -2
  1016. data/src/core/lib/promise/race.h +2 -2
  1017. data/src/core/lib/promise/seq.h +2 -2
  1018. data/src/core/lib/promise/sleep.cc +2 -3
  1019. data/src/core/lib/promise/sleep.h +1 -2
  1020. data/src/core/lib/promise/status_flag.h +16 -8
  1021. data/src/core/lib/promise/trace.cc +2 -2
  1022. data/src/core/lib/promise/try_join.h +4 -3
  1023. data/src/core/lib/promise/try_seq.h +4 -3
  1024. data/src/core/lib/resource_quota/api.cc +1 -2
  1025. data/src/core/lib/resource_quota/api.h +1 -2
  1026. data/src/core/lib/resource_quota/arena.cc +1 -2
  1027. data/src/core/lib/resource_quota/arena.h +4 -2
  1028. data/src/core/lib/resource_quota/connection_quota.cc +70 -0
  1029. data/src/core/lib/resource_quota/connection_quota.h +61 -0
  1030. data/src/core/lib/resource_quota/memory_quota.cc +11 -11
  1031. data/src/core/lib/resource_quota/memory_quota.h +4 -4
  1032. data/src/core/lib/resource_quota/periodic_update.cc +2 -2
  1033. data/src/core/lib/resource_quota/periodic_update.h +2 -2
  1034. data/src/core/lib/resource_quota/resource_quota.cc +2 -2
  1035. data/src/core/lib/resource_quota/resource_quota.h +1 -2
  1036. data/src/core/lib/resource_quota/thread_quota.cc +4 -3
  1037. data/src/core/lib/resource_quota/thread_quota.h +2 -2
  1038. data/src/core/lib/resource_quota/trace.cc +2 -2
  1039. data/src/core/lib/security/authorization/audit_logging.cc +6 -6
  1040. data/src/core/lib/security/authorization/audit_logging.h +1 -2
  1041. data/src/core/lib/security/authorization/authorization_engine.h +2 -2
  1042. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -2
  1043. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -2
  1044. data/src/core/lib/security/authorization/evaluate_args.cc +7 -7
  1045. data/src/core/lib/security/authorization/evaluate_args.h +4 -5
  1046. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +4 -3
  1047. data/src/core/lib/security/authorization/grpc_authorization_engine.h +1 -2
  1048. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +8 -12
  1049. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +7 -9
  1050. data/src/core/lib/security/authorization/matchers.cc +1 -2
  1051. data/src/core/lib/security/authorization/matchers.h +2 -2
  1052. data/src/core/lib/security/authorization/rbac_policy.cc +2 -2
  1053. data/src/core/lib/security/authorization/rbac_policy.h +1 -2
  1054. data/src/core/lib/security/authorization/stdout_logger.cc +4 -3
  1055. data/src/core/lib/security/authorization/stdout_logger.h +1 -2
  1056. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
  1057. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +4 -3
  1058. data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +2 -2
  1059. data/src/core/lib/security/context/security_context.cc +5 -3
  1060. data/src/core/lib/security/context/security_context.h +2 -2
  1061. data/src/core/lib/security/credentials/alts/alts_credentials.cc +1 -2
  1062. data/src/core/lib/security/credentials/alts/alts_credentials.h +2 -2
  1063. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +1 -2
  1064. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +1 -2
  1065. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +1 -2
  1066. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +2 -2
  1067. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +1 -2
  1068. data/src/core/lib/security/credentials/call_creds_util.cc +1 -2
  1069. data/src/core/lib/security/credentials/call_creds_util.h +2 -2
  1070. data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
  1071. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +2 -2
  1072. data/src/core/lib/security/credentials/composite/composite_credentials.cc +9 -8
  1073. data/src/core/lib/security/credentials/composite/composite_credentials.h +2 -2
  1074. data/src/core/lib/security/credentials/credentials.cc +4 -3
  1075. data/src/core/lib/security/credentials/credentials.h +5 -4
  1076. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +5 -4
  1077. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
  1078. data/src/core/lib/security/credentials/external/aws_request_signer.cc +2 -2
  1079. data/src/core/lib/security/credentials/external/aws_request_signer.h +2 -2
  1080. data/src/core/lib/security/credentials/external/external_account_credentials.cc +7 -6
  1081. data/src/core/lib/security/credentials/external/external_account_credentials.h +2 -2
  1082. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +1 -2
  1083. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +2 -2
  1084. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -3
  1085. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +2 -2
  1086. data/src/core/lib/security/credentials/fake/fake_credentials.cc +2 -2
  1087. data/src/core/lib/security/credentials/fake/fake_credentials.h +2 -2
  1088. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +1 -2
  1089. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +8 -7
  1090. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +2 -2
  1091. data/src/core/lib/security/credentials/iam/iam_credentials.cc +5 -5
  1092. data/src/core/lib/security/credentials/iam/iam_credentials.h +2 -2
  1093. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +2 -2
  1094. data/src/core/lib/security/credentials/insecure/insecure_credentials.h +2 -2
  1095. data/src/core/lib/security/credentials/jwt/json_token.cc +13 -8
  1096. data/src/core/lib/security/credentials/jwt/json_token.h +1 -2
  1097. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +4 -3
  1098. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +2 -2
  1099. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +26 -31
  1100. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -2
  1101. data/src/core/lib/security/credentials/local/local_credentials.cc +1 -2
  1102. data/src/core/lib/security/credentials/local/local_credentials.h +2 -2
  1103. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +9 -8
  1104. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +2 -2
  1105. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +3 -3
  1106. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +2 -2
  1107. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +13 -13
  1108. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +5 -3
  1109. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +26 -25
  1110. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +2 -2
  1111. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_match.cc +2 -2
  1112. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +7 -6
  1113. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +3 -3
  1114. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +3 -3
  1115. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +4 -3
  1116. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +19 -18
  1117. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +1 -0
  1118. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +19 -12
  1119. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.h +8 -5
  1120. data/src/core/lib/security/credentials/tls/tls_credentials.cc +1 -2
  1121. data/src/core/lib/security/credentials/tls/tls_credentials.h +2 -2
  1122. data/src/core/lib/security/credentials/tls/tls_utils.cc +1 -2
  1123. data/src/core/lib/security/credentials/tls/tls_utils.h +1 -2
  1124. data/src/core/lib/security/credentials/xds/xds_credentials.cc +7 -7
  1125. data/src/core/lib/security/credentials/xds/xds_credentials.h +3 -3
  1126. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +14 -14
  1127. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +2 -2
  1128. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +5 -5
  1129. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +2 -2
  1130. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +6 -5
  1131. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +3 -3
  1132. data/src/core/lib/security/security_connector/load_system_roots.h +4 -2
  1133. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +3 -2
  1134. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +2 -2
  1135. data/src/core/lib/security/security_connector/load_system_roots_supported.h +1 -2
  1136. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +87 -0
  1137. data/src/core/lib/security/security_connector/local/local_security_connector.cc +11 -11
  1138. data/src/core/lib/security/security_connector/local/local_security_connector.h +2 -2
  1139. data/src/core/lib/security/security_connector/security_connector.cc +7 -6
  1140. data/src/core/lib/security/security_connector/security_connector.h +3 -3
  1141. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +6 -6
  1142. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +2 -2
  1143. data/src/core/lib/security/security_connector/ssl_utils.cc +10 -9
  1144. data/src/core/lib/security/security_connector/ssl_utils.h +1 -2
  1145. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +13 -13
  1146. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +3 -3
  1147. data/src/core/lib/security/transport/auth_filters.h +11 -36
  1148. data/src/core/lib/security/transport/client_auth_filter.cc +6 -5
  1149. data/src/core/lib/security/transport/server_auth_filter.cc +7 -5
  1150. data/src/core/lib/security/util/json_util.cc +1 -2
  1151. data/src/core/lib/slice/percent_encoding.cc +4 -3
  1152. data/src/core/lib/slice/slice.cc +42 -15
  1153. data/src/core/lib/slice/slice.h +4 -4
  1154. data/src/core/lib/slice/slice_buffer.cc +64 -25
  1155. data/src/core/lib/slice/slice_buffer.h +15 -3
  1156. data/src/core/lib/slice/slice_internal.h +10 -3
  1157. data/src/core/lib/slice/slice_refcount.cc +2 -2
  1158. data/src/core/lib/slice/slice_refcount.h +1 -2
  1159. data/src/core/lib/slice/slice_string_helpers.cc +2 -2
  1160. data/src/core/lib/slice/slice_string_helpers.h +1 -2
  1161. data/src/core/lib/surface/api_trace.cc +2 -2
  1162. data/src/core/lib/surface/api_trace.h +1 -2
  1163. data/src/core/lib/surface/byte_buffer.cc +1 -2
  1164. data/src/core/lib/surface/byte_buffer_reader.cc +4 -3
  1165. data/src/core/lib/surface/call.cc +212 -339
  1166. data/src/core/lib/surface/call.h +181 -11
  1167. data/src/core/lib/surface/call_details.cc +1 -2
  1168. data/src/core/lib/surface/call_log_batch.cc +1 -2
  1169. data/src/core/lib/surface/call_test_only.h +1 -2
  1170. data/src/core/lib/surface/call_trace.h +0 -6
  1171. data/src/core/lib/surface/channel.cc +111 -321
  1172. data/src/core/lib/surface/channel.h +90 -110
  1173. data/src/core/lib/surface/channel_create.cc +110 -0
  1174. data/src/core/lib/surface/{builtins.cc → channel_create.h} +21 -16
  1175. data/src/core/lib/surface/channel_init.cc +13 -12
  1176. data/src/core/lib/surface/channel_init.h +31 -10
  1177. data/src/core/lib/surface/channel_stack_type.cc +2 -2
  1178. data/src/core/lib/surface/completion_queue.cc +17 -18
  1179. data/src/core/lib/surface/completion_queue.h +1 -2
  1180. data/src/core/lib/surface/completion_queue_factory.cc +9 -8
  1181. data/src/core/lib/surface/completion_queue_factory.h +1 -2
  1182. data/src/core/lib/surface/event_string.cc +2 -2
  1183. data/src/core/lib/surface/event_string.h +1 -2
  1184. data/src/core/lib/surface/init.cc +10 -16
  1185. data/src/core/lib/surface/init_internally.cc +2 -2
  1186. data/src/core/lib/surface/lame_client.cc +12 -40
  1187. data/src/core/lib/surface/lame_client.h +13 -13
  1188. data/src/core/lib/surface/legacy_channel.cc +414 -0
  1189. data/src/core/lib/surface/legacy_channel.h +123 -0
  1190. data/src/core/lib/surface/metadata_array.cc +1 -2
  1191. data/src/core/lib/surface/validate_metadata.cc +1 -2
  1192. data/src/core/lib/surface/validate_metadata.h +3 -3
  1193. data/src/core/lib/surface/version.cc +3 -4
  1194. data/src/core/lib/surface/wait_for_cq_end_op.cc +2 -2
  1195. data/src/core/lib/transport/batch_builder.cc +14 -21
  1196. data/src/core/lib/transport/batch_builder.h +6 -10
  1197. data/src/core/lib/transport/bdp_estimator.cc +5 -3
  1198. data/src/core/lib/transport/bdp_estimator.h +4 -4
  1199. data/src/core/lib/transport/{call_size_estimator.cc → call_arena_allocator.cc} +3 -3
  1200. data/src/core/lib/transport/{call_size_estimator.h → call_arena_allocator.h} +26 -5
  1201. data/src/core/lib/transport/call_filters.cc +143 -28
  1202. data/src/core/lib/transport/call_filters.h +412 -63
  1203. data/src/core/lib/transport/call_final_info.cc +2 -2
  1204. data/src/core/lib/transport/call_final_info.h +1 -2
  1205. data/src/core/lib/transport/call_spine.cc +18 -19
  1206. data/src/core/lib/transport/call_spine.h +393 -190
  1207. data/src/core/lib/transport/connectivity_state.cc +1 -2
  1208. data/src/core/lib/transport/connectivity_state.h +1 -2
  1209. data/src/core/lib/transport/error_utils.cc +1 -2
  1210. data/src/core/lib/transport/error_utils.h +1 -2
  1211. data/src/core/lib/transport/message.cc +1 -2
  1212. data/src/core/lib/transport/metadata.cc +3 -3
  1213. data/src/core/lib/transport/metadata_batch.cc +68 -7
  1214. data/src/core/lib/transport/metadata_batch.h +45 -20
  1215. data/src/core/lib/transport/metadata_compression_traits.h +2 -2
  1216. data/src/core/lib/transport/metadata_info.cc +55 -0
  1217. data/src/core/lib/transport/metadata_info.h +85 -0
  1218. data/src/core/lib/transport/parsed_metadata.cc +2 -2
  1219. data/src/core/lib/transport/parsed_metadata.h +1 -2
  1220. data/src/core/lib/transport/simple_slice_based_metadata.h +2 -2
  1221. data/src/core/lib/transport/status_conversion.cc +2 -2
  1222. data/src/core/lib/transport/status_conversion.h +1 -2
  1223. data/src/core/lib/transport/timeout_encoding.cc +5 -5
  1224. data/src/core/lib/transport/timeout_encoding.h +2 -2
  1225. data/src/core/lib/transport/transport.cc +1 -2
  1226. data/src/core/lib/transport/transport.h +41 -38
  1227. data/src/core/lib/transport/transport_op_string.cc +1 -10
  1228. data/src/core/lib/uri/uri_parser.cc +3 -3
  1229. data/src/core/lib/uri/uri_parser.h +2 -2
  1230. data/src/core/load_balancing/address_filtering.cc +3 -3
  1231. data/src/core/load_balancing/address_filtering.h +3 -3
  1232. data/src/core/load_balancing/backend_metric_data.h +2 -2
  1233. data/src/core/{client_channel/backend_metric.cc → load_balancing/backend_metric_parser.cc} +3 -3
  1234. data/src/core/{client_channel/backend_metric.h → load_balancing/backend_metric_parser.h} +5 -5
  1235. data/src/core/load_balancing/child_policy_handler.cc +7 -7
  1236. data/src/core/load_balancing/child_policy_handler.h +2 -2
  1237. data/src/core/load_balancing/delegating_helper.h +10 -3
  1238. data/src/core/load_balancing/endpoint_list.cc +7 -9
  1239. data/src/core/load_balancing/endpoint_list.h +15 -9
  1240. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +28 -30
  1241. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +21 -8
  1242. data/src/core/load_balancing/grpclb/grpclb.cc +65 -70
  1243. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +2 -2
  1244. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.h +1 -2
  1245. data/src/core/load_balancing/grpclb/grpclb_client_stats.cc +1 -2
  1246. data/src/core/load_balancing/grpclb/grpclb_client_stats.h +2 -3
  1247. data/src/core/load_balancing/grpclb/load_balancer_api.cc +1 -2
  1248. data/src/core/load_balancing/grpclb/load_balancer_api.h +2 -3
  1249. data/src/core/load_balancing/health_check_client.cc +10 -11
  1250. data/src/core/load_balancing/health_check_client.h +2 -2
  1251. data/src/core/load_balancing/health_check_client_internal.h +5 -7
  1252. data/src/core/load_balancing/lb_policy.cc +2 -2
  1253. data/src/core/load_balancing/lb_policy.h +14 -6
  1254. data/src/core/load_balancing/lb_policy_factory.h +2 -2
  1255. data/src/core/load_balancing/lb_policy_registry.cc +3 -3
  1256. data/src/core/load_balancing/lb_policy_registry.h +4 -4
  1257. data/src/core/load_balancing/oob_backend_metric.cc +10 -11
  1258. data/src/core/load_balancing/oob_backend_metric.h +3 -3
  1259. data/src/core/load_balancing/oob_backend_metric_internal.h +7 -8
  1260. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +32 -32
  1261. data/src/core/load_balancing/outlier_detection/outlier_detection.h +2 -2
  1262. data/src/core/load_balancing/pick_first/pick_first.cc +1152 -245
  1263. data/src/core/load_balancing/priority/priority.cc +23 -17
  1264. data/src/core/load_balancing/ring_hash/ring_hash.cc +42 -25
  1265. data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
  1266. data/src/core/load_balancing/rls/rls.cc +225 -95
  1267. data/src/core/load_balancing/rls/rls.h +26 -0
  1268. data/src/core/load_balancing/round_robin/round_robin.cc +33 -477
  1269. data/src/core/load_balancing/subchannel_interface.h +4 -4
  1270. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.cc +4 -4
  1271. data/src/core/load_balancing/weighted_round_robin/static_stride_scheduler.h +3 -3
  1272. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +203 -988
  1273. data/src/core/load_balancing/weighted_target/weighted_target.cc +20 -17
  1274. data/src/core/load_balancing/weighted_target/weighted_target.h +28 -0
  1275. data/src/core/load_balancing/xds/cds.cc +19 -20
  1276. data/src/core/load_balancing/xds/xds_cluster_impl.cc +113 -67
  1277. data/src/core/load_balancing/xds/xds_cluster_manager.cc +8 -9
  1278. data/src/core/load_balancing/xds/xds_override_host.cc +21 -21
  1279. data/src/core/load_balancing/xds/xds_override_host.h +3 -3
  1280. data/src/core/load_balancing/xds/xds_wrr_locality.cc +11 -11
  1281. data/src/core/plugin_registry/grpc_plugin_registry.cc +23 -9
  1282. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +1 -3
  1283. data/src/core/resolver/binder/binder_resolver.cc +12 -5
  1284. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +13 -13
  1285. data/src/core/resolver/dns/c_ares/dns_resolver_ares.h +2 -2
  1286. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +3 -3
  1287. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +6 -5
  1288. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +38 -37
  1289. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +14 -14
  1290. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -2
  1291. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +1 -1
  1292. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  1293. data/src/core/resolver/dns/dns_resolver_plugin.cc +4 -5
  1294. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +7 -7
  1295. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.h +6 -4
  1296. data/src/core/resolver/dns/event_engine/service_config_helper.cc +2 -2
  1297. data/src/core/resolver/dns/event_engine/service_config_helper.h +2 -2
  1298. data/src/core/resolver/dns/native/dns_resolver.cc +6 -7
  1299. data/src/core/resolver/endpoint_addresses.cc +4 -4
  1300. data/src/core/resolver/endpoint_addresses.h +6 -6
  1301. data/src/core/resolver/fake/fake_resolver.cc +6 -6
  1302. data/src/core/resolver/fake/fake_resolver.h +2 -3
  1303. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +18 -13
  1304. data/src/core/resolver/polling_resolver.cc +5 -5
  1305. data/src/core/resolver/polling_resolver.h +1 -2
  1306. data/src/core/resolver/resolver.cc +2 -2
  1307. data/src/core/resolver/resolver.h +2 -2
  1308. data/src/core/resolver/resolver_factory.h +3 -3
  1309. data/src/core/resolver/resolver_registry.cc +5 -5
  1310. data/src/core/resolver/resolver_registry.h +5 -5
  1311. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +8 -9
  1312. data/src/core/resolver/xds/xds_dependency_manager.cc +19 -13
  1313. data/src/core/resolver/xds/xds_dependency_manager.h +12 -12
  1314. data/src/core/resolver/xds/xds_resolver.cc +36 -40
  1315. data/src/core/resolver/xds/xds_resolver_attributes.h +3 -3
  1316. data/src/core/resolver/xds/xds_resolver_trace.cc +2 -2
  1317. data/src/core/{lib/surface → server}/server.cc +81 -94
  1318. data/src/core/{lib/surface → server}/server.h +16 -13
  1319. data/src/core/{lib/channel → server}/server_call_tracer_filter.cc +10 -5
  1320. data/src/core/{lib/surface/builtins.h → server/server_call_tracer_filter.h} +7 -5
  1321. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector.h +5 -5
  1322. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector_filter.cc +37 -37
  1323. data/src/core/{ext/filters/server_config_selector → server}/server_config_selector_filter.h +3 -3
  1324. data/src/core/server/server_interface.h +43 -0
  1325. data/src/core/{ext/xds → server}/xds_channel_stack_modifier.cc +3 -3
  1326. data/src/core/{ext/xds → server}/xds_channel_stack_modifier.h +6 -6
  1327. data/src/core/{ext/xds → server}/xds_server_config_fetcher.cc +43 -41
  1328. data/src/core/service_config/service_config.h +1 -2
  1329. data/src/core/service_config/service_config_call_data.h +2 -2
  1330. data/src/core/{client_channel → service_config}/service_config_channel_arg_filter.cc +7 -8
  1331. data/src/core/service_config/service_config_impl.cc +2 -2
  1332. data/src/core/service_config/service_config_impl.h +3 -3
  1333. data/src/core/service_config/service_config_parser.cc +1 -2
  1334. data/src/core/service_config/service_config_parser.h +3 -3
  1335. data/src/core/tsi/alts/crypt/aes_gcm.cc +1 -2
  1336. data/src/core/tsi/alts/crypt/gsec.cc +1 -2
  1337. data/src/core/tsi/alts/crypt/gsec.h +1 -2
  1338. data/src/core/tsi/alts/frame_protector/alts_counter.cc +1 -2
  1339. data/src/core/tsi/alts/frame_protector/alts_counter.h +1 -2
  1340. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +1 -2
  1341. data/src/core/tsi/alts/frame_protector/alts_crypter.h +1 -2
  1342. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +1 -2
  1343. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +2 -2
  1344. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +1 -2
  1345. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +1 -2
  1346. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +1 -2
  1347. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +1 -2
  1348. data/src/core/tsi/alts/frame_protector/frame_handler.cc +1 -2
  1349. data/src/core/tsi/alts/frame_protector/frame_handler.h +2 -2
  1350. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +44 -41
  1351. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +1 -2
  1352. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +5 -4
  1353. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +1 -2
  1354. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +23 -20
  1355. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +1 -2
  1356. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +5 -4
  1357. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -2
  1358. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
  1359. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +1 -2
  1360. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
  1361. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +2 -2
  1362. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +1 -2
  1363. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +2 -2
  1364. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +1 -2
  1365. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +9 -5
  1366. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +1 -2
  1367. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +2 -2
  1368. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +5 -4
  1369. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +2 -2
  1370. data/src/core/tsi/fake_transport_security.cc +6 -4
  1371. data/src/core/tsi/local_transport_security.cc +1 -2
  1372. data/src/core/tsi/local_transport_security.h +1 -2
  1373. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +7 -6
  1374. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +1 -2
  1375. data/src/core/tsi/ssl/session_cache/ssl_session.h +1 -2
  1376. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +11 -10
  1377. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +1 -2
  1378. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +3 -4
  1379. data/src/core/tsi/ssl_transport_security.cc +218 -89
  1380. data/src/core/tsi/ssl_transport_security.h +1 -2
  1381. data/src/core/tsi/ssl_transport_security_utils.cc +138 -10
  1382. data/src/core/tsi/ssl_transport_security_utils.h +28 -2
  1383. data/src/core/tsi/ssl_types.h +2 -2
  1384. data/src/core/tsi/transport_security.cc +1 -2
  1385. data/src/core/tsi/transport_security.h +2 -2
  1386. data/src/core/tsi/transport_security_grpc.cc +2 -2
  1387. data/src/core/tsi/transport_security_grpc.h +1 -2
  1388. data/src/core/tsi/transport_security_interface.h +2 -2
  1389. data/src/core/{ext/xds → xds/grpc}/certificate_provider_store.cc +2 -3
  1390. data/src/core/{ext/xds → xds/grpc}/certificate_provider_store.h +7 -7
  1391. data/src/core/{ext/xds → xds/grpc}/file_watcher_certificate_provider_factory.cc +2 -3
  1392. data/src/core/{ext/xds → xds/grpc}/file_watcher_certificate_provider_factory.h +6 -7
  1393. data/src/core/{ext/xds → xds/grpc}/upb_utils.h +5 -5
  1394. data/src/core/{ext/xds → xds/grpc}/xds_audit_logger_registry.cc +6 -5
  1395. data/src/core/{ext/xds → xds/grpc}/xds_audit_logger_registry.h +7 -7
  1396. data/src/core/{ext/xds → xds/grpc}/xds_bootstrap_grpc.cc +40 -9
  1397. data/src/core/{ext/xds → xds/grpc}/xds_bootstrap_grpc.h +33 -18
  1398. data/src/core/{ext/xds → xds/grpc}/xds_certificate_provider.cc +7 -7
  1399. data/src/core/{ext/xds → xds/grpc}/xds_certificate_provider.h +5 -6
  1400. data/src/core/{ext/xds → xds/grpc}/xds_client_grpc.cc +208 -66
  1401. data/src/core/{ext/xds → xds/grpc}/xds_client_grpc.h +30 -17
  1402. data/src/core/{ext/xds → xds/grpc}/xds_cluster.cc +27 -18
  1403. data/src/core/{ext/xds → xds/grpc}/xds_cluster.h +16 -14
  1404. data/src/core/{ext/xds → xds/grpc}/xds_cluster_specifier_plugin.cc +4 -4
  1405. data/src/core/{ext/xds → xds/grpc}/xds_cluster_specifier_plugin.h +8 -8
  1406. data/src/core/{ext/xds → xds/grpc}/xds_common_types.cc +5 -6
  1407. data/src/core/{ext/xds → xds/grpc}/xds_common_types.h +6 -6
  1408. data/src/core/{ext/xds → xds/grpc}/xds_endpoint.cc +10 -9
  1409. data/src/core/{ext/xds → xds/grpc}/xds_endpoint.h +11 -11
  1410. data/src/core/{ext/xds → xds/grpc}/xds_health_status.cc +3 -3
  1411. data/src/core/{ext/xds → xds/grpc}/xds_health_status.h +7 -7
  1412. data/src/core/{ext/xds → xds/grpc}/xds_http_fault_filter.cc +4 -5
  1413. data/src/core/{ext/xds → xds/grpc}/xds_http_fault_filter.h +9 -9
  1414. data/src/core/{ext/xds → xds/grpc}/xds_http_filters.cc +8 -9
  1415. data/src/core/{ext/xds → xds/grpc}/xds_http_filters.h +9 -9
  1416. data/src/core/{ext/xds → xds/grpc}/xds_http_rbac_filter.cc +6 -7
  1417. data/src/core/{ext/xds → xds/grpc}/xds_http_rbac_filter.h +9 -9
  1418. data/src/core/{ext/xds → xds/grpc}/xds_http_stateful_session_filter.cc +5 -6
  1419. data/src/core/{ext/xds → xds/grpc}/xds_http_stateful_session_filter.h +9 -9
  1420. data/src/core/{ext/xds → xds/grpc}/xds_lb_policy_registry.cc +8 -9
  1421. data/src/core/{ext/xds → xds/grpc}/xds_lb_policy_registry.h +7 -7
  1422. data/src/core/{ext/xds → xds/grpc}/xds_listener.cc +8 -8
  1423. data/src/core/{ext/xds → xds/grpc}/xds_listener.h +13 -13
  1424. data/src/core/{ext/xds → xds/grpc}/xds_route_config.cc +16 -16
  1425. data/src/core/{ext/xds → xds/grpc}/xds_route_config.h +12 -12
  1426. data/src/core/{ext/xds → xds/grpc}/xds_routing.cc +6 -6
  1427. data/src/core/{ext/xds → xds/grpc}/xds_routing.h +9 -9
  1428. data/src/core/{ext/xds → xds/grpc}/xds_transport_grpc.cc +31 -46
  1429. data/src/core/{ext/xds → xds/grpc}/xds_transport_grpc.h +12 -13
  1430. data/src/core/{ext/xds → xds/xds_client}/xds_api.cc +4 -5
  1431. data/src/core/{ext/xds → xds/xds_client}/xds_api.h +8 -8
  1432. data/src/core/{ext/xds → xds/xds_client}/xds_bootstrap.cc +3 -3
  1433. data/src/core/{ext/xds → xds/xds_client}/xds_bootstrap.h +7 -9
  1434. data/src/core/{ext/xds → xds/xds_client}/xds_channel_args.h +3 -3
  1435. data/src/core/{ext/xds → xds/xds_client}/xds_client.cc +304 -120
  1436. data/src/core/{ext/xds → xds/xds_client}/xds_client.h +50 -18
  1437. data/src/core/{ext/xds → xds/xds_client}/xds_client_stats.cc +5 -6
  1438. data/src/core/{ext/xds → xds/xds_client}/xds_client_stats.h +20 -13
  1439. data/src/core/xds/xds_client/xds_metrics.h +41 -0
  1440. data/src/core/{ext/xds → xds/xds_client}/xds_resource_type.h +6 -6
  1441. data/src/core/{ext/xds → xds/xds_client}/xds_resource_type_impl.h +7 -7
  1442. data/src/core/{ext/xds → xds/xds_client}/xds_transport.h +6 -6
  1443. data/src/ruby/ext/grpc/extconf.rb +0 -3
  1444. data/src/ruby/ext/grpc/rb_call_credentials.c +1 -0
  1445. data/src/ruby/ext/grpc/rb_call_credentials.h +1 -0
  1446. data/src/ruby/ext/grpc/rb_channel.c +1 -0
  1447. data/src/ruby/ext/grpc/rb_channel_credentials.c +1 -0
  1448. data/src/ruby/ext/grpc/rb_grpc.c +1 -0
  1449. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +130 -132
  1450. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +196 -198
  1451. data/src/ruby/ext/grpc/rb_server.c +1 -0
  1452. data/src/ruby/ext/grpc/rb_server_credentials.c +1 -0
  1453. data/src/ruby/ext/grpc/rb_server_credentials.h +1 -0
  1454. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +1 -0
  1455. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +1 -0
  1456. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +1 -0
  1457. data/src/ruby/lib/grpc/generic/active_call.rb +8 -2
  1458. data/src/ruby/lib/grpc/version.rb +1 -1
  1459. data/src/ruby/spec/generic/rpc_server_spec.rb +25 -0
  1460. data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.cc +320 -0
  1461. data/third_party/abseil-cpp/absl/debugging/internal/examine_stack.h +64 -0
  1462. data/third_party/abseil-cpp/absl/log/absl_vlog_is_on.h +93 -0
  1463. data/third_party/abseil-cpp/absl/log/check.h +209 -0
  1464. data/third_party/abseil-cpp/absl/log/globals.cc +178 -0
  1465. data/third_party/abseil-cpp/absl/log/globals.h +218 -0
  1466. data/third_party/abseil-cpp/absl/log/internal/append_truncated.h +47 -0
  1467. data/third_party/abseil-cpp/absl/log/internal/check_impl.h +150 -0
  1468. data/third_party/abseil-cpp/absl/log/internal/check_op.cc +118 -0
  1469. data/third_party/abseil-cpp/absl/log/internal/check_op.h +420 -0
  1470. data/third_party/abseil-cpp/absl/log/internal/conditions.cc +83 -0
  1471. data/third_party/abseil-cpp/absl/log/internal/conditions.h +239 -0
  1472. data/third_party/abseil-cpp/absl/log/internal/config.h +45 -0
  1473. data/third_party/abseil-cpp/absl/log/internal/fnmatch.cc +73 -0
  1474. data/third_party/abseil-cpp/absl/log/internal/fnmatch.h +35 -0
  1475. data/third_party/abseil-cpp/absl/log/internal/globals.cc +145 -0
  1476. data/third_party/abseil-cpp/absl/log/internal/globals.h +101 -0
  1477. data/third_party/abseil-cpp/absl/log/internal/log_format.cc +205 -0
  1478. data/third_party/abseil-cpp/absl/log/internal/log_format.h +78 -0
  1479. data/third_party/abseil-cpp/absl/log/internal/log_impl.h +282 -0
  1480. data/third_party/abseil-cpp/absl/log/internal/log_message.cc +633 -0
  1481. data/third_party/abseil-cpp/absl/log/internal/log_message.h +375 -0
  1482. data/third_party/abseil-cpp/absl/log/internal/log_sink_set.cc +296 -0
  1483. data/third_party/abseil-cpp/absl/log/internal/log_sink_set.h +54 -0
  1484. data/third_party/abseil-cpp/absl/log/internal/nullguard.cc +35 -0
  1485. data/third_party/abseil-cpp/absl/log/internal/nullguard.h +88 -0
  1486. data/third_party/abseil-cpp/absl/log/internal/nullstream.h +136 -0
  1487. data/third_party/abseil-cpp/absl/log/internal/proto.cc +220 -0
  1488. data/third_party/abseil-cpp/absl/log/internal/proto.h +288 -0
  1489. data/third_party/abseil-cpp/absl/log/internal/strip.h +72 -0
  1490. data/third_party/abseil-cpp/absl/log/internal/vlog_config.cc +340 -0
  1491. data/third_party/abseil-cpp/absl/log/internal/vlog_config.h +163 -0
  1492. data/third_party/abseil-cpp/absl/log/internal/voidify.h +44 -0
  1493. data/third_party/abseil-cpp/absl/log/log.h +361 -0
  1494. data/third_party/abseil-cpp/absl/log/log_entry.cc +41 -0
  1495. data/third_party/abseil-cpp/absl/log/log_entry.h +221 -0
  1496. data/third_party/abseil-cpp/absl/log/log_sink.cc +23 -0
  1497. data/third_party/abseil-cpp/absl/log/log_sink.h +64 -0
  1498. data/third_party/abseil-cpp/absl/log/log_sink_registry.h +61 -0
  1499. data/third_party/abseil-cpp/absl/log/vlog_is_on.h +72 -0
  1500. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +1 -7
  1501. data/third_party/boringssl-with-bazel/src/crypto/asn1/posix_time.c +50 -39
  1502. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +3 -8
  1503. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +25 -10
  1504. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +0 -13
  1505. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +3 -2
  1506. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +1 -1
  1507. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +19 -15
  1508. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_des.c +63 -94
  1509. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +7 -3
  1510. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +20 -28
  1511. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +9 -4
  1512. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +2 -2
  1513. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +7 -7
  1514. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -1
  1515. data/third_party/boringssl-with-bazel/src/crypto/des/des.c +45 -32
  1516. data/third_party/boringssl-with-bazel/src/crypto/des/internal.h +24 -0
  1517. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +1 -0
  1518. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +26 -17
  1519. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +3 -2
  1520. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +81 -60
  1521. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +41 -120
  1522. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +13 -13
  1523. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +7 -0
  1524. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh.c +137 -0
  1525. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dh_asn1.c +120 -0
  1526. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +30 -0
  1527. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +3 -4
  1528. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +30 -0
  1529. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +1 -4
  1530. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +30 -0
  1531. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +1 -4
  1532. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +6 -7
  1533. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +1 -1
  1534. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +3 -3
  1535. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +1 -1
  1536. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +1 -1
  1537. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +8 -5
  1538. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +1 -1
  1539. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +2 -2
  1540. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +14 -7
  1541. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +2 -1
  1542. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +0 -3
  1543. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +11 -7
  1544. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +5 -1
  1545. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +2 -1
  1546. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +11 -11
  1547. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +22 -8
  1548. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/service_indicator/service_indicator.c +3 -6
  1549. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +73 -29
  1550. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +4 -4
  1551. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +3 -3
  1552. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +4 -4
  1553. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +7 -0
  1554. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +2 -0
  1555. data/third_party/boringssl-with-bazel/src/crypto/internal.h +45 -21
  1556. data/third_party/boringssl-with-bazel/src/crypto/kyber/internal.h +1 -1
  1557. data/third_party/boringssl-with-bazel/src/crypto/kyber/kyber.c +1 -1
  1558. data/third_party/boringssl-with-bazel/src/crypto/mem.c +18 -9
  1559. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +18 -17
  1560. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +44 -41
  1561. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +13 -12
  1562. data/third_party/boringssl-with-bazel/src/crypto/spx/spx.c +7 -6
  1563. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +26 -33
  1564. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +1 -1
  1565. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +8 -1
  1566. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +5 -1
  1567. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_cpols.c +9 -4
  1568. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_crld.c +2 -2
  1569. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_info.c +1 -1
  1570. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_lib.c +2 -0
  1571. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_purp.c +40 -61
  1572. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +24 -7
  1573. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +51 -78
  1574. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +5 -12
  1575. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +13 -2
  1576. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +2 -2
  1577. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +1 -6
  1578. data/third_party/boringssl-with-bazel/{err_data.c → src/gen/crypto/err_data.c} +487 -485
  1579. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +10 -10
  1580. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +10 -2
  1581. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +80 -39
  1582. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +12 -4
  1583. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +1 -0
  1584. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +17 -1
  1585. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +10 -3
  1586. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +13 -0
  1587. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +25 -14
  1588. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +1 -0
  1589. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +15 -3
  1590. data/third_party/boringssl-with-bazel/src/{crypto/spx/internal.h → include/openssl/experimental/spx.h} +24 -13
  1591. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +2 -2
  1592. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +63 -53
  1593. data/third_party/boringssl-with-bazel/src/include/openssl/posix_time.h +6 -0
  1594. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +19 -10
  1595. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +19 -10
  1596. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +14 -0
  1597. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +291 -73
  1598. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +10 -3
  1599. data/third_party/boringssl-with-bazel/src/include/openssl/target.h +13 -10
  1600. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +2 -2
  1601. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +2959 -2403
  1602. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +5 -5
  1603. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +3 -9
  1604. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +43 -43
  1605. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +1 -1
  1606. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +17 -7
  1607. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +67 -15
  1608. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +143 -113
  1609. data/third_party/boringssl-with-bazel/src/ssl/internal.h +227 -167
  1610. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +1 -1
  1611. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +0 -1
  1612. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +66 -385
  1613. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +21 -19
  1614. data/third_party/boringssl-with-bazel/src/ssl/ssl_credential.cc +423 -0
  1615. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +2 -2
  1616. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +1 -1
  1617. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +70 -54
  1618. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +59 -75
  1619. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +6 -14
  1620. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +48 -116
  1621. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +19 -26
  1622. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +36 -3
  1623. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +53 -18
  1624. data/third_party/upb/upb/base/descriptor_constants.h +29 -2
  1625. data/third_party/upb/upb/{wire/internal/swap.h → base/internal/endian.h} +12 -11
  1626. data/third_party/upb/upb/base/status.h +1 -1
  1627. data/third_party/upb/upb/base/status.hpp +5 -1
  1628. data/third_party/upb/upb/base/string_view.h +7 -5
  1629. data/third_party/upb/upb/base/upcast.h +29 -0
  1630. data/third_party/upb/upb/generated_code_support.h +2 -1
  1631. data/third_party/upb/upb/json/decode.c +103 -53
  1632. data/third_party/upb/upb/json/decode.h +3 -26
  1633. data/third_party/upb/upb/json/encode.c +3 -26
  1634. data/third_party/upb/upb/json/encode.h +3 -26
  1635. data/third_party/upb/upb/mem/arena.c +233 -106
  1636. data/third_party/upb/upb/mem/arena.h +14 -66
  1637. data/third_party/upb/upb/mem/arena.hpp +8 -4
  1638. data/third_party/upb/upb/mem/internal/arena.h +76 -58
  1639. data/third_party/upb/upb/message/accessors.c +19 -46
  1640. data/third_party/upb/upb/message/accessors.h +208 -123
  1641. data/third_party/upb/upb/message/array.c +55 -83
  1642. data/third_party/upb/upb/message/array.h +18 -30
  1643. data/third_party/upb/upb/message/compat.c +39 -0
  1644. data/third_party/upb/upb/message/compat.h +41 -0
  1645. data/third_party/upb/upb/message/copy.c +322 -0
  1646. data/third_party/upb/upb/message/copy.h +56 -0
  1647. data/third_party/upb/upb/message/internal/accessors.h +178 -178
  1648. data/third_party/upb/upb/message/internal/array.h +80 -81
  1649. data/third_party/upb/upb/message/internal/extension.c +63 -0
  1650. data/third_party/upb/upb/message/internal/extension.h +12 -12
  1651. data/third_party/upb/upb/message/internal/map.h +28 -41
  1652. data/third_party/upb/upb/message/internal/map_entry.h +14 -39
  1653. data/third_party/upb/upb/message/internal/map_sorter.h +18 -37
  1654. data/third_party/upb/upb/message/internal/message.c +59 -0
  1655. data/third_party/upb/upb/message/internal/message.h +26 -42
  1656. data/third_party/upb/upb/message/internal/tagged_ptr.h +56 -0
  1657. data/third_party/upb/upb/message/internal/types.h +7 -12
  1658. data/third_party/upb/upb/message/map.c +3 -26
  1659. data/third_party/upb/upb/message/map.h +5 -33
  1660. data/third_party/upb/upb/message/map_gencode_util.h +3 -26
  1661. data/third_party/upb/upb/message/map_sorter.c +22 -34
  1662. data/third_party/upb/upb/message/message.c +28 -104
  1663. data/third_party/upb/upb/message/message.h +4 -8
  1664. data/third_party/upb/upb/message/tagged_ptr.h +14 -31
  1665. data/third_party/upb/upb/message/value.h +3 -5
  1666. data/third_party/upb/upb/mini_descriptor/build_enum.c +20 -11
  1667. data/third_party/upb/upb/mini_descriptor/decode.c +127 -107
  1668. data/third_party/upb/upb/mini_descriptor/decode.h +3 -8
  1669. data/third_party/upb/upb/mini_descriptor/link.c +34 -22
  1670. data/third_party/upb/upb/mini_descriptor/link.h +1 -1
  1671. data/third_party/upb/upb/mini_table/enum.h +4 -6
  1672. data/third_party/upb/upb/mini_table/extension.h +37 -0
  1673. data/third_party/upb/upb/mini_table/extension_registry.c +9 -2
  1674. data/third_party/upb/upb/mini_table/field.h +46 -60
  1675. data/third_party/upb/upb/mini_table/file.h +44 -0
  1676. data/third_party/upb/upb/mini_table/internal/enum.h +19 -20
  1677. data/third_party/upb/upb/mini_table/internal/extension.h +34 -3
  1678. data/third_party/upb/upb/mini_table/internal/field.h +136 -27
  1679. data/third_party/upb/upb/mini_table/internal/file.h +47 -10
  1680. data/third_party/upb/upb/mini_table/internal/message.c +17 -9
  1681. data/third_party/upb/upb/mini_table/internal/message.h +94 -23
  1682. data/third_party/upb/upb/mini_table/internal/size_log2.h +77 -0
  1683. data/third_party/upb/upb/mini_table/internal/sub.h +39 -4
  1684. data/third_party/upb/upb/mini_table/message.c +18 -19
  1685. data/third_party/upb/upb/mini_table/message.h +29 -20
  1686. data/third_party/upb/upb/mini_table/sub.h +40 -1
  1687. data/third_party/upb/upb/port/def.inc +18 -0
  1688. data/third_party/upb/upb/port/undef.inc +3 -0
  1689. data/third_party/upb/upb/reflection/def.hpp +8 -4
  1690. data/third_party/upb/upb/reflection/def_pool.c +81 -2
  1691. data/third_party/upb/upb/reflection/def_pool.h +8 -0
  1692. data/third_party/upb/upb/reflection/enum_def.c +42 -19
  1693. data/third_party/upb/upb/reflection/enum_def.h +1 -0
  1694. data/third_party/upb/upb/reflection/enum_value_def.c +43 -14
  1695. data/third_party/upb/upb/reflection/enum_value_def.h +2 -0
  1696. data/third_party/upb/upb/reflection/extension_range.c +13 -5
  1697. data/third_party/upb/upb/reflection/extension_range.h +2 -0
  1698. data/third_party/upb/upb/reflection/field_def.c +177 -130
  1699. data/third_party/upb/upb/reflection/field_def.h +10 -1
  1700. data/third_party/upb/upb/reflection/file_def.c +98 -9
  1701. data/third_party/upb/upb/reflection/file_def.h +3 -0
  1702. data/third_party/upb/upb/reflection/internal/def_builder.c +85 -7
  1703. data/third_party/upb/upb/reflection/internal/def_builder.h +23 -0
  1704. data/third_party/upb/upb/reflection/internal/enum_def.h +5 -4
  1705. data/third_party/upb/upb/reflection/internal/enum_reserved_range.h +1 -1
  1706. data/third_party/upb/upb/reflection/internal/enum_value_def.h +2 -1
  1707. data/third_party/upb/upb/reflection/internal/extension_range.h +2 -2
  1708. data/third_party/upb/upb/reflection/internal/field_def.h +11 -10
  1709. data/third_party/upb/upb/reflection/internal/message_def.h +6 -3
  1710. data/third_party/upb/upb/reflection/internal/method_def.h +5 -3
  1711. data/third_party/upb/upb/reflection/internal/oneof_def.h +5 -3
  1712. data/third_party/upb/upb/reflection/internal/service_def.h +5 -3
  1713. data/third_party/upb/upb/reflection/internal/upb_edition_defaults.h +20 -0
  1714. data/third_party/upb/upb/reflection/message.c +27 -12
  1715. data/third_party/upb/upb/reflection/message.h +5 -5
  1716. data/third_party/upb/upb/reflection/message_def.c +56 -27
  1717. data/third_party/upb/upb/reflection/message_def.h +2 -0
  1718. data/third_party/upb/upb/reflection/method_def.c +20 -9
  1719. data/third_party/upb/upb/reflection/method_def.h +2 -0
  1720. data/third_party/upb/upb/reflection/oneof_def.c +20 -11
  1721. data/third_party/upb/upb/reflection/oneof_def.h +3 -1
  1722. data/third_party/upb/upb/reflection/service_def.c +25 -13
  1723. data/third_party/upb/upb/reflection/service_def.h +2 -0
  1724. data/third_party/upb/upb/text/encode.c +126 -36
  1725. data/third_party/upb/upb/wire/decode.c +214 -196
  1726. data/third_party/upb/upb/wire/decode.h +10 -0
  1727. data/third_party/upb/upb/wire/encode.c +105 -91
  1728. data/third_party/upb/upb/wire/encode.h +4 -3
  1729. data/third_party/upb/upb/wire/{decode_fast.c → internal/decode_fast.c} +53 -48
  1730. data/third_party/upb/upb/wire/{decode_fast.h → internal/decode_fast.h} +6 -5
  1731. data/third_party/upb/upb/wire/internal/{decode.h → decoder.h} +15 -31
  1732. data/third_party/upb/upb/wire/internal/reader.h +61 -0
  1733. data/third_party/upb/upb/wire/reader.c +9 -6
  1734. data/third_party/upb/upb/wire/reader.h +18 -47
  1735. data/third_party/utf8_range/utf8_range.c +467 -0
  1736. data/third_party/utf8_range/utf8_range.h +9 -8
  1737. metadata +182 -128
  1738. data/src/core/client_channel/channel_connectivity.cc +0 -265
  1739. data/src/core/client_channel/client_channel_channelz.cc +0 -93
  1740. data/src/core/client_channel/client_channel_channelz.h +0 -85
  1741. data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +0 -318
  1742. data/src/core/ext/filters/channel_idle/channel_idle_filter.h +0 -150
  1743. data/src/core/ext/filters/deadline/deadline_filter.cc +0 -407
  1744. data/src/core/ext/filters/deadline/deadline_filter.h +0 -85
  1745. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.cc +0 -325
  1746. data/src/core/ext/filters/http/message_compress/legacy_compression_filter.h +0 -139
  1747. data/src/core/lib/gpr/log_internal.h +0 -55
  1748. data/src/core/lib/gpr/wrap_memcpy.cc +0 -43
  1749. data/src/core/lib/security/transport/legacy_server_auth_filter.cc +0 -244
  1750. data/src/core/lib/slice/b64.cc +0 -239
  1751. data/src/core/lib/slice/b64.h +0 -52
  1752. data/src/core/lib/surface/call_trace.cc +0 -163
  1753. data/src/core/lib/surface/channel_ping.cc +0 -69
  1754. data/src/core/lib/transport/call_factory.cc +0 -41
  1755. data/src/core/lib/transport/call_factory.h +0 -56
  1756. data/src/core/load_balancing/subchannel_list.h +0 -455
  1757. data/third_party/upb/upb/message/types.h +0 -15
  1758. data/third_party/utf8_range/naive.c +0 -92
  1759. data/third_party/utf8_range/range2-neon.c +0 -157
  1760. data/third_party/utf8_range/range2-sse.c +0 -170
  1761. /data/third_party/boringssl-with-bazel/src/include/openssl/{kyber.h → experimental/kyber.h} +0 -0
@@ -0,0 +1,361 @@
1
+ // Copyright 2022 The Abseil 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
+ // https://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
+ // -----------------------------------------------------------------------------
16
+ // File: log/log.h
17
+ // -----------------------------------------------------------------------------
18
+ //
19
+ // This header declares a family of LOG macros.
20
+ //
21
+ // Basic invocation looks like this:
22
+ //
23
+ // LOG(INFO) << "Found " << num_cookies << " cookies";
24
+ //
25
+ // Most `LOG` macros take a severity level argument. The severity levels are
26
+ // `INFO`, `WARNING`, `ERROR`, and `FATAL`. They are defined
27
+ // in absl/base/log_severity.h.
28
+ // * The `FATAL` severity level terminates the program with a stack trace after
29
+ // logging its message. Error handlers registered with `RunOnFailure`
30
+ // (process_state.h) are run, but exit handlers registered with `atexit(3)`
31
+ // are not.
32
+ // * The `QFATAL` pseudo-severity level is equivalent to `FATAL` but triggers
33
+ // quieter termination messages, e.g. without a full stack trace, and skips
34
+ // running registered error handlers.
35
+ // * The `DFATAL` pseudo-severity level is defined as `FATAL` in debug mode and
36
+ // as `ERROR` otherwise.
37
+ // Some preprocessor shenanigans are used to ensure that e.g. `LOG(INFO)` has
38
+ // the same meaning even if a local symbol or preprocessor macro named `INFO` is
39
+ // defined. To specify a severity level using an expression instead of a
40
+ // literal, use `LEVEL(expr)`.
41
+ // Example:
42
+ //
43
+ // LOG(LEVEL(stale ? absl::LogSeverity::kWarning : absl::LogSeverity::kInfo))
44
+ // << "Cookies are " << days << " days old";
45
+
46
+ // `LOG` macros evaluate to an unterminated statement. The value at the end of
47
+ // the statement supports some chainable methods:
48
+ //
49
+ // * .AtLocation(absl::string_view file, int line)
50
+ // .AtLocation(absl::SourceLocation loc)
51
+ // Overrides the location inferred from the callsite. The string pointed to
52
+ // by `file` must be valid until the end of the statement.
53
+ // * .NoPrefix()
54
+ // Omits the prefix from this line. The prefix includes metadata about the
55
+ // logged data such as source code location and timestamp.
56
+ // * .WithVerbosity(int verbose_level)
57
+ // Sets the verbosity field of the logged message as if it was logged by
58
+ // `VLOG(verbose_level)`. Unlike `VLOG`, this method does not affect
59
+ // evaluation of the statement when the specified `verbose_level` has been
60
+ // disabled. The only effect is on `LogSink` implementations which make use
61
+ // of the `absl::LogSink::verbosity()` value. The value
62
+ // `absl::LogEntry::kNoVerbosityLevel` can be specified to mark the message
63
+ // not verbose.
64
+ // * .WithTimestamp(absl::Time timestamp)
65
+ // Uses the specified timestamp instead of one collected at the time of
66
+ // execution.
67
+ // * .WithThreadID(absl::LogEntry::tid_t tid)
68
+ // Uses the specified thread ID instead of one collected at the time of
69
+ // execution.
70
+ // * .WithMetadataFrom(const absl::LogEntry &entry)
71
+ // Copies all metadata (but no data) from the specified `absl::LogEntry`.
72
+ // This can be used to change the severity of a message, but it has some
73
+ // limitations:
74
+ // * `ABSL_MIN_LOG_LEVEL` is evaluated against the severity passed into
75
+ // `LOG` (or the implicit `FATAL` level of `CHECK`).
76
+ // * `LOG(FATAL)` and `CHECK` terminate the process unconditionally, even if
77
+ // the severity is changed later.
78
+ // `.WithMetadataFrom(entry)` should almost always be used in combination
79
+ // with `LOG(LEVEL(entry.log_severity()))`.
80
+ // * .WithPerror()
81
+ // Appends to the logged message a colon, a space, a textual description of
82
+ // the current value of `errno` (as by `strerror(3)`), and the numerical
83
+ // value of `errno`.
84
+ // * .ToSinkAlso(absl::LogSink* sink)
85
+ // Sends this message to `*sink` in addition to whatever other sinks it
86
+ // would otherwise have been sent to. `sink` must not be null.
87
+ // * .ToSinkOnly(absl::LogSink* sink)
88
+ // Sends this message to `*sink` and no others. `sink` must not be null.
89
+ //
90
+ // No interfaces in this header are async-signal-safe; their use in signal
91
+ // handlers is unsupported and may deadlock your program or eat your lunch.
92
+ //
93
+ // Many logging statements are inherently conditional. For example,
94
+ // `LOG_IF(INFO, !foo)` does nothing if `foo` is true. Even seemingly
95
+ // unconditional statements like `LOG(INFO)` might be disabled at
96
+ // compile-time to minimize binary size or for security reasons.
97
+ //
98
+ // * Except for the condition in a `CHECK` or `QCHECK` statement, programs must
99
+ // not rely on evaluation of expressions anywhere in logging statements for
100
+ // correctness. For example, this is ok:
101
+ //
102
+ // CHECK((fp = fopen("config.ini", "r")) != nullptr);
103
+ //
104
+ // But this is probably not ok:
105
+ //
106
+ // LOG(INFO) << "Server status: " << StartServerAndReturnStatusString();
107
+ //
108
+ // The example below is bad too; the `i++` in the `LOG_IF` condition might
109
+ // not be evaluated, resulting in an infinite loop:
110
+ //
111
+ // for (int i = 0; i < 1000000;)
112
+ // LOG_IF(INFO, i++ % 1000 == 0) << "Still working...";
113
+ //
114
+ // * Except where otherwise noted, conditions which cause a statement not to log
115
+ // also cause expressions not to be evaluated. Programs may rely on this for
116
+ // performance reasons, e.g. by streaming the result of an expensive function
117
+ // call into a `DLOG` or `LOG_EVERY_N` statement.
118
+ // * Care has been taken to ensure that expressions are parsed by the compiler
119
+ // even if they are never evaluated. This means that syntax errors will be
120
+ // caught and variables will be considered used for the purposes of
121
+ // unused-variable diagnostics. For example, this statement won't compile
122
+ // even if `INFO`-level logging has been compiled out:
123
+ //
124
+ // int number_of_cakes = 40;
125
+ // LOG(INFO) << "Number of cakes: " << number_of_cake; // Note the typo!
126
+ //
127
+ // Similarly, this won't produce unused-variable compiler diagnostics even
128
+ // if `INFO`-level logging is compiled out:
129
+ //
130
+ // {
131
+ // char fox_line1[] = "Hatee-hatee-hatee-ho!";
132
+ // LOG_IF(ERROR, false) << "The fox says " << fox_line1;
133
+ // char fox_line2[] = "A-oo-oo-oo-ooo!";
134
+ // LOG(INFO) << "The fox also says " << fox_line2;
135
+ // }
136
+ //
137
+ // This error-checking is not perfect; for example, symbols that have been
138
+ // declared but not defined may not produce link errors if used in logging
139
+ // statements that compile away.
140
+ //
141
+ // Expressions streamed into these macros are formatted using `operator<<` just
142
+ // as they would be if streamed into a `std::ostream`, however it should be
143
+ // noted that their actual type is unspecified.
144
+ //
145
+ // To implement a custom formatting operator for a type you own, there are two
146
+ // options: `AbslStringify()` or `std::ostream& operator<<(std::ostream&, ...)`.
147
+ // It is recommended that users make their types loggable through
148
+ // `AbslStringify()` as it is a universal stringification extension that also
149
+ // enables `absl::StrFormat` and `absl::StrCat` support. If both
150
+ // `AbslStringify()` and `std::ostream& operator<<(std::ostream&, ...)` are
151
+ // defined, `AbslStringify()` will be used.
152
+ //
153
+ // To use the `AbslStringify()` API, define a friend function template in your
154
+ // type's namespace with the following signature:
155
+ //
156
+ // template <typename Sink>
157
+ // void AbslStringify(Sink& sink, const UserDefinedType& value);
158
+ //
159
+ // `Sink` has the same interface as `absl::FormatSink`, but without
160
+ // `PutPaddedString()`.
161
+ //
162
+ // Example:
163
+ //
164
+ // struct Point {
165
+ // template <typename Sink>
166
+ // friend void AbslStringify(Sink& sink, const Point& p) {
167
+ // absl::Format(&sink, "(%v, %v)", p.x, p.y);
168
+ // }
169
+ //
170
+ // int x;
171
+ // int y;
172
+ // };
173
+ //
174
+ // To use `std::ostream& operator<<(std::ostream&, ...)`, define
175
+ // `std::ostream& operator<<(std::ostream&, ...)` in your type's namespace (for
176
+ // ADL) just as you would to stream it to `std::cout`.
177
+ //
178
+ // Currently `AbslStringify()` ignores output manipulators but this is not
179
+ // guaranteed behavior and may be subject to change in the future. If you would
180
+ // like guaranteed behavior regarding output manipulators, please use
181
+ // `std::ostream& operator<<(std::ostream&, ...)` to make custom types loggable
182
+ // instead.
183
+ //
184
+ // Those macros that support streaming honor output manipulators and `fmtflag`
185
+ // changes that output data (e.g. `std::ends`) or control formatting of data
186
+ // (e.g. `std::hex` and `std::fixed`), however flushing such a stream is
187
+ // ignored. The message produced by a log statement is sent to registered
188
+ // `absl::LogSink` instances at the end of the statement; those sinks are
189
+ // responsible for their own flushing (e.g. to disk) semantics.
190
+ //
191
+ // Flag settings are not carried over from one `LOG` statement to the next; this
192
+ // is a bit different than e.g. `std::cout`:
193
+ //
194
+ // LOG(INFO) << std::hex << 0xdeadbeef; // logs "0xdeadbeef"
195
+ // LOG(INFO) << 0xdeadbeef; // logs "3735928559"
196
+
197
+ #ifndef ABSL_LOG_LOG_H_
198
+ #define ABSL_LOG_LOG_H_
199
+
200
+ #include "absl/log/internal/log_impl.h"
201
+ #include "absl/log/vlog_is_on.h" // IWYU pragma: export
202
+
203
+ // LOG()
204
+ //
205
+ // `LOG` takes a single argument which is a severity level. Data streamed in
206
+ // comprise the logged message.
207
+ // Example:
208
+ //
209
+ // LOG(INFO) << "Found " << num_cookies << " cookies";
210
+ #define LOG(severity) ABSL_LOG_INTERNAL_LOG_IMPL(_##severity)
211
+
212
+ // PLOG()
213
+ //
214
+ // `PLOG` behaves like `LOG` except that a description of the current state of
215
+ // `errno` is appended to the streamed message.
216
+ #define PLOG(severity) ABSL_LOG_INTERNAL_PLOG_IMPL(_##severity)
217
+
218
+ // DLOG()
219
+ //
220
+ // `DLOG` behaves like `LOG` in debug mode (i.e. `#ifndef NDEBUG`). Otherwise
221
+ // it compiles away and does nothing. Note that `DLOG(FATAL)` does not
222
+ // terminate the program if `NDEBUG` is defined.
223
+ #define DLOG(severity) ABSL_LOG_INTERNAL_DLOG_IMPL(_##severity)
224
+
225
+ // `VLOG` uses numeric levels to provide verbose logging that can configured at
226
+ // runtime, including at a per-module level. `VLOG` statements are logged at
227
+ // `INFO` severity if they are logged at all; the numeric levels are on a
228
+ // different scale than the proper severity levels. Positive levels are
229
+ // disabled by default. Negative levels should not be used.
230
+ // Example:
231
+ //
232
+ // VLOG(1) << "I print when you run the program with --v=1 or higher";
233
+ // VLOG(2) << "I print when you run the program with --v=2 or higher";
234
+ //
235
+ // See vlog_is_on.h for further documentation, including the usage of the
236
+ // --vmodule flag to log at different levels in different source files.
237
+ #define VLOG(severity) ABSL_LOG_INTERNAL_VLOG_IMPL(severity)
238
+
239
+ // `DVLOG` behaves like `VLOG` in debug mode (i.e. `#ifndef NDEBUG`).
240
+ // Otherwise, it compiles away and does nothing.
241
+ #define DVLOG(severity) ABSL_LOG_INTERNAL_DVLOG_IMPL(severity)
242
+
243
+ // `LOG_IF` and friends add a second argument which specifies a condition. If
244
+ // the condition is false, nothing is logged.
245
+ // Example:
246
+ //
247
+ // LOG_IF(INFO, num_cookies > 10) << "Got lots of cookies";
248
+ //
249
+ // There is no `VLOG_IF` because the order of evaluation of the arguments is
250
+ // ambiguous and the alternate spelling with an `if`-statement is trivial.
251
+ #define LOG_IF(severity, condition) \
252
+ ABSL_LOG_INTERNAL_LOG_IF_IMPL(_##severity, condition)
253
+ #define PLOG_IF(severity, condition) \
254
+ ABSL_LOG_INTERNAL_PLOG_IF_IMPL(_##severity, condition)
255
+ #define DLOG_IF(severity, condition) \
256
+ ABSL_LOG_INTERNAL_DLOG_IF_IMPL(_##severity, condition)
257
+
258
+ // LOG_EVERY_N
259
+ //
260
+ // An instance of `LOG_EVERY_N` increments a hidden zero-initialized counter
261
+ // every time execution passes through it and logs the specified message when
262
+ // the counter's value is a multiple of `n`, doing nothing otherwise. Each
263
+ // instance has its own counter. The counter's value can be logged by streaming
264
+ // the symbol `COUNTER`. `LOG_EVERY_N` is thread-safe.
265
+ // Example:
266
+ //
267
+ // LOG_EVERY_N(WARNING, 1000) << "Got a packet with a bad CRC (" << COUNTER
268
+ // << " total)";
269
+ #define LOG_EVERY_N(severity, n) \
270
+ ABSL_LOG_INTERNAL_LOG_EVERY_N_IMPL(_##severity, n)
271
+
272
+ // LOG_FIRST_N
273
+ //
274
+ // `LOG_FIRST_N` behaves like `LOG_EVERY_N` except that the specified message is
275
+ // logged when the counter's value is less than `n`. `LOG_FIRST_N` is
276
+ // thread-safe.
277
+ #define LOG_FIRST_N(severity, n) \
278
+ ABSL_LOG_INTERNAL_LOG_FIRST_N_IMPL(_##severity, n)
279
+
280
+ // LOG_EVERY_POW_2
281
+ //
282
+ // `LOG_EVERY_POW_2` behaves like `LOG_EVERY_N` except that the specified
283
+ // message is logged when the counter's value is a power of 2.
284
+ // `LOG_EVERY_POW_2` is thread-safe.
285
+ #define LOG_EVERY_POW_2(severity) \
286
+ ABSL_LOG_INTERNAL_LOG_EVERY_POW_2_IMPL(_##severity)
287
+
288
+ // LOG_EVERY_N_SEC
289
+ //
290
+ // An instance of `LOG_EVERY_N_SEC` uses a hidden state variable to log the
291
+ // specified message at most once every `n_seconds`. A hidden counter of
292
+ // executions (whether a message is logged or not) is also maintained and can be
293
+ // logged by streaming the symbol `COUNTER`. `LOG_EVERY_N_SEC` is thread-safe.
294
+ // Example:
295
+ //
296
+ // LOG_EVERY_N_SEC(INFO, 2.5) << "Got " << COUNTER << " cookies so far";
297
+ #define LOG_EVERY_N_SEC(severity, n_seconds) \
298
+ ABSL_LOG_INTERNAL_LOG_EVERY_N_SEC_IMPL(_##severity, n_seconds)
299
+
300
+ #define PLOG_EVERY_N(severity, n) \
301
+ ABSL_LOG_INTERNAL_PLOG_EVERY_N_IMPL(_##severity, n)
302
+ #define PLOG_FIRST_N(severity, n) \
303
+ ABSL_LOG_INTERNAL_PLOG_FIRST_N_IMPL(_##severity, n)
304
+ #define PLOG_EVERY_POW_2(severity) \
305
+ ABSL_LOG_INTERNAL_PLOG_EVERY_POW_2_IMPL(_##severity)
306
+ #define PLOG_EVERY_N_SEC(severity, n_seconds) \
307
+ ABSL_LOG_INTERNAL_PLOG_EVERY_N_SEC_IMPL(_##severity, n_seconds)
308
+
309
+ #define DLOG_EVERY_N(severity, n) \
310
+ ABSL_LOG_INTERNAL_DLOG_EVERY_N_IMPL(_##severity, n)
311
+ #define DLOG_FIRST_N(severity, n) \
312
+ ABSL_LOG_INTERNAL_DLOG_FIRST_N_IMPL(_##severity, n)
313
+ #define DLOG_EVERY_POW_2(severity) \
314
+ ABSL_LOG_INTERNAL_DLOG_EVERY_POW_2_IMPL(_##severity)
315
+ #define DLOG_EVERY_N_SEC(severity, n_seconds) \
316
+ ABSL_LOG_INTERNAL_DLOG_EVERY_N_SEC_IMPL(_##severity, n_seconds)
317
+
318
+ #define VLOG_EVERY_N(severity, n) \
319
+ ABSL_LOG_INTERNAL_VLOG_EVERY_N_IMPL(severity, n)
320
+ #define VLOG_FIRST_N(severity, n) \
321
+ ABSL_LOG_INTERNAL_VLOG_FIRST_N_IMPL(severity, n)
322
+ #define VLOG_EVERY_POW_2(severity) \
323
+ ABSL_LOG_INTERNAL_VLOG_EVERY_POW_2_IMPL(severity)
324
+ #define VLOG_EVERY_N_SEC(severity, n_seconds) \
325
+ ABSL_LOG_INTERNAL_VLOG_EVERY_N_SEC_IMPL(severity, n_seconds)
326
+
327
+ // `LOG_IF_EVERY_N` and friends behave as the corresponding `LOG_EVERY_N`
328
+ // but neither increment a counter nor log a message if condition is false (as
329
+ // `LOG_IF`).
330
+ // Example:
331
+ //
332
+ // LOG_IF_EVERY_N(INFO, (size > 1024), 10) << "Got the " << COUNTER
333
+ // << "th big cookie";
334
+ #define LOG_IF_EVERY_N(severity, condition, n) \
335
+ ABSL_LOG_INTERNAL_LOG_IF_EVERY_N_IMPL(_##severity, condition, n)
336
+ #define LOG_IF_FIRST_N(severity, condition, n) \
337
+ ABSL_LOG_INTERNAL_LOG_IF_FIRST_N_IMPL(_##severity, condition, n)
338
+ #define LOG_IF_EVERY_POW_2(severity, condition) \
339
+ ABSL_LOG_INTERNAL_LOG_IF_EVERY_POW_2_IMPL(_##severity, condition)
340
+ #define LOG_IF_EVERY_N_SEC(severity, condition, n_seconds) \
341
+ ABSL_LOG_INTERNAL_LOG_IF_EVERY_N_SEC_IMPL(_##severity, condition, n_seconds)
342
+
343
+ #define PLOG_IF_EVERY_N(severity, condition, n) \
344
+ ABSL_LOG_INTERNAL_PLOG_IF_EVERY_N_IMPL(_##severity, condition, n)
345
+ #define PLOG_IF_FIRST_N(severity, condition, n) \
346
+ ABSL_LOG_INTERNAL_PLOG_IF_FIRST_N_IMPL(_##severity, condition, n)
347
+ #define PLOG_IF_EVERY_POW_2(severity, condition) \
348
+ ABSL_LOG_INTERNAL_PLOG_IF_EVERY_POW_2_IMPL(_##severity, condition)
349
+ #define PLOG_IF_EVERY_N_SEC(severity, condition, n_seconds) \
350
+ ABSL_LOG_INTERNAL_PLOG_IF_EVERY_N_SEC_IMPL(_##severity, condition, n_seconds)
351
+
352
+ #define DLOG_IF_EVERY_N(severity, condition, n) \
353
+ ABSL_LOG_INTERNAL_DLOG_IF_EVERY_N_IMPL(_##severity, condition, n)
354
+ #define DLOG_IF_FIRST_N(severity, condition, n) \
355
+ ABSL_LOG_INTERNAL_DLOG_IF_FIRST_N_IMPL(_##severity, condition, n)
356
+ #define DLOG_IF_EVERY_POW_2(severity, condition) \
357
+ ABSL_LOG_INTERNAL_DLOG_IF_EVERY_POW_2_IMPL(_##severity, condition)
358
+ #define DLOG_IF_EVERY_N_SEC(severity, condition, n_seconds) \
359
+ ABSL_LOG_INTERNAL_DLOG_IF_EVERY_N_SEC_IMPL(_##severity, condition, n_seconds)
360
+
361
+ #endif // ABSL_LOG_LOG_H_
@@ -0,0 +1,41 @@
1
+ //
2
+ // Copyright 2022 The Abseil Authors.
3
+ //
4
+ // Licensed under the Apache License, Version 2.0 (the "License");
5
+ // you may not use this file except in compliance with the License.
6
+ // You may obtain a copy of the License at
7
+ //
8
+ // https://www.apache.org/licenses/LICENSE-2.0
9
+ //
10
+ // Unless required by applicable law or agreed to in writing, software
11
+ // distributed under the License is distributed on an "AS IS" BASIS,
12
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ // See the License for the specific language governing permissions and
14
+ // limitations under the License.
15
+
16
+ #include "absl/log/log_entry.h"
17
+
18
+ #include "absl/base/config.h"
19
+
20
+ namespace absl {
21
+ ABSL_NAMESPACE_BEGIN
22
+
23
+ #ifdef ABSL_INTERNAL_NEED_REDUNDANT_CONSTEXPR_DECL
24
+ constexpr int LogEntry::kNoVerbosityLevel;
25
+ constexpr int LogEntry::kNoVerboseLevel;
26
+ #endif
27
+
28
+ // https://github.com/abseil/abseil-cpp/issues/1465
29
+ // CMake builds on Apple platforms error when libraries are empty.
30
+ // Our CMake configuration can avoid this error on header-only libraries,
31
+ // but since this library is conditionally empty, including a single
32
+ // variable is an easy workaround.
33
+ #ifdef __APPLE__
34
+ namespace log_internal {
35
+ extern const char kAvoidEmptyLogEntryLibraryWarning;
36
+ const char kAvoidEmptyLogEntryLibraryWarning = 0;
37
+ } // namespace log_internal
38
+ #endif // __APPLE__
39
+
40
+ ABSL_NAMESPACE_END
41
+ } // namespace absl
@@ -0,0 +1,221 @@
1
+ // Copyright 2022 The Abseil 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
+ // https://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
+ // -----------------------------------------------------------------------------
16
+ // File: log/log_entry.h
17
+ // -----------------------------------------------------------------------------
18
+ //
19
+ // This header declares `class absl::LogEntry`, which represents a log record as
20
+ // passed to `LogSink::Send`. Data returned by pointer or by reference or by
21
+ // `absl::string_view` must be copied if they are needed after the lifetime of
22
+ // the `absl::LogEntry`.
23
+
24
+ #ifndef ABSL_LOG_LOG_ENTRY_H_
25
+ #define ABSL_LOG_LOG_ENTRY_H_
26
+
27
+ #include <cstddef>
28
+ #include <string>
29
+
30
+ #include "absl/base/attributes.h"
31
+ #include "absl/base/config.h"
32
+ #include "absl/base/log_severity.h"
33
+ #include "absl/log/internal/config.h"
34
+ #include "absl/strings/string_view.h"
35
+ #include "absl/time/time.h"
36
+ #include "absl/types/span.h"
37
+
38
+ namespace absl {
39
+ ABSL_NAMESPACE_BEGIN
40
+
41
+ namespace log_internal {
42
+ // Test only friend.
43
+ class LogEntryTestPeer;
44
+ class LogMessage;
45
+ } // namespace log_internal
46
+
47
+ // LogEntry
48
+ //
49
+ // Represents a single entry in a log, i.e., one `LOG` statement or failed
50
+ // `CHECK`.
51
+ //
52
+ // `LogEntry` is thread-compatible.
53
+ class LogEntry final {
54
+ public:
55
+ using tid_t = log_internal::Tid;
56
+
57
+ // For non-verbose log entries, `verbosity()` returns `kNoVerbosityLevel`.
58
+ static constexpr int kNoVerbosityLevel = -1;
59
+ static constexpr int kNoVerboseLevel = -1; // TO BE removed
60
+
61
+ // Pass `LogEntry` by reference, and do not store it as its state does not
62
+ // outlive the call to `LogSink::Send()`.
63
+ LogEntry(const LogEntry&) = delete;
64
+ LogEntry& operator=(const LogEntry&) = delete;
65
+
66
+ // Source file and line where the log message occurred. Taken from `__FILE__`
67
+ // and `__LINE__` unless overridden by `LOG(...).AtLocation(...)`.
68
+ //
69
+ // Take special care not to use the values returned by `source_filename()` and
70
+ // `source_basename()` after the lifetime of the entry. This is always
71
+ // incorrect, but it will often work in practice because they usually point
72
+ // into a statically allocated character array obtained from `__FILE__`.
73
+ // Statements like `LOG(INFO).AtLocation(std::string(...), ...)` will expose
74
+ // the bug. If you need the data later, you must copy them.
75
+ absl::string_view source_filename() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
76
+ return full_filename_;
77
+ }
78
+ absl::string_view source_basename() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
79
+ return base_filename_;
80
+ }
81
+ int source_line() const { return line_; }
82
+
83
+ // LogEntry::prefix()
84
+ //
85
+ // True unless the metadata prefix was suppressed once by
86
+ // `LOG(...).NoPrefix()` or globally by `absl::EnableLogPrefix(false)`.
87
+ // Implies `text_message_with_prefix() == text_message()`.
88
+ bool prefix() const { return prefix_; }
89
+
90
+ // LogEntry::log_severity()
91
+ //
92
+ // Returns this entry's severity. For `LOG`, taken from the first argument;
93
+ // for `CHECK`, always `absl::LogSeverity::kFatal`.
94
+ absl::LogSeverity log_severity() const { return severity_; }
95
+
96
+ // LogEntry::verbosity()
97
+ //
98
+ // Returns this entry's verbosity, or `kNoVerbosityLevel` for a non-verbose
99
+ // entry. Taken from the argument to `VLOG` or from
100
+ // `LOG(...).WithVerbosity(...)`.
101
+ int verbosity() const { return verbose_level_; }
102
+
103
+ // LogEntry::timestamp()
104
+ //
105
+ // Returns the time at which this entry was written. Captured during
106
+ // evaluation of `LOG`, but can be overridden by
107
+ // `LOG(...).WithTimestamp(...)`.
108
+ //
109
+ // Take care not to rely on timestamps increasing monotonically, or even to
110
+ // rely on timestamps having any particular relationship with reality (since
111
+ // they can be overridden).
112
+ absl::Time timestamp() const { return timestamp_; }
113
+
114
+ // LogEntry::tid()
115
+ //
116
+ // Returns the ID of the thread that wrote this entry. Captured during
117
+ // evaluation of `LOG`, but can be overridden by `LOG(...).WithThreadID(...)`.
118
+ //
119
+ // Take care not to *rely* on reported thread IDs as they can be overridden as
120
+ // specified above.
121
+ tid_t tid() const { return tid_; }
122
+
123
+ // Text-formatted version of the log message. An underlying buffer holds
124
+ // these contiguous data:
125
+ //
126
+ // * A prefix formed by formatting metadata (timestamp, filename, line number,
127
+ // etc.)
128
+ // The prefix may be empty - see `LogEntry::prefix()` - and may rarely be
129
+ // truncated if the metadata are very long.
130
+ // * The streamed data
131
+ // The data may be empty if nothing was streamed, or may be truncated to fit
132
+ // the buffer.
133
+ // * A newline
134
+ // * A nul terminator
135
+ //
136
+ // The newline and nul terminator will be present even if the prefix and/or
137
+ // data are truncated.
138
+ //
139
+ // These methods give access to the most commonly useful substrings of the
140
+ // buffer's contents. Other combinations can be obtained with substring
141
+ // arithmetic.
142
+ //
143
+ // The buffer does not outlive the entry; if you need the data later, you must
144
+ // copy them.
145
+ absl::string_view text_message_with_prefix_and_newline() const
146
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
147
+ return absl::string_view(
148
+ text_message_with_prefix_and_newline_and_nul_.data(),
149
+ text_message_with_prefix_and_newline_and_nul_.size() - 1);
150
+ }
151
+ absl::string_view text_message_with_prefix() const
152
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
153
+ return absl::string_view(
154
+ text_message_with_prefix_and_newline_and_nul_.data(),
155
+ text_message_with_prefix_and_newline_and_nul_.size() - 2);
156
+ }
157
+ absl::string_view text_message_with_newline() const
158
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
159
+ return absl::string_view(
160
+ text_message_with_prefix_and_newline_and_nul_.data() + prefix_len_,
161
+ text_message_with_prefix_and_newline_and_nul_.size() - prefix_len_ - 1);
162
+ }
163
+ absl::string_view text_message() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
164
+ return absl::string_view(
165
+ text_message_with_prefix_and_newline_and_nul_.data() + prefix_len_,
166
+ text_message_with_prefix_and_newline_and_nul_.size() - prefix_len_ - 2);
167
+ }
168
+ const char* text_message_with_prefix_and_newline_c_str() const
169
+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
170
+ return text_message_with_prefix_and_newline_and_nul_.data();
171
+ }
172
+
173
+ // Returns a serialized protobuf holding the operands streamed into this
174
+ // log message. The message definition is not yet published.
175
+ //
176
+ // The buffer does not outlive the entry; if you need the data later, you must
177
+ // copy them.
178
+ absl::string_view encoded_message() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
179
+ return encoding_;
180
+ }
181
+
182
+ // LogEntry::stacktrace()
183
+ //
184
+ // Optional stacktrace, e.g. for `FATAL` logs and failed `CHECK`s.
185
+ //
186
+ // Fatal entries are dispatched to each sink twice: first with all data and
187
+ // metadata but no stacktrace, and then with the stacktrace. This is done
188
+ // because stacktrace collection is sometimes slow and fallible, and it's
189
+ // critical to log enough information to diagnose the failure even if the
190
+ // stacktrace collection hangs.
191
+ //
192
+ // The buffer does not outlive the entry; if you need the data later, you must
193
+ // copy them.
194
+ absl::string_view stacktrace() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
195
+ return stacktrace_;
196
+ }
197
+
198
+ private:
199
+ LogEntry() = default;
200
+
201
+ absl::string_view full_filename_;
202
+ absl::string_view base_filename_;
203
+ int line_;
204
+ bool prefix_;
205
+ absl::LogSeverity severity_;
206
+ int verbose_level_; // >=0 for `VLOG`, etc.; otherwise `kNoVerbosityLevel`.
207
+ absl::Time timestamp_;
208
+ tid_t tid_;
209
+ absl::Span<const char> text_message_with_prefix_and_newline_and_nul_;
210
+ size_t prefix_len_;
211
+ absl::string_view encoding_;
212
+ std::string stacktrace_;
213
+
214
+ friend class log_internal::LogEntryTestPeer;
215
+ friend class log_internal::LogMessage;
216
+ };
217
+
218
+ ABSL_NAMESPACE_END
219
+ } // namespace absl
220
+
221
+ #endif // ABSL_LOG_LOG_ENTRY_H_
@@ -0,0 +1,23 @@
1
+ // Copyright 2022 The Abseil 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
+ // https://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
+ #include "absl/log/log_sink.h"
16
+
17
+ #include "absl/base/config.h"
18
+
19
+ namespace absl {
20
+ ABSL_NAMESPACE_BEGIN
21
+ void LogSink::KeyFunction() const {}
22
+ ABSL_NAMESPACE_END
23
+ } // namespace absl