grpc 1.83.1 → 1.84.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 (322) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +21 -17
  3. data/include/grpc/credentials.h +10 -0
  4. data/include/grpc/grpc_security_constants.h +2 -0
  5. data/include/grpc/impl/channel_arg_names.h +9 -0
  6. data/src/core/call/call_filters.h +4 -2
  7. data/src/core/call/client_call.cc +20 -8
  8. data/src/core/call/client_call.h +4 -0
  9. data/src/core/call/interception_chain.cc +2 -0
  10. data/src/core/call/interception_chain.h +14 -1
  11. data/src/core/call/metadata.cc +1 -3
  12. data/src/core/call/metadata_batch.h +13 -5
  13. data/src/core/call/server_call.cc +31 -14
  14. data/src/core/call/server_call.h +4 -0
  15. data/src/core/channelz/text_encode.cc +9 -4
  16. data/src/core/channelz/v2tov1/convert.cc +2 -2
  17. data/src/core/client_channel/backup_poller.cc +1 -2
  18. data/src/core/client_channel/client_channel.cc +6 -33
  19. data/src/core/client_channel/client_channel_filter.cc +22 -55
  20. data/src/core/client_channel/client_channel_filter.h +2 -2
  21. data/src/core/client_channel/client_channel_service_config.cc +3 -19
  22. data/src/core/client_channel/direct_channel.cc +7 -1
  23. data/src/core/client_channel/direct_channel.h +2 -2
  24. data/src/core/client_channel/load_balanced_call_destination.cc +5 -3
  25. data/src/core/client_channel/retry_filter_legacy_call_data.cc +5 -12
  26. data/src/core/client_channel/subchannel.cc +310 -1058
  27. data/src/core/client_channel/subchannel.h +44 -329
  28. data/src/core/client_channel/subchannel_metrics.cc +48 -0
  29. data/src/core/client_channel/subchannel_metrics.h +60 -0
  30. data/src/core/credentials/call/external/file_external_account_credentials.cc +1 -1
  31. data/src/core/credentials/call/external/url_external_account_credentials.cc +2 -3
  32. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.cc +8 -24
  33. data/src/core/credentials/call/gcp_service_account_identity/gcp_service_account_identity_credentials.h +3 -6
  34. data/src/core/credentials/call/gdch_service_account/gdch_service_account_credentials.cc +525 -0
  35. data/src/core/credentials/call/gdch_service_account/gdch_service_account_credentials.h +138 -0
  36. data/src/core/credentials/call/json_util.h +1 -0
  37. data/src/core/credentials/call/jwt/json_token.cc +10 -2
  38. data/src/core/credentials/call/jwt/jwt_verifier.cc +15 -1
  39. data/src/core/credentials/call/jwt_token_file/jwt_token_file_call_credentials.cc +1 -1
  40. data/src/core/credentials/call/oauth2/oauth2_credentials.cc +42 -79
  41. data/src/core/credentials/call/oauth2/oauth2_credentials.h +2 -5
  42. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.cc +52 -31
  43. data/src/core/credentials/call/token_fetcher/token_fetcher_credentials.h +21 -8
  44. data/src/core/credentials/transport/google_default/google_default_credentials.cc +3 -4
  45. data/src/core/credentials/transport/ssl/ssl_credentials.cc +59 -72
  46. data/src/core/credentials/transport/ssl/ssl_credentials.h +9 -8
  47. data/src/core/credentials/transport/ssl/ssl_security_connector.cc +12 -6
  48. data/src/core/credentials/transport/ssl/ssl_security_connector.h +4 -4
  49. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.cc +29 -18
  50. data/src/core/credentials/transport/tls/grpc_tls_certificate_distributor.h +9 -6
  51. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.cc +45 -56
  52. data/src/core/credentials/transport/tls/grpc_tls_certificate_provider.h +5 -4
  53. data/src/core/credentials/transport/tls/grpc_tls_certificate_selector.h +26 -0
  54. data/src/core/credentials/transport/tls/grpc_tls_crl_provider.cc +1 -1
  55. data/src/core/credentials/transport/tls/load_system_roots.h +2 -6
  56. data/src/core/credentials/transport/tls/load_system_roots_fallback.cc +2 -4
  57. data/src/core/credentials/transport/tls/load_system_roots_supported.cc +13 -15
  58. data/src/core/credentials/transport/tls/load_system_roots_supported.h +3 -2
  59. data/src/core/credentials/transport/tls/load_system_roots_windows.cc +5 -8
  60. data/src/core/credentials/transport/tls/spiffe_utils.cc +1 -1
  61. data/src/core/credentials/transport/tls/ssl_utils.cc +39 -28
  62. data/src/core/credentials/transport/tls/ssl_utils.h +12 -49
  63. data/src/core/credentials/transport/tls/tls_security_connector.cc +48 -33
  64. data/src/core/credentials/transport/tls/tls_security_connector.h +31 -10
  65. data/src/core/ext/filters/channel_idle/legacy_channel_idle_filter.cc +15 -11
  66. data/src/core/ext/filters/http/http_filters_plugin.cc +20 -9
  67. data/src/core/ext/filters/rbac/rbac_filter.cc +43 -21
  68. data/src/core/ext/filters/rbac/rbac_filter.h +21 -3
  69. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +2 -2
  70. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +1 -1
  71. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +6 -20
  72. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +32 -67
  73. data/src/core/ext/transport/chttp2/transport/flow_control.cc +2 -0
  74. data/src/core/ext/transport/chttp2/transport/flow_control.h +78 -4
  75. data/src/core/ext/transport/chttp2/transport/frame.h +2 -0
  76. data/src/core/ext/transport/chttp2/transport/frame_data.cc +3 -4
  77. data/src/core/ext/transport/chttp2/transport/goaway.h +7 -0
  78. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +5 -3
  79. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +3 -1
  80. data/src/core/ext/transport/chttp2/transport/http2_client_transport.cc +141 -130
  81. data/src/core/ext/transport/chttp2/transport/http2_client_transport.h +22 -22
  82. data/src/core/ext/transport/chttp2/transport/http2_server_transport.cc +402 -269
  83. data/src/core/ext/transport/chttp2/transport/http2_server_transport.h +80 -49
  84. data/src/core/ext/transport/chttp2/transport/http2_settings_promises.h +1 -2
  85. data/src/core/ext/transport/chttp2/transport/http2_status.h +38 -37
  86. data/src/core/ext/transport/chttp2/transport/http2_transport.cc +178 -5
  87. data/src/core/ext/transport/chttp2/transport/http2_transport.h +345 -5
  88. data/src/core/ext/transport/chttp2/transport/parsing.cc +5 -5
  89. data/src/core/ext/transport/chttp2/transport/ping_promise.cc +3 -2
  90. data/src/core/ext/transport/chttp2/transport/ping_promise.h +25 -5
  91. data/src/core/ext/transport/chttp2/transport/ping_rate_policy.cc +3 -4
  92. data/src/core/ext/transport/chttp2/transport/read_context.h +30 -3
  93. data/src/core/ext/transport/chttp2/transport/stream.h +65 -23
  94. data/src/core/ext/transport/chttp2/transport/writing.cc +0 -3
  95. data/src/core/ext/transport/inproc/inproc_transport.cc +1 -5
  96. data/src/core/ext/transport/inproc/legacy_inproc_transport.cc +4 -17
  97. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/ext_proc.upb.h +1912 -0
  98. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/ext_proc.upb_minitable.c +300 -0
  99. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/ext_proc.upb_minitable.h +37 -0
  100. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/processing_mode.upb.h +187 -0
  101. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/processing_mode.upb_minitable.c +64 -0
  102. data/src/core/ext/upb-gen/envoy/extensions/filters/http/ext_proc/v3/processing_mode.upb_minitable.h +31 -0
  103. data/src/core/ext/upb-gen/envoy/service/ext_proc/v3/external_processor.upb.h +2362 -0
  104. data/src/core/ext/upb-gen/envoy/service/ext_proc/v3/external_processor.upb_minitable.c +556 -0
  105. data/src/core/ext/upb-gen/envoy/service/ext_proc/v3/external_processor.upb_minitable.h +47 -0
  106. data/src/core/ext/upb-gen/{src/proto/grpc/channelz → grpc/channelz/v1}/channelz.upb.h +5 -5
  107. data/src/core/ext/upb-gen/{src/proto/grpc/channelz → grpc/channelz/v1}/channelz.upb_minitable.c +3 -3
  108. data/src/core/ext/upb-gen/{src/proto/grpc/channelz → grpc/channelz/v1}/channelz.upb_minitable.h +5 -5
  109. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/ext_proc/v3/ext_proc.upbdefs.c +453 -0
  110. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/ext_proc/v3/ext_proc.upbdefs.h +67 -0
  111. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/ext_proc/v3/processing_mode.upbdefs.c +142 -0
  112. data/src/core/ext/upbdefs-gen/envoy/extensions/filters/http/ext_proc/v3/processing_mode.upbdefs.h +37 -0
  113. data/src/core/ext/upbdefs-gen/grpc/channelz/v1/channelz.upbdefs.c +715 -0
  114. data/src/core/ext/upbdefs-gen/{src/proto/grpc/channelz → grpc/channelz/v1}/channelz.upbdefs.h +44 -44
  115. data/src/core/filter/auth/server_auth_filter.cc +2 -3
  116. data/src/core/filter/composite/composite_filter.cc +45 -33
  117. data/src/core/filter/composite/composite_filter.h +5 -4
  118. data/src/core/filter/ext_proc/ext_proc_filter.cc +224 -0
  119. data/src/core/filter/ext_proc/ext_proc_filter.h +155 -0
  120. data/src/core/filter/ext_proc/ext_proc_messages.cc +701 -0
  121. data/src/core/filter/ext_proc/ext_proc_messages.h +297 -0
  122. data/src/core/filter/filter_args.h +13 -2
  123. data/src/core/handshaker/http_connect/http_proxy_mapper.cc +30 -3
  124. data/src/core/handshaker/security/security_handshaker.cc +9 -6
  125. data/src/core/lib/channel/channel_stack.cc +3 -0
  126. data/src/core/lib/channel/channel_stack.h +2 -0
  127. data/src/core/lib/channel/channel_stack_builder_impl.cc +1 -2
  128. data/src/core/lib/channel/promise_based_filter.cc +132 -20
  129. data/src/core/lib/channel/promise_based_filter.h +42 -12
  130. data/src/core/lib/compression/compression_internal.cc +4 -5
  131. data/src/core/lib/debug/trace_flags.cc +8 -0
  132. data/src/core/lib/debug/trace_flags.h +3 -0
  133. data/src/core/lib/event_engine/ares_resolver.cc +54 -50
  134. data/src/core/lib/event_engine/ares_resolver.h +3 -2
  135. data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +3 -3
  136. data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +4 -10
  137. data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +74 -33
  138. data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +4 -4
  139. data/src/core/lib/event_engine/posix_engine/posix_engine.cc +6 -2
  140. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +3 -0
  141. data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +3 -0
  142. data/src/core/lib/event_engine/windows/windows_endpoint.cc +1 -3
  143. data/src/core/lib/experiments/experiments.cc +60 -96
  144. data/src/core/lib/experiments/experiments.h +34 -50
  145. data/src/core/lib/iomgr/cfstream_handle.cc +2 -6
  146. data/src/core/lib/iomgr/endpoint_cfstream.cc +3 -10
  147. data/src/core/lib/iomgr/error.cc +2 -6
  148. data/src/core/lib/iomgr/error_cfstream.cc +1 -1
  149. data/src/core/lib/iomgr/ev_poll_posix.cc +5 -9
  150. data/src/core/lib/iomgr/event_engine_shims/closure.cc +1 -1
  151. data/src/core/lib/iomgr/event_engine_shims/endpoint.cc +1 -2
  152. data/src/core/lib/iomgr/event_engine_shims/tcp_client.cc +1 -2
  153. data/src/core/lib/iomgr/iomgr_posix.cc +0 -4
  154. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +0 -4
  155. data/src/core/lib/iomgr/iomgr_windows.cc +0 -4
  156. data/src/core/lib/iomgr/socket_factory_posix.h +1 -1
  157. data/src/core/lib/iomgr/socket_utils_posix.cc +3 -0
  158. data/src/core/lib/iomgr/socket_utils_posix.h +3 -0
  159. data/src/core/lib/iomgr/systemd_utils.cc +0 -1
  160. data/src/core/lib/iomgr/tcp_client.h +1 -1
  161. data/src/core/lib/iomgr/tcp_posix.cc +23 -15
  162. data/src/core/lib/iomgr/tcp_server.h +1 -1
  163. data/src/core/lib/iomgr/tcp_server_posix.cc +2 -3
  164. data/src/core/lib/iomgr/tcp_server_utils_posix.h +0 -1
  165. data/src/core/lib/iomgr/tcp_server_windows.cc +0 -1
  166. data/src/core/lib/iomgr/tcp_windows.cc +5 -10
  167. data/src/core/lib/iomgr/unix_sockets_posix.cc +2 -4
  168. data/src/core/lib/iomgr/unix_sockets_posix.h +3 -1
  169. data/src/core/lib/iomgr/vsock.h +3 -1
  170. data/src/core/lib/resource_quota/memory_quota.cc +1 -1
  171. data/src/core/lib/security/authorization/rbac_policy.cc +139 -56
  172. data/src/core/lib/security/authorization/rbac_policy.h +21 -3
  173. data/src/core/lib/surface/call.cc +3 -9
  174. data/src/core/lib/surface/call_utils.h +113 -0
  175. data/src/core/lib/surface/channel_create.cc +1 -1
  176. data/src/core/lib/surface/channel_create.h +0 -2
  177. data/src/core/lib/surface/channel_init.cc +77 -38
  178. data/src/core/lib/surface/channel_init.h +30 -16
  179. data/src/core/lib/surface/filter_stack_call.cc +5 -10
  180. data/src/core/lib/surface/init.cc +13 -27
  181. data/src/core/lib/surface/version.cc +1 -1
  182. data/src/core/lib/transport/error_utils.cc +0 -27
  183. data/src/core/lib/transport/error_utils.h +0 -16
  184. data/src/core/lib/transport/transport.h +7 -5
  185. data/src/core/load_balancing/pick_first/pick_first.cc +2 -0
  186. data/src/core/load_balancing/rls/rls.cc +28 -11
  187. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.cc +33 -42
  188. data/src/core/load_balancing/weighted_round_robin/weighted_round_robin.h +0 -2
  189. data/src/core/load_balancing/xds/cds.cc +3 -1
  190. data/src/core/load_balancing/xds/xds_cluster_impl.cc +0 -1
  191. data/src/core/mitigation_engine/mitigation.h +14 -5
  192. data/src/core/mitigation_engine/mitigation_engine.h +7 -3
  193. data/src/core/mitigation_engine/mitigation_provider.h +2 -1
  194. data/src/core/plugin_registry/grpc_plugin_registry.cc +39 -8
  195. data/src/core/resolver/dns/{event_engine/event_engine_client_channel_resolver.cc → dns_resolver.cc} +42 -41
  196. data/src/core/resolver/dns/{event_engine/event_engine_client_channel_resolver.h → dns_resolver.h} +8 -5
  197. data/src/core/resolver/dns/{event_engine/service_config_helper.cc → service_config_helper.cc} +1 -1
  198. data/src/core/resolver/dns/{event_engine/service_config_helper.h → service_config_helper.h} +3 -3
  199. data/src/core/resolver/endpoint_addresses.h +3 -0
  200. data/src/core/resolver/google_c2p/google_c2p_resolver.cc +2 -1
  201. data/src/core/resolver/xds/xds_resolver.cc +35 -9
  202. data/src/core/server/server.cc +2 -6
  203. data/src/core/server/server_config_selector.h +18 -3
  204. data/src/core/server/server_config_selector_filter.cc +178 -91
  205. data/src/core/server/server_config_selector_filter.h +58 -3
  206. data/src/core/server/xds_server_config_fetcher.cc +196 -129
  207. data/src/core/server/xds_server_config_fetcher.h +49 -0
  208. data/src/core/server/xds_server_config_fetcher_legacy.cc +41 -37
  209. data/src/core/telemetry/histogram.h +94 -14
  210. data/src/core/telemetry/instrument.cc +179 -74
  211. data/src/core/telemetry/instrument.h +78 -30
  212. data/src/core/telemetry/metrics.h +5 -0
  213. data/src/core/{resolver/dns/dns_resolver_plugin.h → telemetry/telemetry_label.h} +12 -8
  214. data/src/core/tsi/alts/crypt/aes_gcm.cc +10 -13
  215. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +2 -2
  216. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +3 -1
  217. data/src/core/tsi/ssl_telemetry_utils.cc +216 -259
  218. data/src/core/tsi/ssl_telemetry_utils.h +12 -2
  219. data/src/core/tsi/ssl_transport_security.cc +238 -80
  220. data/src/core/tsi/ssl_transport_security.h +63 -33
  221. data/src/core/tsi/tls_telemetry.cc +31 -0
  222. data/src/core/tsi/tls_telemetry.h +47 -0
  223. data/src/core/tsi/transport_security.cc +2 -2
  224. data/src/core/tsi/transport_security.h +1 -1
  225. data/src/core/tsi/transport_security_interface.h +1 -1
  226. data/src/core/{resolver/dns/native/dns_resolver.h → util/address_sorting_init.cc} +21 -8
  227. data/src/core/{resolver/dns/c_ares/grpc_ares_wrapper_posix.cc → util/address_sorting_init.h} +7 -8
  228. data/src/core/util/http_client/httpcli.cc +16 -53
  229. data/src/core/util/http_client/httpcli.h +0 -7
  230. data/src/core/util/http_client/httpcli_security_connector.cc +13 -8
  231. data/src/core/util/linux/cpu.cc +1 -1
  232. data/src/core/util/load_file.cc +3 -9
  233. data/src/core/util/load_file.h +3 -4
  234. data/src/core/util/matchers.h +8 -0
  235. data/src/core/util/posix/cpu.cc +1 -1
  236. data/src/core/util/status_helper.cc +0 -20
  237. data/src/core/util/status_helper.h +3 -14
  238. data/src/core/xds/grpc/xds_audit_logger_registry.cc +51 -31
  239. data/src/core/xds/grpc/xds_audit_logger_registry.h +17 -3
  240. data/src/core/xds/grpc/xds_bootstrap_grpc.cc +2 -10
  241. data/src/core/xds/grpc/xds_bootstrap_grpc.h +8 -6
  242. data/src/core/xds/grpc/xds_bootstrap_grpc_builder.cc +488 -0
  243. data/src/core/xds/grpc/xds_bootstrap_grpc_builder.h +97 -0
  244. data/src/core/xds/grpc/xds_certificate_provider.cc +7 -7
  245. data/src/core/xds/grpc/xds_client_grpc.cc +4 -8
  246. data/src/core/xds/grpc/xds_client_grpc.h +0 -4
  247. data/src/core/xds/grpc/xds_cluster.h +1 -0
  248. data/src/core/xds/grpc/xds_cluster_parser.cc +1 -5
  249. data/src/core/xds/grpc/xds_cluster_parser.h +0 -2
  250. data/src/core/xds/grpc/xds_cluster_specifier_plugin.cc +0 -2
  251. data/src/core/xds/grpc/xds_cluster_specifier_plugin.h +0 -2
  252. data/src/core/xds/grpc/xds_common_types.cc +0 -91
  253. data/src/core/xds/grpc/xds_common_types.h +1 -47
  254. data/src/core/xds/grpc/xds_common_types_parser.cc +84 -378
  255. data/src/core/xds/grpc/xds_common_types_parser.h +9 -11
  256. data/src/core/xds/grpc/xds_endpoint_parser.cc +0 -2
  257. data/src/core/xds/grpc/xds_grpc_service_parser.cc +177 -0
  258. data/src/core/{resolver/dns/c_ares/dns_resolver_ares.h → xds/grpc/xds_grpc_service_parser.h} +14 -9
  259. data/src/core/xds/grpc/xds_http_composite_filter.cc +26 -21
  260. data/src/core/xds/grpc/xds_http_composite_filter.h +4 -3
  261. data/src/core/xds/grpc/xds_http_ext_proc_filter.cc +418 -0
  262. data/src/core/xds/grpc/xds_http_ext_proc_filter.h +89 -0
  263. data/src/core/xds/grpc/xds_http_fault_filter.cc +9 -12
  264. data/src/core/xds/grpc/xds_http_fault_filter.h +1 -4
  265. data/src/core/xds/grpc/xds_http_filter.cc +2 -1
  266. data/src/core/xds/grpc/xds_http_filter.h +6 -5
  267. data/src/core/xds/grpc/xds_http_filter_registry.cc +10 -127
  268. data/src/core/xds/grpc/xds_http_filter_registry.h +7 -59
  269. data/src/core/xds/grpc/xds_http_gcp_authn_filter.cc +13 -14
  270. data/src/core/xds/grpc/xds_http_gcp_authn_filter.h +3 -2
  271. data/src/core/xds/grpc/xds_http_rbac_filter.cc +403 -25
  272. data/src/core/xds/grpc/xds_http_rbac_filter.h +1 -3
  273. data/src/core/xds/grpc/xds_http_stateful_session_filter.cc +8 -13
  274. data/src/core/xds/grpc/xds_http_stateful_session_filter.h +1 -4
  275. data/src/core/xds/grpc/xds_lb_policy_registry.cc +0 -292
  276. data/src/core/xds/grpc/xds_lb_policy_registry.h +7 -3
  277. data/src/core/xds/grpc/xds_listener.cc +2 -0
  278. data/src/core/xds/grpc/xds_listener.h +5 -0
  279. data/src/core/xds/grpc/xds_listener_parser.cc +16 -11
  280. data/src/core/xds/grpc/xds_matcher_parse.h +3 -1
  281. data/src/core/xds/grpc/xds_metadata_parser.cc +6 -1
  282. data/src/core/xds/grpc/xds_metadata_parser.h +2 -0
  283. data/src/core/xds/grpc/xds_route_config.cc +2 -0
  284. data/src/core/xds/grpc/xds_route_config.h +3 -1
  285. data/src/core/xds/grpc/xds_route_config_parser.cc +13 -79
  286. data/src/core/xds/grpc/xds_route_config_parser.h +0 -3
  287. data/src/core/xds/grpc/xds_routing.cc +116 -69
  288. data/src/core/xds/grpc/xds_routing.h +19 -8
  289. data/src/core/xds/grpc/xds_tls_context.cc +117 -0
  290. data/src/core/xds/grpc/xds_tls_context.h +76 -0
  291. data/src/core/xds/grpc/xds_tls_context_parser.cc +275 -0
  292. data/src/core/xds/grpc/xds_tls_context_parser.h +35 -0
  293. data/src/core/xds/grpc/xds_transport_grpc.cc +41 -38
  294. data/src/core/xds/grpc/xds_transport_grpc.h +4 -2
  295. data/src/ruby/ext/grpc/rb_call.c +26 -15
  296. data/src/ruby/ext/grpc/rb_completion_queue.c +6 -5
  297. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +2 -0
  298. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +3 -0
  299. data/src/ruby/lib/grpc/version.rb +1 -1
  300. data/src/ruby/pb/test/client.rb +5 -4
  301. data/src/ruby/spec/call_spec.rb +14 -0
  302. data/src/ruby/spec/generic/server_interceptors_spec.rb +3 -6
  303. metadata +50 -35
  304. data/src/core/ext/upbdefs-gen/src/proto/grpc/channelz/channelz.upbdefs.c +0 -716
  305. data/src/core/lib/iomgr/resolve_address.cc +0 -59
  306. data/src/core/lib/iomgr/resolve_address.h +0 -125
  307. data/src/core/lib/iomgr/resolve_address_impl.h +0 -58
  308. data/src/core/lib/iomgr/resolve_address_posix.cc +0 -184
  309. data/src/core/lib/iomgr/resolve_address_posix.h +0 -78
  310. data/src/core/lib/iomgr/resolve_address_windows.cc +0 -169
  311. data/src/core/lib/iomgr/resolve_address_windows.h +0 -76
  312. data/src/core/resolver/dns/c_ares/dns_resolver_ares.cc +0 -781
  313. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver.h +0 -93
  314. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +0 -203
  315. data/src/core/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +0 -838
  316. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.cc +0 -1237
  317. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper.h +0 -130
  318. data/src/core/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +0 -35
  319. data/src/core/resolver/dns/dns_resolver_plugin.cc +0 -64
  320. data/src/core/resolver/dns/native/dns_resolver.cc +0 -173
  321. data/src/core/util/json/json_util.cc +0 -101
  322. data/src/core/util/json/json_util.h +0 -163
@@ -0,0 +1,67 @@
1
+ /* This file was generated by upb_generator from the input file:
2
+ *
3
+ * envoy/extensions/filters/http/ext_proc/v3/ext_proc.proto
4
+ *
5
+ * Do not edit -- your changes will be discarded when the file is
6
+ * regenerated.
7
+ * NO CHECKED-IN PROTOBUF GENCODE */
8
+
9
+
10
+
11
+ #ifndef ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_EXT_PROC_PROTO_UPB_H__UPBDEFS_H_
12
+ #define ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_EXT_PROC_PROTO_UPB_H__UPBDEFS_H_
13
+
14
+ #include "upb/reflection/def.h"
15
+ #include "upb/reflection/internal/def_pool.h"
16
+
17
+ #include "upb/port/def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ extern _upb_DefPool_Init envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit;
24
+
25
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_ExternalProcessor_getmsgdef(upb_DefPool *s) {
26
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
27
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.ExternalProcessor");
28
+ }
29
+
30
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_ExtProcHttpService_getmsgdef(upb_DefPool *s) {
31
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
32
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.ExtProcHttpService");
33
+ }
34
+
35
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_MetadataOptions_getmsgdef(upb_DefPool *s) {
36
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
37
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.MetadataOptions");
38
+ }
39
+
40
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_MetadataOptions_MetadataNamespaces_getmsgdef(upb_DefPool *s) {
41
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
42
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.MetadataOptions.MetadataNamespaces");
43
+ }
44
+
45
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_HeaderForwardingRules_getmsgdef(upb_DefPool *s) {
46
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
47
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.HeaderForwardingRules");
48
+ }
49
+
50
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_ExtProcPerRoute_getmsgdef(upb_DefPool *s) {
51
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
52
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.ExtProcPerRoute");
53
+ }
54
+
55
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_ExtProcOverrides_getmsgdef(upb_DefPool *s) {
56
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_ext_proc_proto_upbdefinit);
57
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.ExtProcOverrides");
58
+ }
59
+
60
+
61
+ #ifdef __cplusplus
62
+ } /* extern "C" */
63
+ #endif
64
+
65
+ #include "upb/port/undef.inc"
66
+
67
+ #endif /* ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_EXT_PROC_PROTO_UPB_H__UPBDEFS_H_ */
@@ -0,0 +1,142 @@
1
+ /* This file was generated by upb_generator from the input file:
2
+ *
3
+ * envoy/extensions/filters/http/ext_proc/v3/processing_mode.proto
4
+ *
5
+ * Do not edit -- your changes will be discarded when the file is
6
+ * regenerated.
7
+ * NO CHECKED-IN PROTOBUF GENCODE */
8
+
9
+
10
+ #include "upb/reflection/def.h"
11
+ #include "envoy/extensions/filters/http/ext_proc/v3/processing_mode.upbdefs.h"
12
+ #include "envoy/extensions/filters/http/ext_proc/v3/processing_mode.upb_minitable.h"
13
+
14
+ extern _upb_DefPool_Init udpa_annotations_status_proto_upbdefinit;
15
+ extern _upb_DefPool_Init validate_validate_proto_upbdefinit;
16
+
17
+ static const char descriptor[1332] = {
18
+ '\n', '?', 'e', 'n', 'v', 'o', 'y', '/', 'e', 'x', 't', 'e',
19
+ 'n', 's', 'i', 'o', 'n', 's', '/', 'f', 'i', 'l', 't', 'e',
20
+ 'r', 's', '/', 'h', 't', 't', 'p', '/', 'e', 'x', 't', '_',
21
+ 'p', 'r', 'o', 'c', '/', 'v', '3', '/', 'p', 'r', 'o', 'c',
22
+ 'e', 's', 's', 'i', 'n', 'g', '_', 'm', 'o', 'd', 'e', '.',
23
+ 'p', 'r', 'o', 't', 'o', '\022', ')', 'e', 'n', 'v', 'o', 'y',
24
+ '.', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.',
25
+ 'f', 'i', 'l', 't', 'e', 'r', 's', '.', 'h', 't', 't', 'p',
26
+ '.', 'e', 'x', 't', '_', 'p', 'r', 'o', 'c', '.', 'v', '3',
27
+ '\032', '\035', 'u', 'd', 'p', 'a', '/', 'a', 'n', 'n', 'o', 't',
28
+ 'a', 't', 'i', 'o', 'n', 's', '/', 's', 't', 'a', 't', 'u',
29
+ 's', '.', 'p', 'r', 'o', 't', 'o', '\032', '\027', 'v', 'a', 'l',
30
+ 'i', 'd', 'a', 't', 'e', '/', 'v', 'a', 'l', 'i', 'd', 'a',
31
+ 't', 'e', '.', 'p', 'r', 'o', 't', 'o', '\"', '\315', '\007', '\n',
32
+ '\016', 'P', 'r', 'o', 'c', 'e', 's', 's', 'i', 'n', 'g', 'M',
33
+ 'o', 'd', 'e', '\022', '\202', '\001', '\n', '\023', 'r', 'e', 'q', 'u',
34
+ 'e', 's', 't', '_', 'h', 'e', 'a', 'd', 'e', 'r', '_', 'm',
35
+ 'o', 'd', 'e', '\030', '\001', ' ', '\001', '(', '\016', '2', 'H', '.',
36
+ 'e', 'n', 'v', 'o', 'y', '.', 'e', 'x', 't', 'e', 'n', 's',
37
+ 'i', 'o', 'n', 's', '.', 'f', 'i', 'l', 't', 'e', 'r', 's',
38
+ '.', 'h', 't', 't', 'p', '.', 'e', 'x', 't', '_', 'p', 'r',
39
+ 'o', 'c', '.', 'v', '3', '.', 'P', 'r', 'o', 'c', 'e', 's',
40
+ 's', 'i', 'n', 'g', 'M', 'o', 'd', 'e', '.', 'H', 'e', 'a',
41
+ 'd', 'e', 'r', 'S', 'e', 'n', 'd', 'M', 'o', 'd', 'e', 'B',
42
+ '\010', '\372', 'B', '\005', '\202', '\001', '\002', '\020', '\001', 'R', '\021', 'r',
43
+ 'e', 'q', 'u', 'e', 's', 't', 'H', 'e', 'a', 'd', 'e', 'r',
44
+ 'M', 'o', 'd', 'e', '\022', '\204', '\001', '\n', '\024', 'r', 'e', 's',
45
+ 'p', 'o', 'n', 's', 'e', '_', 'h', 'e', 'a', 'd', 'e', 'r',
46
+ '_', 'm', 'o', 'd', 'e', '\030', '\002', ' ', '\001', '(', '\016', '2',
47
+ 'H', '.', 'e', 'n', 'v', 'o', 'y', '.', 'e', 'x', 't', 'e',
48
+ 'n', 's', 'i', 'o', 'n', 's', '.', 'f', 'i', 'l', 't', 'e',
49
+ 'r', 's', '.', 'h', 't', 't', 'p', '.', 'e', 'x', 't', '_',
50
+ 'p', 'r', 'o', 'c', '.', 'v', '3', '.', 'P', 'r', 'o', 'c',
51
+ 'e', 's', 's', 'i', 'n', 'g', 'M', 'o', 'd', 'e', '.', 'H',
52
+ 'e', 'a', 'd', 'e', 'r', 'S', 'e', 'n', 'd', 'M', 'o', 'd',
53
+ 'e', 'B', '\010', '\372', 'B', '\005', '\202', '\001', '\002', '\020', '\001', 'R',
54
+ '\022', 'r', 'e', 's', 'p', 'o', 'n', 's', 'e', 'H', 'e', 'a',
55
+ 'd', 'e', 'r', 'M', 'o', 'd', 'e', '\022', '|', '\n', '\021', 'r',
56
+ 'e', 'q', 'u', 'e', 's', 't', '_', 'b', 'o', 'd', 'y', '_',
57
+ 'm', 'o', 'd', 'e', '\030', '\003', ' ', '\001', '(', '\016', '2', 'F',
58
+ '.', 'e', 'n', 'v', 'o', 'y', '.', 'e', 'x', 't', 'e', 'n',
59
+ 's', 'i', 'o', 'n', 's', '.', 'f', 'i', 'l', 't', 'e', 'r',
60
+ 's', '.', 'h', 't', 't', 'p', '.', 'e', 'x', 't', '_', 'p',
61
+ 'r', 'o', 'c', '.', 'v', '3', '.', 'P', 'r', 'o', 'c', 'e',
62
+ 's', 's', 'i', 'n', 'g', 'M', 'o', 'd', 'e', '.', 'B', 'o',
63
+ 'd', 'y', 'S', 'e', 'n', 'd', 'M', 'o', 'd', 'e', 'B', '\010',
64
+ '\372', 'B', '\005', '\202', '\001', '\002', '\020', '\001', 'R', '\017', 'r', 'e',
65
+ 'q', 'u', 'e', 's', 't', 'B', 'o', 'd', 'y', 'M', 'o', 'd',
66
+ 'e', '\022', '~', '\n', '\022', 'r', 'e', 's', 'p', 'o', 'n', 's',
67
+ 'e', '_', 'b', 'o', 'd', 'y', '_', 'm', 'o', 'd', 'e', '\030',
68
+ '\004', ' ', '\001', '(', '\016', '2', 'F', '.', 'e', 'n', 'v', 'o',
69
+ 'y', '.', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's',
70
+ '.', 'f', 'i', 'l', 't', 'e', 'r', 's', '.', 'h', 't', 't',
71
+ 'p', '.', 'e', 'x', 't', '_', 'p', 'r', 'o', 'c', '.', 'v',
72
+ '3', '.', 'P', 'r', 'o', 'c', 'e', 's', 's', 'i', 'n', 'g',
73
+ 'M', 'o', 'd', 'e', '.', 'B', 'o', 'd', 'y', 'S', 'e', 'n',
74
+ 'd', 'M', 'o', 'd', 'e', 'B', '\010', '\372', 'B', '\005', '\202', '\001',
75
+ '\002', '\020', '\001', 'R', '\020', 'r', 'e', 's', 'p', 'o', 'n', 's',
76
+ 'e', 'B', 'o', 'd', 'y', 'M', 'o', 'd', 'e', '\022', '\204', '\001',
77
+ '\n', '\024', 'r', 'e', 'q', 'u', 'e', 's', 't', '_', 't', 'r',
78
+ 'a', 'i', 'l', 'e', 'r', '_', 'm', 'o', 'd', 'e', '\030', '\005',
79
+ ' ', '\001', '(', '\016', '2', 'H', '.', 'e', 'n', 'v', 'o', 'y',
80
+ '.', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.',
81
+ 'f', 'i', 'l', 't', 'e', 'r', 's', '.', 'h', 't', 't', 'p',
82
+ '.', 'e', 'x', 't', '_', 'p', 'r', 'o', 'c', '.', 'v', '3',
83
+ '.', 'P', 'r', 'o', 'c', 'e', 's', 's', 'i', 'n', 'g', 'M',
84
+ 'o', 'd', 'e', '.', 'H', 'e', 'a', 'd', 'e', 'r', 'S', 'e',
85
+ 'n', 'd', 'M', 'o', 'd', 'e', 'B', '\010', '\372', 'B', '\005', '\202',
86
+ '\001', '\002', '\020', '\001', 'R', '\022', 'r', 'e', 'q', 'u', 'e', 's',
87
+ 't', 'T', 'r', 'a', 'i', 'l', 'e', 'r', 'M', 'o', 'd', 'e',
88
+ '\022', '\206', '\001', '\n', '\025', 'r', 'e', 's', 'p', 'o', 'n', 's',
89
+ 'e', '_', 't', 'r', 'a', 'i', 'l', 'e', 'r', '_', 'm', 'o',
90
+ 'd', 'e', '\030', '\006', ' ', '\001', '(', '\016', '2', 'H', '.', 'e',
91
+ 'n', 'v', 'o', 'y', '.', 'e', 'x', 't', 'e', 'n', 's', 'i',
92
+ 'o', 'n', 's', '.', 'f', 'i', 'l', 't', 'e', 'r', 's', '.',
93
+ 'h', 't', 't', 'p', '.', 'e', 'x', 't', '_', 'p', 'r', 'o',
94
+ 'c', '.', 'v', '3', '.', 'P', 'r', 'o', 'c', 'e', 's', 's',
95
+ 'i', 'n', 'g', 'M', 'o', 'd', 'e', '.', 'H', 'e', 'a', 'd',
96
+ 'e', 'r', 'S', 'e', 'n', 'd', 'M', 'o', 'd', 'e', 'B', '\010',
97
+ '\372', 'B', '\005', '\202', '\001', '\002', '\020', '\001', 'R', '\023', 'r', 'e',
98
+ 's', 'p', 'o', 'n', 's', 'e', 'T', 'r', 'a', 'i', 'l', 'e',
99
+ 'r', 'M', 'o', 'd', 'e', '\"', '1', '\n', '\016', 'H', 'e', 'a',
100
+ 'd', 'e', 'r', 'S', 'e', 'n', 'd', 'M', 'o', 'd', 'e', '\022',
101
+ '\013', '\n', '\007', 'D', 'E', 'F', 'A', 'U', 'L', 'T', '\020', '\000',
102
+ '\022', '\010', '\n', '\004', 'S', 'E', 'N', 'D', '\020', '\001', '\022', '\010',
103
+ '\n', '\004', 'S', 'K', 'I', 'P', '\020', '\002', '\"', 'n', '\n', '\014',
104
+ 'B', 'o', 'd', 'y', 'S', 'e', 'n', 'd', 'M', 'o', 'd', 'e',
105
+ '\022', '\010', '\n', '\004', 'N', 'O', 'N', 'E', '\020', '\000', '\022', '\014',
106
+ '\n', '\010', 'S', 'T', 'R', 'E', 'A', 'M', 'E', 'D', '\020', '\001',
107
+ '\022', '\014', '\n', '\010', 'B', 'U', 'F', 'F', 'E', 'R', 'E', 'D',
108
+ '\020', '\002', '\022', '\024', '\n', '\020', 'B', 'U', 'F', 'F', 'E', 'R',
109
+ 'E', 'D', '_', 'P', 'A', 'R', 'T', 'I', 'A', 'L', '\020', '\003',
110
+ '\022', '\030', '\n', '\024', 'F', 'U', 'L', 'L', '_', 'D', 'U', 'P',
111
+ 'L', 'E', 'X', '_', 'S', 'T', 'R', 'E', 'A', 'M', 'E', 'D',
112
+ '\020', '\004', '\022', '\010', '\n', '\004', 'G', 'R', 'P', 'C', '\020', '\005',
113
+ 'B', '\265', '\001', '\n', '7', 'i', 'o', '.', 'e', 'n', 'v', 'o',
114
+ 'y', 'p', 'r', 'o', 'x', 'y', '.', 'e', 'n', 'v', 'o', 'y',
115
+ '.', 'e', 'x', 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '.',
116
+ 'f', 'i', 'l', 't', 'e', 'r', 's', '.', 'h', 't', 't', 'p',
117
+ '.', 'e', 'x', 't', '_', 'p', 'r', 'o', 'c', '.', 'v', '3',
118
+ 'B', '\023', 'P', 'r', 'o', 'c', 'e', 's', 's', 'i', 'n', 'g',
119
+ 'M', 'o', 'd', 'e', 'P', 'r', 'o', 't', 'o', 'P', '\001', 'Z',
120
+ '[', 'g', 'i', 't', 'h', 'u', 'b', '.', 'c', 'o', 'm', '/',
121
+ 'e', 'n', 'v', 'o', 'y', 'p', 'r', 'o', 'x', 'y', '/', 'g',
122
+ 'o', '-', 'c', 'o', 'n', 't', 'r', 'o', 'l', '-', 'p', 'l',
123
+ 'a', 'n', 'e', '/', 'e', 'n', 'v', 'o', 'y', '/', 'e', 'x',
124
+ 't', 'e', 'n', 's', 'i', 'o', 'n', 's', '/', 'f', 'i', 'l',
125
+ 't', 'e', 'r', 's', '/', 'h', 't', 't', 'p', '/', 'e', 'x',
126
+ 't', '_', 'p', 'r', 'o', 'c', '/', 'v', '3', ';', 'e', 'x',
127
+ 't', '_', 'p', 'r', 'o', 'c', 'v', '3', '\272', '\200', '\310', '\321',
128
+ '\006', '\002', '\020', '\002', 'b', '\006', 'p', 'r', 'o', 't', 'o', '3',
129
+ };
130
+
131
+ static _upb_DefPool_Init *deps[3] = {
132
+ &udpa_annotations_status_proto_upbdefinit,
133
+ &validate_validate_proto_upbdefinit,
134
+ NULL,
135
+ };
136
+
137
+ _upb_DefPool_Init envoy_extensions_filters_http_ext_proc_v3_processing_mode_proto_upbdefinit = {
138
+ deps,
139
+ &envoy_extensions_filters_http_ext_proc_v3_processing_mode_proto_upb_file_layout,
140
+ "envoy/extensions/filters/http/ext_proc/v3/processing_mode.proto",
141
+ UPB_STRINGVIEW_INIT(descriptor, sizeof(descriptor)),
142
+ };
@@ -0,0 +1,37 @@
1
+ /* This file was generated by upb_generator from the input file:
2
+ *
3
+ * envoy/extensions/filters/http/ext_proc/v3/processing_mode.proto
4
+ *
5
+ * Do not edit -- your changes will be discarded when the file is
6
+ * regenerated.
7
+ * NO CHECKED-IN PROTOBUF GENCODE */
8
+
9
+
10
+
11
+ #ifndef ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_PROCESSING_MODE_PROTO_UPB_H__UPBDEFS_H_
12
+ #define ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_PROCESSING_MODE_PROTO_UPB_H__UPBDEFS_H_
13
+
14
+ #include "upb/reflection/def.h"
15
+ #include "upb/reflection/internal/def_pool.h"
16
+
17
+ #include "upb/port/def.inc"
18
+
19
+ #ifdef __cplusplus
20
+ extern "C" {
21
+ #endif
22
+
23
+ extern _upb_DefPool_Init envoy_extensions_filters_http_ext_proc_v3_processing_mode_proto_upbdefinit;
24
+
25
+ UPB_INLINE const upb_MessageDef *envoy_extensions_filters_http_ext_proc_v3_ProcessingMode_getmsgdef(upb_DefPool *s) {
26
+ _upb_DefPool_LoadDefInit(s, &envoy_extensions_filters_http_ext_proc_v3_processing_mode_proto_upbdefinit);
27
+ return upb_DefPool_FindMessageByName(s, "envoy.extensions.filters.http.ext_proc.v3.ProcessingMode");
28
+ }
29
+
30
+
31
+ #ifdef __cplusplus
32
+ } /* extern "C" */
33
+ #endif
34
+
35
+ #include "upb/port/undef.inc"
36
+
37
+ #endif /* ENVOY_EXTENSIONS_FILTERS_HTTP_EXT_PROC_V3_PROCESSING_MODE_PROTO_UPB_H__UPBDEFS_H_ */