grpc 1.42.0 → 1.45.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 (1465) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +405 -221
  3. data/include/grpc/event_engine/event_engine.h +37 -13
  4. data/include/grpc/event_engine/internal/memory_allocator_impl.h +1 -31
  5. data/include/grpc/event_engine/memory_allocator.h +27 -11
  6. data/include/grpc/event_engine/memory_request.h +57 -0
  7. data/include/grpc/grpc.h +40 -14
  8. data/include/grpc/grpc_posix.h +20 -19
  9. data/include/grpc/grpc_security.h +312 -195
  10. data/include/grpc/grpc_security_constants.h +1 -14
  11. data/include/grpc/impl/codegen/compression_types.h +0 -2
  12. data/include/grpc/impl/codegen/grpc_types.h +17 -8
  13. data/include/grpc/impl/codegen/port_platform.h +7 -3
  14. data/include/grpc/impl/codegen/slice.h +4 -1
  15. data/include/grpc/slice.h +0 -11
  16. data/src/core/ext/filters/client_channel/backend_metric.cc +9 -10
  17. data/src/core/ext/filters/client_channel/backend_metric.h +4 -3
  18. data/src/core/ext/filters/client_channel/backup_poller.cc +12 -8
  19. data/src/core/ext/filters/client_channel/channel_connectivity.cc +5 -5
  20. data/src/core/ext/filters/client_channel/client_channel.cc +213 -156
  21. data/src/core/ext/filters/client_channel/client_channel.h +43 -41
  22. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +6 -13
  23. data/src/core/ext/filters/client_channel/config_selector.h +4 -4
  24. data/src/core/ext/filters/client_channel/connector.h +1 -1
  25. data/src/core/ext/filters/client_channel/dynamic_filters.cc +5 -6
  26. data/src/core/ext/filters/client_channel/dynamic_filters.h +2 -2
  27. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +2 -22
  28. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +3 -15
  29. data/src/core/ext/filters/client_channel/health/health_check_client.cc +32 -31
  30. data/src/core/ext/filters/client_channel/health/health_check_client.h +5 -5
  31. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +22 -27
  32. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +4 -3
  33. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +6 -5
  34. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +4 -7
  35. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +100 -81
  36. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +0 -7
  37. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +1 -1
  38. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +1 -2
  39. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +2 -2
  40. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +15 -15
  41. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +4 -4
  42. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +50 -32
  43. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +28 -19
  44. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +122 -71
  45. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +161 -112
  46. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +62 -61
  47. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +16 -11
  48. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +13 -7
  49. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +55 -99
  50. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +1 -1
  51. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +147 -70
  52. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +5 -3
  53. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +114 -206
  54. data/src/core/ext/filters/client_channel/lb_policy.cc +15 -14
  55. data/src/core/ext/filters/client_channel/lb_policy.h +94 -62
  56. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +10 -16
  57. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +261 -122
  58. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +22 -12
  59. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +19 -15
  60. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +31 -50
  61. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +136 -226
  62. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +25 -32
  63. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +1 -1
  64. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +122 -115
  65. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +18 -17
  66. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +2 -1
  67. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +84 -68
  68. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +40 -39
  69. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +390 -373
  70. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +8 -11
  71. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +13 -7
  72. data/src/core/ext/filters/client_channel/retry_filter.cc +236 -169
  73. data/src/core/ext/filters/client_channel/retry_service_config.cc +16 -18
  74. data/src/core/ext/filters/client_channel/retry_service_config.h +18 -12
  75. data/src/core/ext/filters/client_channel/retry_throttle.cc +9 -23
  76. data/src/core/ext/filters/client_channel/retry_throttle.h +11 -5
  77. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +8 -7
  78. data/src/core/ext/filters/client_channel/subchannel.cc +49 -56
  79. data/src/core/ext/filters/client_channel/subchannel.h +7 -7
  80. data/src/core/ext/filters/client_idle/client_idle_filter.cc +96 -159
  81. data/src/core/ext/filters/client_idle/idle_filter_state.h +2 -2
  82. data/src/core/ext/filters/deadline/deadline_filter.cc +15 -14
  83. data/src/core/ext/filters/deadline/deadline_filter.h +3 -2
  84. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +53 -58
  85. data/src/core/ext/filters/fault_injection/service_config_parser.cc +11 -13
  86. data/src/core/ext/filters/fault_injection/service_config_parser.h +10 -4
  87. data/src/core/ext/filters/http/client/http_client_filter.cc +70 -153
  88. data/src/core/ext/filters/http/client_authority_filter.cc +28 -87
  89. data/src/core/ext/filters/http/client_authority_filter.h +23 -5
  90. data/src/core/ext/filters/http/http_filters_plugin.cc +14 -17
  91. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +43 -140
  92. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +15 -27
  93. data/src/core/ext/filters/http/server/http_server_filter.cc +60 -161
  94. data/src/core/ext/filters/max_age/max_age_filter.cc +46 -40
  95. data/src/core/ext/filters/message_size/message_size_filter.cc +27 -35
  96. data/src/core/ext/filters/message_size/message_size_filter.h +10 -3
  97. data/src/core/ext/filters/rbac/rbac_filter.cc +162 -0
  98. data/src/core/ext/filters/rbac/rbac_filter.h +76 -0
  99. data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +606 -0
  100. data/src/core/ext/filters/rbac/rbac_service_config_parser.h +75 -0
  101. data/src/core/ext/filters/server_config_selector/server_config_selector.cc +67 -0
  102. data/src/core/ext/filters/server_config_selector/server_config_selector.h +71 -0
  103. data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +271 -0
  104. data/src/core/ext/{transport/chttp2/transport/hpack_utils.h → filters/server_config_selector/server_config_selector_filter.h} +9 -7
  105. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +238 -20
  106. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +0 -2
  107. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +283 -106
  108. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +204 -291
  109. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +9 -4
  110. data/src/core/ext/transport/chttp2/transport/context_list.cc +2 -3
  111. data/src/core/ext/transport/chttp2/transport/context_list.h +2 -3
  112. data/src/core/ext/transport/chttp2/transport/flow_control.cc +10 -10
  113. data/src/core/ext/transport/chttp2/transport/flow_control.h +5 -5
  114. data/src/core/ext/transport/chttp2/transport/frame_data.cc +0 -1
  115. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +4 -4
  116. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +5 -0
  117. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +365 -240
  118. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +87 -145
  119. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +1 -1
  120. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +2 -0
  121. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +74 -149
  122. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +0 -1
  123. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +94 -1
  124. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +2 -24
  125. data/src/core/ext/transport/chttp2/transport/internal.h +12 -41
  126. data/src/core/ext/transport/chttp2/transport/parsing.cc +3 -9
  127. data/src/core/ext/transport/chttp2/transport/writing.cc +62 -128
  128. data/src/core/ext/transport/inproc/inproc_plugin.cc +0 -4
  129. data/src/core/ext/transport/inproc/inproc_transport.cc +42 -81
  130. data/src/core/ext/transport/inproc/inproc_transport.h +1 -4
  131. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +114 -0
  132. data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +402 -0
  133. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +119 -0
  134. data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +453 -0
  135. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +243 -209
  136. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +799 -574
  137. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +56 -0
  138. data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +138 -0
  139. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +62 -0
  140. data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +146 -0
  141. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +46 -0
  142. data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +106 -0
  143. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +43 -0
  144. data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +93 -0
  145. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +43 -0
  146. data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +88 -0
  147. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +103 -0
  148. data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +466 -0
  149. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +48 -0
  150. data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +95 -0
  151. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +43 -0
  152. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +19 -0
  153. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +30 -4
  154. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +33 -18
  155. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +143 -116
  156. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +422 -316
  157. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +231 -199
  158. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +788 -570
  159. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +43 -28
  160. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +116 -78
  161. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +308 -271
  162. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +955 -661
  163. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +20 -7
  164. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +34 -22
  165. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +40 -27
  166. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +128 -78
  167. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +290 -0
  168. data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +1122 -0
  169. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +72 -53
  170. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +222 -158
  171. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +20 -7
  172. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +34 -22
  173. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +213 -176
  174. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +692 -498
  175. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +62 -45
  176. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +179 -129
  177. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +19 -6
  178. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +26 -18
  179. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +31 -17
  180. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +75 -52
  181. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +58 -0
  182. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +138 -0
  183. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +143 -117
  184. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +450 -328
  185. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +111 -91
  186. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +366 -263
  187. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +21 -8
  188. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +37 -25
  189. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +184 -125
  190. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +676 -344
  191. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +17 -4
  192. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +26 -16
  193. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +27 -13
  194. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +60 -41
  195. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +22 -9
  196. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +40 -24
  197. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +26 -13
  198. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +46 -34
  199. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +21 -8
  200. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +35 -23
  201. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +51 -35
  202. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +114 -84
  203. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +73 -55
  204. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +211 -150
  205. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +70 -53
  206. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +211 -141
  207. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +19 -6
  208. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +29 -19
  209. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +91 -71
  210. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +282 -191
  211. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +97 -78
  212. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +287 -217
  213. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +29 -16
  214. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +63 -41
  215. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +24 -10
  216. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +54 -37
  217. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +53 -0
  218. data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +120 -0
  219. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +81 -61
  220. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +245 -184
  221. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +86 -65
  222. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +261 -191
  223. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +123 -103
  224. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +236 -190
  225. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +49 -34
  226. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +143 -111
  227. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +642 -572
  228. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +2038 -1506
  229. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +38 -19
  230. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +108 -63
  231. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +216 -0
  232. data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +870 -0
  233. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +44 -0
  234. data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +82 -0
  235. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +49 -0
  236. data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +95 -0
  237. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +27 -13
  238. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +56 -39
  239. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +52 -0
  240. data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +119 -0
  241. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +62 -0
  242. data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +203 -0
  243. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +47 -0
  244. data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +89 -0
  245. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +69 -0
  246. data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +184 -0
  247. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +32 -0
  248. data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +42 -0
  249. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +71 -0
  250. data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +192 -0
  251. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +54 -0
  252. data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +126 -0
  253. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +17 -4
  254. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +30 -22
  255. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +45 -28
  256. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +125 -91
  257. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +51 -36
  258. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +150 -104
  259. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +63 -0
  260. data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +165 -0
  261. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +26 -13
  262. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +54 -36
  263. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +254 -223
  264. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +804 -558
  265. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +9 -0
  266. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +6 -3
  267. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +99 -60
  268. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +369 -193
  269. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +41 -26
  270. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +96 -70
  271. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +101 -83
  272. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +267 -192
  273. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +62 -0
  274. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +146 -0
  275. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +15 -2
  276. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +22 -14
  277. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +91 -72
  278. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +298 -217
  279. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +31 -17
  280. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +74 -53
  281. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +73 -56
  282. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +198 -144
  283. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +48 -0
  284. data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +101 -0
  285. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +34 -18
  286. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +91 -68
  287. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +74 -0
  288. data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +202 -0
  289. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +28 -14
  290. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +65 -46
  291. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +21 -8
  292. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +35 -25
  293. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +20 -7
  294. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +26 -18
  295. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +19 -6
  296. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +26 -18
  297. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +35 -20
  298. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +86 -60
  299. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +31 -17
  300. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +66 -51
  301. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +26 -12
  302. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +57 -42
  303. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +37 -22
  304. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +75 -57
  305. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +50 -31
  306. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +163 -123
  307. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +53 -36
  308. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +158 -112
  309. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +66 -0
  310. data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +183 -0
  311. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +9 -0
  312. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +3 -0
  313. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +42 -0
  314. data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +136 -0
  315. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +23 -9
  316. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +52 -33
  317. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +30 -15
  318. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +81 -51
  319. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +26 -0
  320. data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +41 -0
  321. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +19 -6
  322. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +32 -18
  323. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +51 -0
  324. data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +114 -0
  325. data/src/core/ext/upb-generated/google/api/annotations.upb.c +22 -0
  326. data/src/core/ext/upb-generated/google/api/annotations.upb.h +8 -0
  327. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +150 -125
  328. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +372 -280
  329. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +152 -126
  330. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +410 -297
  331. data/src/core/ext/upb-generated/google/api/http.upb.c +43 -28
  332. data/src/core/ext/upb-generated/google/api/http.upb.h +118 -88
  333. data/src/core/ext/upb-generated/google/api/httpbody.upb.c +46 -0
  334. data/src/core/ext/upb-generated/google/api/httpbody.upb.h +99 -0
  335. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +18 -5
  336. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +33 -21
  337. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +366 -276
  338. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +1089 -763
  339. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +18 -5
  340. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +29 -17
  341. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +15 -2
  342. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +22 -14
  343. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +47 -31
  344. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +81 -63
  345. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +18 -5
  346. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +29 -17
  347. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +57 -36
  348. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +214 -148
  349. data/src/core/ext/upb-generated/google/rpc/status.upb.c +21 -8
  350. data/src/core/ext/upb-generated/google/rpc/status.upb.h +37 -25
  351. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +84 -0
  352. data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +276 -0
  353. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +32 -18
  354. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +61 -41
  355. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +131 -107
  356. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +397 -284
  357. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +26 -12
  358. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +59 -38
  359. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +22 -8
  360. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +51 -34
  361. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +81 -61
  362. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +272 -202
  363. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +34 -19
  364. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +77 -56
  365. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +75 -13
  366. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +108 -57
  367. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +31 -5
  368. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +34 -17
  369. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +21 -0
  370. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +8 -0
  371. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +31 -5
  372. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +34 -17
  373. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +30 -4
  374. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +33 -18
  375. data/src/core/ext/upb-generated/validate/validate.upb.c +395 -310
  376. data/src/core/ext/upb-generated/validate/validate.upb.h +1118 -725
  377. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +110 -0
  378. data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +191 -0
  379. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +55 -0
  380. data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +87 -0
  381. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +38 -0
  382. data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +38 -0
  383. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +64 -17
  384. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +113 -65
  385. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +53 -0
  386. data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +81 -0
  387. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +17 -4
  388. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +28 -18
  389. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +30 -16
  390. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +64 -45
  391. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +25 -11
  392. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +32 -24
  393. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +46 -0
  394. data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +95 -0
  395. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +22 -9
  396. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +40 -26
  397. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +33 -19
  398. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +74 -53
  399. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +22 -9
  400. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +44 -28
  401. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +36 -21
  402. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +44 -30
  403. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +203 -0
  404. data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +726 -0
  405. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +52 -0
  406. data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +132 -0
  407. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +65 -0
  408. data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +173 -0
  409. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +20 -7
  410. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +34 -22
  411. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +84 -0
  412. data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +55 -0
  413. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +127 -0
  414. data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +50 -0
  415. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +16 -61
  416. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +67 -67
  417. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +43 -0
  418. data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +40 -0
  419. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +53 -0
  420. data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +40 -0
  421. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +49 -0
  422. data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +35 -0
  423. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +46 -0
  424. data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +35 -0
  425. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +46 -0
  426. data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
  427. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +142 -0
  428. data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +40 -0
  429. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +51 -0
  430. data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +35 -0
  431. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +10 -8
  432. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +1 -1
  433. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +10 -13
  434. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +4 -4
  435. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +22 -52
  436. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +46 -46
  437. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +250 -281
  438. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +55 -55
  439. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +18 -24
  440. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +10 -10
  441. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +377 -426
  442. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +76 -76
  443. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +16 -18
  444. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +4 -4
  445. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +18 -20
  446. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +4 -4
  447. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +206 -0
  448. data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
  449. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +17 -32
  450. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +22 -22
  451. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +17 -19
  452. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +4 -4
  453. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +87 -133
  454. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +73 -73
  455. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +20 -31
  456. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +16 -16
  457. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +16 -19
  458. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +4 -4
  459. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +17 -21
  460. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +7 -7
  461. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +53 -0
  462. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
  463. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +23 -51
  464. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +43 -43
  465. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +25 -41
  466. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +25 -25
  467. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +16 -19
  468. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +4 -4
  469. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +252 -254
  470. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +53 -43
  471. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +14 -16
  472. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +4 -4
  473. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +16 -20
  474. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +7 -7
  475. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +16 -18
  476. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +4 -4
  477. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +20 -22
  478. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +4 -4
  479. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +15 -18
  480. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +4 -4
  481. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +20 -28
  482. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +13 -13
  483. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +21 -33
  484. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +19 -19
  485. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +20 -30
  486. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +16 -16
  487. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +16 -18
  488. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +4 -4
  489. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +54 -62
  490. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +19 -19
  491. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +25 -39
  492. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +22 -22
  493. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +21 -23
  494. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +4 -4
  495. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +17 -21
  496. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +7 -7
  497. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +69 -0
  498. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
  499. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +19 -35
  500. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +25 -25
  501. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +19 -37
  502. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +28 -28
  503. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +190 -0
  504. data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +70 -0
  505. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +21 -27
  506. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +10 -10
  507. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +818 -912
  508. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +160 -160
  509. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +54 -48
  510. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +10 -10
  511. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +188 -0
  512. data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +85 -0
  513. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +54 -0
  514. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
  515. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +57 -0
  516. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
  517. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +17 -21
  518. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +7 -7
  519. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +72 -0
  520. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
  521. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +99 -0
  522. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
  523. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +52 -0
  524. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +35 -0
  525. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +71 -0
  526. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
  527. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +57 -0
  528. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +30 -0
  529. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +75 -0
  530. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +40 -0
  531. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +77 -0
  532. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
  533. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +17 -18
  534. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +4 -4
  535. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +19 -29
  536. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +16 -16
  537. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +20 -26
  538. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +10 -10
  539. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +59 -0
  540. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
  541. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +19 -20
  542. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +4 -4
  543. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +137 -173
  544. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +58 -58
  545. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +17 -13
  546. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +1 -1
  547. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +171 -157
  548. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +24 -19
  549. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +21 -27
  550. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +10 -10
  551. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +23 -34
  552. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +19 -19
  553. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +58 -0
  554. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
  555. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +16 -18
  556. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +4 -4
  557. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +19 -33
  558. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +22 -22
  559. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +18 -22
  560. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +7 -7
  561. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +22 -32
  562. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +16 -16
  563. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +46 -0
  564. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +35 -0
  565. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +15 -23
  566. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +13 -13
  567. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +52 -0
  568. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +50 -0
  569. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +17 -21
  570. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +7 -7
  571. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +17 -19
  572. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +4 -4
  573. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +17 -19
  574. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +4 -4
  575. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +17 -19
  576. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +4 -4
  577. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +17 -23
  578. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +10 -10
  579. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +17 -21
  580. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +7 -7
  581. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +16 -21
  582. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +7 -7
  583. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +18 -24
  584. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +10 -10
  585. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +15 -29
  586. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +22 -22
  587. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +16 -26
  588. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +16 -16
  589. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +53 -0
  590. data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +45 -0
  591. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +12 -10
  592. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +1 -1
  593. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +94 -0
  594. data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +35 -0
  595. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +14 -19
  596. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +7 -7
  597. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +13 -19
  598. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +10 -10
  599. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
  600. data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
  601. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +13 -16
  602. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +4 -4
  603. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +57 -0
  604. data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +35 -0
  605. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +7 -7
  606. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +1 -1
  607. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +154 -0
  608. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
  609. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +153 -0
  610. data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
  611. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +5 -14
  612. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +10 -10
  613. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +39 -0
  614. data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +35 -0
  615. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +5 -10
  616. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +4 -4
  617. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +5 -62
  618. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +82 -82
  619. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +5 -10
  620. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +4 -4
  621. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +5 -10
  622. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +4 -4
  623. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +5 -16
  624. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +13 -13
  625. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +5 -10
  626. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +4 -4
  627. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +5 -26
  628. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +28 -28
  629. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +6 -11
  630. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +4 -4
  631. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +67 -0
  632. data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
  633. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +6 -15
  634. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +10 -10
  635. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +7 -12
  636. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +4 -4
  637. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +6 -6
  638. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +1 -1
  639. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +6 -11
  640. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +4 -4
  641. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +6 -11
  642. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +4 -4
  643. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +8 -57
  644. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +70 -70
  645. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +63 -0
  646. data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +45 -0
  647. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +47 -0
  648. data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +35 -0
  649. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +35 -0
  650. data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +30 -0
  651. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +6 -17
  652. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +13 -13
  653. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +40 -0
  654. data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +35 -0
  655. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +7 -12
  656. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +4 -4
  657. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +9 -16
  658. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +7 -7
  659. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +6 -13
  660. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +7 -7
  661. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +41 -0
  662. data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +35 -0
  663. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +8 -13
  664. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +4 -4
  665. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +8 -15
  666. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +7 -7
  667. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +8 -13
  668. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +4 -4
  669. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +126 -0
  670. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
  671. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +40 -0
  672. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +40 -0
  673. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +52 -0
  674. data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +40 -0
  675. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +7 -12
  676. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +4 -4
  677. data/src/core/ext/xds/certificate_provider_registry.cc +1 -1
  678. data/src/core/ext/xds/certificate_provider_store.h +1 -1
  679. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +4 -4
  680. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +2 -2
  681. data/src/core/ext/xds/upb_utils.h +67 -0
  682. data/src/core/ext/xds/xds_api.cc +162 -3417
  683. data/src/core/ext/xds/xds_api.h +60 -613
  684. data/src/core/ext/xds/xds_bootstrap.cc +221 -122
  685. data/src/core/ext/xds/xds_bootstrap.h +31 -15
  686. data/src/core/ext/xds/xds_certificate_provider.h +2 -2
  687. data/src/core/ext/xds/xds_channel_stack_modifier.cc +16 -20
  688. data/src/core/ext/xds/xds_channel_stack_modifier.h +4 -3
  689. data/src/core/ext/xds/xds_client.cc +794 -1065
  690. data/src/core/ext/xds/xds_client.h +109 -149
  691. data/src/core/ext/xds/xds_client_stats.cc +15 -15
  692. data/src/core/ext/xds/xds_client_stats.h +5 -4
  693. data/src/core/ext/xds/xds_cluster.cc +453 -0
  694. data/src/core/ext/xds/xds_cluster.h +108 -0
  695. data/src/core/ext/xds/xds_common_types.cc +388 -0
  696. data/src/core/ext/xds/xds_common_types.h +95 -0
  697. data/src/core/ext/xds/xds_endpoint.cc +364 -0
  698. data/src/core/ext/xds/xds_endpoint.h +135 -0
  699. data/src/core/ext/xds/xds_http_fault_filter.cc +6 -6
  700. data/src/core/ext/xds/xds_http_fault_filter.h +3 -3
  701. data/src/core/ext/xds/xds_http_filters.cc +11 -5
  702. data/src/core/ext/xds/xds_http_filters.h +4 -4
  703. data/src/core/ext/xds/xds_http_rbac_filter.cc +563 -0
  704. data/src/core/ext/xds/xds_http_rbac_filter.h +54 -0
  705. data/src/core/ext/xds/xds_listener.cc +1039 -0
  706. data/src/core/ext/xds/xds_listener.h +220 -0
  707. data/src/core/ext/xds/xds_resource_type.cc +33 -0
  708. data/src/core/ext/xds/xds_resource_type.h +98 -0
  709. data/src/core/ext/xds/xds_resource_type_impl.h +87 -0
  710. data/src/core/ext/xds/xds_route_config.cc +985 -0
  711. data/src/core/ext/xds/xds_route_config.h +215 -0
  712. data/src/core/ext/xds/xds_routing.cc +250 -0
  713. data/src/core/ext/xds/xds_routing.h +101 -0
  714. data/src/core/ext/xds/xds_server_config_fetcher.cc +1061 -286
  715. data/src/core/lib/address_utils/parse_address.cc +20 -0
  716. data/src/core/lib/address_utils/parse_address.h +5 -0
  717. data/src/core/lib/address_utils/sockaddr_utils.cc +33 -36
  718. data/src/core/lib/address_utils/sockaddr_utils.h +1 -16
  719. data/src/core/lib/avl/avl.h +389 -88
  720. data/src/core/lib/backoff/backoff.cc +9 -38
  721. data/src/core/lib/backoff/backoff.h +11 -11
  722. data/src/core/lib/channel/call_finalization.h +86 -0
  723. data/src/core/lib/channel/channel_args.cc +77 -18
  724. data/src/core/lib/channel/channel_args.h +13 -10
  725. data/src/core/lib/channel/channel_args_preconditioning.cc +48 -0
  726. data/src/core/lib/channel/channel_args_preconditioning.h +62 -0
  727. data/src/core/lib/channel/channel_stack.cc +10 -3
  728. data/src/core/lib/channel/channel_stack.h +42 -6
  729. data/src/core/lib/channel/channel_stack_builder.cc +66 -250
  730. data/src/core/lib/channel/channel_stack_builder.h +95 -147
  731. data/src/core/lib/channel/channel_trace.cc +3 -6
  732. data/src/core/lib/channel/channelz.cc +2 -1
  733. data/src/core/lib/channel/connected_channel.cc +9 -4
  734. data/src/core/lib/channel/connected_channel.h +1 -1
  735. data/src/core/lib/channel/context.h +11 -0
  736. data/src/core/lib/channel/handshaker.cc +1 -1
  737. data/src/core/lib/channel/handshaker.h +1 -1
  738. data/src/core/lib/channel/promise_based_filter.cc +669 -0
  739. data/src/core/lib/channel/promise_based_filter.h +423 -0
  740. data/src/core/lib/compression/compression.cc +20 -112
  741. data/src/core/lib/compression/compression_internal.cc +143 -203
  742. data/src/core/lib/compression/compression_internal.h +64 -69
  743. data/src/core/lib/compression/message_compress.cc +11 -11
  744. data/src/core/lib/compression/message_compress.h +2 -2
  745. data/src/core/lib/config/core_configuration.cc +11 -3
  746. data/src/core/lib/config/core_configuration.h +50 -0
  747. data/src/core/lib/debug/trace.h +2 -2
  748. data/src/core/lib/event_engine/{endpoint_config.cc → channel_args_endpoint_config.cc} +2 -1
  749. data/src/core/lib/event_engine/{endpoint_config_internal.h → channel_args_endpoint_config.h} +3 -3
  750. data/src/core/lib/event_engine/default_event_engine_factory.cc +27 -0
  751. data/src/core/lib/event_engine/event_engine.cc +21 -19
  752. data/src/core/lib/event_engine/event_engine_factory.h +36 -0
  753. data/src/core/lib/event_engine/memory_allocator.cc +66 -0
  754. data/src/core/lib/event_engine/resolved_address.cc +39 -0
  755. data/src/core/lib/gpr/sync_posix.cc +1 -0
  756. data/src/core/lib/gpr/time.cc +2 -1
  757. data/src/core/lib/gpr/tls.h +6 -0
  758. data/src/core/lib/gpr/useful.h +18 -0
  759. data/src/core/lib/gprpp/bitset.h +7 -0
  760. data/src/core/lib/gprpp/capture.h +76 -0
  761. data/src/core/lib/gprpp/chunked_vector.h +45 -3
  762. data/src/core/lib/gprpp/cpp_impl_of.h +45 -0
  763. data/src/core/lib/gprpp/debug_location.h +2 -0
  764. data/src/core/lib/gprpp/global_config_env.cc +7 -7
  765. data/src/core/lib/gprpp/global_config_env.h +2 -2
  766. data/src/core/lib/gprpp/manual_constructor.h +2 -3
  767. data/src/core/lib/gprpp/orphanable.h +1 -1
  768. data/src/core/lib/gprpp/ref_counted.h +1 -1
  769. data/src/core/lib/gprpp/ref_counted_ptr.h +2 -4
  770. data/src/core/lib/gprpp/status_helper.cc +30 -38
  771. data/src/core/lib/gprpp/status_helper.h +6 -19
  772. data/src/core/lib/gprpp/table.h +24 -1
  773. data/src/core/lib/gprpp/time.cc +186 -0
  774. data/src/core/lib/gprpp/time.h +292 -0
  775. data/src/core/lib/http/format_request.cc +27 -23
  776. data/src/core/lib/http/format_request.h +7 -6
  777. data/src/core/lib/http/httpcli.cc +310 -238
  778. data/src/core/lib/http/httpcli.h +183 -88
  779. data/src/core/lib/http/httpcli_security_connector.cc +62 -73
  780. data/src/core/lib/http/httpcli_ssl_credentials.h +37 -0
  781. data/src/core/lib/http/parser.h +1 -1
  782. data/src/core/lib/iomgr/buffer_list.cc +9 -9
  783. data/src/core/lib/iomgr/buffer_list.h +18 -18
  784. data/src/core/lib/iomgr/call_combiner.cc +17 -7
  785. data/src/core/lib/iomgr/closure.h +29 -9
  786. data/src/core/lib/iomgr/combiner.cc +25 -3
  787. data/src/core/lib/iomgr/endpoint.h +0 -1
  788. data/src/core/lib/iomgr/endpoint_cfstream.cc +7 -24
  789. data/src/core/lib/iomgr/endpoint_cfstream.h +4 -4
  790. data/src/core/lib/iomgr/endpoint_pair_posix.cc +9 -11
  791. data/src/core/lib/iomgr/endpoint_pair_windows.cc +5 -14
  792. data/src/core/lib/iomgr/error.cc +13 -10
  793. data/src/core/lib/iomgr/error.h +0 -2
  794. data/src/core/lib/iomgr/ev_apple.cc +6 -5
  795. data/src/core/lib/iomgr/ev_epoll1_linux.cc +8 -7
  796. data/src/core/lib/iomgr/ev_epollex_linux.cc +12 -9
  797. data/src/core/lib/iomgr/ev_poll_posix.cc +7 -7
  798. data/src/core/lib/iomgr/ev_posix.cc +3 -3
  799. data/src/core/lib/iomgr/ev_posix.h +1 -1
  800. data/src/core/lib/iomgr/event_engine/endpoint.cc +2 -3
  801. data/src/core/lib/iomgr/event_engine/iomgr.cc +8 -27
  802. data/src/core/lib/iomgr/event_engine/pollset.cc +2 -3
  803. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +6 -0
  804. data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +2 -0
  805. data/src/core/lib/iomgr/event_engine/resolver.cc +68 -49
  806. data/src/core/lib/iomgr/event_engine/resolver.h +56 -0
  807. data/src/core/lib/iomgr/event_engine/tcp.cc +11 -8
  808. data/src/core/lib/iomgr/event_engine/timer.cc +7 -7
  809. data/src/core/lib/iomgr/exec_ctx.cc +25 -97
  810. data/src/core/lib/iomgr/exec_ctx.h +18 -34
  811. data/src/core/lib/iomgr/executor.cc +22 -16
  812. data/src/core/lib/iomgr/executor.h +1 -1
  813. data/src/core/lib/iomgr/fork_posix.cc +3 -2
  814. data/src/core/lib/iomgr/iocp_windows.cc +9 -9
  815. data/src/core/lib/iomgr/iocp_windows.h +1 -1
  816. data/src/core/lib/iomgr/iomgr_posix.cc +2 -2
  817. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +2 -2
  818. data/src/core/lib/iomgr/iomgr_windows.cc +2 -2
  819. data/src/core/lib/iomgr/polling_entity.h +6 -0
  820. data/src/core/lib/iomgr/pollset.cc +1 -1
  821. data/src/core/lib/iomgr/pollset.h +4 -4
  822. data/src/core/lib/iomgr/pollset_windows.cc +2 -2
  823. data/src/core/lib/iomgr/port.h +6 -9
  824. data/src/core/lib/iomgr/resolve_address.cc +5 -24
  825. data/src/core/lib/iomgr/resolve_address.h +47 -44
  826. data/src/core/lib/iomgr/resolve_address_impl.h +59 -0
  827. data/src/core/lib/iomgr/resolve_address_posix.cc +83 -67
  828. data/src/core/lib/iomgr/resolve_address_posix.h +47 -0
  829. data/src/core/lib/iomgr/resolve_address_windows.cc +93 -74
  830. data/src/core/lib/iomgr/resolve_address_windows.h +47 -0
  831. data/src/core/lib/iomgr/resolved_address.h +39 -0
  832. data/src/core/lib/iomgr/sockaddr_utils_posix.cc +62 -0
  833. data/src/core/lib/iomgr/socket_utils_common_posix.cc +0 -17
  834. data/src/core/lib/iomgr/tcp_client.cc +3 -5
  835. data/src/core/lib/iomgr/tcp_client.h +4 -5
  836. data/src/core/lib/iomgr/tcp_client_cfstream.cc +2 -10
  837. data/src/core/lib/iomgr/tcp_client_posix.cc +8 -24
  838. data/src/core/lib/iomgr/tcp_client_posix.h +3 -4
  839. data/src/core/lib/iomgr/tcp_client_windows.cc +2 -11
  840. data/src/core/lib/iomgr/tcp_posix.cc +30 -34
  841. data/src/core/lib/iomgr/tcp_posix.h +1 -3
  842. data/src/core/lib/iomgr/tcp_server.cc +4 -6
  843. data/src/core/lib/iomgr/tcp_server.h +6 -8
  844. data/src/core/lib/iomgr/tcp_server_posix.cc +18 -22
  845. data/src/core/lib/iomgr/tcp_server_utils_posix.h +19 -18
  846. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +1 -0
  847. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +1 -0
  848. data/src/core/lib/iomgr/tcp_server_windows.cc +5 -12
  849. data/src/core/lib/iomgr/tcp_windows.cc +19 -17
  850. data/src/core/lib/iomgr/tcp_windows.h +1 -2
  851. data/src/core/lib/iomgr/timer.cc +2 -2
  852. data/src/core/lib/iomgr/timer.h +11 -6
  853. data/src/core/lib/iomgr/timer_generic.cc +96 -77
  854. data/src/core/lib/iomgr/timer_manager.cc +15 -14
  855. data/src/core/lib/iomgr/unix_sockets_posix.cc +22 -34
  856. data/src/core/lib/iomgr/unix_sockets_posix.h +4 -7
  857. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +6 -15
  858. data/src/core/lib/iomgr/work_serializer.cc +120 -44
  859. data/src/core/lib/iomgr/work_serializer.h +16 -4
  860. data/src/core/lib/json/json_reader.cc +83 -35
  861. data/src/core/lib/json/json_util.cc +5 -5
  862. data/src/core/lib/json/json_util.h +2 -2
  863. data/src/core/lib/matchers/matchers.cc +1 -1
  864. data/src/core/lib/promise/activity.cc +121 -0
  865. data/src/core/lib/promise/activity.h +540 -0
  866. data/src/core/lib/promise/arena_promise.h +188 -0
  867. data/src/core/lib/promise/context.h +86 -0
  868. data/src/core/lib/promise/detail/basic_seq.h +496 -0
  869. data/src/core/lib/promise/detail/promise_factory.h +189 -0
  870. data/src/core/lib/promise/detail/promise_like.h +85 -0
  871. data/src/core/lib/promise/detail/status.h +49 -0
  872. data/src/core/lib/promise/detail/switch.h +1455 -0
  873. data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +48 -0
  874. data/src/core/lib/promise/loop.h +134 -0
  875. data/src/core/lib/promise/map.h +88 -0
  876. data/src/core/lib/promise/poll.h +66 -0
  877. data/src/core/lib/promise/promise.h +95 -0
  878. data/src/core/lib/promise/race.h +84 -0
  879. data/src/core/lib/promise/seq.h +89 -0
  880. data/src/core/lib/promise/sleep.cc +74 -0
  881. data/src/core/lib/promise/sleep.h +66 -0
  882. data/src/core/lib/promise/try_seq.h +157 -0
  883. data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.cc +17 -25
  884. data/src/core/{ext/filters/client_channel → lib/resolver}/resolver.h +43 -44
  885. data/src/core/{ext/filters/client_channel → lib/resolver}/resolver_factory.h +32 -31
  886. data/src/core/lib/resolver/resolver_registry.cc +156 -0
  887. data/src/core/lib/resolver/resolver_registry.h +113 -0
  888. data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.cc +1 -1
  889. data/src/core/{ext/filters/client_channel → lib/resolver}/server_address.h +4 -4
  890. data/src/core/lib/resource_quota/api.cc +108 -0
  891. data/src/core/lib/resource_quota/api.h +40 -0
  892. data/src/core/lib/{gprpp → resource_quota}/arena.cc +16 -13
  893. data/src/core/lib/{gprpp → resource_quota}/arena.h +24 -13
  894. data/src/core/lib/resource_quota/memory_quota.cc +478 -0
  895. data/src/core/lib/resource_quota/memory_quota.h +457 -0
  896. data/src/core/lib/resource_quota/resource_quota.cc +33 -0
  897. data/src/core/lib/resource_quota/resource_quota.h +58 -0
  898. data/src/core/lib/resource_quota/thread_quota.cc +43 -0
  899. data/src/core/lib/resource_quota/thread_quota.h +57 -0
  900. data/src/core/lib/resource_quota/trace.cc +19 -0
  901. data/src/core/lib/resource_quota/trace.h +24 -0
  902. data/src/core/lib/security/authorization/evaluate_args.cc +37 -38
  903. data/src/core/lib/security/authorization/evaluate_args.h +3 -2
  904. data/src/core/lib/security/authorization/grpc_authorization_engine.cc +60 -0
  905. data/src/core/lib/security/authorization/grpc_authorization_engine.h +62 -0
  906. data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +109 -0
  907. data/src/core/lib/security/authorization/grpc_server_authz_filter.h +51 -0
  908. data/src/core/lib/security/authorization/matchers.cc +227 -0
  909. data/src/core/lib/security/authorization/matchers.h +211 -0
  910. data/src/core/lib/security/authorization/rbac_policy.cc +442 -0
  911. data/src/core/lib/security/authorization/rbac_policy.h +171 -0
  912. data/src/core/lib/security/context/security_context.cc +4 -2
  913. data/src/core/lib/security/context/security_context.h +1 -1
  914. data/src/core/lib/security/credentials/alts/alts_credentials.h +6 -0
  915. data/src/core/lib/security/credentials/call_creds_util.cc +87 -0
  916. data/src/core/lib/security/credentials/call_creds_util.h +42 -0
  917. data/src/core/lib/security/credentials/channel_creds_registry.h +97 -0
  918. data/src/core/lib/security/credentials/channel_creds_registry_init.cc +70 -0
  919. data/src/core/lib/security/credentials/composite/composite_credentials.cc +17 -81
  920. data/src/core/lib/security/credentials/composite/composite_credentials.h +21 -9
  921. data/src/core/lib/security/credentials/credentials.cc +2 -3
  922. data/src/core/lib/security/credentials/credentials.h +68 -57
  923. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +48 -33
  924. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +1 -0
  925. data/src/core/lib/security/credentials/external/external_account_credentials.cc +52 -35
  926. data/src/core/lib/security/credentials/external/external_account_credentials.h +5 -9
  927. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +0 -1
  928. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +33 -14
  929. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +1 -0
  930. data/src/core/lib/security/credentials/fake/fake_credentials.cc +18 -18
  931. data/src/core/lib/security/credentials/fake/fake_credentials.h +14 -16
  932. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +17 -16
  933. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +6 -0
  934. data/src/core/lib/security/credentials/iam/iam_credentials.cc +19 -27
  935. data/src/core/lib/security/credentials/iam/iam_credentials.h +11 -9
  936. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +13 -7
  937. data/src/core/lib/security/credentials/jwt/json_token.cc +4 -6
  938. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +28 -44
  939. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +12 -12
  940. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +54 -43
  941. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +1 -1
  942. data/src/core/lib/security/credentials/local/local_credentials.h +6 -0
  943. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +148 -173
  944. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +52 -33
  945. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +95 -153
  946. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +54 -27
  947. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +1 -10
  948. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +6 -3
  949. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +11 -12
  950. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +7 -8
  951. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +201 -0
  952. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +106 -0
  953. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +33 -87
  954. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +36 -83
  955. data/src/core/lib/security/credentials/tls/tls_credentials.cc +21 -10
  956. data/src/core/lib/security/credentials/tls/tls_credentials.h +6 -0
  957. data/src/core/lib/security/credentials/xds/xds_credentials.cc +28 -33
  958. data/src/core/lib/security/credentials/xds/xds_credentials.h +6 -1
  959. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +11 -17
  960. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +3 -3
  961. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +7 -16
  962. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +0 -2
  963. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +8 -18
  964. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +11 -16
  965. data/src/core/lib/security/security_connector/load_system_roots_linux.cc +1 -2
  966. data/src/core/lib/security/security_connector/local/local_security_connector.cc +12 -17
  967. data/src/core/lib/security/security_connector/security_connector.cc +3 -15
  968. data/src/core/lib/security/security_connector/security_connector.h +16 -21
  969. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +6 -11
  970. data/src/core/lib/security/security_connector/ssl_utils.cc +38 -32
  971. data/src/core/lib/security/security_connector/ssl_utils.h +14 -18
  972. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +361 -204
  973. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +70 -47
  974. data/src/core/lib/security/transport/auth_filters.h +37 -4
  975. data/src/core/lib/security/transport/client_auth_filter.cc +87 -358
  976. data/src/core/lib/security/transport/security_handshaker.cc +16 -8
  977. data/src/core/lib/security/transport/server_auth_filter.cc +41 -35
  978. data/src/core/lib/service_config/service_config.h +82 -0
  979. data/src/core/{ext → lib}/service_config/service_config_call_data.h +5 -5
  980. data/src/core/{ext/service_config/service_config.cc → lib/service_config/service_config_impl.cc} +20 -17
  981. data/src/core/{ext/service_config/service_config.h → lib/service_config/service_config_impl.h} +16 -18
  982. data/src/core/{ext → lib}/service_config/service_config_parser.cc +31 -27
  983. data/src/core/{ext → lib}/service_config/service_config_parser.h +39 -30
  984. data/src/core/lib/slice/percent_encoding.cc +30 -86
  985. data/src/core/lib/slice/percent_encoding.h +5 -11
  986. data/src/core/lib/slice/slice.cc +78 -181
  987. data/src/core/lib/slice/slice.h +384 -0
  988. data/src/core/lib/slice/slice_buffer.cc +4 -0
  989. data/src/core/lib/slice/slice_internal.h +12 -31
  990. data/src/core/lib/slice/slice_refcount.cc +18 -0
  991. data/src/core/lib/slice/slice_refcount.h +8 -83
  992. data/src/core/lib/slice/slice_refcount_base.h +21 -133
  993. data/src/core/lib/surface/builtins.cc +6 -6
  994. data/src/core/lib/surface/call.cc +204 -413
  995. data/src/core/lib/surface/call.h +5 -5
  996. data/src/core/lib/surface/channel.cc +67 -99
  997. data/src/core/lib/surface/channel.h +12 -23
  998. data/src/core/lib/surface/channel_init.cc +1 -1
  999. data/src/core/lib/surface/channel_init.h +4 -4
  1000. data/src/core/lib/surface/completion_queue.cc +12 -11
  1001. data/src/core/lib/surface/init.cc +78 -10
  1002. data/src/core/lib/surface/init.h +0 -2
  1003. data/src/core/lib/surface/lame_client.cc +26 -19
  1004. data/src/core/lib/surface/server.cc +44 -72
  1005. data/src/core/lib/surface/server.h +13 -14
  1006. data/src/core/lib/surface/validate_metadata.cc +2 -2
  1007. data/src/core/lib/surface/version.cc +2 -2
  1008. data/src/core/lib/transport/bdp_estimator.cc +10 -11
  1009. data/src/core/lib/transport/bdp_estimator.h +2 -2
  1010. data/src/core/lib/transport/byte_stream.cc +4 -0
  1011. data/src/core/lib/transport/error_utils.cc +5 -3
  1012. data/src/core/lib/transport/error_utils.h +2 -1
  1013. data/src/core/lib/transport/metadata_batch.h +1128 -793
  1014. data/src/core/lib/transport/parsed_metadata.cc +37 -0
  1015. data/src/core/lib/transport/parsed_metadata.h +228 -90
  1016. data/src/core/lib/transport/pid_controller.cc +4 -4
  1017. data/src/core/lib/transport/status_conversion.cc +2 -2
  1018. data/src/core/lib/transport/status_conversion.h +1 -1
  1019. data/src/core/lib/transport/timeout_encoding.cc +204 -67
  1020. data/src/core/lib/transport/timeout_encoding.h +40 -10
  1021. data/src/core/lib/transport/transport.cc +7 -27
  1022. data/src/core/lib/transport/transport.h +88 -4
  1023. data/src/core/lib/transport/transport_impl.h +13 -0
  1024. data/src/core/lib/transport/transport_op_string.cc +5 -47
  1025. data/src/core/lib/uri/uri_parser.cc +237 -63
  1026. data/src/core/lib/uri/uri_parser.h +39 -23
  1027. data/src/core/plugin_registry/grpc_plugin_registry.cc +22 -88
  1028. data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +85 -0
  1029. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +28 -23
  1030. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +9 -1
  1031. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +19 -11
  1032. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +2 -2
  1033. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +1 -1
  1034. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +2 -2
  1035. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +2 -2
  1036. data/src/core/tsi/local_transport_security.cc +16 -24
  1037. data/src/core/tsi/local_transport_security.h +1 -4
  1038. data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +141 -0
  1039. data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +81 -0
  1040. data/src/core/tsi/ssl/session_cache/ssl_session.h +2 -4
  1041. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +3 -5
  1042. data/src/core/tsi/ssl_transport_security.cc +135 -15
  1043. data/src/core/tsi/ssl_transport_security.h +39 -6
  1044. data/src/ruby/ext/grpc/extconf.rb +10 -3
  1045. data/src/ruby/ext/grpc/rb_channel.c +5 -2
  1046. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +26 -34
  1047. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +39 -51
  1048. data/src/ruby/ext/grpc/rb_server.c +7 -4
  1049. data/src/ruby/lib/grpc/version.rb +1 -1
  1050. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +2 -1
  1051. data/third_party/abseil-cpp/absl/algorithm/container.h +101 -91
  1052. data/third_party/abseil-cpp/absl/base/attributes.h +64 -31
  1053. data/third_party/abseil-cpp/absl/base/config.h +67 -37
  1054. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +1 -26
  1055. data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +48 -0
  1056. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +3 -1
  1057. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +2 -0
  1058. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +69 -0
  1059. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +4 -4
  1060. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +16 -0
  1061. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +4 -4
  1062. data/third_party/abseil-cpp/absl/base/options.h +1 -1
  1063. data/third_party/abseil-cpp/absl/container/fixed_array.h +0 -5
  1064. data/third_party/abseil-cpp/absl/container/inlined_vector.h +105 -97
  1065. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +17 -15
  1066. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +18 -102
  1067. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +37 -78
  1068. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +388 -423
  1069. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +3 -2
  1070. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +14 -8
  1071. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +251 -120
  1072. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +11 -1
  1073. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +12 -11
  1074. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +6 -2
  1075. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +12 -5
  1076. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +110 -0
  1077. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +234 -0
  1078. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +25 -7
  1079. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +8 -2
  1080. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +21 -3
  1081. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +2 -0
  1082. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +2 -0
  1083. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +14 -0
  1084. data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +72 -0
  1085. data/third_party/abseil-cpp/absl/functional/function_ref.h +4 -1
  1086. data/third_party/abseil-cpp/absl/hash/hash.h +22 -0
  1087. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +15 -16
  1088. data/third_party/abseil-cpp/absl/hash/internal/hash.h +88 -37
  1089. data/third_party/abseil-cpp/absl/hash/internal/{wyhash.cc → low_level_hash.cc} +23 -11
  1090. data/third_party/abseil-cpp/absl/hash/internal/{wyhash.h → low_level_hash.h} +14 -12
  1091. data/third_party/abseil-cpp/absl/memory/memory.h +1 -1
  1092. data/third_party/abseil-cpp/absl/meta/type_traits.h +32 -2
  1093. data/third_party/abseil-cpp/absl/numeric/int128.cc +3 -10
  1094. data/third_party/abseil-cpp/absl/numeric/int128.h +146 -73
  1095. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +19 -25
  1096. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +73 -70
  1097. data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.cc +4 -4
  1098. data/third_party/abseil-cpp/absl/{base → profiling}/internal/exponential_biased.h +6 -6
  1099. data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +230 -0
  1100. data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +200 -0
  1101. data/third_party/abseil-cpp/absl/random/beta_distribution.h +427 -0
  1102. data/third_party/abseil-cpp/absl/random/discrete_distribution.cc +98 -0
  1103. data/third_party/abseil-cpp/absl/random/discrete_distribution.h +247 -0
  1104. data/third_party/abseil-cpp/absl/random/distributions.h +452 -0
  1105. data/third_party/abseil-cpp/absl/random/exponential_distribution.h +165 -0
  1106. data/third_party/abseil-cpp/absl/random/gaussian_distribution.cc +104 -0
  1107. data/third_party/abseil-cpp/absl/random/gaussian_distribution.h +275 -0
  1108. data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +92 -0
  1109. data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +268 -0
  1110. data/third_party/abseil-cpp/absl/random/internal/fastmath.h +57 -0
  1111. data/third_party/abseil-cpp/absl/random/internal/generate_real.h +144 -0
  1112. data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +245 -0
  1113. data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +150 -0
  1114. data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +308 -0
  1115. data/third_party/abseil-cpp/absl/random/internal/platform.h +171 -0
  1116. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +253 -0
  1117. data/third_party/abseil-cpp/absl/random/internal/pool_urbg.h +131 -0
  1118. data/third_party/abseil-cpp/absl/random/internal/randen.cc +91 -0
  1119. data/third_party/abseil-cpp/absl/random/internal/randen.h +102 -0
  1120. data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +221 -0
  1121. data/third_party/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
  1122. data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +239 -0
  1123. data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +526 -0
  1124. data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
  1125. data/third_party/abseil-cpp/absl/random/internal/randen_round_keys.cc +462 -0
  1126. data/third_party/abseil-cpp/absl/random/internal/randen_slow.cc +471 -0
  1127. data/third_party/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
  1128. data/third_party/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
  1129. data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +167 -0
  1130. data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +267 -0
  1131. data/third_party/abseil-cpp/absl/random/internal/seed_material.h +104 -0
  1132. data/third_party/abseil-cpp/absl/random/internal/traits.h +101 -0
  1133. data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
  1134. data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +111 -0
  1135. data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +257 -0
  1136. data/third_party/abseil-cpp/absl/random/poisson_distribution.h +258 -0
  1137. data/third_party/abseil-cpp/absl/random/random.h +189 -0
  1138. data/third_party/abseil-cpp/absl/random/seed_gen_exception.cc +46 -0
  1139. data/third_party/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
  1140. data/third_party/abseil-cpp/absl/random/seed_sequences.cc +29 -0
  1141. data/third_party/abseil-cpp/absl/random/seed_sequences.h +110 -0
  1142. data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +275 -0
  1143. data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +202 -0
  1144. data/third_party/abseil-cpp/absl/random/zipf_distribution.h +271 -0
  1145. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +5 -5
  1146. data/third_party/abseil-cpp/absl/status/status.cc +9 -17
  1147. data/third_party/abseil-cpp/absl/status/status.h +19 -15
  1148. data/third_party/abseil-cpp/absl/status/statusor.cc +34 -2
  1149. data/third_party/abseil-cpp/absl/status/statusor.h +31 -21
  1150. data/third_party/abseil-cpp/absl/strings/charconv.cc +3 -3
  1151. data/third_party/abseil-cpp/absl/strings/charconv.h +3 -2
  1152. data/third_party/abseil-cpp/absl/strings/cord.cc +453 -359
  1153. data/third_party/abseil-cpp/absl/strings/cord.h +197 -70
  1154. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +1 -1
  1155. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +6 -0
  1156. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +140 -63
  1157. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1128 -0
  1158. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +939 -0
  1159. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +185 -0
  1160. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +265 -0
  1161. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +68 -0
  1162. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +211 -0
  1163. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +129 -0
  1164. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +50 -0
  1165. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +7 -7
  1166. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +55 -181
  1167. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +42 -24
  1168. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +4 -0
  1169. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +96 -0
  1170. data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +85 -0
  1171. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +139 -0
  1172. data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +131 -0
  1173. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +445 -0
  1174. data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +298 -0
  1175. data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +87 -0
  1176. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
  1177. data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +121 -0
  1178. data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +48 -2
  1179. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +8 -0
  1180. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +3 -4
  1181. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +1 -1
  1182. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +6 -6
  1183. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +36 -18
  1184. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +62 -73
  1185. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +24 -16
  1186. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +35 -35
  1187. data/third_party/abseil-cpp/absl/strings/numbers.cc +1 -1
  1188. data/third_party/abseil-cpp/absl/strings/numbers.h +34 -0
  1189. data/third_party/abseil-cpp/absl/strings/str_cat.cc +4 -4
  1190. data/third_party/abseil-cpp/absl/strings/str_format.h +1 -2
  1191. data/third_party/abseil-cpp/absl/strings/string_view.cc +16 -21
  1192. data/third_party/abseil-cpp/absl/strings/string_view.h +120 -39
  1193. data/third_party/abseil-cpp/absl/strings/substitute.cc +2 -1
  1194. data/third_party/abseil-cpp/absl/strings/substitute.h +99 -74
  1195. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +25 -15
  1196. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +5 -3
  1197. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +1 -1
  1198. data/third_party/abseil-cpp/absl/synchronization/mutex.h +3 -3
  1199. data/third_party/abseil-cpp/absl/time/civil_time.cc +1 -3
  1200. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +93 -20
  1201. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
  1202. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +2 -1
  1203. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +83 -21
  1204. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +49 -0
  1205. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +1 -1
  1206. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +2 -3
  1207. data/third_party/abseil-cpp/absl/time/time.h +67 -36
  1208. data/third_party/abseil-cpp/absl/types/bad_optional_access.h +1 -1
  1209. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +2 -2
  1210. data/third_party/abseil-cpp/absl/types/span.h +3 -3
  1211. data/third_party/boringssl-with-bazel/err_data.c +681 -677
  1212. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +19 -11
  1213. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +41 -30
  1214. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +1 -1
  1215. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +59 -47
  1216. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +24 -28
  1217. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +5 -0
  1218. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +28 -0
  1219. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +48 -272
  1220. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +1 -0
  1221. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +8 -6
  1222. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +13 -0
  1223. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +3 -1
  1224. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +21 -0
  1225. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +2 -2
  1226. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +12 -0
  1227. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +1 -2
  1228. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +7 -7
  1229. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +2 -2
  1230. data/third_party/boringssl-with-bazel/src/crypto/mem.c +18 -0
  1231. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +29 -0
  1232. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +0 -1
  1233. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +1 -1
  1234. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +1 -1
  1235. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +5 -1
  1236. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +59 -23
  1237. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +2 -18
  1238. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +8 -2
  1239. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +216 -11
  1240. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +1 -1
  1241. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +1 -1
  1242. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +1 -1
  1243. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +1 -1
  1244. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +1 -1
  1245. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +1 -1
  1246. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +1 -0
  1247. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +0 -1
  1248. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +21 -4
  1249. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +971 -253
  1250. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +3 -3
  1251. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +0 -1
  1252. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +8 -0
  1253. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +13 -1
  1254. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +4 -12
  1255. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +27 -41
  1256. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +12 -27
  1257. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +8 -10
  1258. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +29 -55
  1259. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +1 -1
  1260. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +12 -13
  1261. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +6 -1
  1262. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +7 -1
  1263. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +24 -28
  1264. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +29 -11
  1265. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +12 -43
  1266. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +4 -3
  1267. data/third_party/boringssl-with-bazel/src/ssl/internal.h +3 -3
  1268. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +4 -0
  1269. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +4 -0
  1270. data/third_party/cares/cares/{ares.h → include/ares.h} +73 -1
  1271. data/third_party/cares/cares/{ares_dns.h → include/ares_dns.h} +9 -0
  1272. data/third_party/cares/cares/{ares_rules.h → include/ares_rules.h} +0 -0
  1273. data/third_party/cares/cares/{ares_version.h → include/ares_version.h} +3 -3
  1274. data/third_party/cares/cares/{ares__close_sockets.c → src/lib/ares__close_sockets.c} +2 -2
  1275. data/third_party/cares/cares/{ares__get_hostent.c → src/lib/ares__get_hostent.c} +1 -2
  1276. data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +260 -0
  1277. data/third_party/cares/cares/{ares__read_line.c → src/lib/ares__read_line.c} +0 -0
  1278. data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +264 -0
  1279. data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +499 -0
  1280. data/third_party/cares/cares/{ares__timeval.c → src/lib/ares__timeval.c} +0 -0
  1281. data/third_party/cares/cares/src/lib/ares_android.c +444 -0
  1282. data/third_party/cares/cares/src/lib/ares_android.h +27 -0
  1283. data/third_party/cares/cares/{ares_cancel.c → src/lib/ares_cancel.c} +0 -0
  1284. data/third_party/cares/cares/{ares_create_query.c → src/lib/ares_create_query.c} +8 -17
  1285. data/third_party/cares/cares/{ares_data.c → src/lib/ares_data.c} +18 -0
  1286. data/third_party/cares/cares/{ares_data.h → src/lib/ares_data.h} +2 -0
  1287. data/third_party/cares/cares/{ares_destroy.c → src/lib/ares_destroy.c} +0 -0
  1288. data/third_party/cares/cares/{ares_expand_name.c → src/lib/ares_expand_name.c} +114 -23
  1289. data/third_party/cares/cares/{ares_expand_string.c → src/lib/ares_expand_string.c} +2 -5
  1290. data/third_party/cares/cares/{ares_fds.c → src/lib/ares_fds.c} +0 -0
  1291. data/third_party/cares/cares/{ares_free_hostent.c → src/lib/ares_free_hostent.c} +6 -4
  1292. data/third_party/cares/cares/{ares_free_string.c → src/lib/ares_free_string.c} +0 -0
  1293. data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +59 -0
  1294. data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +772 -0
  1295. data/third_party/cares/cares/{ares_getenv.c → src/lib/ares_getenv.c} +0 -2
  1296. data/third_party/cares/cares/{ares_getenv.h → src/lib/ares_getenv.h} +0 -0
  1297. data/third_party/cares/cares/{ares_gethostbyaddr.c → src/lib/ares_gethostbyaddr.c} +2 -9
  1298. data/third_party/cares/cares/{ares_gethostbyname.c → src/lib/ares_gethostbyname.c} +25 -20
  1299. data/third_party/cares/cares/{ares_getnameinfo.c → src/lib/ares_getnameinfo.c} +4 -10
  1300. data/third_party/cares/cares/{ares_getsock.c → src/lib/ares_getsock.c} +0 -0
  1301. data/third_party/cares/cares/{ares_inet_net_pton.h → src/lib/ares_inet_net_pton.h} +0 -0
  1302. data/third_party/cares/cares/{ares_init.c → src/lib/ares_init.c} +79 -40
  1303. data/third_party/cares/cares/{ares_iphlpapi.h → src/lib/ares_iphlpapi.h} +0 -0
  1304. data/third_party/cares/cares/{ares_ipv6.h → src/lib/ares_ipv6.h} +7 -0
  1305. data/third_party/cares/cares/{ares_library_init.c → src/lib/ares_library_init.c} +7 -2
  1306. data/third_party/cares/cares/{ares_library_init.h → src/lib/ares_library_init.h} +1 -1
  1307. data/third_party/cares/cares/{ares_llist.c → src/lib/ares_llist.c} +0 -0
  1308. data/third_party/cares/cares/{ares_llist.h → src/lib/ares_llist.h} +0 -0
  1309. data/third_party/cares/cares/{ares_mkquery.c → src/lib/ares_mkquery.c} +0 -0
  1310. data/third_party/cares/cares/src/lib/ares_nameser.h +482 -0
  1311. data/third_party/cares/cares/{ares_nowarn.c → src/lib/ares_nowarn.c} +0 -0
  1312. data/third_party/cares/cares/{ares_nowarn.h → src/lib/ares_nowarn.h} +0 -0
  1313. data/third_party/cares/cares/{ares_options.c → src/lib/ares_options.c} +0 -0
  1314. data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +209 -0
  1315. data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +212 -0
  1316. data/third_party/cares/cares/src/lib/ares_parse_caa_reply.c +199 -0
  1317. data/third_party/cares/cares/{ares_parse_mx_reply.c → src/lib/ares_parse_mx_reply.c} +2 -8
  1318. data/third_party/cares/cares/{ares_parse_naptr_reply.c → src/lib/ares_parse_naptr_reply.c} +2 -13
  1319. data/third_party/cares/cares/{ares_parse_ns_reply.c → src/lib/ares_parse_ns_reply.c} +5 -11
  1320. data/third_party/cares/cares/{ares_parse_ptr_reply.c → src/lib/ares_parse_ptr_reply.c} +53 -46
  1321. data/third_party/cares/cares/src/lib/ares_parse_soa_reply.c +179 -0
  1322. data/third_party/cares/cares/{ares_parse_srv_reply.c → src/lib/ares_parse_srv_reply.c} +2 -13
  1323. data/third_party/cares/cares/{ares_parse_txt_reply.c → src/lib/ares_parse_txt_reply.c} +3 -9
  1324. data/third_party/cares/cares/{ares_platform.c → src/lib/ares_platform.c} +0 -0
  1325. data/third_party/cares/cares/{ares_platform.h → src/lib/ares_platform.h} +0 -0
  1326. data/third_party/cares/cares/{ares_private.h → src/lib/ares_private.h} +52 -11
  1327. data/third_party/cares/cares/{ares_process.c → src/lib/ares_process.c} +127 -52
  1328. data/third_party/cares/cares/{ares_query.c → src/lib/ares_query.c} +3 -9
  1329. data/third_party/cares/cares/{ares_search.c → src/lib/ares_search.c} +5 -7
  1330. data/third_party/cares/cares/{ares_send.c → src/lib/ares_send.c} +2 -8
  1331. data/third_party/cares/cares/{ares_setup.h → src/lib/ares_setup.h} +4 -1
  1332. data/third_party/cares/cares/{ares_strcasecmp.c → src/lib/ares_strcasecmp.c} +0 -0
  1333. data/third_party/cares/cares/{ares_strcasecmp.h → src/lib/ares_strcasecmp.h} +0 -0
  1334. data/third_party/cares/cares/{ares_strdup.c → src/lib/ares_strdup.c} +0 -0
  1335. data/third_party/cares/cares/{ares_strdup.h → src/lib/ares_strdup.h} +0 -0
  1336. data/third_party/cares/cares/{ares_strerror.c → src/lib/ares_strerror.c} +0 -0
  1337. data/third_party/cares/cares/{ares_strsplit.c → src/lib/ares_strsplit.c} +4 -0
  1338. data/third_party/cares/cares/{ares_strsplit.h → src/lib/ares_strsplit.h} +0 -0
  1339. data/third_party/cares/cares/{ares_timeout.c → src/lib/ares_timeout.c} +0 -0
  1340. data/third_party/cares/cares/{ares_version.c → src/lib/ares_version.c} +0 -0
  1341. data/third_party/cares/cares/{ares_writev.c → src/lib/ares_writev.c} +0 -0
  1342. data/third_party/cares/cares/src/lib/ares_writev.h +36 -0
  1343. data/third_party/cares/cares/{bitncmp.c → src/lib/bitncmp.c} +0 -0
  1344. data/third_party/cares/cares/{bitncmp.h → src/lib/bitncmp.h} +0 -0
  1345. data/third_party/cares/cares/src/lib/config-dos.h +115 -0
  1346. data/third_party/cares/cares/{config-win32.h → src/lib/config-win32.h} +0 -0
  1347. data/third_party/cares/cares/{inet_net_pton.c → src/lib/inet_net_pton.c} +2 -8
  1348. data/third_party/cares/cares/{inet_ntop.c → src/lib/inet_ntop.c} +2 -8
  1349. data/third_party/cares/cares/{setup_once.h → src/lib/setup_once.h} +0 -0
  1350. data/third_party/cares/cares/{windows_port.c → src/lib/windows_port.c} +0 -0
  1351. data/third_party/upb/third_party/utf8_range/naive.c +92 -0
  1352. data/third_party/upb/third_party/utf8_range/range2-neon.c +157 -0
  1353. data/third_party/upb/third_party/utf8_range/range2-sse.c +170 -0
  1354. data/third_party/upb/third_party/utf8_range/utf8_range.h +9 -0
  1355. data/third_party/upb/upb/decode.c +716 -378
  1356. data/third_party/upb/upb/decode.h +43 -17
  1357. data/third_party/upb/upb/decode_fast.c +303 -301
  1358. data/third_party/upb/upb/decode_fast.h +18 -18
  1359. data/third_party/upb/upb/decode_internal.h +73 -55
  1360. data/third_party/upb/upb/def.c +2009 -979
  1361. data/third_party/upb/upb/def.h +321 -258
  1362. data/third_party/upb/upb/def.hpp +139 -169
  1363. data/third_party/upb/upb/encode.c +261 -174
  1364. data/third_party/upb/upb/encode.h +15 -17
  1365. data/third_party/upb/upb/msg.c +154 -121
  1366. data/third_party/upb/upb/msg.h +40 -33
  1367. data/third_party/upb/upb/msg_internal.h +381 -250
  1368. data/third_party/upb/upb/reflection.c +292 -212
  1369. data/third_party/upb/upb/reflection.h +91 -67
  1370. data/third_party/upb/upb/reflection.hpp +6 -6
  1371. data/third_party/upb/upb/table.c +222 -142
  1372. data/third_party/upb/upb/table_internal.h +128 -96
  1373. data/third_party/upb/upb/text_encode.c +114 -91
  1374. data/third_party/upb/upb/text_encode.h +10 -10
  1375. data/third_party/upb/upb/upb.c +118 -71
  1376. data/third_party/upb/upb/upb.h +120 -144
  1377. data/third_party/upb/upb/upb.hpp +31 -28
  1378. data/third_party/upb/upb/upb_internal.h +21 -11
  1379. data/third_party/xxhash/xxhash.h +607 -352
  1380. metadata +476 -213
  1381. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +0 -44
  1382. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +0 -83
  1383. data/src/core/ext/filters/client_channel/resolver_registry.cc +0 -195
  1384. data/src/core/ext/filters/client_channel/resolver_registry.h +0 -89
  1385. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +0 -119
  1386. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +0 -95
  1387. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +0 -189
  1388. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +0 -53
  1389. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +0 -83
  1390. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +0 -125
  1391. data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +0 -37
  1392. data/src/core/ext/transport/chttp2/transport/hpack_encoder_index.h +0 -107
  1393. data/src/core/ext/transport/chttp2/transport/hpack_utils.cc +0 -46
  1394. data/src/core/ext/transport/chttp2/transport/popularity_count.h +0 -60
  1395. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +0 -27
  1396. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +0 -62
  1397. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +0 -27
  1398. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +0 -62
  1399. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +0 -27
  1400. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +0 -62
  1401. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +0 -27
  1402. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +0 -62
  1403. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +0 -27
  1404. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +0 -62
  1405. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +0 -72
  1406. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +0 -35
  1407. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +0 -73
  1408. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +0 -35
  1409. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +0 -72
  1410. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +0 -35
  1411. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +0 -80
  1412. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +0 -35
  1413. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +0 -74
  1414. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +0 -35
  1415. data/src/core/lib/avl/avl.cc +0 -306
  1416. data/src/core/lib/compression/algorithm_metadata.h +0 -62
  1417. data/src/core/lib/compression/compression_args.cc +0 -138
  1418. data/src/core/lib/compression/compression_args.h +0 -56
  1419. data/src/core/lib/compression/stream_compression.cc +0 -81
  1420. data/src/core/lib/compression/stream_compression.h +0 -117
  1421. data/src/core/lib/compression/stream_compression_gzip.cc +0 -231
  1422. data/src/core/lib/compression/stream_compression_gzip.h +0 -28
  1423. data/src/core/lib/compression/stream_compression_identity.cc +0 -91
  1424. data/src/core/lib/compression/stream_compression_identity.h +0 -29
  1425. data/src/core/lib/gprpp/match.h +0 -73
  1426. data/src/core/lib/gprpp/overload.h +0 -59
  1427. data/src/core/lib/iomgr/event_engine/iomgr.h +0 -42
  1428. data/src/core/lib/iomgr/iomgr_custom.cc +0 -79
  1429. data/src/core/lib/iomgr/iomgr_custom.h +0 -49
  1430. data/src/core/lib/iomgr/pollset_custom.cc +0 -105
  1431. data/src/core/lib/iomgr/pollset_custom.h +0 -37
  1432. data/src/core/lib/iomgr/pollset_set_custom.cc +0 -47
  1433. data/src/core/lib/iomgr/pollset_set_custom.h +0 -26
  1434. data/src/core/lib/iomgr/resolve_address_custom.cc +0 -169
  1435. data/src/core/lib/iomgr/resolve_address_custom.h +0 -44
  1436. data/src/core/lib/iomgr/resource_quota.cc +0 -1106
  1437. data/src/core/lib/iomgr/resource_quota.h +0 -226
  1438. data/src/core/lib/iomgr/tcp_client_custom.cc +0 -152
  1439. data/src/core/lib/iomgr/tcp_custom.cc +0 -377
  1440. data/src/core/lib/iomgr/tcp_custom.h +0 -86
  1441. data/src/core/lib/iomgr/tcp_server_custom.cc +0 -467
  1442. data/src/core/lib/iomgr/timer_custom.cc +0 -96
  1443. data/src/core/lib/iomgr/timer_custom.h +0 -43
  1444. data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +0 -171
  1445. data/src/core/lib/security/authorization/sdk_server_authz_filter.h +0 -67
  1446. data/src/core/lib/security/credentials/credentials_metadata.cc +0 -61
  1447. data/src/core/lib/slice/slice_intern.cc +0 -367
  1448. data/src/core/lib/slice/slice_utils.h +0 -200
  1449. data/src/core/lib/slice/static_slice.cc +0 -529
  1450. data/src/core/lib/slice/static_slice.h +0 -331
  1451. data/src/core/lib/surface/init_secure.cc +0 -103
  1452. data/src/core/lib/transport/metadata.cc +0 -714
  1453. data/src/core/lib/transport/metadata.h +0 -449
  1454. data/src/core/lib/transport/metadata_batch.cc +0 -94
  1455. data/src/core/lib/transport/static_metadata.cc +0 -1117
  1456. data/src/core/lib/transport/static_metadata.h +0 -340
  1457. data/src/core/lib/transport/status_metadata.cc +0 -63
  1458. data/src/core/lib/transport/status_metadata.h +0 -48
  1459. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +0 -93
  1460. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +0 -217
  1461. data/third_party/cares/cares/ares_getopt.c +0 -122
  1462. data/third_party/cares/cares/ares_getopt.h +0 -53
  1463. data/third_party/cares/cares/ares_parse_a_reply.c +0 -264
  1464. data/third_party/cares/cares/ares_parse_aaaa_reply.c +0 -264
  1465. data/third_party/cares/cares/ares_parse_soa_reply.c +0 -133
@@ -526,44 +526,44 @@ OPENSSL_EXPORT int RSA_add_pkcs1_prefix(uint8_t **out_msg, size_t *out_msg_len,
526
526
 
527
527
  // ASN.1 functions.
528
528
 
529
- // RSA_parse_public_key parses a DER-encoded RSAPublicKey structure (RFC 3447)
529
+ // RSA_parse_public_key parses a DER-encoded RSAPublicKey structure (RFC 8017)
530
530
  // from |cbs| and advances |cbs|. It returns a newly-allocated |RSA| or NULL on
531
531
  // error.
532
532
  OPENSSL_EXPORT RSA *RSA_parse_public_key(CBS *cbs);
533
533
 
534
534
  // RSA_public_key_from_bytes parses |in| as a DER-encoded RSAPublicKey structure
535
- // (RFC 3447). It returns a newly-allocated |RSA| or NULL on error.
535
+ // (RFC 8017). It returns a newly-allocated |RSA| or NULL on error.
536
536
  OPENSSL_EXPORT RSA *RSA_public_key_from_bytes(const uint8_t *in, size_t in_len);
537
537
 
538
538
  // RSA_marshal_public_key marshals |rsa| as a DER-encoded RSAPublicKey structure
539
- // (RFC 3447) and appends the result to |cbb|. It returns one on success and
539
+ // (RFC 8017) and appends the result to |cbb|. It returns one on success and
540
540
  // zero on failure.
541
541
  OPENSSL_EXPORT int RSA_marshal_public_key(CBB *cbb, const RSA *rsa);
542
542
 
543
543
  // RSA_public_key_to_bytes marshals |rsa| as a DER-encoded RSAPublicKey
544
- // structure (RFC 3447) and, on success, sets |*out_bytes| to a newly allocated
544
+ // structure (RFC 8017) and, on success, sets |*out_bytes| to a newly allocated
545
545
  // buffer containing the result and returns one. Otherwise, it returns zero. The
546
546
  // result should be freed with |OPENSSL_free|.
547
547
  OPENSSL_EXPORT int RSA_public_key_to_bytes(uint8_t **out_bytes, size_t *out_len,
548
548
  const RSA *rsa);
549
549
 
550
- // RSA_parse_private_key parses a DER-encoded RSAPrivateKey structure (RFC 3447)
550
+ // RSA_parse_private_key parses a DER-encoded RSAPrivateKey structure (RFC 8017)
551
551
  // from |cbs| and advances |cbs|. It returns a newly-allocated |RSA| or NULL on
552
552
  // error.
553
553
  OPENSSL_EXPORT RSA *RSA_parse_private_key(CBS *cbs);
554
554
 
555
555
  // RSA_private_key_from_bytes parses |in| as a DER-encoded RSAPrivateKey
556
- // structure (RFC 3447). It returns a newly-allocated |RSA| or NULL on error.
556
+ // structure (RFC 8017). It returns a newly-allocated |RSA| or NULL on error.
557
557
  OPENSSL_EXPORT RSA *RSA_private_key_from_bytes(const uint8_t *in,
558
558
  size_t in_len);
559
559
 
560
560
  // RSA_marshal_private_key marshals |rsa| as a DER-encoded RSAPrivateKey
561
- // structure (RFC 3447) and appends the result to |cbb|. It returns one on
561
+ // structure (RFC 8017) and appends the result to |cbb|. It returns one on
562
562
  // success and zero on failure.
563
563
  OPENSSL_EXPORT int RSA_marshal_private_key(CBB *cbb, const RSA *rsa);
564
564
 
565
565
  // RSA_private_key_to_bytes marshals |rsa| as a DER-encoded RSAPrivateKey
566
- // structure (RFC 3447) and, on success, sets |*out_bytes| to a newly allocated
566
+ // structure (RFC 8017) and, on success, sets |*out_bytes| to a newly allocated
567
567
  // buffer containing the result and returns one. Otherwise, it returns zero. The
568
568
  // result should be freed with |OPENSSL_free|.
569
569
  OPENSSL_EXPORT int RSA_private_key_to_bytes(uint8_t **out_bytes,
@@ -625,32 +625,28 @@ OPENSSL_EXPORT int RSA_blinding_on(RSA *rsa, BN_CTX *ctx);
625
625
  OPENSSL_EXPORT RSA *RSA_generate_key(int bits, unsigned long e, void *callback,
626
626
  void *cb_arg);
627
627
 
628
- // d2i_RSAPublicKey parses an ASN.1, DER-encoded, RSA public key from |len|
629
- // bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result
630
- // is in |*out|. Note that, even if |*out| is already non-NULL on entry, it
631
- // will not be written to. Rather, a fresh |RSA| is allocated and the previous
632
- // one is freed. On successful exit, |*inp| is advanced past the DER structure.
633
- // It returns the result or NULL on error.
628
+ // d2i_RSAPublicKey parses a DER-encoded RSAPublicKey structure (RFC 8017) from
629
+ // |len| bytes at |*inp|, as described in |d2i_SAMPLE|.
630
+ //
631
+ // Use |RSA_parse_public_key| instead.
634
632
  OPENSSL_EXPORT RSA *d2i_RSAPublicKey(RSA **out, const uint8_t **inp, long len);
635
633
 
636
- // i2d_RSAPublicKey marshals |in| to an ASN.1, DER structure. If |outp| is not
637
- // NULL then the result is written to |*outp| and |*outp| is advanced just past
638
- // the output. It returns the number of bytes in the result, whether written or
639
- // not, or a negative value on error.
634
+ // i2d_RSAPublicKey marshals |in| to a DER-encoded RSAPublicKey structure (RFC
635
+ // 8017), as described in |i2d_SAMPLE|.
636
+ //
637
+ // Use |RSA_marshal_public_key| instead.
640
638
  OPENSSL_EXPORT int i2d_RSAPublicKey(const RSA *in, uint8_t **outp);
641
639
 
642
- // d2i_RSAPrivateKey parses an ASN.1, DER-encoded, RSA private key from |len|
643
- // bytes at |*inp|. If |out| is not NULL then, on exit, a pointer to the result
644
- // is in |*out|. Note that, even if |*out| is already non-NULL on entry, it
645
- // will not be written to. Rather, a fresh |RSA| is allocated and the previous
646
- // one is freed. On successful exit, |*inp| is advanced past the DER structure.
647
- // It returns the result or NULL on error.
640
+ // d2i_RSAPrivateKey parses a DER-encoded RSAPrivateKey structure (RFC 8017)
641
+ // from |len| bytes at |*inp|, as described in |d2i_SAMPLE|.
642
+ //
643
+ // Use |RSA_parse_private_key| instead.
648
644
  OPENSSL_EXPORT RSA *d2i_RSAPrivateKey(RSA **out, const uint8_t **inp, long len);
649
645
 
650
- // i2d_RSAPrivateKey marshals |in| to an ASN.1, DER structure. If |outp| is not
651
- // NULL then the result is written to |*outp| and |*outp| is advanced just past
652
- // the output. It returns the number of bytes in the result, whether written or
653
- // not, or a negative value on error.
646
+ // i2d_RSAPrivateKey marshals |in| to a DER-encoded RSAPrivateKey structure (RFC
647
+ // 8017), as described in |i2d_SAMPLE|.
648
+ //
649
+ // Use |RSA_marshal_private_key| instead.
654
650
  OPENSSL_EXPORT int i2d_RSAPrivateKey(const RSA *in, uint8_t **outp);
655
651
 
656
652
  // RSA_padding_add_PKCS1_PSS acts like |RSA_padding_add_PKCS1_PSS_mgf1| but the
@@ -362,10 +362,31 @@ OPENSSL_EXPORT int SSL_read(SSL *ssl, void *buf, int num);
362
362
  // SSL_peek behaves like |SSL_read| but does not consume any bytes returned.
363
363
  OPENSSL_EXPORT int SSL_peek(SSL *ssl, void *buf, int num);
364
364
 
365
- // SSL_pending returns the number of bytes available in |ssl|. It does not read
366
- // from the transport.
365
+ // SSL_pending returns the number of buffered, decrypted bytes available for
366
+ // read in |ssl|. It does not read from the transport.
367
+ //
368
+ // In DTLS, it is possible for this function to return zero while there is
369
+ // buffered, undecrypted data from the transport in |ssl|. For example,
370
+ // |SSL_read| may read a datagram with two records, decrypt the first, and leave
371
+ // the second buffered for a subsequent call to |SSL_read|. Callers that wish to
372
+ // detect this case can use |SSL_has_pending|.
367
373
  OPENSSL_EXPORT int SSL_pending(const SSL *ssl);
368
374
 
375
+ // SSL_has_pending returns one if |ssl| has buffered, decrypted bytes available
376
+ // for read, or if |ssl| has buffered data from the transport that has not yet
377
+ // been decrypted. If |ssl| has neither, this function returns zero.
378
+ //
379
+ // In TLS, BoringSSL does not implement read-ahead, so this function returns one
380
+ // if and only if |SSL_pending| would return a non-zero value. In DTLS, it is
381
+ // possible for this function to return one while |SSL_pending| returns zero.
382
+ // For example, |SSL_read| may read a datagram with two records, decrypt the
383
+ // first, and leave the second buffered for a subsequent call to |SSL_read|.
384
+ //
385
+ // As a result, if this function returns one, the next call to |SSL_read| may
386
+ // still fail, read from the transport, or both. The buffered, undecrypted data
387
+ // may be invalid or incomplete.
388
+ OPENSSL_EXPORT int SSL_has_pending(const SSL *ssl);
389
+
369
390
  // SSL_write writes up to |num| bytes from |buf| into |ssl|. It implicitly runs
370
391
  // any pending handshakes, including renegotiations when enabled. On success, it
371
392
  // returns the number of bytes written. Otherwise, it returns <= 0. The caller
@@ -3887,6 +3908,10 @@ OPENSSL_EXPORT uint64_t SSL_get_read_sequence(const SSL *ssl);
3887
3908
  // two most significant bytes.
3888
3909
  OPENSSL_EXPORT uint64_t SSL_get_write_sequence(const SSL *ssl);
3889
3910
 
3911
+ // SSL_CTX_set_record_protocol_version returns whether |version| is zero.
3912
+ OPENSSL_EXPORT int SSL_CTX_set_record_protocol_version(SSL_CTX *ctx,
3913
+ int version);
3914
+
3890
3915
 
3891
3916
  // Handshake hints.
3892
3917
  //
@@ -4575,20 +4600,13 @@ OPENSSL_EXPORT int SSL_get_shared_sigalgs(SSL *ssl, int idx, int *psign,
4575
4600
  // SSL_MODE_HANDSHAKE_CUTTHROUGH is the same as SSL_MODE_ENABLE_FALSE_START.
4576
4601
  #define SSL_MODE_HANDSHAKE_CUTTHROUGH SSL_MODE_ENABLE_FALSE_START
4577
4602
 
4578
- // i2d_SSL_SESSION serializes |in| to the bytes pointed to by |*pp|. On success,
4579
- // it returns the number of bytes written and advances |*pp| by that many bytes.
4580
- // On failure, it returns -1. If |pp| is NULL, no bytes are written and only the
4581
- // length is returned.
4603
+ // i2d_SSL_SESSION serializes |in|, as described in |i2d_SAMPLE|.
4582
4604
  //
4583
4605
  // Use |SSL_SESSION_to_bytes| instead.
4584
4606
  OPENSSL_EXPORT int i2d_SSL_SESSION(SSL_SESSION *in, uint8_t **pp);
4585
4607
 
4586
4608
  // d2i_SSL_SESSION parses a serialized session from the |length| bytes pointed
4587
- // to by |*pp|. It returns the new |SSL_SESSION| and advances |*pp| by the
4588
- // number of bytes consumed on success and NULL on failure. The caller takes
4589
- // ownership of the new session and must call |SSL_SESSION_free| when done.
4590
- //
4591
- // If |a| is non-NULL, |*a| is released and set the new |SSL_SESSION|.
4609
+ // to by |*pp|, as described in |d2i_SAMPLE|.
4592
4610
  //
4593
4611
  // Use |SSL_SESSION_from_bytes| instead.
4594
4612
  OPENSSL_EXPORT SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const uint8_t **pp,
@@ -82,7 +82,7 @@
82
82
  #include <openssl/thread.h>
83
83
  #include <time.h>
84
84
 
85
- #ifdef __cplusplus
85
+ #if defined(__cplusplus)
86
86
  extern "C" {
87
87
  #endif
88
88
 
@@ -831,7 +831,6 @@ OPENSSL_EXPORT X509_REQ *X509_to_X509_REQ(X509 *x, EVP_PKEY *pkey,
831
831
  const EVP_MD *md);
832
832
 
833
833
  DECLARE_ASN1_ENCODE_FUNCTIONS(X509_ALGORS, X509_ALGORS, X509_ALGORS)
834
- DECLARE_ASN1_FUNCTIONS(X509_VAL)
835
834
 
836
835
  DECLARE_ASN1_FUNCTIONS(X509_PUBKEY)
837
836
 
@@ -885,28 +884,16 @@ OPENSSL_EXPORT int i2d_X509_AUX(X509 *a, unsigned char **pp);
885
884
  OPENSSL_EXPORT X509 *d2i_X509_AUX(X509 **a, const unsigned char **pp,
886
885
  long length);
887
886
 
888
- // i2d_re_X509_tbs serializes the TBSCertificate portion of |x509|. If |outp| is
889
- // NULL, nothing is written. Otherwise, if |*outp| is not NULL, the result is
890
- // written to |*outp|, which must have enough space available, and |*outp| is
891
- // advanced just past the output. If |outp| is non-NULL and |*outp| is NULL, it
892
- // sets |*outp| to a newly-allocated buffer containing the result. The caller is
893
- // responsible for releasing the buffer with |OPENSSL_free|. In all cases, this
894
- // function returns the number of bytes in the result, whether written or not,
895
- // or a negative value on error.
887
+ // i2d_re_X509_tbs serializes the TBSCertificate portion of |x509|, as described
888
+ // in |i2d_SAMPLE|.
896
889
  //
897
890
  // This function re-encodes the TBSCertificate and may not reflect |x509|'s
898
891
  // original encoding. It may be used to manually generate a signature for a new
899
892
  // certificate. To verify certificates, use |i2d_X509_tbs| instead.
900
893
  OPENSSL_EXPORT int i2d_re_X509_tbs(X509 *x509, unsigned char **outp);
901
894
 
902
- // i2d_X509_tbs serializes the TBSCertificate portion of |x509|. If |outp| is
903
- // NULL, nothing is written. Otherwise, if |*outp| is not NULL, the result is
904
- // written to |*outp|, which must have enough space available, and |*outp| is
905
- // advanced just past the output. If |outp| is non-NULL and |*outp| is NULL, it
906
- // sets |*outp| to a newly-allocated buffer containing the result. The caller is
907
- // responsible for releasing the buffer with |OPENSSL_free|. In all cases, this
908
- // function returns the number of bytes in the result, whether written or not,
909
- // or a negative value on error.
895
+ // i2d_X509_tbs serializes the TBSCertificate portion of |x509|, as described in
896
+ // |i2d_SAMPLE|.
910
897
  //
911
898
  // This function preserves the original encoding of the TBSCertificate and may
912
899
  // not reflect modifications made to |x509|. It may be used to manually verify
@@ -1073,13 +1060,7 @@ OPENSSL_EXPORT void X509_REQ_get0_signature(const X509_REQ *req,
1073
1060
  OPENSSL_EXPORT int X509_REQ_get_signature_nid(const X509_REQ *req);
1074
1061
 
1075
1062
  // i2d_re_X509_REQ_tbs serializes the CertificationRequestInfo (see RFC 2986)
1076
- // portion of |req|. If |outp| is NULL, nothing is written. Otherwise, if
1077
- // |*outp| is not NULL, the result is written to |*outp|, which must have enough
1078
- // space available, and |*outp| is advanced just past the output. If |outp| is
1079
- // non-NULL and |*outp| is NULL, it sets |*outp| to a newly-allocated buffer
1080
- // containing the result. The caller is responsible for releasing the buffer
1081
- // with |OPENSSL_free|. In all cases, this function returns the number of bytes
1082
- // in the result, whether written or not, or a negative value on error.
1063
+ // portion of |req|, as described in |i2d_SAMPLE|.
1083
1064
  //
1084
1065
  // This function re-encodes the CertificationRequestInfo and may not reflect
1085
1066
  // |req|'s original encoding. It may be used to manually generate a signature
@@ -1217,28 +1198,16 @@ OPENSSL_EXPORT void X509_CRL_get0_signature(const X509_CRL *crl,
1217
1198
  // a known NID.
1218
1199
  OPENSSL_EXPORT int X509_CRL_get_signature_nid(const X509_CRL *crl);
1219
1200
 
1220
- // i2d_re_X509_CRL_tbs serializes the TBSCertList portion of |crl|. If |outp| is
1221
- // NULL, nothing is written. Otherwise, if |*outp| is not NULL, the result is
1222
- // written to |*outp|, which must have enough space available, and |*outp| is
1223
- // advanced just past the output. If |outp| is non-NULL and |*outp| is NULL, it
1224
- // sets |*outp| to a newly-allocated buffer containing the result. The caller is
1225
- // responsible for releasing the buffer with |OPENSSL_free|. In all cases, this
1226
- // function returns the number of bytes in the result, whether written or not,
1227
- // or a negative value on error.
1201
+ // i2d_re_X509_CRL_tbs serializes the TBSCertList portion of |crl|, as described
1202
+ // in |i2d_SAMPLE|.
1228
1203
  //
1229
1204
  // This function re-encodes the TBSCertList and may not reflect |crl|'s original
1230
1205
  // encoding. It may be used to manually generate a signature for a new CRL. To
1231
1206
  // verify CRLs, use |i2d_X509_CRL_tbs| instead.
1232
1207
  OPENSSL_EXPORT int i2d_re_X509_CRL_tbs(X509_CRL *crl, unsigned char **outp);
1233
1208
 
1234
- // i2d_X509_CRL_tbs serializes the TBSCertList portion of |crl|. If |outp| is
1235
- // NULL, nothing is written. Otherwise, if |*outp| is not NULL, the result is
1236
- // written to |*outp|, which must have enough space available, and |*outp| is
1237
- // advanced just past the output. If |outp| is non-NULL and |*outp| is NULL, it
1238
- // sets |*outp| to a newly-allocated buffer containing the result. The caller is
1239
- // responsible for releasing the buffer with |OPENSSL_free|. In all cases, this
1240
- // function returns the number of bytes in the result, whether written or not,
1241
- // or a negative value on error.
1209
+ // i2d_X509_CRL_tbs serializes the TBSCertList portion of |crl|, as described in
1210
+ // |i2d_SAMPLE|.
1242
1211
  //
1243
1212
  // This function preserves the original encoding of the TBSCertList and may not
1244
1213
  // reflect modifications made to |crl|. It may be used to manually verify the
@@ -2366,8 +2335,8 @@ OPENSSL_EXPORT const X509_POLICY_NODE *X509_policy_node_get0_parent(
2366
2335
  const X509_POLICY_NODE *node);
2367
2336
 
2368
2337
 
2369
- #ifdef __cplusplus
2370
- }
2338
+ #if defined(__cplusplus)
2339
+ } // extern C
2371
2340
  #endif
2372
2341
 
2373
2342
  #if !defined(BORINGSSL_NO_CXX)
@@ -60,7 +60,7 @@
60
60
  #include <openssl/lhash.h>
61
61
  #include <openssl/x509.h>
62
62
 
63
- #ifdef __cplusplus
63
+ #if defined(__cplusplus)
64
64
  extern "C" {
65
65
  #endif
66
66
 
@@ -928,8 +928,8 @@ DEFINE_STACK_OF(X509_POLICY_NODE)
928
928
  // made after this point may be overwritten when the script is next run.
929
929
 
930
930
 
931
- #ifdef __cplusplus
932
- }
931
+ #if defined(__cplusplus)
932
+ } // extern C
933
933
 
934
934
  extern "C++" {
935
935
 
@@ -1016,5 +1016,6 @@ BSSL_NAMESPACE_END
1016
1016
  #define X509V3_R_UNSUPPORTED_TYPE 161
1017
1017
  #define X509V3_R_USER_TOO_LONG 162
1018
1018
  #define X509V3_R_INVALID_VALUE 163
1019
+ #define X509V3_R_TRAILING_DATA_IN_EXTENSION 164
1019
1020
 
1020
1021
  #endif
@@ -3692,7 +3692,7 @@ struct ssl_ctx_st {
3692
3692
 
3693
3693
  private:
3694
3694
  ~ssl_ctx_st();
3695
- friend void SSL_CTX_free(SSL_CTX *);
3695
+ friend OPENSSL_EXPORT void SSL_CTX_free(SSL_CTX *);
3696
3696
  };
3697
3697
 
3698
3698
  struct ssl_st {
@@ -3934,7 +3934,7 @@ struct ssl_session_st {
3934
3934
 
3935
3935
  private:
3936
3936
  ~ssl_session_st();
3937
- friend void SSL_SESSION_free(SSL_SESSION *);
3937
+ friend OPENSSL_EXPORT void SSL_SESSION_free(SSL_SESSION *);
3938
3938
  };
3939
3939
 
3940
3940
  struct ssl_ech_keys_st {
@@ -3947,7 +3947,7 @@ struct ssl_ech_keys_st {
3947
3947
 
3948
3948
  private:
3949
3949
  ~ssl_ech_keys_st() = default;
3950
- friend void SSL_ECH_KEYS_free(SSL_ECH_KEYS *);
3950
+ friend OPENSSL_EXPORT void SSL_ECH_KEYS_free(SSL_ECH_KEYS *);
3951
3951
  };
3952
3952
 
3953
3953
  #endif // OPENSSL_HEADER_SSL_INTERNAL_H
@@ -1697,6 +1697,10 @@ int SSL_pending(const SSL *ssl) {
1697
1697
  return static_cast<int>(ssl->s3->pending_app_data.size());
1698
1698
  }
1699
1699
 
1700
+ int SSL_has_pending(const SSL *ssl) {
1701
+ return SSL_pending(ssl) != 0 || !ssl->s3->read_buffer.empty();
1702
+ }
1703
+
1700
1704
  int SSL_CTX_check_private_key(const SSL_CTX *ctx) {
1701
1705
  return ssl_cert_check_private_key(ctx->cert.get(),
1702
1706
  ctx->cert->privatekey.get());
@@ -396,3 +396,7 @@ int SSL_SESSION_set_protocol_version(SSL_SESSION *session, uint16_t version) {
396
396
  // used on unit test sessions anyway.
397
397
  return api_version_to_wire(&session->ssl_version, version);
398
398
  }
399
+
400
+ int SSL_CTX_set_record_protocol_version(SSL_CTX *ctx, int version) {
401
+ return version == 0;
402
+ }
@@ -39,7 +39,7 @@
39
39
  #if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \
40
40
  defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \
41
41
  defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
42
- defined(__QNXNTO__)
42
+ defined(__QNXNTO__) || defined(__MVS__)
43
43
  #include <sys/select.h>
44
44
  #endif
45
45
  #if (defined(NETWARE) && !defined(__NOVELL_LIBC__))
@@ -135,6 +135,9 @@ extern "C" {
135
135
  /* More error codes */
136
136
  #define ARES_ECANCELLED 24 /* introduced in 1.7.0 */
137
137
 
138
+ /* More ares_getaddrinfo error codes */
139
+ #define ARES_ESERVICE 25 /* introduced in 1.?.0 */
140
+
138
141
  /* Flag values */
139
142
  #define ARES_FLAG_USEVC (1 << 0)
140
143
  #define ARES_FLAG_PRIMARY (1 << 1)
@@ -192,6 +195,8 @@ extern "C" {
192
195
  #define ARES_AI_V4MAPPED (1 << 4)
193
196
  #define ARES_AI_ALL (1 << 5)
194
197
  #define ARES_AI_ADDRCONFIG (1 << 6)
198
+ #define ARES_AI_NOSORT (1 << 7)
199
+ #define ARES_AI_ENVHOSTS (1 << 8)
195
200
  /* Reserved for future use */
196
201
  #define ARES_AI_IDN (1 << 10)
197
202
  #define ARES_AI_IDN_ALLOW_UNASSIGNED (1 << 11)
@@ -278,6 +283,8 @@ struct hostent;
278
283
  struct timeval;
279
284
  struct sockaddr;
280
285
  struct ares_channeldata;
286
+ struct ares_addrinfo;
287
+ struct ares_addrinfo_hints;
281
288
 
282
289
  typedef struct ares_channeldata *ares_channel;
283
290
 
@@ -306,6 +313,11 @@ typedef int (*ares_sock_config_callback)(ares_socket_t socket_fd,
306
313
  int type,
307
314
  void *data);
308
315
 
316
+ typedef void (*ares_addrinfo_callback)(void *arg,
317
+ int status,
318
+ int timeouts,
319
+ struct ares_addrinfo *res);
320
+
309
321
  CARES_EXTERN int ares_library_init(int flags);
310
322
 
311
323
  CARES_EXTERN int ares_library_init_mem(int flags,
@@ -369,6 +381,15 @@ CARES_EXTERN void ares_set_socket_configure_callback(ares_channel channel,
369
381
  CARES_EXTERN int ares_set_sortlist(ares_channel channel,
370
382
  const char *sortstr);
371
383
 
384
+ CARES_EXTERN void ares_getaddrinfo(ares_channel channel,
385
+ const char* node,
386
+ const char* service,
387
+ const struct ares_addrinfo_hints* hints,
388
+ ares_addrinfo_callback callback,
389
+ void* arg);
390
+
391
+ CARES_EXTERN void ares_freeaddrinfo(struct ares_addrinfo* ai);
392
+
372
393
  /*
373
394
  * Virtual function set to have user-managed socket IO.
374
395
  * Note that all functions need to be defined, and when
@@ -507,6 +528,15 @@ struct ares_addr6ttl {
507
528
  int ttl;
508
529
  };
509
530
 
531
+ struct ares_caa_reply {
532
+ struct ares_caa_reply *next;
533
+ int critical;
534
+ unsigned char *property;
535
+ size_t plength; /* plength excludes null termination */
536
+ unsigned char *value;
537
+ size_t length; /* length excludes null termination */
538
+ };
539
+
510
540
  struct ares_srv_reply {
511
541
  struct ares_srv_reply *next;
512
542
  char *host;
@@ -558,6 +588,44 @@ struct ares_soa_reply {
558
588
  unsigned int minttl;
559
589
  };
560
590
 
591
+ /*
592
+ * Similar to addrinfo, but with extra ttl and missing canonname.
593
+ */
594
+ struct ares_addrinfo_node {
595
+ int ai_ttl;
596
+ int ai_flags;
597
+ int ai_family;
598
+ int ai_socktype;
599
+ int ai_protocol;
600
+ ares_socklen_t ai_addrlen;
601
+ struct sockaddr *ai_addr;
602
+ struct ares_addrinfo_node *ai_next;
603
+ };
604
+
605
+ /*
606
+ * alias - label of the resource record.
607
+ * name - value (canonical name) of the resource record.
608
+ * See RFC2181 10.1.1. CNAME terminology.
609
+ */
610
+ struct ares_addrinfo_cname {
611
+ int ttl;
612
+ char *alias;
613
+ char *name;
614
+ struct ares_addrinfo_cname *next;
615
+ };
616
+
617
+ struct ares_addrinfo {
618
+ struct ares_addrinfo_cname *cnames;
619
+ struct ares_addrinfo_node *nodes;
620
+ };
621
+
622
+ struct ares_addrinfo_hints {
623
+ int ai_flags;
624
+ int ai_family;
625
+ int ai_socktype;
626
+ int ai_protocol;
627
+ };
628
+
561
629
  /*
562
630
  ** Parse the buffer, starting at *abuf and of length alen bytes, previously
563
631
  ** obtained from an ares_search call. Put the results in *host, if nonnull.
@@ -578,6 +646,10 @@ CARES_EXTERN int ares_parse_aaaa_reply(const unsigned char *abuf,
578
646
  struct ares_addr6ttl *addrttls,
579
647
  int *naddrttls);
580
648
 
649
+ CARES_EXTERN int ares_parse_caa_reply(const unsigned char* abuf,
650
+ int alen,
651
+ struct ares_caa_reply** caa_out);
652
+
581
653
  CARES_EXTERN int ares_parse_ptr_reply(const unsigned char *abuf,
582
654
  int alen,
583
655
  const void *addr,
@@ -16,6 +16,15 @@
16
16
  * without express or implied warranty.
17
17
  */
18
18
 
19
+ /*
20
+ * NOTE TO INTEGRATORS:
21
+ *
22
+ * This header is made public due to legacy projects relying on it.
23
+ * Please do not use the macros within this header, or include this
24
+ * header in your project as it may be removed in the future.
25
+ */
26
+
27
+
19
28
  /*
20
29
  * Macro DNS__16BIT reads a network short (16 bit) given in network
21
30
  * byte order, and returns its value as an unsigned short.
@@ -3,15 +3,15 @@
3
3
  #define ARES__VERSION_H
4
4
 
5
5
  /* This is the global package copyright */
6
- #define ARES_COPYRIGHT "2004 - 2017 Daniel Stenberg, <daniel@haxx.se>."
6
+ #define ARES_COPYRIGHT "2004 - 2020 Daniel Stenberg, <daniel@haxx.se>."
7
7
 
8
8
  #define ARES_VERSION_MAJOR 1
9
- #define ARES_VERSION_MINOR 14
9
+ #define ARES_VERSION_MINOR 17
10
10
  #define ARES_VERSION_PATCH 0
11
11
  #define ARES_VERSION ((ARES_VERSION_MAJOR<<16)|\
12
12
  (ARES_VERSION_MINOR<<8)|\
13
13
  (ARES_VERSION_PATCH))
14
- #define ARES_VERSION_STR "1.14.0"
14
+ #define ARES_VERSION_STR "1.17.0"
15
15
 
16
16
  #if (ARES_VERSION >= 0x010700)
17
17
  # define CARES_HAVE_ARES_LIBRARY_INIT 1
@@ -48,14 +48,14 @@ void ares__close_sockets(ares_channel channel, struct server_state *server)
48
48
  if (server->tcp_socket != ARES_SOCKET_BAD)
49
49
  {
50
50
  SOCK_STATE_CALLBACK(channel, server->tcp_socket, 0, 0);
51
- ares__socket_close(channel, server->tcp_socket);
51
+ ares__close_socket(channel, server->tcp_socket);
52
52
  server->tcp_socket = ARES_SOCKET_BAD;
53
53
  server->tcp_connection_generation = ++channel->tcp_connection_generation;
54
54
  }
55
55
  if (server->udp_socket != ARES_SOCKET_BAD)
56
56
  {
57
57
  SOCK_STATE_CALLBACK(channel, server->udp_socket, 0, 0);
58
- ares__socket_close(channel, server->udp_socket);
58
+ ares__close_socket(channel, server->udp_socket);
59
59
  server->udp_socket = ARES_SOCKET_BAD;
60
60
  }
61
61
  }
@@ -138,8 +138,7 @@ int ares__get_hostent(FILE *fp, int family, struct hostent **host)
138
138
  addr.addrV4.s_addr = INADDR_NONE;
139
139
  if ((family == AF_INET) || (family == AF_UNSPEC))
140
140
  {
141
- addr.addrV4.s_addr = inet_addr(txtaddr);
142
- if (addr.addrV4.s_addr != INADDR_NONE)
141
+ if (ares_inet_pton(AF_INET, txtaddr, &addr.addrV4) > 0)
143
142
  {
144
143
  /* Actual network address family and length. */
145
144
  addr.family = AF_INET;