grpc 1.64.3 → 1.65.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 (632) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +57 -58
  3. data/include/grpc/event_engine/event_engine.h +13 -6
  4. data/include/grpc/impl/channel_arg_names.h +7 -3
  5. data/include/grpc/module.modulemap +1 -0
  6. data/include/grpc/passive_listener.h +62 -0
  7. data/include/grpc/support/log.h +7 -17
  8. data/include/grpc/support/port_platform.h +3 -0
  9. data/src/core/channelz/channel_trace.cc +1 -1
  10. data/src/core/channelz/channel_trace.h +1 -1
  11. data/src/core/channelz/channelz.cc +3 -3
  12. data/src/core/channelz/channelz.h +7 -7
  13. data/src/core/channelz/channelz_registry.cc +4 -3
  14. data/src/core/client_channel/backup_poller.cc +4 -5
  15. data/src/core/client_channel/client_channel.cc +1324 -0
  16. data/src/core/client_channel/client_channel.h +243 -0
  17. data/src/core/client_channel/client_channel_filter.cc +266 -709
  18. data/src/core/client_channel/client_channel_filter.h +11 -64
  19. data/src/core/client_channel/client_channel_internal.h +16 -5
  20. data/src/core/client_channel/client_channel_plugin.cc +1 -14
  21. data/src/core/client_channel/client_channel_service_config.h +3 -3
  22. data/src/core/client_channel/config_selector.cc +1 -1
  23. data/src/core/client_channel/config_selector.h +1 -1
  24. data/src/core/client_channel/dynamic_filters.cc +3 -3
  25. data/src/core/client_channel/dynamic_filters.h +1 -3
  26. data/src/core/client_channel/load_balanced_call_destination.cc +336 -0
  27. data/src/core/client_channel/load_balanced_call_destination.h +49 -0
  28. data/src/core/client_channel/retry_filter.cc +2 -9
  29. data/src/core/client_channel/retry_filter.h +2 -7
  30. data/src/core/client_channel/retry_filter_legacy_call_data.cc +65 -72
  31. data/src/core/client_channel/retry_filter_legacy_call_data.h +0 -2
  32. data/src/core/client_channel/retry_service_config.cc +4 -5
  33. data/src/core/client_channel/retry_service_config.h +3 -3
  34. data/src/core/client_channel/subchannel.cc +220 -112
  35. data/src/core/client_channel/subchannel.h +31 -18
  36. data/src/core/client_channel/subchannel_pool_interface.cc +0 -2
  37. data/src/core/client_channel/subchannel_pool_interface.h +2 -4
  38. data/src/core/client_channel/subchannel_stream_client.cc +36 -49
  39. data/src/core/client_channel/subchannel_stream_client.h +2 -4
  40. data/src/core/ext/filters/backend_metrics/backend_metric_filter.cc +7 -10
  41. data/src/core/ext/filters/backend_metrics/backend_metric_filter.h +1 -0
  42. data/src/core/ext/filters/backend_metrics/backend_metric_provider.h +7 -0
  43. data/src/core/ext/filters/census/grpc_context.cc +2 -4
  44. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +8 -15
  45. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.h +2 -0
  46. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +3 -7
  47. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +1 -0
  48. data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +3 -3
  49. data/src/core/ext/filters/http/client/http_client_filter.cc +1 -0
  50. data/src/core/ext/filters/http/client/http_client_filter.h +1 -0
  51. data/src/core/ext/filters/http/client_authority_filter.cc +1 -0
  52. data/src/core/ext/filters/http/client_authority_filter.h +1 -0
  53. data/src/core/ext/filters/http/message_compress/compression_filter.cc +10 -15
  54. data/src/core/ext/filters/http/message_compress/compression_filter.h +2 -0
  55. data/src/core/ext/filters/http/server/http_server_filter.cc +2 -2
  56. data/src/core/ext/filters/http/server/http_server_filter.h +1 -0
  57. data/src/core/ext/filters/message_size/message_size_filter.cc +6 -9
  58. data/src/core/ext/filters/message_size/message_size_filter.h +6 -6
  59. data/src/core/ext/filters/rbac/rbac_filter.cc +2 -5
  60. data/src/core/ext/filters/rbac/rbac_filter.h +1 -0
  61. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
  62. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +1 -1
  63. data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +2 -6
  64. data/src/core/ext/filters/stateful_session/stateful_session_filter.h +1 -0
  65. data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +3 -3
  66. data/src/core/ext/transport/chttp2/alpn/alpn.cc +1 -1
  67. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +8 -25
  68. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -5
  69. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +223 -148
  70. data/src/core/ext/transport/chttp2/server/chttp2_server.h +33 -0
  71. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +131 -107
  72. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +8 -8
  73. data/src/core/ext/transport/chttp2/transport/context_list_entry.h +1 -1
  74. data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -4
  75. data/src/core/ext/transport/chttp2/transport/flow_control.h +0 -2
  76. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -6
  77. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +1 -2
  78. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +9 -5
  79. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +5 -4
  80. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +9 -2
  81. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +32 -43
  82. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +1 -3
  83. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +3 -8
  84. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +1 -1
  85. data/src/core/ext/transport/chttp2/transport/http2_settings.h +1 -1
  86. data/src/core/ext/transport/chttp2/transport/internal.h +29 -19
  87. data/src/core/ext/transport/chttp2/transport/parsing.cc +15 -25
  88. data/src/core/ext/transport/chttp2/transport/ping_callbacks.cc +0 -2
  89. data/src/core/ext/transport/chttp2/transport/ping_callbacks.h +0 -2
  90. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +29 -13
  91. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.h +5 -4
  92. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +3 -5
  93. data/src/core/ext/transport/chttp2/transport/writing.cc +24 -25
  94. data/src/core/ext/transport/inproc/inproc_transport.cc +56 -32
  95. data/src/core/ext/transport/inproc/inproc_transport.h +1 -3
  96. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +13 -15
  97. data/src/core/ext/transport/inproc/legacy_inproc_transport.h +0 -2
  98. data/src/core/handshaker/handshaker.cc +6 -14
  99. data/src/core/handshaker/http_connect/http_connect_handshaker.cc +9 -17
  100. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +3 -2
  101. data/src/core/handshaker/security/secure_endpoint.cc +38 -32
  102. data/src/core/handshaker/security/secure_endpoint.h +0 -2
  103. data/src/core/handshaker/security/security_handshaker.cc +25 -37
  104. data/src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc +2 -1
  105. data/src/core/lib/address_utils/parse_address.cc +27 -39
  106. data/src/core/lib/address_utils/sockaddr_utils.cc +5 -6
  107. data/src/core/lib/avl/avl.h +1 -1
  108. data/src/core/lib/channel/channel_args.cc +13 -17
  109. data/src/core/lib/channel/channel_args.h +19 -8
  110. data/src/core/lib/channel/channel_stack.cc +5 -63
  111. data/src/core/lib/channel/channel_stack.h +13 -37
  112. data/src/core/lib/channel/channel_stack_builder.h +0 -5
  113. data/src/core/lib/channel/channel_stack_builder_impl.cc +0 -142
  114. data/src/core/lib/channel/channel_stack_builder_impl.h +0 -2
  115. data/src/core/lib/channel/connected_channel.cc +37 -676
  116. data/src/core/lib/channel/promise_based_filter.cc +41 -47
  117. data/src/core/lib/channel/promise_based_filter.h +124 -477
  118. data/src/core/lib/channel/status_util.cc +1 -1
  119. data/src/core/lib/compression/compression.cc +1 -1
  120. data/src/core/lib/compression/message_compress.cc +6 -6
  121. data/src/core/lib/config/config_vars.cc +3 -8
  122. data/src/core/lib/config/config_vars.h +1 -5
  123. data/src/core/lib/debug/event_log.h +1 -1
  124. data/src/core/lib/debug/trace.cc +43 -59
  125. data/src/core/lib/debug/trace.h +2 -97
  126. data/src/core/lib/debug/trace_flags.cc +255 -0
  127. data/src/core/lib/debug/trace_flags.h +133 -0
  128. data/src/core/lib/debug/trace_impl.h +115 -0
  129. data/src/core/lib/event_engine/ares_resolver.cc +5 -7
  130. data/src/core/lib/event_engine/ares_resolver.h +1 -3
  131. data/src/core/lib/event_engine/cf_engine/cf_engine.cc +1 -1
  132. data/src/core/lib/event_engine/cf_engine/dns_service_resolver.cc +17 -22
  133. data/src/core/lib/event_engine/event_engine.cc +29 -4
  134. data/src/core/lib/event_engine/extensions/supports_fd.h +7 -0
  135. data/src/core/lib/event_engine/extensions/tcp_trace.h +43 -0
  136. data/src/core/lib/event_engine/forkable.cc +4 -5
  137. data/src/core/lib/event_engine/forkable.h +0 -11
  138. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +10 -11
  139. data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +4 -3
  140. data/src/core/lib/event_engine/posix_engine/native_posix_dns_resolver.cc +1 -1
  141. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +19 -33
  142. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +3 -2
  143. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +24 -7
  144. data/src/core/lib/event_engine/posix_engine/posix_engine.h +2 -0
  145. data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +14 -16
  146. data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +18 -22
  147. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +13 -17
  148. data/src/core/lib/event_engine/posix_engine/timer.cc +1 -1
  149. data/src/core/lib/event_engine/posix_engine/timer_manager.cc +4 -6
  150. data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +2 -1
  151. data/src/core/lib/event_engine/shim.cc +1 -1
  152. data/src/core/lib/event_engine/tcp_socket_utils.cc +6 -8
  153. data/src/core/lib/event_engine/thread_local.h +1 -1
  154. data/src/core/lib/event_engine/thread_pool/thread_count.h +1 -1
  155. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc +19 -21
  156. data/src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.h +3 -6
  157. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc +14 -13
  158. data/src/core/lib/event_engine/thready_event_engine/thready_event_engine.h +4 -3
  159. data/src/core/lib/event_engine/trace.h +6 -17
  160. data/src/core/lib/event_engine/windows/iocp.h +1 -1
  161. data/src/core/lib/event_engine/windows/win_socket.cc +23 -17
  162. data/src/core/lib/event_engine/windows/win_socket.h +4 -5
  163. data/src/core/lib/event_engine/windows/windows_endpoint.cc +6 -9
  164. data/src/core/lib/event_engine/windows/windows_engine.cc +201 -87
  165. data/src/core/lib/event_engine/windows/windows_engine.h +136 -25
  166. data/src/core/lib/event_engine/windows/windows_listener.cc +12 -23
  167. data/src/core/lib/experiments/experiments.cc +35 -151
  168. data/src/core/lib/experiments/experiments.h +12 -45
  169. data/src/core/lib/gprpp/bitset.h +1 -1
  170. data/src/core/lib/gprpp/crash.cc +2 -3
  171. data/src/core/lib/gprpp/dual_ref_counted.h +45 -33
  172. data/src/core/lib/gprpp/dump_args.cc +54 -0
  173. data/src/core/lib/gprpp/dump_args.h +69 -0
  174. data/src/core/lib/gprpp/glob.cc +70 -0
  175. data/src/core/lib/gprpp/glob.h +29 -0
  176. data/src/core/lib/gprpp/per_cpu.cc +1 -1
  177. data/src/core/lib/gprpp/posix/stat.cc +3 -4
  178. data/src/core/lib/gprpp/posix/thd.cc +8 -9
  179. data/src/core/lib/gprpp/ref_counted.h +30 -22
  180. data/src/core/lib/gprpp/single_set_ptr.h +5 -3
  181. data/src/core/lib/gprpp/status_helper.cc +11 -30
  182. data/src/core/lib/gprpp/status_helper.h +3 -31
  183. data/src/core/lib/gprpp/time.cc +3 -4
  184. data/src/core/lib/gprpp/time.h +3 -2
  185. data/src/core/lib/gprpp/unique_type_name.h +1 -1
  186. data/src/core/lib/gprpp/validation_errors.cc +10 -1
  187. data/src/core/lib/gprpp/validation_errors.h +11 -0
  188. data/src/core/lib/gprpp/windows/stat.cc +3 -4
  189. data/src/core/lib/gprpp/windows/thd.cc +3 -2
  190. data/src/core/lib/gprpp/work_serializer.cc +48 -57
  191. data/src/core/lib/iomgr/buffer_list.cc +4 -2
  192. data/src/core/lib/iomgr/call_combiner.cc +18 -27
  193. data/src/core/lib/iomgr/call_combiner.h +1 -3
  194. data/src/core/lib/iomgr/cfstream_handle.cc +4 -6
  195. data/src/core/lib/iomgr/closure.h +2 -4
  196. data/src/core/lib/iomgr/combiner.cc +6 -8
  197. data/src/core/lib/iomgr/combiner.h +0 -2
  198. data/src/core/lib/iomgr/endpoint.cc +0 -6
  199. data/src/core/lib/iomgr/endpoint.h +0 -2
  200. data/src/core/lib/iomgr/endpoint_cfstream.cc +19 -41
  201. data/src/core/lib/iomgr/endpoint_pair_posix.cc +1 -1
  202. data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -6
  203. data/src/core/lib/iomgr/error.cc +13 -21
  204. data/src/core/lib/iomgr/error.h +1 -1
  205. data/src/core/lib/iomgr/ev_apple.cc +3 -5
  206. data/src/core/lib/iomgr/ev_epoll1_linux.cc +43 -42
  207. data/src/core/lib/iomgr/ev_poll_posix.cc +38 -29
  208. data/src/core/lib/iomgr/ev_posix.cc +8 -9
  209. data/src/core/lib/iomgr/ev_posix.h +10 -7
  210. data/src/core/lib/iomgr/event_engine_shims/closure.cc +2 -2
  211. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +14 -28
  212. data/src/core/lib/iomgr/exec_ctx.cc +2 -2
  213. data/src/core/lib/iomgr/exec_ctx.h +1 -1
  214. data/src/core/lib/iomgr/executor.cc +6 -15
  215. data/src/core/lib/iomgr/executor.h +1 -1
  216. data/src/core/lib/iomgr/fork_posix.cc +8 -10
  217. data/src/core/lib/iomgr/fork_windows.cc +3 -1
  218. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +2 -3
  219. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +3 -5
  220. data/src/core/lib/iomgr/internal_errqueue.cc +4 -2
  221. data/src/core/lib/iomgr/iocp_windows.cc +4 -3
  222. data/src/core/lib/iomgr/iomgr.cc +13 -17
  223. data/src/core/lib/iomgr/lockfree_event.cc +3 -5
  224. data/src/core/lib/iomgr/pollset.h +0 -2
  225. data/src/core/lib/iomgr/pollset_windows.cc +0 -2
  226. data/src/core/lib/iomgr/resolve_address_posix.cc +7 -14
  227. data/src/core/lib/iomgr/resolve_address_windows.cc +1 -1
  228. data/src/core/lib/iomgr/socket_factory_posix.cc +1 -1
  229. data/src/core/lib/iomgr/socket_mutator.cc +1 -1
  230. data/src/core/lib/iomgr/socket_utils_common_posix.cc +11 -17
  231. data/src/core/lib/iomgr/socket_windows.cc +4 -6
  232. data/src/core/lib/iomgr/tcp_client_cfstream.cc +3 -5
  233. data/src/core/lib/iomgr/tcp_client_posix.cc +9 -15
  234. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -4
  235. data/src/core/lib/iomgr/tcp_posix.cc +57 -84
  236. data/src/core/lib/iomgr/tcp_posix.h +0 -2
  237. data/src/core/lib/iomgr/tcp_server_posix.cc +3 -3
  238. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +4 -6
  239. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +7 -7
  240. data/src/core/lib/iomgr/tcp_server_windows.cc +10 -16
  241. data/src/core/lib/iomgr/tcp_windows.cc +25 -41
  242. data/src/core/lib/iomgr/timer_generic.cc +17 -20
  243. data/src/core/lib/iomgr/timer_heap.cc +1 -1
  244. data/src/core/lib/iomgr/timer_manager.cc +17 -30
  245. data/src/core/lib/iomgr/unix_sockets_posix.cc +1 -1
  246. data/src/core/lib/iomgr/vsock.cc +1 -1
  247. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +3 -3
  248. data/src/core/lib/promise/activity.h +27 -4
  249. data/src/core/lib/promise/cancel_callback.h +24 -0
  250. data/src/core/lib/promise/context.h +11 -0
  251. data/src/core/lib/promise/detail/basic_seq.h +1 -2
  252. data/src/core/lib/promise/detail/join_state.h +354 -398
  253. data/src/core/lib/promise/detail/promise_like.h +6 -5
  254. data/src/core/lib/promise/detail/seq_state.h +1178 -1178
  255. data/src/core/lib/promise/for_each.h +6 -6
  256. data/src/core/lib/promise/interceptor_list.h +6 -7
  257. data/src/core/lib/promise/latch.h +9 -9
  258. data/src/core/lib/promise/map.h +17 -0
  259. data/src/core/lib/promise/observable.h +182 -0
  260. data/src/core/lib/promise/party.cc +7 -8
  261. data/src/core/lib/promise/party.h +10 -8
  262. data/src/core/lib/promise/pipe.h +16 -35
  263. data/src/core/lib/promise/promise.h +1 -0
  264. data/src/core/lib/promise/status_flag.h +2 -0
  265. data/src/core/lib/resource_quota/arena.cc +56 -79
  266. data/src/core/lib/resource_quota/arena.h +118 -209
  267. data/src/core/lib/resource_quota/memory_quota.cc +12 -13
  268. data/src/core/lib/resource_quota/memory_quota.h +2 -3
  269. data/src/core/lib/resource_quota/periodic_update.cc +1 -1
  270. data/src/core/lib/resource_quota/resource_quota.h +1 -1
  271. data/src/core/lib/security/authorization/authorization_policy_provider.h +1 -1
  272. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +1 -1
  273. data/src/core/lib/security/authorization/evaluate_args.cc +6 -8
  274. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +5 -6
  275. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +1 -0
  276. data/src/core/lib/security/authorization/matchers.cc +3 -3
  277. data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +2 -2
  278. data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +2 -3
  279. data/src/core/lib/security/context/security_context.cc +12 -13
  280. data/src/core/lib/security/context/security_context.h +31 -8
  281. data/src/core/lib/security/credentials/alts/alts_credentials.h +1 -1
  282. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +3 -1
  283. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +2 -3
  284. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +5 -5
  285. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +3 -3
  286. data/src/core/lib/security/credentials/call_creds_util.cc +2 -1
  287. data/src/core/lib/security/credentials/channel_creds_registry.h +2 -2
  288. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +5 -3
  289. data/src/core/lib/security/credentials/composite/composite_credentials.h +1 -1
  290. data/src/core/lib/security/credentials/credentials.cc +6 -6
  291. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +4 -4
  292. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +2 -2
  293. data/src/core/lib/security/credentials/external/external_account_credentials.cc +9 -11
  294. data/src/core/lib/security/credentials/external/external_account_credentials.h +3 -3
  295. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +2 -2
  296. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +4 -4
  297. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -1
  298. data/src/core/lib/security/credentials/fake/fake_credentials.h +1 -1
  299. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +3 -3
  300. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +11 -11
  301. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +1 -1
  302. data/src/core/lib/security/credentials/iam/iam_credentials.h +1 -1
  303. data/src/core/lib/security/credentials/jwt/json_token.cc +14 -15
  304. data/src/core/lib/security/credentials/jwt/json_token.h +1 -1
  305. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +6 -5
  306. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +1 -1
  307. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +50 -54
  308. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
  309. data/src/core/lib/security/credentials/local/local_credentials.h +1 -1
  310. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +12 -11
  311. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +4 -4
  312. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +6 -7
  313. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +1 -3
  314. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +15 -21
  315. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +1 -1
  316. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +21 -30
  317. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +1 -1
  318. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +1 -1
  319. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +4 -4
  320. data/src/core/lib/security/credentials/tls/grpc_tls_crl_provider.cc +3 -5
  321. data/src/core/lib/security/credentials/tls/tls_credentials.cc +14 -16
  322. data/src/core/lib/security/credentials/tls/tls_utils.cc +4 -4
  323. data/src/core/lib/security/credentials/xds/xds_credentials.cc +1 -1
  324. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +13 -16
  325. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +15 -12
  326. data/src/core/lib/security/security_connector/load_system_roots_supported.cc +6 -6
  327. data/src/core/lib/security/security_connector/load_system_roots_windows.cc +1 -1
  328. data/src/core/lib/security/security_connector/local/local_security_connector.cc +8 -12
  329. data/src/core/lib/security/security_connector/security_connector.cc +1 -4
  330. data/src/core/lib/security/security_connector/security_connector.h +1 -3
  331. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +17 -19
  332. data/src/core/lib/security/security_connector/ssl_utils.cc +19 -21
  333. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +29 -40
  334. data/src/core/lib/security/transport/auth_filters.h +1 -0
  335. data/src/core/lib/security/transport/client_auth_filter.cc +7 -13
  336. data/src/core/lib/security/transport/server_auth_filter.cc +3 -8
  337. data/src/core/lib/security/util/json_util.h +1 -1
  338. data/src/core/lib/slice/slice.h +1 -1
  339. data/src/core/lib/slice/slice_refcount.h +2 -4
  340. data/src/core/lib/slice/slice_string_helpers.cc +1 -1
  341. data/src/core/lib/surface/api_trace.h +1 -3
  342. data/src/core/lib/surface/call.cc +64 -3738
  343. data/src/core/lib/surface/call.h +41 -143
  344. data/src/core/lib/surface/call_log_batch.cc +1 -1
  345. data/src/core/lib/surface/call_utils.cc +276 -0
  346. data/src/core/lib/surface/call_utils.h +449 -0
  347. data/src/core/lib/surface/channel.cc +8 -3
  348. data/src/core/lib/surface/channel.h +10 -7
  349. data/src/core/lib/surface/channel_create.cc +14 -6
  350. data/src/core/lib/surface/channel_create.h +3 -2
  351. data/src/core/lib/surface/channel_init.cc +21 -77
  352. data/src/core/lib/surface/channel_init.h +19 -97
  353. data/src/core/lib/surface/client_call.cc +419 -0
  354. data/src/core/lib/surface/client_call.h +180 -0
  355. data/src/core/lib/surface/completion_queue.cc +28 -33
  356. data/src/core/lib/surface/completion_queue.h +0 -8
  357. data/src/core/lib/surface/filter_stack_call.cc +1157 -0
  358. data/src/core/lib/surface/filter_stack_call.h +369 -0
  359. data/src/core/lib/surface/init.cc +7 -6
  360. data/src/core/lib/surface/lame_client.cc +1 -1
  361. data/src/core/lib/surface/legacy_channel.cc +40 -27
  362. data/src/core/lib/surface/legacy_channel.h +9 -18
  363. data/src/core/lib/surface/server_call.cc +222 -0
  364. data/src/core/lib/surface/server_call.h +167 -0
  365. data/src/core/lib/surface/version.cc +2 -2
  366. data/src/core/lib/transport/bdp_estimator.cc +3 -5
  367. data/src/core/lib/transport/bdp_estimator.h +2 -4
  368. data/src/core/lib/transport/call_arena_allocator.h +9 -7
  369. data/src/core/lib/transport/call_destination.h +76 -0
  370. data/src/core/lib/transport/call_filters.cc +28 -10
  371. data/src/core/lib/transport/call_filters.h +128 -22
  372. data/src/core/lib/transport/call_spine.cc +5 -6
  373. data/src/core/lib/transport/call_spine.h +159 -334
  374. data/src/core/lib/transport/connectivity_state.cc +8 -10
  375. data/src/core/lib/transport/connectivity_state.h +0 -2
  376. data/src/core/lib/transport/interception_chain.cc +155 -0
  377. data/src/core/lib/transport/interception_chain.h +236 -0
  378. data/src/core/lib/transport/metadata_batch.h +10 -1
  379. data/src/core/lib/transport/metadata_info.h +1 -1
  380. data/src/core/lib/transport/transport.cc +3 -6
  381. data/src/core/lib/transport/transport.h +43 -40
  382. data/src/core/load_balancing/child_policy_handler.cc +8 -8
  383. data/src/core/load_balancing/endpoint_list.cc +5 -5
  384. data/src/core/load_balancing/endpoint_list.h +1 -1
  385. data/src/core/load_balancing/grpclb/client_load_reporting_filter.cc +1 -0
  386. data/src/core/load_balancing/grpclb/client_load_reporting_filter.h +1 -0
  387. data/src/core/load_balancing/grpclb/grpclb.cc +25 -29
  388. data/src/core/load_balancing/grpclb/grpclb_balancer_addresses.cc +1 -1
  389. data/src/core/load_balancing/grpclb/load_balancer_api.cc +3 -4
  390. data/src/core/load_balancing/health_check_client.cc +10 -13
  391. data/src/core/load_balancing/lb_policy.cc +5 -8
  392. data/src/core/load_balancing/lb_policy.h +19 -3
  393. data/src/core/load_balancing/lb_policy_factory.h +1 -1
  394. data/src/core/load_balancing/lb_policy_registry.cc +2 -3
  395. data/src/core/load_balancing/lb_policy_registry.h +1 -1
  396. data/src/core/load_balancing/oob_backend_metric.cc +2 -4
  397. data/src/core/load_balancing/outlier_detection/outlier_detection.cc +33 -35
  398. data/src/core/load_balancing/outlier_detection/outlier_detection.h +3 -3
  399. data/src/core/load_balancing/pick_first/pick_first.cc +65 -65
  400. data/src/core/load_balancing/priority/priority.cc +26 -28
  401. data/src/core/load_balancing/ring_hash/ring_hash.cc +11 -13
  402. data/src/core/load_balancing/ring_hash/ring_hash.h +3 -3
  403. data/src/core/load_balancing/rls/rls.cc +82 -82
  404. data/src/core/load_balancing/round_robin/round_robin.cc +17 -20
  405. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +54 -43
  406. data/src/core/load_balancing/weighted_target/weighted_target.cc +21 -24
  407. data/src/core/load_balancing/xds/cds.cc +14 -16
  408. data/src/core/load_balancing/xds/xds_cluster_impl.cc +16 -18
  409. data/src/core/load_balancing/xds/xds_cluster_manager.cc +15 -17
  410. data/src/core/load_balancing/xds/xds_override_host.cc +40 -41
  411. data/src/core/load_balancing/xds/xds_override_host.h +3 -3
  412. data/src/core/load_balancing/xds/xds_wrr_locality.cc +10 -12
  413. data/src/core/plugin_registry/grpc_plugin_registry.cc +5 -1
  414. data/src/core/resolver/binder/binder_resolver.cc +3 -2
  415. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +3 -2
  416. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +1 -1
  417. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +7 -14
  418. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +1 -5
  419. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  420. data/src/core/resolver/dns/dns_resolver_plugin.cc +6 -5
  421. data/src/core/resolver/dns/event_engine/event_engine_client_channel_resolver.cc +4 -9
  422. data/src/core/resolver/dns/event_engine/service_config_helper.cc +5 -5
  423. data/src/core/resolver/dns/native/dns_resolver.cc +8 -9
  424. data/src/core/resolver/endpoint_addresses.cc +1 -1
  425. data/src/core/resolver/fake/fake_resolver.cc +1 -1
  426. data/src/core/resolver/fake/fake_resolver.h +1 -1
  427. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +13 -14
  428. data/src/core/resolver/polling_resolver.cc +30 -35
  429. data/src/core/resolver/resolver.cc +2 -6
  430. data/src/core/resolver/resolver.h +0 -2
  431. data/src/core/resolver/resolver_registry.cc +6 -8
  432. data/src/core/resolver/sockaddr/sockaddr_resolver.cc +3 -3
  433. data/src/core/resolver/xds/xds_dependency_manager.cc +22 -23
  434. data/src/core/resolver/xds/xds_resolver.cc +13 -15
  435. data/src/core/server/server.cc +269 -389
  436. data/src/core/server/server.h +37 -19
  437. data/src/core/server/server_call_tracer_filter.cc +7 -14
  438. data/src/core/server/server_config_selector.h +1 -1
  439. data/src/core/server/server_config_selector_filter.cc +3 -3
  440. data/src/core/server/server_interface.h +2 -0
  441. data/src/core/server/xds_channel_stack_modifier.cc +1 -1
  442. data/src/core/server/xds_channel_stack_modifier.h +1 -1
  443. data/src/core/server/xds_server_config_fetcher.cc +1 -4
  444. data/src/core/service_config/service_config.h +1 -1
  445. data/src/core/service_config/service_config_call_data.h +13 -11
  446. data/src/core/service_config/service_config_channel_arg_filter.cc +6 -4
  447. data/src/core/service_config/service_config_impl.cc +5 -5
  448. data/src/core/service_config/service_config_impl.h +1 -1
  449. data/src/core/service_config/service_config_parser.cc +3 -6
  450. data/src/core/service_config/service_config_parser.h +1 -1
  451. data/src/core/{lib/channel → telemetry}/call_tracer.cc +20 -30
  452. data/src/core/{lib/channel → telemetry}/call_tracer.h +32 -9
  453. data/src/core/{lib/debug → telemetry}/histogram_view.cc +1 -1
  454. data/src/core/{lib/debug → telemetry}/histogram_view.h +3 -3
  455. data/src/core/telemetry/metrics.cc +178 -0
  456. data/src/core/telemetry/metrics.h +562 -0
  457. data/src/core/{lib/debug → telemetry}/stats.cc +1 -1
  458. data/src/core/{lib/debug → telemetry}/stats.h +5 -5
  459. data/src/core/{lib/debug → telemetry}/stats_data.cc +1 -1
  460. data/src/core/{lib/debug → telemetry}/stats_data.h +4 -4
  461. data/src/core/{lib/channel → telemetry}/tcp_tracer.h +3 -3
  462. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +12 -13
  463. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +25 -27
  464. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +32 -33
  465. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -1
  466. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -1
  467. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +5 -4
  468. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +5 -3
  469. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +1 -1
  470. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +4 -3
  471. data/src/core/tsi/fake_transport_security.cc +14 -17
  472. data/src/core/tsi/local_transport_security.cc +6 -5
  473. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +4 -4
  474. data/src/core/tsi/ssl_transport_security.cc +76 -81
  475. data/src/core/tsi/ssl_transport_security_utils.cc +74 -18
  476. data/src/core/tsi/ssl_transport_security_utils.h +11 -0
  477. data/src/core/tsi/transport_security.cc +0 -4
  478. data/src/core/tsi/transport_security.h +0 -2
  479. data/src/core/tsi/transport_security_interface.h +0 -4
  480. data/src/core/{lib/gpr → util}/alloc.h +3 -3
  481. data/src/core/{lib/gpr → util}/android/log.cc +0 -19
  482. data/src/core/{lib/gpr → util}/atm.cc +1 -1
  483. data/src/core/{ext/gcp/metadata_query.cc → util/gcp_metadata_query.cc} +25 -26
  484. data/src/core/{ext/gcp/metadata_query.h → util/gcp_metadata_query.h} +11 -11
  485. data/src/core/{lib/http → util/http_client}/format_request.cc +4 -3
  486. data/src/core/{lib/http → util/http_client}/format_request.h +6 -5
  487. data/src/core/{lib/http → util/http_client}/httpcli.cc +9 -10
  488. data/src/core/{lib/http → util/http_client}/httpcli.h +6 -5
  489. data/src/core/{lib/http → util/http_client}/httpcli_security_connector.cc +9 -9
  490. data/src/core/{lib/http → util/http_client}/httpcli_ssl_credentials.h +5 -4
  491. data/src/core/{lib/http → util/http_client}/parser.cc +4 -5
  492. data/src/core/{lib/http → util/http_client}/parser.h +5 -6
  493. data/src/core/{lib → util}/json/json.h +5 -4
  494. data/src/core/{lib → util}/json/json_args.h +5 -5
  495. data/src/core/{lib → util}/json/json_channel_args.h +6 -6
  496. data/src/core/{lib → util}/json/json_object_loader.cc +3 -2
  497. data/src/core/{lib → util}/json/json_object_loader.h +7 -7
  498. data/src/core/{lib → util}/json/json_reader.cc +3 -2
  499. data/src/core/{lib → util}/json/json_reader.h +6 -6
  500. data/src/core/{lib → util}/json/json_util.cc +4 -4
  501. data/src/core/{lib → util}/json/json_util.h +6 -6
  502. data/src/core/{lib → util}/json/json_writer.cc +3 -3
  503. data/src/core/{lib → util}/json/json_writer.h +6 -6
  504. data/src/core/{lib/gpr → util}/linux/log.cc +0 -45
  505. data/src/core/util/log.cc +165 -0
  506. data/src/core/{lib/gpr → util}/msys/tmpfile.cc +2 -2
  507. data/src/core/{lib/gpr → util}/posix/cpu.cc +1 -1
  508. data/src/core/{lib/gpr → util}/posix/log.cc +0 -42
  509. data/src/core/{lib/gpr → util}/posix/time.cc +1 -1
  510. data/src/core/{lib/gpr → util}/posix/tmpfile.cc +2 -2
  511. data/src/core/{lib/gpr → util}/spinlock.h +3 -3
  512. data/src/core/{lib/gpr → util}/string.cc +2 -2
  513. data/src/core/{lib/gpr → util}/string.h +3 -3
  514. data/src/core/{lib/gpr → util}/time_precise.cc +1 -1
  515. data/src/core/{lib/gpr → util}/time_precise.h +3 -3
  516. data/src/core/{lib/gpr → util}/tmpfile.h +3 -3
  517. data/src/core/{lib/gpr → util}/useful.h +3 -3
  518. data/src/core/{lib/gpr → util}/windows/log.cc +1 -44
  519. data/src/core/{lib/gpr → util}/windows/string.cc +1 -1
  520. data/src/core/{lib/gpr → util}/windows/string_util.cc +1 -1
  521. data/src/core/{lib/gpr → util}/windows/time.cc +1 -1
  522. data/src/core/{lib/gpr → util}/windows/tmpfile.cc +1 -1
  523. data/src/core/xds/grpc/certificate_provider_store.cc +3 -3
  524. data/src/core/xds/grpc/certificate_provider_store.h +4 -4
  525. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.cc +3 -3
  526. data/src/core/xds/grpc/file_watcher_certificate_provider_factory.h +3 -3
  527. data/src/core/xds/grpc/xds_audit_logger_registry.h +1 -1
  528. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +5 -5
  529. data/src/core/xds/grpc/xds_bootstrap_grpc.h +3 -3
  530. data/src/core/xds/grpc/xds_certificate_provider.h +1 -1
  531. data/src/core/xds/grpc/xds_client_grpc.cc +27 -23
  532. data/src/core/xds/grpc/xds_client_grpc.h +2 -2
  533. data/src/core/xds/grpc/xds_cluster.cc +4 -5
  534. data/src/core/xds/grpc/xds_cluster.h +1 -1
  535. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +2 -2
  536. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +1 -1
  537. data/src/core/xds/grpc/xds_common_types.cc +1 -1
  538. data/src/core/xds/grpc/xds_common_types.h +1 -1
  539. data/src/core/xds/grpc/xds_endpoint.cc +4 -5
  540. data/src/core/xds/grpc/xds_http_fault_filter.cc +2 -2
  541. data/src/core/xds/grpc/xds_http_filters.h +2 -2
  542. data/src/core/xds/grpc/xds_http_rbac_filter.cc +3 -3
  543. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +2 -2
  544. data/src/core/xds/grpc/xds_lb_policy_registry.h +1 -1
  545. data/src/core/xds/grpc/xds_listener.cc +4 -6
  546. data/src/core/xds/grpc/xds_route_config.cc +7 -8
  547. data/src/core/xds/grpc/xds_transport_grpc.cc +2 -2
  548. data/src/core/xds/grpc/xds_transport_grpc.h +1 -1
  549. data/src/core/xds/xds_client/xds_api.cc +5 -9
  550. data/src/core/xds/xds_client/xds_bootstrap.cc +1 -1
  551. data/src/core/xds/xds_client/xds_bootstrap.h +1 -1
  552. data/src/core/xds/xds_client/xds_client.cc +39 -45
  553. data/src/core/xds/xds_client/xds_client.h +0 -3
  554. data/src/core/xds/xds_client/xds_client_stats.cc +6 -6
  555. data/src/core/xds/xds_client/xds_client_stats.h +2 -2
  556. data/src/ruby/bin/math_pb.rb +1 -22
  557. data/src/ruby/ext/grpc/rb_call.c +8 -1
  558. data/src/ruby/ext/grpc/rb_completion_queue.c +15 -32
  559. data/src/ruby/ext/grpc/rb_completion_queue.h +7 -1
  560. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +2 -2
  561. data/src/ruby/ext/grpc/rb_server.c +39 -22
  562. data/src/ruby/lib/grpc/version.rb +1 -1
  563. data/src/ruby/pb/grpc/health/v1/health_pb.rb +1 -22
  564. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +5 -5
  565. data/src/ruby/pb/grpc/testing/metrics_pb.rb +10 -19
  566. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +5 -5
  567. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +1 -22
  568. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +1 -22
  569. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -22
  570. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +4 -0
  571. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +12 -12
  572. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +66 -41
  573. data/third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c +1497 -0
  574. data/third_party/boringssl-with-bazel/src/crypto/dilithium/internal.h +58 -0
  575. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +10 -3
  576. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +0 -2
  577. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +2 -0
  578. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +5 -0
  579. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +45 -1
  580. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +33 -23
  581. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +3 -6
  582. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +9 -4
  583. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +6 -0
  584. data/third_party/boringssl-with-bazel/src/crypto/internal.h +7 -0
  585. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +0 -4
  586. data/third_party/boringssl-with-bazel/src/crypto/x509/v3_utl.c +49 -16
  587. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +0 -10
  588. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +7 -17
  589. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +8 -6
  590. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +3 -0
  591. data/third_party/boringssl-with-bazel/src/include/openssl/experimental/dilithium.h +125 -0
  592. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +0 -23
  593. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +1 -1
  594. data/third_party/boringssl-with-bazel/src/ssl/internal.h +4 -10
  595. metadata +103 -93
  596. data/src/core/ext/transport/chttp2/transport/http_trace.cc +0 -19
  597. data/src/core/ext/transport/chttp2/transport/http_trace.h +0 -24
  598. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -23
  599. data/src/core/handshaker/security/tsi_error.cc +0 -31
  600. data/src/core/handshaker/security/tsi_error.h +0 -30
  601. data/src/core/lib/channel/channel_stack_trace.cc +0 -19
  602. data/src/core/lib/channel/channel_stack_trace.h +0 -24
  603. data/src/core/lib/channel/context.h +0 -105
  604. data/src/core/lib/channel/metrics.cc +0 -334
  605. data/src/core/lib/channel/metrics.h +0 -365
  606. data/src/core/lib/event_engine/trace.cc +0 -25
  607. data/src/core/lib/gpr/log.cc +0 -166
  608. data/src/core/lib/iomgr/ev_windows.cc +0 -30
  609. data/src/core/lib/promise/trace.cc +0 -20
  610. data/src/core/lib/promise/trace.h +0 -24
  611. data/src/core/lib/resource_quota/trace.cc +0 -19
  612. data/src/core/lib/resource_quota/trace.h +0 -24
  613. data/src/core/lib/slice/slice_refcount.cc +0 -20
  614. data/src/core/lib/surface/api_trace.cc +0 -25
  615. data/src/core/lib/surface/call_trace.h +0 -24
  616. data/src/core/lib/surface/wait_for_cq_end_op.cc +0 -75
  617. data/src/core/lib/surface/wait_for_cq_end_op.h +0 -72
  618. data/src/core/lib/transport/batch_builder.cc +0 -172
  619. data/src/core/lib/transport/batch_builder.h +0 -474
  620. data/src/core/resolver/xds/xds_resolver_trace.cc +0 -25
  621. data/src/core/resolver/xds/xds_resolver_trace.h +0 -30
  622. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +0 -122
  623. /data/src/core/{lib/gpr → util}/alloc.cc +0 -0
  624. /data/src/core/{lib/gpr → util}/iphone/cpu.cc +0 -0
  625. /data/src/core/{lib/gpr → util}/linux/cpu.cc +0 -0
  626. /data/src/core/{lib/gpr → util}/posix/string.cc +0 -0
  627. /data/src/core/{lib/gpr → util}/posix/sync.cc +0 -0
  628. /data/src/core/{lib/gpr → util}/sync.cc +0 -0
  629. /data/src/core/{lib/gpr → util}/sync_abseil.cc +0 -0
  630. /data/src/core/{lib/gpr → util}/time.cc +0 -0
  631. /data/src/core/{lib/gpr → util}/windows/cpu.cc +0 -0
  632. /data/src/core/{lib/gpr → util}/windows/sync.cc +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 216c15088bec64bf4e1a578055e66a40e888d1873e55085a68901f39d7b81ee8
4
- data.tar.gz: 2beb4d51c1730075fe13e4110eab0c77efd9a8fdd7e7595a520a534260ddbbcc
3
+ metadata.gz: 61336feda513285da8764e06e3d85c83ad801afbecec8c71d2d7fd1d80dcde69
4
+ data.tar.gz: a26e0c5d13589d8f218b4b5f50e72b8c00bce163942714475030e815745bc7e4
5
5
  SHA512:
6
- metadata.gz: eea200a7f5fce5930abc871cb6794cbe03403446c0b454fc3d333fd20e5644fd81db441ca452350814c0fd0dad665350025433a8e4449160b01fd7db2ffa74e5
7
- data.tar.gz: 3b92cdb984f0e133f87966c3ad5deb2a417f0c65706774e758508e84ced457e812477c4756e1aeffcc29fdfd3d000da9f7fbd87bafb6449e204bbd95d7e9d070
6
+ metadata.gz: 1109d522211ac31b0c0a713cf9008425320639161243c1b9e452dca00cc825b539a5600dc40770a8810ecc31b31c5b4b5a2b1079f91f3e8eb72ef7d390b8a475
7
+ data.tar.gz: 52c87db782a5c5cec3c19f6ea9267cf01bcf7dabcccc23fb30beb960dd4d00a3aac74462ebfd373188a1776360503a1dd34ad1665b67afb1a0188895c4cc98f7
data/Makefile CHANGED
@@ -367,8 +367,8 @@ E = @echo
367
367
  Q = @
368
368
  endif
369
369
 
370
- CORE_VERSION = 41.0.0
371
- CPP_VERSION = 1.64.3
370
+ CORE_VERSION = 42.0.0
371
+ CPP_VERSION = 1.65.0
372
372
 
373
373
  CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
374
374
  CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
@@ -404,7 +404,7 @@ SHARED_EXT_CORE = dll
404
404
  SHARED_EXT_CPP = dll
405
405
 
406
406
  SHARED_PREFIX =
407
- SHARED_VERSION_CORE = -41
407
+ SHARED_VERSION_CORE = -42
408
408
  SHARED_VERSION_CPP = -1
409
409
  else ifeq ($(SYSTEM),Darwin)
410
410
  EXECUTABLE_SUFFIX =
@@ -670,6 +670,7 @@ LIBGRPC_SRC = \
670
670
  src/core/channelz/channelz.cc \
671
671
  src/core/channelz/channelz_registry.cc \
672
672
  src/core/client_channel/backup_poller.cc \
673
+ src/core/client_channel/client_channel.cc \
673
674
  src/core/client_channel/client_channel_factory.cc \
674
675
  src/core/client_channel/client_channel_filter.cc \
675
676
  src/core/client_channel/client_channel_plugin.cc \
@@ -677,6 +678,7 @@ LIBGRPC_SRC = \
677
678
  src/core/client_channel/config_selector.cc \
678
679
  src/core/client_channel/dynamic_filters.cc \
679
680
  src/core/client_channel/global_subchannel_pool.cc \
681
+ src/core/client_channel/load_balanced_call_destination.cc \
680
682
  src/core/client_channel/local_subchannel_pool.cc \
681
683
  src/core/client_channel/retry_filter.cc \
682
684
  src/core/client_channel/retry_filter_legacy_call_data.cc \
@@ -701,7 +703,6 @@ LIBGRPC_SRC = \
701
703
  src/core/ext/filters/rbac/rbac_service_config_parser.cc \
702
704
  src/core/ext/filters/stateful_session/stateful_session_filter.cc \
703
705
  src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc \
704
- src/core/ext/gcp/metadata_query.cc \
705
706
  src/core/ext/transport/chttp2/alpn/alpn.cc \
706
707
  src/core/ext/transport/chttp2/client/chttp2_connector.cc \
707
708
  src/core/ext/transport/chttp2/server/chttp2_server.cc \
@@ -723,7 +724,6 @@ LIBGRPC_SRC = \
723
724
  src/core/ext/transport/chttp2/transport/hpack_parser.cc \
724
725
  src/core/ext/transport/chttp2/transport/hpack_parser_table.cc \
725
726
  src/core/ext/transport/chttp2/transport/http2_settings.cc \
726
- src/core/ext/transport/chttp2/transport/http_trace.cc \
727
727
  src/core/ext/transport/chttp2/transport/huffsyms.cc \
728
728
  src/core/ext/transport/chttp2/transport/max_concurrent_streams_policy.cc \
729
729
  src/core/ext/transport/chttp2/transport/parsing.cc \
@@ -734,7 +734,6 @@ LIBGRPC_SRC = \
734
734
  src/core/ext/transport/chttp2/transport/varint.cc \
735
735
  src/core/ext/transport/chttp2/transport/write_size_policy.cc \
736
736
  src/core/ext/transport/chttp2/transport/writing.cc \
737
- src/core/ext/transport/inproc/inproc_plugin.cc \
738
737
  src/core/ext/transport/inproc/inproc_transport.cc \
739
738
  src/core/ext/transport/inproc/legacy_inproc_transport.cc \
740
739
  src/core/ext/upb-gen/envoy/admin/v3/certs.upb_minitable.c \
@@ -1062,21 +1061,17 @@ LIBGRPC_SRC = \
1062
1061
  src/core/handshaker/proxy_mapper_registry.cc \
1063
1062
  src/core/handshaker/security/secure_endpoint.cc \
1064
1063
  src/core/handshaker/security/security_handshaker.cc \
1065
- src/core/handshaker/security/tsi_error.cc \
1066
1064
  src/core/handshaker/tcp_connect/tcp_connect_handshaker.cc \
1067
1065
  src/core/lib/address_utils/parse_address.cc \
1068
1066
  src/core/lib/address_utils/sockaddr_utils.cc \
1069
1067
  src/core/lib/backoff/backoff.cc \
1070
1068
  src/core/lib/backoff/random_early_detection.cc \
1071
- src/core/lib/channel/call_tracer.cc \
1072
1069
  src/core/lib/channel/channel_args.cc \
1073
1070
  src/core/lib/channel/channel_args_preconditioning.cc \
1074
1071
  src/core/lib/channel/channel_stack.cc \
1075
1072
  src/core/lib/channel/channel_stack_builder.cc \
1076
1073
  src/core/lib/channel/channel_stack_builder_impl.cc \
1077
- src/core/lib/channel/channel_stack_trace.cc \
1078
1074
  src/core/lib/channel/connected_channel.cc \
1079
- src/core/lib/channel/metrics.cc \
1080
1075
  src/core/lib/channel/promise_based_filter.cc \
1081
1076
  src/core/lib/channel/status_util.cc \
1082
1077
  src/core/lib/compression/compression.cc \
@@ -1087,10 +1082,8 @@ LIBGRPC_SRC = \
1087
1082
  src/core/lib/config/core_configuration.cc \
1088
1083
  src/core/lib/config/load_config.cc \
1089
1084
  src/core/lib/debug/event_log.cc \
1090
- src/core/lib/debug/histogram_view.cc \
1091
- src/core/lib/debug/stats.cc \
1092
- src/core/lib/debug/stats_data.cc \
1093
1085
  src/core/lib/debug/trace.cc \
1086
+ src/core/lib/debug/trace_flags.cc \
1094
1087
  src/core/lib/event_engine/ares_resolver.cc \
1095
1088
  src/core/lib/event_engine/cf_engine/cf_engine.cc \
1096
1089
  src/core/lib/event_engine/cf_engine/cfstream_endpoint.cc \
@@ -1129,7 +1122,6 @@ LIBGRPC_SRC = \
1129
1122
  src/core/lib/event_engine/thread_pool/work_stealing_thread_pool.cc \
1130
1123
  src/core/lib/event_engine/thready_event_engine/thready_event_engine.cc \
1131
1124
  src/core/lib/event_engine/time_util.cc \
1132
- src/core/lib/event_engine/trace.cc \
1133
1125
  src/core/lib/event_engine/utils.cc \
1134
1126
  src/core/lib/event_engine/windows/grpc_polled_fd_windows.cc \
1135
1127
  src/core/lib/event_engine/windows/iocp.cc \
@@ -1141,35 +1133,11 @@ LIBGRPC_SRC = \
1141
1133
  src/core/lib/event_engine/work_queue/basic_work_queue.cc \
1142
1134
  src/core/lib/experiments/config.cc \
1143
1135
  src/core/lib/experiments/experiments.cc \
1144
- src/core/lib/gpr/alloc.cc \
1145
- src/core/lib/gpr/android/log.cc \
1146
- src/core/lib/gpr/atm.cc \
1147
- src/core/lib/gpr/iphone/cpu.cc \
1148
- src/core/lib/gpr/linux/cpu.cc \
1149
- src/core/lib/gpr/linux/log.cc \
1150
- src/core/lib/gpr/log.cc \
1151
- src/core/lib/gpr/msys/tmpfile.cc \
1152
- src/core/lib/gpr/posix/cpu.cc \
1153
- src/core/lib/gpr/posix/log.cc \
1154
- src/core/lib/gpr/posix/string.cc \
1155
- src/core/lib/gpr/posix/sync.cc \
1156
- src/core/lib/gpr/posix/time.cc \
1157
- src/core/lib/gpr/posix/tmpfile.cc \
1158
- src/core/lib/gpr/string.cc \
1159
- src/core/lib/gpr/sync.cc \
1160
- src/core/lib/gpr/sync_abseil.cc \
1161
- src/core/lib/gpr/time.cc \
1162
- src/core/lib/gpr/time_precise.cc \
1163
- src/core/lib/gpr/windows/cpu.cc \
1164
- src/core/lib/gpr/windows/log.cc \
1165
- src/core/lib/gpr/windows/string.cc \
1166
- src/core/lib/gpr/windows/string_util.cc \
1167
- src/core/lib/gpr/windows/sync.cc \
1168
- src/core/lib/gpr/windows/time.cc \
1169
- src/core/lib/gpr/windows/tmpfile.cc \
1170
1136
  src/core/lib/gprpp/crash.cc \
1137
+ src/core/lib/gprpp/dump_args.cc \
1171
1138
  src/core/lib/gprpp/examine_stack.cc \
1172
1139
  src/core/lib/gprpp/fork.cc \
1140
+ src/core/lib/gprpp/glob.cc \
1173
1141
  src/core/lib/gprpp/host_port.cc \
1174
1142
  src/core/lib/gprpp/linux/env.cc \
1175
1143
  src/core/lib/gprpp/load_file.cc \
@@ -1193,10 +1161,6 @@ LIBGRPC_SRC = \
1193
1161
  src/core/lib/gprpp/windows/stat.cc \
1194
1162
  src/core/lib/gprpp/windows/thd.cc \
1195
1163
  src/core/lib/gprpp/work_serializer.cc \
1196
- src/core/lib/http/format_request.cc \
1197
- src/core/lib/http/httpcli.cc \
1198
- src/core/lib/http/httpcli_security_connector.cc \
1199
- src/core/lib/http/parser.cc \
1200
1164
  src/core/lib/iomgr/buffer_list.cc \
1201
1165
  src/core/lib/iomgr/call_combiner.cc \
1202
1166
  src/core/lib/iomgr/cfstream_handle.cc \
@@ -1213,7 +1177,6 @@ LIBGRPC_SRC = \
1213
1177
  src/core/lib/iomgr/ev_epoll1_linux.cc \
1214
1178
  src/core/lib/iomgr/ev_poll_posix.cc \
1215
1179
  src/core/lib/iomgr/ev_posix.cc \
1216
- src/core/lib/iomgr/ev_windows.cc \
1217
1180
  src/core/lib/iomgr/event_engine_shims/closure.cc \
1218
1181
  src/core/lib/iomgr/event_engine_shims/endpoint.cc \
1219
1182
  src/core/lib/iomgr/event_engine_shims/tcp_client.cc \
@@ -1274,15 +1237,10 @@ LIBGRPC_SRC = \
1274
1237
  src/core/lib/iomgr/wakeup_fd_nospecial.cc \
1275
1238
  src/core/lib/iomgr/wakeup_fd_pipe.cc \
1276
1239
  src/core/lib/iomgr/wakeup_fd_posix.cc \
1277
- src/core/lib/json/json_object_loader.cc \
1278
- src/core/lib/json/json_reader.cc \
1279
- src/core/lib/json/json_util.cc \
1280
- src/core/lib/json/json_writer.cc \
1281
1240
  src/core/lib/matchers/matchers.cc \
1282
1241
  src/core/lib/promise/activity.cc \
1283
1242
  src/core/lib/promise/party.cc \
1284
1243
  src/core/lib/promise/sleep.cc \
1285
- src/core/lib/promise/trace.cc \
1286
1244
  src/core/lib/resource_quota/api.cc \
1287
1245
  src/core/lib/resource_quota/arena.cc \
1288
1246
  src/core/lib/resource_quota/connection_quota.cc \
@@ -1290,7 +1248,6 @@ LIBGRPC_SRC = \
1290
1248
  src/core/lib/resource_quota/periodic_update.cc \
1291
1249
  src/core/lib/resource_quota/resource_quota.cc \
1292
1250
  src/core/lib/resource_quota/thread_quota.cc \
1293
- src/core/lib/resource_quota/trace.cc \
1294
1251
  src/core/lib/security/authorization/audit_logging.cc \
1295
1252
  src/core/lib/security/authorization/authorization_policy_provider_vtable.cc \
1296
1253
  src/core/lib/security/authorization/evaluate_args.cc \
@@ -1356,30 +1313,30 @@ LIBGRPC_SRC = \
1356
1313
  src/core/lib/slice/percent_encoding.cc \
1357
1314
  src/core/lib/slice/slice.cc \
1358
1315
  src/core/lib/slice/slice_buffer.cc \
1359
- src/core/lib/slice/slice_refcount.cc \
1360
1316
  src/core/lib/slice/slice_string_helpers.cc \
1361
- src/core/lib/surface/api_trace.cc \
1362
1317
  src/core/lib/surface/byte_buffer.cc \
1363
1318
  src/core/lib/surface/byte_buffer_reader.cc \
1364
1319
  src/core/lib/surface/call.cc \
1365
1320
  src/core/lib/surface/call_details.cc \
1366
1321
  src/core/lib/surface/call_log_batch.cc \
1322
+ src/core/lib/surface/call_utils.cc \
1367
1323
  src/core/lib/surface/channel.cc \
1368
1324
  src/core/lib/surface/channel_create.cc \
1369
1325
  src/core/lib/surface/channel_init.cc \
1370
1326
  src/core/lib/surface/channel_stack_type.cc \
1327
+ src/core/lib/surface/client_call.cc \
1371
1328
  src/core/lib/surface/completion_queue.cc \
1372
1329
  src/core/lib/surface/completion_queue_factory.cc \
1373
1330
  src/core/lib/surface/event_string.cc \
1331
+ src/core/lib/surface/filter_stack_call.cc \
1374
1332
  src/core/lib/surface/init.cc \
1375
1333
  src/core/lib/surface/init_internally.cc \
1376
1334
  src/core/lib/surface/lame_client.cc \
1377
1335
  src/core/lib/surface/legacy_channel.cc \
1378
1336
  src/core/lib/surface/metadata_array.cc \
1337
+ src/core/lib/surface/server_call.cc \
1379
1338
  src/core/lib/surface/validate_metadata.cc \
1380
1339
  src/core/lib/surface/version.cc \
1381
- src/core/lib/surface/wait_for_cq_end_op.cc \
1382
- src/core/lib/transport/batch_builder.cc \
1383
1340
  src/core/lib/transport/bdp_estimator.cc \
1384
1341
  src/core/lib/transport/call_arena_allocator.cc \
1385
1342
  src/core/lib/transport/call_filters.cc \
@@ -1387,6 +1344,7 @@ LIBGRPC_SRC = \
1387
1344
  src/core/lib/transport/call_spine.cc \
1388
1345
  src/core/lib/transport/connectivity_state.cc \
1389
1346
  src/core/lib/transport/error_utils.cc \
1347
+ src/core/lib/transport/interception_chain.cc \
1390
1348
  src/core/lib/transport/message.cc \
1391
1349
  src/core/lib/transport/metadata.cc \
1392
1350
  src/core/lib/transport/metadata_batch.cc \
@@ -1446,7 +1404,6 @@ LIBGRPC_SRC = \
1446
1404
  src/core/resolver/sockaddr/sockaddr_resolver.cc \
1447
1405
  src/core/resolver/xds/xds_dependency_manager.cc \
1448
1406
  src/core/resolver/xds/xds_resolver.cc \
1449
- src/core/resolver/xds/xds_resolver_trace.cc \
1450
1407
  src/core/server/server.cc \
1451
1408
  src/core/server/server_call_tracer_filter.cc \
1452
1409
  src/core/server/server_config_selector_filter.cc \
@@ -1455,6 +1412,11 @@ LIBGRPC_SRC = \
1455
1412
  src/core/service_config/service_config_channel_arg_filter.cc \
1456
1413
  src/core/service_config/service_config_impl.cc \
1457
1414
  src/core/service_config/service_config_parser.cc \
1415
+ src/core/telemetry/call_tracer.cc \
1416
+ src/core/telemetry/histogram_view.cc \
1417
+ src/core/telemetry/metrics.cc \
1418
+ src/core/telemetry/stats.cc \
1419
+ src/core/telemetry/stats_data.cc \
1458
1420
  src/core/tsi/alts/crypt/aes_gcm.cc \
1459
1421
  src/core/tsi/alts/crypt/gsec.cc \
1460
1422
  src/core/tsi/alts/frame_protector/alts_counter.cc \
@@ -1484,6 +1446,41 @@ LIBGRPC_SRC = \
1484
1446
  src/core/tsi/ssl_transport_security_utils.cc \
1485
1447
  src/core/tsi/transport_security.cc \
1486
1448
  src/core/tsi/transport_security_grpc.cc \
1449
+ src/core/util/alloc.cc \
1450
+ src/core/util/android/log.cc \
1451
+ src/core/util/atm.cc \
1452
+ src/core/util/gcp_metadata_query.cc \
1453
+ src/core/util/http_client/format_request.cc \
1454
+ src/core/util/http_client/httpcli.cc \
1455
+ src/core/util/http_client/httpcli_security_connector.cc \
1456
+ src/core/util/http_client/parser.cc \
1457
+ src/core/util/iphone/cpu.cc \
1458
+ src/core/util/json/json_object_loader.cc \
1459
+ src/core/util/json/json_reader.cc \
1460
+ src/core/util/json/json_util.cc \
1461
+ src/core/util/json/json_writer.cc \
1462
+ src/core/util/linux/cpu.cc \
1463
+ src/core/util/linux/log.cc \
1464
+ src/core/util/log.cc \
1465
+ src/core/util/msys/tmpfile.cc \
1466
+ src/core/util/posix/cpu.cc \
1467
+ src/core/util/posix/log.cc \
1468
+ src/core/util/posix/string.cc \
1469
+ src/core/util/posix/sync.cc \
1470
+ src/core/util/posix/time.cc \
1471
+ src/core/util/posix/tmpfile.cc \
1472
+ src/core/util/string.cc \
1473
+ src/core/util/sync.cc \
1474
+ src/core/util/sync_abseil.cc \
1475
+ src/core/util/time.cc \
1476
+ src/core/util/time_precise.cc \
1477
+ src/core/util/windows/cpu.cc \
1478
+ src/core/util/windows/log.cc \
1479
+ src/core/util/windows/string.cc \
1480
+ src/core/util/windows/string_util.cc \
1481
+ src/core/util/windows/sync.cc \
1482
+ src/core/util/windows/time.cc \
1483
+ src/core/util/windows/tmpfile.cc \
1487
1484
  src/core/xds/grpc/certificate_provider_store.cc \
1488
1485
  src/core/xds/grpc/file_watcher_certificate_provider_factory.cc \
1489
1486
  src/core/xds/grpc/xds_audit_logger_registry.cc \
@@ -1775,6 +1772,7 @@ PUBLIC_HEADERS_C += \
1775
1772
  include/grpc/impl/propagation_bits.h \
1776
1773
  include/grpc/impl/slice_type.h \
1777
1774
  include/grpc/load_reporting.h \
1775
+ include/grpc/passive_listener.h \
1778
1776
  include/grpc/slice.h \
1779
1777
  include/grpc/slice_buffer.h \
1780
1778
  include/grpc/status.h \
@@ -1835,8 +1833,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGRPC_
1835
1833
  ifeq ($(SYSTEM),Darwin)
1836
1834
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libcares.a $(OPENSSL_MERGE_LIBS) $(ZLIB_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
1837
1835
  else
1838
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.41 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libcares.a $(OPENSSL_MERGE_LIBS) $(ZLIB_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
1839
- $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.41
1836
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.42 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libcares.a $(OPENSSL_MERGE_LIBS) $(ZLIB_MERGE_LIBS) $(LDLIBS_SECURE) $(LDLIBS)
1837
+ $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.42
1840
1838
  $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so
1841
1839
  endif
1842
1840
  endif
@@ -1933,6 +1931,7 @@ LIBBORINGSSL_SRC = \
1933
1931
  third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c \
1934
1932
  third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c \
1935
1933
  third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c \
1934
+ third_party/boringssl-with-bazel/src/crypto/dilithium/dilithium.c \
1936
1935
  third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c \
1937
1936
  third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c \
1938
1937
  third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c \
@@ -132,8 +132,6 @@ class EventEngine : public std::enable_shared_from_this<EventEngine>,
132
132
  struct TaskHandle {
133
133
  intptr_t keys[2];
134
134
  static const GRPC_DLL TaskHandle kInvalid;
135
- friend bool operator==(const TaskHandle& lhs, const TaskHandle& rhs);
136
- friend bool operator!=(const TaskHandle& lhs, const TaskHandle& rhs);
137
135
  };
138
136
  /// A handle to a cancellable connection attempt.
139
137
  ///
@@ -141,10 +139,6 @@ class EventEngine : public std::enable_shared_from_this<EventEngine>,
141
139
  struct ConnectionHandle {
142
140
  intptr_t keys[2];
143
141
  static const GRPC_DLL ConnectionHandle kInvalid;
144
- friend bool operator==(const ConnectionHandle& lhs,
145
- const ConnectionHandle& rhs);
146
- friend bool operator!=(const ConnectionHandle& lhs,
147
- const ConnectionHandle& rhs);
148
142
  };
149
143
  /// Thin wrapper around a platform-specific sockaddr type. A sockaddr struct
150
144
  /// exists on all platforms that gRPC supports.
@@ -496,6 +490,19 @@ void EventEngineFactoryReset();
496
490
  /// Create an EventEngine using the default factory.
497
491
  std::unique_ptr<EventEngine> CreateEventEngine();
498
492
 
493
+ bool operator==(const EventEngine::TaskHandle& lhs,
494
+ const EventEngine::TaskHandle& rhs);
495
+ bool operator!=(const EventEngine::TaskHandle& lhs,
496
+ const EventEngine::TaskHandle& rhs);
497
+ std::ostream& operator<<(std::ostream& out,
498
+ const EventEngine::TaskHandle& handle);
499
+ bool operator==(const EventEngine::ConnectionHandle& lhs,
500
+ const EventEngine::ConnectionHandle& rhs);
501
+ bool operator!=(const EventEngine::ConnectionHandle& lhs,
502
+ const EventEngine::ConnectionHandle& rhs);
503
+ std::ostream& operator<<(std::ostream& out,
504
+ const EventEngine::ConnectionHandle& handle);
505
+
499
506
  } // namespace experimental
500
507
  } // namespace grpc_event_engine
501
508
 
@@ -111,9 +111,11 @@
111
111
  "grpc.server_max_unrequested_time_in_server"
112
112
  /** Channel arg to override the http2 :scheme header */
113
113
  #define GRPC_ARG_HTTP2_SCHEME "grpc.http2_scheme"
114
- /** How many pings can the client send before needing to send a
115
- data/header frame? (0 indicates that an infinite number of
116
- pings can be sent without sending a data frame or header frame) */
114
+ /** How many pings can the client send before needing to send a data/header
115
+ frame? (0 indicates that an infinite number of pings can be sent without
116
+ sending a data frame or header frame).
117
+ If experiment "max_pings_wo_data_throttle" is enabled, instead of pings being
118
+ completely blocked, they are throttled. */
117
119
  #define GRPC_ARG_HTTP2_MAX_PINGS_WITHOUT_DATA \
118
120
  "grpc.http2.max_pings_without_data"
119
121
  /** How many misbehaving pings the server can bear before sending goaway and
@@ -396,6 +398,8 @@
396
398
  * If unspecified, it is unlimited */
397
399
  #define GRPC_ARG_MAX_ALLOWED_INCOMING_CONNECTIONS \
398
400
  "grpc.max_allowed_incoming_connections"
401
+ /** Configure per-channel or per-server stats plugins. */
402
+ #define GRPC_ARG_EXPERIMENTAL_STATS_PLUGINS "grpc.experimental.stats_plugins"
399
403
  /** \} */
400
404
 
401
405
  #endif /* GRPC_IMPL_CHANNEL_ARG_NAMES_H */
@@ -38,6 +38,7 @@ header "byte_buffer.h"
38
38
  header "impl/propagation_bits.h"
39
39
  header "impl/slice_type.h"
40
40
  header "load_reporting.h"
41
+ header "passive_listener.h"
41
42
  header "slice.h"
42
43
  header "slice_buffer.h"
43
44
  header "status.h"
@@ -0,0 +1,62 @@
1
+ // Copyright 2024 The gRPC Authors
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+ #ifndef GRPC_PASSIVE_LISTENER_H
15
+ #define GRPC_PASSIVE_LISTENER_H
16
+
17
+ #include <memory>
18
+
19
+ #include <grpc/event_engine/event_engine.h>
20
+ #include <grpc/grpc.h>
21
+ // #include <grpc/support/port_platform.h>
22
+
23
+ namespace grpc_core {
24
+ class Server;
25
+
26
+ namespace experimental {
27
+ class PassiveListenerImpl;
28
+
29
+ /// -- EXPERIMENTAL API --
30
+ /// Interface for used for Server Endpoint injection.
31
+ class PassiveListener {
32
+ public:
33
+ virtual ~PassiveListener() = default;
34
+ /// -- EXPERIMENTAL API --
35
+ ///
36
+ /// Takes an Endpoint for an established connection, and treats it as if the
37
+ /// connection had been accepted by the server.
38
+ ///
39
+ /// The server must be started before endpoints can be accepted.
40
+ virtual absl::Status AcceptConnectedEndpoint(
41
+ std::unique_ptr<grpc_event_engine::experimental::EventEngine::Endpoint>
42
+ endpoint) = 0;
43
+
44
+ /// -- EXPERIMENTAL API --
45
+ ///
46
+ /// Takes a connected file descriptor, and treats it as if the server had
47
+ /// accepted the connection itself.
48
+ ///
49
+ /// Returns a failure status if the server's active EventEngine does not
50
+ /// support Endpoint creation from fds.
51
+ virtual absl::Status AcceptConnectedFd(int fd) = 0;
52
+ };
53
+
54
+ } // namespace experimental
55
+ } // namespace grpc_core
56
+
57
+ absl::Status grpc_server_add_passive_listener(
58
+ grpc_core::Server* server, grpc_server_credentials* credentials,
59
+ std::shared_ptr<grpc_core::experimental::PassiveListenerImpl>
60
+ passive_listener);
61
+
62
+ #endif /* GRPC_PASSIVE_LISTENER_H */
@@ -28,15 +28,10 @@
28
28
  extern "C" {
29
29
  #endif
30
30
 
31
- /** GPR log API.
32
-
33
- Usage (within grpc):
34
-
35
- int argument1 = 3;
36
- char* argument2 = "hello";
37
- gpr_log(GPR_DEBUG, "format string %d", argument1);
38
- gpr_log(GPR_INFO, "hello world");
39
- gpr_log(GPR_ERROR, "%d %s!!", argument1, argument2); */
31
+ /**
32
+ * Logging functions in this file are deprecated.
33
+ * Please use absl ABSL_LOG instead.
34
+ */
40
35
 
41
36
  /** The severity of a log message - use the #defines below when calling into
42
37
  gpr_log to additionally supply file and line data */
@@ -65,7 +60,7 @@ GPRAPI void gpr_log_message(const char* file, int line,
65
60
  gpr_log_severity severity, const char* message);
66
61
 
67
62
  /** Set global log verbosity */
68
- GPRAPI void gpr_set_log_verbosity(gpr_log_severity min_severity_to_print);
63
+ GPRAPI void gpr_set_log_verbosity(gpr_log_severity deprecated_setting);
69
64
 
70
65
  GPRAPI void gpr_log_verbosity_init(void);
71
66
 
@@ -82,7 +77,8 @@ struct gpr_log_func_args {
82
77
  typedef struct gpr_log_func_args gpr_log_func_args;
83
78
 
84
79
  typedef void (*gpr_log_func)(gpr_log_func_args* args);
85
- GPRAPI void gpr_set_log_function(gpr_log_func func);
80
+
81
+ GPRAPI void gpr_set_log_function(gpr_log_func deprecated_setting);
86
82
 
87
83
  GPRAPI void gpr_assertion_failed(const char* filename, int line,
88
84
  const char* message) GPR_ATTRIBUTE_NORETURN;
@@ -99,12 +95,6 @@ GPRAPI void gpr_assertion_failed(const char* filename, int line,
99
95
  } \
100
96
  } while (0)
101
97
 
102
- #ifndef NDEBUG
103
- #define GPR_DEBUG_ASSERT(x) GPR_ASSERT(x)
104
- #else
105
- #define GPR_DEBUG_ASSERT(x) GPR_ASSERT(true || (x))
106
- #endif
107
-
108
98
  #ifdef __cplusplus
109
99
  }
110
100
  #endif
@@ -272,6 +272,9 @@
272
272
  #define GPR_PLATFORM_STRING "ios"
273
273
  #define GPR_CPU_IPHONE 1
274
274
  #define GRPC_CFSTREAM 1
275
+ #ifndef GRPC_IOS_EVENT_ENGINE_CLIENT
276
+ #define GRPC_IOS_EVENT_ENGINE_CLIENT 1
277
+ #endif /* GRPC_IOS_EVENT_ENGINE_CLIENT */
275
278
  /* the c-ares resolver isn't safe to enable on iOS */
276
279
  #define GRPC_ARES 0
277
280
  #else /* TARGET_OS_IPHONE */
@@ -28,10 +28,10 @@
28
28
  #include <grpc/support/port_platform.h>
29
29
 
30
30
  #include "src/core/channelz/channelz.h"
31
- #include "src/core/lib/gpr/string.h"
32
31
  #include "src/core/lib/gprpp/time.h"
33
32
  #include "src/core/lib/slice/slice.h"
34
33
  #include "src/core/lib/slice/slice_internal.h"
34
+ #include "src/core/util/string.h"
35
35
 
36
36
  namespace grpc_core {
37
37
  namespace channelz {
@@ -30,7 +30,7 @@
30
30
 
31
31
  #include "src/core/lib/gprpp/ref_counted_ptr.h"
32
32
  #include "src/core/lib/gprpp/sync.h"
33
- #include "src/core/lib/json/json.h"
33
+ #include "src/core/util/json/json.h"
34
34
 
35
35
  namespace grpc_core {
36
36
  namespace channelz {
@@ -37,12 +37,12 @@
37
37
  #include "src/core/lib/address_utils/parse_address.h"
38
38
  #include "src/core/lib/address_utils/sockaddr_utils.h"
39
39
  #include "src/core/lib/channel/channel_args.h"
40
- #include "src/core/lib/gpr/string.h"
41
- #include "src/core/lib/gpr/useful.h"
42
40
  #include "src/core/lib/iomgr/resolved_address.h"
43
- #include "src/core/lib/json/json_writer.h"
44
41
  #include "src/core/lib/transport/connectivity_state.h"
45
42
  #include "src/core/lib/uri/uri_parser.h"
43
+ #include "src/core/util/json/json_writer.h"
44
+ #include "src/core/util/string.h"
45
+ #include "src/core/util/useful.h"
46
46
 
47
47
  namespace grpc_core {
48
48
  namespace channelz {
@@ -38,13 +38,13 @@
38
38
  #include <grpc/support/port_platform.h>
39
39
 
40
40
  #include "src/core/channelz/channel_trace.h"
41
- #include "src/core/lib/gpr/time_precise.h"
42
- #include "src/core/lib/gpr/useful.h"
43
41
  #include "src/core/lib/gprpp/per_cpu.h"
44
42
  #include "src/core/lib/gprpp/ref_counted.h"
45
43
  #include "src/core/lib/gprpp/ref_counted_ptr.h"
46
44
  #include "src/core/lib/gprpp/sync.h"
47
- #include "src/core/lib/json/json.h"
45
+ #include "src/core/util/json/json.h"
46
+ #include "src/core/util/time_precise.h"
47
+ #include "src/core/util/useful.h"
48
48
 
49
49
  // Channel arg key for channelz node.
50
50
  #define GRPC_ARG_CHANNELZ_CHANNEL_NODE "grpc.internal.channelz_channel_node"
@@ -72,7 +72,7 @@ class ListenSocketNode;
72
72
 
73
73
  namespace testing {
74
74
  class CallCountingHelperPeer;
75
- class ChannelNodePeer;
75
+ class SubchannelNodePeer;
76
76
  } // namespace testing
77
77
 
78
78
  // base class for all channelz entities
@@ -228,9 +228,6 @@ class ChannelNode final : public BaseNode {
228
228
  void RemoveChildSubchannel(intptr_t child_uuid);
229
229
 
230
230
  private:
231
- // Allows the channel trace test to access trace_.
232
- friend class testing::ChannelNodePeer;
233
-
234
231
  void PopulateChildRefs(Json::Object* json);
235
232
 
236
233
  std::string target_;
@@ -277,6 +274,9 @@ class SubchannelNode final : public BaseNode {
277
274
  void RecordCallSucceeded() { call_counter_.RecordCallSucceeded(); }
278
275
 
279
276
  private:
277
+ // Allows the channel trace test to access trace_.
278
+ friend class testing::SubchannelNodePeer;
279
+
280
280
  std::atomic<grpc_connectivity_state> connectivity_state_{GRPC_CHANNEL_IDLE};
281
281
  Mutex socket_mu_;
282
282
  RefCountedPtr<SocketNode> child_socket_ ABSL_GUARDED_BY(socket_mu_);
@@ -25,6 +25,7 @@
25
25
  #include <vector>
26
26
 
27
27
  #include "absl/log/check.h"
28
+ #include "absl/log/log.h"
28
29
 
29
30
  #include <grpc/grpc.h>
30
31
  #include <grpc/support/json.h>
@@ -35,8 +36,8 @@
35
36
  #include "src/core/channelz/channelz.h"
36
37
  #include "src/core/lib/gprpp/sync.h"
37
38
  #include "src/core/lib/iomgr/exec_ctx.h"
38
- #include "src/core/lib/json/json.h"
39
- #include "src/core/lib/json/json_writer.h"
39
+ #include "src/core/util/json/json.h"
40
+ #include "src/core/util/json/json_writer.h"
40
41
 
41
42
  namespace grpc_core {
42
43
  namespace channelz {
@@ -171,7 +172,7 @@ void ChannelzRegistry::InternalLogAllEntities() {
171
172
  }
172
173
  for (size_t i = 0; i < nodes.size(); ++i) {
173
174
  std::string json = nodes[i]->RenderJsonString();
174
- gpr_log(GPR_INFO, "%s", json.c_str());
175
+ LOG(INFO) << json;
175
176
  }
176
177
  }
177
178