grpc 1.38.0 → 1.40.0

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

Potentially problematic release.


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

Files changed (340) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +68 -21
  3. data/include/grpc/event_engine/endpoint_config.h +48 -0
  4. data/include/grpc/event_engine/event_engine.h +23 -29
  5. data/include/grpc/event_engine/port.h +2 -0
  6. data/include/grpc/event_engine/slice_allocator.h +21 -36
  7. data/include/grpc/grpc.h +9 -2
  8. data/include/grpc/grpc_security.h +32 -0
  9. data/include/grpc/grpc_security_constants.h +1 -0
  10. data/include/grpc/impl/codegen/grpc_types.h +33 -19
  11. data/include/grpc/impl/codegen/port_platform.h +41 -0
  12. data/src/core/ext/filters/client_channel/client_channel.cc +415 -249
  13. data/src/core/ext/filters/client_channel/client_channel.h +42 -18
  14. data/src/core/ext/filters/client_channel/config_selector.h +19 -6
  15. data/src/core/ext/filters/client_channel/health/health_check_client.cc +2 -0
  16. data/src/core/ext/filters/client_channel/health/health_check_client.h +3 -3
  17. data/src/core/ext/filters/client_channel/http_proxy.cc +16 -1
  18. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +7 -8
  19. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +12 -21
  20. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +3 -5
  21. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +734 -0
  22. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +10 -0
  23. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +8 -15
  24. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +3 -6
  25. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +18 -36
  26. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +14 -22
  27. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +2 -9
  28. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +68 -103
  29. data/src/core/ext/filters/client_channel/lb_policy.cc +1 -15
  30. data/src/core/ext/filters/client_channel/lb_policy.h +70 -46
  31. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +1 -3
  32. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc +31 -0
  33. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc +28 -0
  34. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +1 -3
  35. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +7 -2
  36. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +116 -76
  37. data/src/core/ext/filters/client_channel/retry_filter.cc +967 -544
  38. data/src/core/ext/filters/client_channel/retry_service_config.cc +57 -28
  39. data/src/core/ext/filters/client_channel/retry_service_config.h +9 -3
  40. data/src/core/ext/filters/client_channel/service_config_call_data.h +45 -5
  41. data/src/core/ext/filters/client_idle/client_idle_filter.cc +1 -1
  42. data/src/core/ext/filters/http/client/http_client_filter.cc +5 -2
  43. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +2 -1
  44. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +5 -1
  45. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +3 -2
  46. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +1 -1
  47. data/src/core/{lib/event_engine/slice_allocator.cc → ext/transport/chttp2/transport/chttp2_slice_allocator.cc} +23 -16
  48. data/src/core/ext/transport/chttp2/transport/chttp2_slice_allocator.h +74 -0
  49. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +12 -10
  50. data/src/core/ext/transport/chttp2/transport/flow_control.h +1 -1
  51. data/src/core/ext/transport/chttp2/transport/frame_data.cc +4 -4
  52. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +8 -8
  53. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +5 -5
  54. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +639 -752
  55. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +190 -69
  56. data/src/core/ext/transport/chttp2/transport/internal.h +2 -1
  57. data/src/core/ext/transport/chttp2/transport/parsing.cc +72 -56
  58. data/src/core/ext/transport/chttp2/transport/varint.cc +6 -4
  59. data/src/core/ext/transport/inproc/inproc_transport.cc +42 -31
  60. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +56 -35
  61. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +180 -76
  62. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +35 -27
  63. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +97 -48
  64. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +45 -9
  65. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +67 -7
  66. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +66 -9
  67. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +227 -0
  68. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +46 -0
  69. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +121 -0
  70. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +1 -0
  71. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +35 -0
  72. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +90 -0
  73. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +32 -24
  74. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +120 -73
  75. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +4 -2
  76. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +15 -0
  77. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -0
  78. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +171 -0
  79. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +8 -6
  80. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +27 -19
  81. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +1 -0
  82. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +24 -7
  83. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +57 -0
  84. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +29 -17
  85. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +72 -0
  86. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +3 -2
  87. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +4 -0
  88. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +6 -5
  89. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +15 -11
  90. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +85 -43
  91. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +274 -91
  92. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +11 -8
  93. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +30 -13
  94. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +33 -5
  95. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +115 -0
  96. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +60 -0
  97. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +181 -0
  98. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +1 -0
  99. data/src/core/ext/upb-generated/validate/validate.upb.c +82 -66
  100. data/src/core/ext/upb-generated/validate/validate.upb.h +220 -124
  101. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +15 -7
  102. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +53 -52
  103. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +318 -277
  104. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +5 -0
  105. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +437 -410
  106. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +198 -170
  107. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +10 -0
  108. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +9 -8
  109. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +219 -163
  110. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +15 -0
  111. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +59 -0
  112. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +40 -0
  113. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +29 -25
  114. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +52 -0
  115. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
  116. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +135 -125
  117. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +5 -0
  118. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +131 -123
  119. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +90 -0
  120. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
  121. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +32 -24
  122. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +69 -55
  123. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +5 -0
  124. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +684 -664
  125. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +5 -0
  126. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +13 -10
  127. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +13 -10
  128. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +441 -375
  129. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +10 -0
  130. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +122 -114
  131. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +1 -1
  132. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +112 -79
  133. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +5 -0
  134. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +64 -0
  135. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
  136. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +35 -32
  137. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +4 -4
  138. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +182 -160
  139. data/src/core/ext/xds/certificate_provider_store.h +1 -1
  140. data/src/core/ext/xds/xds_api.cc +582 -257
  141. data/src/core/ext/xds/xds_api.h +46 -8
  142. data/src/core/ext/xds/xds_bootstrap.cc +4 -1
  143. data/src/core/ext/xds/xds_client.cc +66 -43
  144. data/src/core/ext/xds/xds_client.h +0 -4
  145. data/src/core/ext/xds/xds_http_filters.cc +3 -2
  146. data/src/core/ext/xds/xds_http_filters.h +3 -0
  147. data/src/core/lib/address_utils/sockaddr_utils.cc +13 -0
  148. data/src/core/lib/address_utils/sockaddr_utils.h +10 -0
  149. data/src/core/lib/channel/call_tracer.h +85 -0
  150. data/src/core/lib/channel/channel_stack.h +1 -1
  151. data/src/core/lib/channel/channelz.h +3 -0
  152. data/src/core/lib/channel/context.h +3 -0
  153. data/src/core/lib/channel/status_util.h +4 -0
  154. data/src/core/lib/compression/stream_compression.h +1 -1
  155. data/src/core/lib/compression/stream_compression_gzip.h +1 -1
  156. data/src/core/lib/compression/stream_compression_identity.h +1 -1
  157. data/src/core/lib/debug/stats.h +1 -1
  158. data/src/core/lib/event_engine/endpoint_config.cc +46 -0
  159. data/src/core/lib/event_engine/endpoint_config_internal.h +42 -0
  160. data/src/core/lib/event_engine/event_engine.cc +50 -0
  161. data/src/core/lib/event_engine/sockaddr.cc +14 -12
  162. data/src/core/lib/event_engine/sockaddr.h +44 -0
  163. data/src/core/lib/gpr/murmur_hash.cc +4 -2
  164. data/src/core/lib/gpr/wrap_memcpy.cc +2 -1
  165. data/src/core/lib/gprpp/manual_constructor.h +1 -1
  166. data/src/core/lib/gprpp/orphanable.h +3 -3
  167. data/src/core/lib/gprpp/status_helper.h +3 -0
  168. data/src/core/lib/gprpp/sync.h +2 -30
  169. data/src/core/lib/iomgr/buffer_list.cc +1 -1
  170. data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +33 -0
  171. data/src/core/lib/iomgr/error.cc +5 -4
  172. data/src/core/lib/iomgr/error.h +1 -1
  173. data/src/core/lib/iomgr/ev_apple.h +1 -1
  174. data/src/core/lib/iomgr/event_engine/closure.cc +54 -0
  175. data/src/core/lib/iomgr/event_engine/closure.h +33 -0
  176. data/src/core/lib/iomgr/event_engine/endpoint.cc +192 -0
  177. data/src/core/lib/iomgr/event_engine/endpoint.h +53 -0
  178. data/src/core/lib/iomgr/event_engine/iomgr.cc +105 -0
  179. data/src/core/lib/iomgr/event_engine/iomgr.h +24 -0
  180. data/src/core/lib/iomgr/event_engine/pollset.cc +87 -0
  181. data/{include/grpc/event_engine/channel_args.h → src/core/lib/iomgr/event_engine/pollset.h} +7 -10
  182. data/src/core/lib/iomgr/event_engine/promise.h +51 -0
  183. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +41 -0
  184. data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +35 -0
  185. data/src/core/lib/iomgr/event_engine/resolver.cc +110 -0
  186. data/src/core/lib/iomgr/event_engine/tcp.cc +263 -0
  187. data/src/core/lib/iomgr/event_engine/timer.cc +57 -0
  188. data/src/core/lib/iomgr/exec_ctx.cc +8 -0
  189. data/src/core/lib/iomgr/exec_ctx.h +3 -4
  190. data/src/core/lib/iomgr/executor/threadpool.cc +2 -3
  191. data/src/core/lib/iomgr/executor/threadpool.h +2 -2
  192. data/src/core/lib/iomgr/iomgr.cc +1 -1
  193. data/src/core/lib/iomgr/iomgr_posix.cc +2 -0
  194. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +40 -10
  195. data/src/core/lib/iomgr/pollset_custom.cc +2 -2
  196. data/src/core/lib/iomgr/pollset_custom.h +3 -1
  197. data/src/core/lib/iomgr/pollset_uv.cc +3 -1
  198. data/src/core/lib/iomgr/pollset_uv.h +5 -1
  199. data/src/core/lib/iomgr/port.h +7 -5
  200. data/src/core/lib/iomgr/python_util.h +1 -1
  201. data/src/core/lib/iomgr/resolve_address.cc +5 -1
  202. data/src/core/lib/iomgr/resolve_address.h +6 -0
  203. data/src/core/lib/iomgr/resource_quota.cc +2 -0
  204. data/src/core/lib/iomgr/sockaddr.h +1 -0
  205. data/src/core/lib/iomgr/socket_mutator.cc +15 -2
  206. data/src/core/lib/iomgr/socket_mutator.h +26 -2
  207. data/src/core/lib/iomgr/socket_utils_common_posix.cc +4 -4
  208. data/src/core/lib/iomgr/socket_utils_posix.h +2 -2
  209. data/src/core/lib/iomgr/tcp_client_posix.cc +7 -2
  210. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -0
  211. data/src/core/lib/iomgr/tcp_posix.cc +42 -39
  212. data/src/core/lib/iomgr/tcp_posix.h +8 -0
  213. data/src/core/lib/iomgr/tcp_server_custom.cc +3 -4
  214. data/src/core/lib/iomgr/tcp_server_posix.cc +7 -0
  215. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +2 -1
  216. data/src/core/lib/iomgr/timer.h +6 -1
  217. data/src/core/lib/iomgr/timer_manager.cc +1 -1
  218. data/src/core/lib/json/json_reader.cc +1 -2
  219. data/src/core/lib/matchers/matchers.cc +8 -20
  220. data/src/core/lib/matchers/matchers.h +2 -1
  221. data/src/core/lib/security/authorization/authorization_engine.h +44 -0
  222. data/src/core/lib/security/authorization/authorization_policy_provider.h +32 -0
  223. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +46 -0
  224. data/src/core/lib/security/authorization/evaluate_args.cc +209 -0
  225. data/src/core/lib/security/authorization/evaluate_args.h +91 -0
  226. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +3 -1
  227. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +49 -0
  228. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +7 -0
  229. data/src/core/lib/security/credentials/tls/tls_utils.cc +32 -0
  230. data/src/core/lib/security/credentials/tls/tls_utils.h +13 -0
  231. data/src/core/lib/security/security_connector/local/local_security_connector.cc +9 -6
  232. data/src/core/lib/security/security_connector/ssl_utils.cc +5 -0
  233. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +6 -18
  234. data/src/core/lib/security/transport/security_handshaker.cc +12 -4
  235. data/src/core/lib/security/transport/server_auth_filter.cc +0 -7
  236. data/src/core/lib/slice/slice.cc +12 -2
  237. data/src/core/lib/slice/slice_internal.h +1 -0
  238. data/src/core/lib/surface/call.cc +26 -7
  239. data/src/core/lib/surface/call.h +11 -0
  240. data/src/core/lib/surface/completion_queue.cc +22 -22
  241. data/src/core/lib/surface/completion_queue.h +1 -1
  242. data/src/core/lib/surface/completion_queue_factory.cc +1 -2
  243. data/src/core/lib/surface/init.cc +1 -3
  244. data/src/core/lib/surface/init.h +10 -1
  245. data/src/core/lib/surface/server.cc +3 -1
  246. data/src/core/lib/surface/server.h +3 -3
  247. data/src/core/lib/surface/version.cc +2 -4
  248. data/src/core/lib/transport/error_utils.cc +2 -2
  249. data/src/core/lib/transport/metadata_batch.cc +13 -2
  250. data/src/core/lib/transport/metadata_batch.h +7 -0
  251. data/src/core/lib/transport/transport.h +2 -0
  252. data/src/core/lib/transport/transport_op_string.cc +1 -1
  253. data/src/core/plugin_registry/grpc_plugin_registry.cc +4 -0
  254. data/src/core/tsi/alts/crypt/gsec.h +2 -0
  255. data/src/ruby/ext/grpc/extconf.rb +2 -0
  256. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +6 -0
  257. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +10 -1
  258. data/src/ruby/lib/grpc/version.rb +1 -1
  259. data/third_party/boringssl-with-bazel/err_data.c +269 -263
  260. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +8 -6
  261. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +4 -0
  262. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +1 -1
  263. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -1
  264. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +9 -0
  265. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +0 -4
  266. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +7 -0
  267. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +87 -121
  268. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +20 -30
  269. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +19 -30
  270. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +1 -4
  271. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +0 -13
  272. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +26 -24
  273. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +10 -7
  274. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +28 -39
  275. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +48 -66
  276. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +4 -5
  277. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +362 -371
  278. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +4 -2
  279. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +2 -2
  280. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +1 -2
  281. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +101 -11
  282. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +3 -0
  283. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +2 -2
  284. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +3 -0
  285. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +1 -1
  286. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +2 -0
  287. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +14 -15
  288. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +53 -73
  289. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +31 -0
  290. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +3 -0
  291. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +3 -0
  292. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +5 -8
  293. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +5 -0
  294. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +3 -0
  295. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +7 -0
  296. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +1 -1
  297. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +5 -8
  298. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +1 -1
  299. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +66 -1
  300. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +40 -9
  301. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +1 -0
  302. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +1 -1
  303. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +6 -2
  304. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +14 -0
  305. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +19 -11
  306. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +325 -0
  307. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +23 -7
  308. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +99 -63
  309. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +139 -109
  310. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +12 -19
  311. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +48 -50
  312. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +451 -435
  313. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +0 -1
  314. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +2 -2
  315. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +1 -1
  316. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +773 -84
  317. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +80 -47
  318. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +24 -19
  319. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +189 -86
  320. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +45 -56
  321. data/third_party/boringssl-with-bazel/src/ssl/internal.h +272 -167
  322. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +2 -2
  323. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +2 -2
  324. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +14 -19
  325. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +34 -102
  326. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +2 -0
  327. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +8 -31
  328. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +3 -0
  329. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +4 -3
  330. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +7 -3
  331. data/third_party/boringssl-with-bazel/src/ssl/t1_lib.cc +576 -648
  332. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +31 -3
  333. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +98 -39
  334. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +141 -94
  335. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +58 -68
  336. data/third_party/xxhash/xxhash.h +77 -195
  337. metadata +81 -39
  338. data/src/core/lib/gpr/arena.h +0 -47
  339. data/third_party/boringssl-with-bazel/src/crypto/hpke/internal.h +0 -267
  340. data/third_party/boringssl-with-bazel/src/crypto/x509/vpm_int.h +0 -71
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 898054e03ccfb8e60f317fed8d55a6e33a53dae1299bfcd175c175c2b4a696ab
4
- data.tar.gz: 132930f0731d00c24ffc6244e05ceeb06b3c16917be0e57d1d3ce67892968cd9
3
+ metadata.gz: 18e1fa5db1d34b00db88443732e9ab881337cd91a8f57063562a41ee26e7e57b
4
+ data.tar.gz: ff23dac20d0aa6708db1b5d6cb7b8416b93e83d8e8a919154b885f4b7bebceb2
5
5
  SHA512:
6
- metadata.gz: 4faa5aeb881a7135b350b473a1ed0a41125030bfdea67fa0489a209c9890d22fff4de3898bf9086f198dad8c6dbc57c701780ce35788bd8747409ca7eefb6ca9
7
- data.tar.gz: 79a144f6ef1e58185f29a303deafd1936ff5a10222c209f390f6b3cb144498110bb7c740185028afbdee4b8aa4d12f2a0702c5d84d444244e20fdd68f2740850
6
+ metadata.gz: 8dc580b40de3574c01c9d1c3e5e863c75c2a4e58959ae069b586f013c2cdcc1021a087c54a9df01fc714c8c6091bd47972e0f446394ae1e7abd2a47b157b83d0
7
+ data.tar.gz: 9ce91a5beccbfeb22a89f5a9d4c22047f718e8a0b800de36121b459340f343b30a0799672ce8ac7c9c14d15d4403e2056c35edd1b46739b276155a4e7fc15f59
data/Makefile CHANGED
@@ -454,9 +454,9 @@ E = @echo
454
454
  Q = @
455
455
  endif
456
456
 
457
- CORE_VERSION = 16.0.0
458
- CPP_VERSION = 1.38.0
459
- CSHARP_VERSION = 2.38.0
457
+ CORE_VERSION = 18.0.0
458
+ CPP_VERSION = 1.40.0
459
+ CSHARP_VERSION = 2.40.0
460
460
 
461
461
  CPPFLAGS_NO_ARCH += $(addprefix -I, $(INCLUDES)) $(addprefix -D, $(DEFINES))
462
462
  CPPFLAGS += $(CPPFLAGS_NO_ARCH) $(ARCH_FLAGS)
@@ -492,7 +492,7 @@ SHARED_EXT_CORE = dll
492
492
  SHARED_EXT_CPP = dll
493
493
  SHARED_EXT_CSHARP = dll
494
494
  SHARED_PREFIX =
495
- SHARED_VERSION_CORE = -16
495
+ SHARED_VERSION_CORE = -18
496
496
  SHARED_VERSION_CPP = -1
497
497
  SHARED_VERSION_CSHARP = -2
498
498
  else ifeq ($(SYSTEM),Darwin)
@@ -891,8 +891,8 @@ $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
891
891
  ifeq ($(SYSTEM),Darwin)
892
892
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
893
893
  else
894
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.16 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
895
- $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.16
894
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libaddress_sorting.so.18 -o $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBADDRESS_SORTING_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
895
+ $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so.18
896
896
  $(Q) ln -sf $(SHARED_PREFIX)address_sorting$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libaddress_sorting$(SHARED_VERSION_CORE).so
897
897
  endif
898
898
  endif
@@ -1032,8 +1032,8 @@ $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGPR_OB
1032
1032
  ifeq ($(SYSTEM),Darwin)
1033
1033
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1034
1034
  else
1035
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.16 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1036
- $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.16
1035
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgpr.so.18 -o $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGPR_OBJS) $(LIBDIR)/$(CONFIG)/libupb.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1036
+ $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so.18
1037
1037
  $(Q) ln -sf $(SHARED_PREFIX)gpr$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgpr$(SHARED_VERSION_CORE).so
1038
1038
  endif
1039
1039
  endif
@@ -1083,10 +1083,12 @@ LIBGRPC_SRC = \
1083
1083
  src/core/ext/filters/client_channel/proxy_mapper_registry.cc \
1084
1084
  src/core/ext/filters/client_channel/resolver.cc \
1085
1085
  src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
1086
+ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc \
1086
1087
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc \
1087
1088
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
1088
1089
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
1089
1090
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \
1091
+ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc \
1090
1092
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc \
1091
1093
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
1092
1094
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
@@ -1134,6 +1136,7 @@ LIBGRPC_SRC = \
1134
1136
  src/core/ext/transport/chttp2/transport/bin_decoder.cc \
1135
1137
  src/core/ext/transport/chttp2/transport/bin_encoder.cc \
1136
1138
  src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \
1139
+ src/core/ext/transport/chttp2/transport/chttp2_slice_allocator.cc \
1137
1140
  src/core/ext/transport/chttp2/transport/chttp2_transport.cc \
1138
1141
  src/core/ext/transport/chttp2/transport/context_list.cc \
1139
1142
  src/core/ext/transport/chttp2/transport/flow_control.cc \
@@ -1176,14 +1179,17 @@ LIBGRPC_SRC = \
1176
1179
  src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c \
1177
1180
  src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c \
1178
1181
  src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c \
1182
+ src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c \
1179
1183
  src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c \
1180
1184
  src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c \
1185
+ src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c \
1181
1186
  src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c \
1182
1187
  src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c \
1183
1188
  src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c \
1184
1189
  src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c \
1185
1190
  src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c \
1186
1191
  src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c \
1192
+ src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c \
1187
1193
  src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c \
1188
1194
  src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c \
1189
1195
  src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c \
@@ -1210,6 +1216,7 @@ LIBGRPC_SRC = \
1210
1216
  src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c \
1211
1217
  src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c \
1212
1218
  src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c \
1219
+ src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c \
1213
1220
  src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c \
1214
1221
  src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c \
1215
1222
  src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c \
@@ -1263,14 +1270,17 @@ LIBGRPC_SRC = \
1263
1270
  src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c \
1264
1271
  src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c \
1265
1272
  src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c \
1273
+ src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c \
1266
1274
  src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c \
1267
1275
  src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c \
1276
+ src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c \
1268
1277
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c \
1269
1278
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c \
1270
1279
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c \
1271
1280
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c \
1272
1281
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c \
1273
1282
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c \
1283
+ src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c \
1274
1284
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c \
1275
1285
  src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c \
1276
1286
  src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c \
@@ -1296,6 +1306,7 @@ LIBGRPC_SRC = \
1296
1306
  src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c \
1297
1307
  src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c \
1298
1308
  src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c \
1309
+ src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c \
1299
1310
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c \
1300
1311
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c \
1301
1312
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c \
@@ -1367,7 +1378,8 @@ LIBGRPC_SRC = \
1367
1378
  src/core/lib/debug/stats.cc \
1368
1379
  src/core/lib/debug/stats_data.cc \
1369
1380
  src/core/lib/debug/trace.cc \
1370
- src/core/lib/event_engine/slice_allocator.cc \
1381
+ src/core/lib/event_engine/endpoint_config.cc \
1382
+ src/core/lib/event_engine/event_engine.cc \
1371
1383
  src/core/lib/event_engine/sockaddr.cc \
1372
1384
  src/core/lib/http/format_request.cc \
1373
1385
  src/core/lib/http/httpcli.cc \
@@ -1380,6 +1392,7 @@ LIBGRPC_SRC = \
1380
1392
  src/core/lib/iomgr/dualstack_socket_posix.cc \
1381
1393
  src/core/lib/iomgr/endpoint.cc \
1382
1394
  src/core/lib/iomgr/endpoint_cfstream.cc \
1395
+ src/core/lib/iomgr/endpoint_pair_event_engine.cc \
1383
1396
  src/core/lib/iomgr/endpoint_pair_posix.cc \
1384
1397
  src/core/lib/iomgr/endpoint_pair_uv.cc \
1385
1398
  src/core/lib/iomgr/endpoint_pair_windows.cc \
@@ -1391,6 +1404,14 @@ LIBGRPC_SRC = \
1391
1404
  src/core/lib/iomgr/ev_poll_posix.cc \
1392
1405
  src/core/lib/iomgr/ev_posix.cc \
1393
1406
  src/core/lib/iomgr/ev_windows.cc \
1407
+ src/core/lib/iomgr/event_engine/closure.cc \
1408
+ src/core/lib/iomgr/event_engine/endpoint.cc \
1409
+ src/core/lib/iomgr/event_engine/iomgr.cc \
1410
+ src/core/lib/iomgr/event_engine/pollset.cc \
1411
+ src/core/lib/iomgr/event_engine/resolved_address_internal.cc \
1412
+ src/core/lib/iomgr/event_engine/resolver.cc \
1413
+ src/core/lib/iomgr/event_engine/tcp.cc \
1414
+ src/core/lib/iomgr/event_engine/timer.cc \
1394
1415
  src/core/lib/iomgr/exec_ctx.cc \
1395
1416
  src/core/lib/iomgr/executor.cc \
1396
1417
  src/core/lib/iomgr/executor/mpmcqueue.cc \
@@ -1470,6 +1491,8 @@ LIBGRPC_SRC = \
1470
1491
  src/core/lib/json/json_util.cc \
1471
1492
  src/core/lib/json/json_writer.cc \
1472
1493
  src/core/lib/matchers/matchers.cc \
1494
+ src/core/lib/security/authorization/authorization_policy_provider_vtable.cc \
1495
+ src/core/lib/security/authorization/evaluate_args.cc \
1473
1496
  src/core/lib/security/context/security_context.cc \
1474
1497
  src/core/lib/security/credentials/alts/alts_credentials.cc \
1475
1498
  src/core/lib/security/credentials/alts/check_gcp_environment.cc \
@@ -1597,7 +1620,7 @@ PUBLIC_HEADERS_C += \
1597
1620
  include/grpc/byte_buffer_reader.h \
1598
1621
  include/grpc/census.h \
1599
1622
  include/grpc/compression.h \
1600
- include/grpc/event_engine/channel_args.h \
1623
+ include/grpc/event_engine/endpoint_config.h \
1601
1624
  include/grpc/event_engine/event_engine.h \
1602
1625
  include/grpc/event_engine/port.h \
1603
1626
  include/grpc/event_engine/slice_allocator.h \
@@ -1648,8 +1671,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBGRPC_
1648
1671
  ifeq ($(SYSTEM),Darwin)
1649
1672
  $(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)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1650
1673
  else
1651
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.16 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1652
- $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.16
1674
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(OPENSSL_MERGE_LIBS) $(LDLIBS_SECURE) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1675
+ $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so.18
1653
1676
  $(Q) ln -sf $(SHARED_PREFIX)grpc$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc$(SHARED_VERSION_CORE).so
1654
1677
  endif
1655
1678
  endif
@@ -1696,8 +1719,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE):
1696
1719
  ifeq ($(SYSTEM),Darwin)
1697
1720
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1698
1721
  else
1699
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.16 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1700
- $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so.16
1722
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_csharp_ext.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_CSHARP_EXT_OBJS) $(LIBDIR)/$(CONFIG)/libgrpc.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
1723
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so.18
1701
1724
  $(Q) ln -sf $(SHARED_PREFIX)grpc_csharp_ext$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_csharp_ext$(SHARED_VERSION_CORE).so
1702
1725
  endif
1703
1726
  endif
@@ -1735,6 +1758,7 @@ LIBGRPC_UNSECURE_SRC = \
1735
1758
  src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc \
1736
1759
  src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc \
1737
1760
  src/core/ext/filters/client_channel/lb_policy/priority/priority.cc \
1761
+ src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc \
1738
1762
  src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc \
1739
1763
  src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc \
1740
1764
  src/core/ext/filters/client_channel/lb_policy_registry.cc \
@@ -1742,10 +1766,12 @@ LIBGRPC_UNSECURE_SRC = \
1742
1766
  src/core/ext/filters/client_channel/proxy_mapper_registry.cc \
1743
1767
  src/core/ext/filters/client_channel/resolver.cc \
1744
1768
  src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc \
1769
+ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc \
1745
1770
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc \
1746
1771
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc \
1747
1772
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc \
1748
1773
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc \
1774
+ src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc \
1749
1775
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc \
1750
1776
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc \
1751
1777
  src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc \
@@ -1789,6 +1815,7 @@ LIBGRPC_UNSECURE_SRC = \
1789
1815
  src/core/ext/transport/chttp2/transport/bin_decoder.cc \
1790
1816
  src/core/ext/transport/chttp2/transport/bin_encoder.cc \
1791
1817
  src/core/ext/transport/chttp2/transport/chttp2_plugin.cc \
1818
+ src/core/ext/transport/chttp2/transport/chttp2_slice_allocator.cc \
1792
1819
  src/core/ext/transport/chttp2/transport/chttp2_transport.cc \
1793
1820
  src/core/ext/transport/chttp2/transport/context_list.cc \
1794
1821
  src/core/ext/transport/chttp2/transport/flow_control.cc \
@@ -1839,7 +1866,8 @@ LIBGRPC_UNSECURE_SRC = \
1839
1866
  src/core/lib/debug/stats.cc \
1840
1867
  src/core/lib/debug/stats_data.cc \
1841
1868
  src/core/lib/debug/trace.cc \
1842
- src/core/lib/event_engine/slice_allocator.cc \
1869
+ src/core/lib/event_engine/endpoint_config.cc \
1870
+ src/core/lib/event_engine/event_engine.cc \
1843
1871
  src/core/lib/event_engine/sockaddr.cc \
1844
1872
  src/core/lib/http/format_request.cc \
1845
1873
  src/core/lib/http/httpcli.cc \
@@ -1851,6 +1879,7 @@ LIBGRPC_UNSECURE_SRC = \
1851
1879
  src/core/lib/iomgr/dualstack_socket_posix.cc \
1852
1880
  src/core/lib/iomgr/endpoint.cc \
1853
1881
  src/core/lib/iomgr/endpoint_cfstream.cc \
1882
+ src/core/lib/iomgr/endpoint_pair_event_engine.cc \
1854
1883
  src/core/lib/iomgr/endpoint_pair_posix.cc \
1855
1884
  src/core/lib/iomgr/endpoint_pair_uv.cc \
1856
1885
  src/core/lib/iomgr/endpoint_pair_windows.cc \
@@ -1862,6 +1891,14 @@ LIBGRPC_UNSECURE_SRC = \
1862
1891
  src/core/lib/iomgr/ev_poll_posix.cc \
1863
1892
  src/core/lib/iomgr/ev_posix.cc \
1864
1893
  src/core/lib/iomgr/ev_windows.cc \
1894
+ src/core/lib/iomgr/event_engine/closure.cc \
1895
+ src/core/lib/iomgr/event_engine/endpoint.cc \
1896
+ src/core/lib/iomgr/event_engine/iomgr.cc \
1897
+ src/core/lib/iomgr/event_engine/pollset.cc \
1898
+ src/core/lib/iomgr/event_engine/resolved_address_internal.cc \
1899
+ src/core/lib/iomgr/event_engine/resolver.cc \
1900
+ src/core/lib/iomgr/event_engine/tcp.cc \
1901
+ src/core/lib/iomgr/event_engine/timer.cc \
1865
1902
  src/core/lib/iomgr/exec_ctx.cc \
1866
1903
  src/core/lib/iomgr/executor.cc \
1867
1904
  src/core/lib/iomgr/executor/mpmcqueue.cc \
@@ -1940,6 +1977,7 @@ LIBGRPC_UNSECURE_SRC = \
1940
1977
  src/core/lib/json/json_reader.cc \
1941
1978
  src/core/lib/json/json_util.cc \
1942
1979
  src/core/lib/json/json_writer.cc \
1980
+ src/core/lib/security/authorization/authorization_policy_provider_null_vtable.cc \
1943
1981
  src/core/lib/slice/b64.cc \
1944
1982
  src/core/lib/slice/percent_encoding.cc \
1945
1983
  src/core/lib/slice/slice.cc \
@@ -1988,7 +2026,7 @@ PUBLIC_HEADERS_C += \
1988
2026
  include/grpc/byte_buffer_reader.h \
1989
2027
  include/grpc/census.h \
1990
2028
  include/grpc/compression.h \
1991
- include/grpc/event_engine/channel_args.h \
2029
+ include/grpc/event_engine/endpoint_config.h \
1992
2030
  include/grpc/event_engine/event_engine.h \
1993
2031
  include/grpc/event_engine/port.h \
1994
2032
  include/grpc/event_engine/slice_allocator.h \
@@ -2028,8 +2066,8 @@ $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $
2028
2066
  ifeq ($(SYSTEM),Darwin)
2029
2067
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2030
2068
  else
2031
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.16 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2032
- $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.16
2069
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libgrpc_unsecure.so.18 -o $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBGRPC_UNSECURE_OBJS) $(LIBDIR)/$(CONFIG)/libgpr.a $(LIBDIR)/$(CONFIG)/libaddress_sorting.a $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2070
+ $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so.18
2033
2071
  $(Q) ln -sf $(SHARED_PREFIX)grpc_unsecure$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libgrpc_unsecure$(SHARED_VERSION_CORE).so
2034
2072
  endif
2035
2073
  endif
@@ -2424,8 +2462,8 @@ $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE): $(LIBUPB_OB
2424
2462
  ifeq ($(SYSTEM),Darwin)
2425
2463
  $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -install_name $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) -dynamiclib -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2426
2464
  else
2427
- $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.16 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2428
- $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.16
2465
+ $(Q) $(LDXX) $(LDFLAGS) -L$(LIBDIR)/$(CONFIG) -shared -Wl,-soname,libupb.so.18 -o $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBUPB_OBJS) $(ZLIB_MERGE_LIBS) $(CARES_MERGE_LIBS) $(ADDRESS_SORTING_MERGE_LIBS) $(RE2_MERGE_LIBS) $(UPB_MERGE_LIBS) $(GRPC_ABSEIL_MERGE_LIBS) $(LDLIBS)
2466
+ $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so.18
2429
2467
  $(Q) ln -sf $(SHARED_PREFIX)upb$(SHARED_VERSION_CORE).$(SHARED_EXT_CORE) $(LIBDIR)/$(CONFIG)/libupb$(SHARED_VERSION_CORE).so
2430
2468
  endif
2431
2469
  endif
@@ -2669,7 +2707,6 @@ ifneq ($(OPENSSL_DEP),)
2669
2707
  # installing headers to their final destination on the drive. We need this
2670
2708
  # otherwise parallel compilation will fail if a source is compiled first.
2671
2709
  src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc: $(OPENSSL_DEP)
2672
- src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc: $(OPENSSL_DEP)
2673
2710
  src/core/ext/filters/client_channel/lb_policy/xds/cds.cc: $(OPENSSL_DEP)
2674
2711
  src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc: $(OPENSSL_DEP)
2675
2712
  src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc: $(OPENSSL_DEP)
@@ -2698,14 +2735,17 @@ src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c: $(OPENSSL_DE
2698
2735
  src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c: $(OPENSSL_DEP)
2699
2736
  src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c: $(OPENSSL_DEP)
2700
2737
  src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c: $(OPENSSL_DEP)
2738
+ src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c: $(OPENSSL_DEP)
2701
2739
  src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c: $(OPENSSL_DEP)
2702
2740
  src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c: $(OPENSSL_DEP)
2741
+ src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c: $(OPENSSL_DEP)
2703
2742
  src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c: $(OPENSSL_DEP)
2704
2743
  src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c: $(OPENSSL_DEP)
2705
2744
  src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c: $(OPENSSL_DEP)
2706
2745
  src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c: $(OPENSSL_DEP)
2707
2746
  src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c: $(OPENSSL_DEP)
2708
2747
  src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c: $(OPENSSL_DEP)
2748
+ src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c: $(OPENSSL_DEP)
2709
2749
  src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c: $(OPENSSL_DEP)
2710
2750
  src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c: $(OPENSSL_DEP)
2711
2751
  src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c: $(OPENSSL_DEP)
@@ -2732,6 +2772,7 @@ src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c: $(OPENSSL_DEP)
2732
2772
  src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c: $(OPENSSL_DEP)
2733
2773
  src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c: $(OPENSSL_DEP)
2734
2774
  src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c: $(OPENSSL_DEP)
2775
+ src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c: $(OPENSSL_DEP)
2735
2776
  src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c: $(OPENSSL_DEP)
2736
2777
  src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c: $(OPENSSL_DEP)
2737
2778
  src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c: $(OPENSSL_DEP)
@@ -2781,14 +2822,17 @@ src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c: $(OP
2781
2822
  src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c: $(OPENSSL_DEP)
2782
2823
  src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c: $(OPENSSL_DEP)
2783
2824
  src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c: $(OPENSSL_DEP)
2825
+ src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c: $(OPENSSL_DEP)
2784
2826
  src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c: $(OPENSSL_DEP)
2785
2827
  src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c: $(OPENSSL_DEP)
2828
+ src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c: $(OPENSSL_DEP)
2786
2829
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c: $(OPENSSL_DEP)
2787
2830
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c: $(OPENSSL_DEP)
2788
2831
  src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c: $(OPENSSL_DEP)
2789
2832
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c: $(OPENSSL_DEP)
2790
2833
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c: $(OPENSSL_DEP)
2791
2834
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c: $(OPENSSL_DEP)
2835
+ src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c: $(OPENSSL_DEP)
2792
2836
  src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c: $(OPENSSL_DEP)
2793
2837
  src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c: $(OPENSSL_DEP)
2794
2838
  src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c: $(OPENSSL_DEP)
@@ -2814,6 +2858,7 @@ src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c: $(OPEN
2814
2858
  src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c: $(OPENSSL_DEP)
2815
2859
  src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c: $(OPENSSL_DEP)
2816
2860
  src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c: $(OPENSSL_DEP)
2861
+ src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c: $(OPENSSL_DEP)
2817
2862
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c: $(OPENSSL_DEP)
2818
2863
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c: $(OPENSSL_DEP)
2819
2864
  src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c: $(OPENSSL_DEP)
@@ -2863,6 +2908,8 @@ src/core/ext/xds/xds_http_filters.cc: $(OPENSSL_DEP)
2863
2908
  src/core/ext/xds/xds_server_config_fetcher.cc: $(OPENSSL_DEP)
2864
2909
  src/core/lib/http/httpcli_security_connector.cc: $(OPENSSL_DEP)
2865
2910
  src/core/lib/matchers/matchers.cc: $(OPENSSL_DEP)
2911
+ src/core/lib/security/authorization/authorization_policy_provider_vtable.cc: $(OPENSSL_DEP)
2912
+ src/core/lib/security/authorization/evaluate_args.cc: $(OPENSSL_DEP)
2866
2913
  src/core/lib/security/context/security_context.cc: $(OPENSSL_DEP)
2867
2914
  src/core/lib/security/credentials/alts/alts_credentials.cc: $(OPENSSL_DEP)
2868
2915
  src/core/lib/security/credentials/alts/check_gcp_environment.cc: $(OPENSSL_DEP)
@@ -0,0 +1,48 @@
1
+ // Copyright 2021 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_EVENT_ENGINE_ENDPOINT_CONFIG_H
15
+ #define GRPC_EVENT_ENGINE_ENDPOINT_CONFIG_H
16
+
17
+ #include <grpc/support/port_platform.h>
18
+
19
+ #include <string>
20
+
21
+ #include "absl/strings/string_view.h"
22
+ #include "absl/types/variant.h"
23
+
24
+ namespace grpc_event_engine {
25
+ namespace experimental {
26
+
27
+ /// A set of parameters used to configure an endpoint, either when initiating a
28
+ /// new connection on the client side or when listening for incoming connections
29
+ /// on the server side. An EndpointConfig contains a set of zero or more
30
+ /// Settings. Each setting has a unique name, which can be used to fetch that
31
+ /// Setting via the Get() method. Each Setting has a value, which can be an
32
+ /// integer, string, or void pointer. Each EE impl should define the set of
33
+ /// Settings that it supports being passed into it, along with the corresponding
34
+ /// type.
35
+ class EndpointConfig {
36
+ public:
37
+ virtual ~EndpointConfig() = default;
38
+ using Setting = absl::variant<absl::monostate, int, absl::string_view, void*>;
39
+ /// Returns an EndpointConfig Setting. If there is no Setting associated with
40
+ /// \a key in the EndpointConfig, an \a absl::monostate type will be
41
+ /// returned. Caller does not take ownership of resulting value.
42
+ virtual Setting Get(absl::string_view key) const = 0;
43
+ };
44
+
45
+ } // namespace experimental
46
+ } // namespace grpc_event_engine
47
+
48
+ #endif // GRPC_EVENT_ENGINE_ENDPOINT_CONFIG_H
@@ -23,13 +23,11 @@
23
23
  #include "absl/status/statusor.h"
24
24
  #include "absl/time/time.h"
25
25
 
26
- #include "grpc/event_engine/channel_args.h"
26
+ #include "grpc/event_engine/endpoint_config.h"
27
27
  #include "grpc/event_engine/port.h"
28
28
  #include "grpc/event_engine/slice_allocator.h"
29
29
 
30
- // TODO(hork): explicitly define lifetimes and ownership of all objects.
31
30
  // TODO(hork): Define the Endpoint::Write metrics collection system
32
-
33
31
  namespace grpc_event_engine {
34
32
  namespace experimental {
35
33
 
@@ -82,7 +80,7 @@ class EventEngine {
82
80
  using Callback = std::function<void(absl::Status)>;
83
81
  /// A callback handle, used to cancel a callback.
84
82
  struct TaskHandle {
85
- intptr_t key;
83
+ intptr_t keys[2];
86
84
  };
87
85
  /// A thin wrapper around a platform-specific sockaddr type. A sockaddr struct
88
86
  /// exists on all platforms that gRPC supports.
@@ -96,12 +94,14 @@ class EventEngine {
96
94
  static constexpr socklen_t MAX_SIZE_BYTES = 128;
97
95
 
98
96
  ResolvedAddress(const sockaddr* address, socklen_t size);
97
+ ResolvedAddress() = default;
98
+ ResolvedAddress(const ResolvedAddress&) = default;
99
99
  const struct sockaddr* address() const;
100
100
  socklen_t size() const;
101
101
 
102
102
  private:
103
103
  char address_[MAX_SIZE_BYTES];
104
- socklen_t size_;
104
+ socklen_t size_ = 0;
105
105
  };
106
106
 
107
107
  /// An Endpoint represents one end of a connection between a gRPC client and
@@ -127,10 +127,8 @@ class EventEngine {
127
127
  ///
128
128
  /// For failed read operations, implementations should pass the appropriate
129
129
  /// statuses to \a on_read. For example, callbacks might expect to receive
130
- /// DEADLINE_EXCEEDED when the deadline is exceeded, and CANCELLED on
131
- /// endpoint shutdown.
132
- virtual void Read(Callback on_read, SliceBuffer* buffer,
133
- absl::Time deadline) = 0;
130
+ /// CANCELLED on endpoint shutdown.
131
+ virtual void Read(Callback on_read, SliceBuffer* buffer) = 0;
134
132
  /// Write data out on the connection.
135
133
  ///
136
134
  /// \a on_writable is called when the connection is ready for more data. The
@@ -140,18 +138,13 @@ class EventEngine {
140
138
  ///
141
139
  /// For failed write operations, implementations should pass the appropriate
142
140
  /// statuses to \a on_writable. For example, callbacks might expect to
143
- /// receive DEADLINE_EXCEEDED when the deadline is exceeded, and CANCELLED
144
- /// on endpoint shutdown.
145
- virtual void Write(Callback on_writable, SliceBuffer* data,
146
- absl::Time deadline) = 0;
147
- // TODO(hork): define status codes for the callback
148
- // TODO(hork): define cleanup operations, lifetimes, responsibilities.
149
- virtual void Close(Callback on_close) = 0;
141
+ /// receive CANCELLED on endpoint shutdown.
142
+ virtual void Write(Callback on_writable, SliceBuffer* data) = 0;
150
143
  /// These methods return an address in the format described in DNSResolver.
151
144
  /// The returned values are owned by the Endpoint and are expected to remain
152
145
  /// valid for the life of the Endpoint.
153
- virtual const ResolvedAddress* GetPeerAddress() const = 0;
154
- virtual const ResolvedAddress* GetLocalAddress() const = 0;
146
+ virtual const ResolvedAddress& GetPeerAddress() const = 0;
147
+ virtual const ResolvedAddress& GetLocalAddress() const = 0;
155
148
  };
156
149
 
157
150
  /// Called when a new connection is established.
@@ -199,8 +192,8 @@ class EventEngine {
199
192
  /// for Endpoint construction.
200
193
  virtual absl::StatusOr<std::unique_ptr<Listener>> CreateListener(
201
194
  Listener::AcceptCallback on_accept, Callback on_shutdown,
202
- const ChannelArgs& args,
203
- SliceAllocatorFactory slice_allocator_factory) = 0;
195
+ const EndpointConfig& args,
196
+ std::unique_ptr<SliceAllocatorFactory> slice_allocator_factory) = 0;
204
197
  /// Creates a client network connection to a remote network listener.
205
198
  ///
206
199
  /// \a Connect may return an error status immediately if there was a failure
@@ -216,8 +209,8 @@ class EventEngine {
216
209
  /// SliceAllocator API for more information.
217
210
  virtual absl::Status Connect(OnConnectCallback on_connect,
218
211
  const ResolvedAddress& addr,
219
- const ChannelArgs& args,
220
- SliceAllocator slice_allocator,
212
+ const EndpointConfig& args,
213
+ std::unique_ptr<SliceAllocator> slice_allocator,
221
214
  absl::Time deadline) = 0;
222
215
 
223
216
  /// The DNSResolver that provides asynchronous resolution.
@@ -225,7 +218,7 @@ class EventEngine {
225
218
  public:
226
219
  /// A task handle for DNS Resolution requests.
227
220
  struct LookupTaskHandle {
228
- intptr_t key;
221
+ intptr_t key[2];
229
222
  };
230
223
  /// A DNS SRV record type.
231
224
  struct SRVRecord {
@@ -280,13 +273,16 @@ class EventEngine {
280
273
 
281
274
  virtual ~EventEngine() = default;
282
275
 
276
+ // TODO(nnoble): consider whether we can remove this method before we
277
+ // de-experimentalize this API.
278
+ virtual bool IsWorkerThread() = 0;
279
+
283
280
  // TODO(hork): define return status codes
284
281
  /// Retrieves an instance of a DNSResolver.
285
282
  virtual absl::StatusOr<std::unique_ptr<DNSResolver>> GetDNSResolver() = 0;
286
283
 
287
284
  /// Intended for future expansion of Task run functionality.
288
285
  struct RunOptions {};
289
- // TODO(hork): consider recommendation to make TaskHandle an output arg
290
286
  /// Run a callback as soon as possible.
291
287
  ///
292
288
  /// The \a fn callback's \a status argument is used to indicate whether it was
@@ -324,11 +320,9 @@ class EventEngine {
324
320
  virtual void Shutdown(Callback on_shutdown_complete) = 0;
325
321
  };
326
322
 
327
- /// Lazily instantiate and return a default global EventEngine instance if no
328
- /// custom instance is provided. If a custom EventEngine is provided for every
329
- /// channel/server via ChannelArgs, this method should never be called, and the
330
- /// default instance will never be instantiated.
331
- std::shared_ptr<EventEngine> GetDefaultEventEngine();
323
+ // TODO(hork): finalize the API and document it. We need to firm up the story
324
+ // around user-provided EventEngines.
325
+ std::shared_ptr<EventEngine> DefaultEventEngineFactory();
332
326
 
333
327
  } // namespace experimental
334
328
  } // namespace grpc_event_engine