gitlab-grpc 1.42.1.gitlab

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2288) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +1 -0
  3. data/Makefile +3004 -0
  4. data/etc/roots.pem +4337 -0
  5. data/include/grpc/byte_buffer.h +27 -0
  6. data/include/grpc/byte_buffer_reader.h +26 -0
  7. data/include/grpc/census.h +40 -0
  8. data/include/grpc/compression.h +75 -0
  9. data/include/grpc/event_engine/README.md +38 -0
  10. data/include/grpc/event_engine/endpoint_config.h +43 -0
  11. data/include/grpc/event_engine/event_engine.h +375 -0
  12. data/include/grpc/event_engine/internal/memory_allocator_impl.h +98 -0
  13. data/include/grpc/event_engine/memory_allocator.h +210 -0
  14. data/include/grpc/event_engine/port.h +39 -0
  15. data/include/grpc/fork.h +26 -0
  16. data/include/grpc/grpc.h +579 -0
  17. data/include/grpc/grpc_cronet.h +38 -0
  18. data/include/grpc/grpc_posix.h +62 -0
  19. data/include/grpc/grpc_security.h +1142 -0
  20. data/include/grpc/grpc_security_constants.h +165 -0
  21. data/include/grpc/impl/codegen/README.md +22 -0
  22. data/include/grpc/impl/codegen/atm.h +97 -0
  23. data/include/grpc/impl/codegen/atm_gcc_atomic.h +93 -0
  24. data/include/grpc/impl/codegen/atm_gcc_sync.h +87 -0
  25. data/include/grpc/impl/codegen/atm_windows.h +134 -0
  26. data/include/grpc/impl/codegen/byte_buffer.h +103 -0
  27. data/include/grpc/impl/codegen/byte_buffer_reader.h +44 -0
  28. data/include/grpc/impl/codegen/compression_types.h +110 -0
  29. data/include/grpc/impl/codegen/connectivity_state.h +46 -0
  30. data/include/grpc/impl/codegen/fork.h +50 -0
  31. data/include/grpc/impl/codegen/gpr_slice.h +71 -0
  32. data/include/grpc/impl/codegen/gpr_types.h +61 -0
  33. data/include/grpc/impl/codegen/grpc_types.h +813 -0
  34. data/include/grpc/impl/codegen/log.h +112 -0
  35. data/include/grpc/impl/codegen/port_platform.h +719 -0
  36. data/include/grpc/impl/codegen/propagation_bits.h +54 -0
  37. data/include/grpc/impl/codegen/slice.h +129 -0
  38. data/include/grpc/impl/codegen/status.h +156 -0
  39. data/include/grpc/impl/codegen/sync.h +68 -0
  40. data/include/grpc/impl/codegen/sync_abseil.h +38 -0
  41. data/include/grpc/impl/codegen/sync_custom.h +40 -0
  42. data/include/grpc/impl/codegen/sync_generic.h +51 -0
  43. data/include/grpc/impl/codegen/sync_posix.h +54 -0
  44. data/include/grpc/impl/codegen/sync_windows.h +42 -0
  45. data/include/grpc/load_reporting.h +48 -0
  46. data/include/grpc/module.modulemap +64 -0
  47. data/include/grpc/slice.h +172 -0
  48. data/include/grpc/slice_buffer.h +84 -0
  49. data/include/grpc/status.h +26 -0
  50. data/include/grpc/support/alloc.h +52 -0
  51. data/include/grpc/support/atm.h +26 -0
  52. data/include/grpc/support/atm_gcc_atomic.h +26 -0
  53. data/include/grpc/support/atm_gcc_sync.h +26 -0
  54. data/include/grpc/support/atm_windows.h +26 -0
  55. data/include/grpc/support/cpu.h +44 -0
  56. data/include/grpc/support/log.h +26 -0
  57. data/include/grpc/support/log_windows.h +38 -0
  58. data/include/grpc/support/port_platform.h +24 -0
  59. data/include/grpc/support/string_util.h +51 -0
  60. data/include/grpc/support/sync.h +282 -0
  61. data/include/grpc/support/sync_abseil.h +26 -0
  62. data/include/grpc/support/sync_custom.h +26 -0
  63. data/include/grpc/support/sync_generic.h +26 -0
  64. data/include/grpc/support/sync_posix.h +26 -0
  65. data/include/grpc/support/sync_windows.h +26 -0
  66. data/include/grpc/support/thd_id.h +44 -0
  67. data/include/grpc/support/time.h +92 -0
  68. data/include/grpc/support/workaround_list.h +31 -0
  69. data/src/core/ext/filters/census/grpc_context.cc +39 -0
  70. data/src/core/ext/filters/client_channel/backend_metric.cc +80 -0
  71. data/src/core/ext/filters/client_channel/backend_metric.h +36 -0
  72. data/src/core/ext/filters/client_channel/backup_poller.cc +183 -0
  73. data/src/core/ext/filters/client_channel/backup_poller.h +42 -0
  74. data/src/core/ext/filters/client_channel/channel_connectivity.cc +220 -0
  75. data/src/core/ext/filters/client_channel/client_channel.cc +3119 -0
  76. data/src/core/ext/filters/client_channel/client_channel.h +581 -0
  77. data/src/core/ext/filters/client_channel/client_channel_channelz.cc +96 -0
  78. data/src/core/ext/filters/client_channel/client_channel_channelz.h +75 -0
  79. data/src/core/ext/filters/client_channel/client_channel_factory.cc +56 -0
  80. data/src/core/ext/filters/client_channel/client_channel_factory.h +46 -0
  81. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +74 -0
  82. data/src/core/ext/filters/client_channel/config_selector.cc +59 -0
  83. data/src/core/ext/filters/client_channel/config_selector.h +145 -0
  84. data/src/core/ext/filters/client_channel/connector.h +79 -0
  85. data/src/core/ext/filters/client_channel/dynamic_filters.cc +190 -0
  86. data/src/core/ext/filters/client_channel/dynamic_filters.h +99 -0
  87. data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +83 -0
  88. data/src/core/ext/filters/client_channel/global_subchannel_pool.h +72 -0
  89. data/src/core/ext/filters/client_channel/health/health_check_client.cc +619 -0
  90. data/src/core/ext/filters/client_channel/health/health_check_client.h +177 -0
  91. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +392 -0
  92. data/src/core/ext/filters/client_channel/http_connect_handshaker.h +42 -0
  93. data/src/core/ext/filters/client_channel/http_proxy.cc +234 -0
  94. data/src/core/ext/filters/client_channel/http_proxy.h +28 -0
  95. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +96 -0
  96. data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +101 -0
  97. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +304 -0
  98. data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +83 -0
  99. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +148 -0
  100. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +29 -0
  101. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1866 -0
  102. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +47 -0
  103. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +76 -0
  104. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +37 -0
  105. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +44 -0
  106. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +83 -0
  107. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +93 -0
  108. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +76 -0
  109. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +192 -0
  110. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +74 -0
  111. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +522 -0
  112. data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +918 -0
  113. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +757 -0
  114. data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +37 -0
  115. data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +2502 -0
  116. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +503 -0
  117. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +426 -0
  118. data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +741 -0
  119. data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +745 -0
  120. data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +60 -0
  121. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +29 -0
  122. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +795 -0
  123. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +701 -0
  124. data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +1362 -0
  125. data/src/core/ext/filters/client_channel/lb_policy.cc +131 -0
  126. data/src/core/ext/filters/client_channel/lb_policy.h +425 -0
  127. data/src/core/ext/filters/client_channel/lb_policy_factory.h +48 -0
  128. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +185 -0
  129. data/src/core/ext/filters/client_channel/lb_policy_registry.h +65 -0
  130. data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +56 -0
  131. data/src/core/ext/filters/client_channel/local_subchannel_pool.h +58 -0
  132. data/src/core/ext/filters/client_channel/proxy_mapper.h +54 -0
  133. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +89 -0
  134. data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +50 -0
  135. data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +139 -0
  136. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +526 -0
  137. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +74 -0
  138. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_event_engine.cc +31 -0
  139. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +110 -0
  140. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +902 -0
  141. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +1203 -0
  142. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +122 -0
  143. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_event_engine.cc +28 -0
  144. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +29 -0
  145. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +34 -0
  146. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +28 -0
  147. data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +29 -0
  148. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +332 -0
  149. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +380 -0
  150. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +95 -0
  151. data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +384 -0
  152. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +195 -0
  153. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +1002 -0
  154. data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +28 -0
  155. data/src/core/ext/filters/client_channel/resolver.cc +87 -0
  156. data/src/core/ext/filters/client_channel/resolver.h +136 -0
  157. data/src/core/ext/filters/client_channel/resolver_factory.h +75 -0
  158. data/src/core/ext/filters/client_channel/resolver_registry.cc +195 -0
  159. data/src/core/ext/filters/client_channel/resolver_registry.h +89 -0
  160. data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +189 -0
  161. data/src/core/ext/filters/client_channel/resolver_result_parsing.h +99 -0
  162. data/src/core/ext/filters/client_channel/retry_filter.cc +2573 -0
  163. data/src/core/ext/filters/client_channel/retry_filter.h +30 -0
  164. data/src/core/ext/filters/client_channel/retry_service_config.cc +316 -0
  165. data/src/core/ext/filters/client_channel/retry_service_config.h +96 -0
  166. data/src/core/ext/filters/client_channel/retry_throttle.cc +162 -0
  167. data/src/core/ext/filters/client_channel/retry_throttle.h +79 -0
  168. data/src/core/ext/filters/client_channel/server_address.cc +170 -0
  169. data/src/core/ext/filters/client_channel/server_address.h +144 -0
  170. data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +156 -0
  171. data/src/core/ext/filters/client_channel/subchannel.cc +1021 -0
  172. data/src/core/ext/filters/client_channel/subchannel.h +382 -0
  173. data/src/core/ext/filters/client_channel/subchannel_interface.h +130 -0
  174. data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +126 -0
  175. data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +106 -0
  176. data/src/core/ext/filters/client_idle/client_idle_filter.cc +264 -0
  177. data/src/core/ext/filters/client_idle/idle_filter_state.cc +96 -0
  178. data/src/core/ext/filters/client_idle/idle_filter_state.h +66 -0
  179. data/src/core/ext/filters/deadline/deadline_filter.cc +391 -0
  180. data/src/core/ext/filters/deadline/deadline_filter.h +86 -0
  181. data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +503 -0
  182. data/src/core/ext/filters/fault_injection/fault_injection_filter.h +39 -0
  183. data/src/core/ext/filters/fault_injection/service_config_parser.cc +181 -0
  184. data/src/core/ext/filters/fault_injection/service_config_parser.h +85 -0
  185. data/src/core/ext/filters/http/client/http_client_filter.cc +604 -0
  186. data/src/core/ext/filters/http/client/http_client_filter.h +31 -0
  187. data/src/core/ext/filters/http/client_authority_filter.cc +159 -0
  188. data/src/core/ext/filters/http/client_authority_filter.h +34 -0
  189. data/src/core/ext/filters/http/http_filters_plugin.cc +90 -0
  190. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +553 -0
  191. data/src/core/ext/filters/http/message_compress/message_compress_filter.h +53 -0
  192. data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +398 -0
  193. data/src/core/ext/filters/http/message_compress/message_decompress_filter.h +31 -0
  194. data/src/core/ext/filters/http/server/http_server_filter.cc +537 -0
  195. data/src/core/ext/filters/http/server/http_server_filter.h +29 -0
  196. data/src/core/ext/filters/max_age/max_age_filter.cc +560 -0
  197. data/src/core/ext/filters/max_age/max_age_filter.h +26 -0
  198. data/src/core/ext/filters/message_size/message_size_filter.cc +402 -0
  199. data/src/core/ext/filters/message_size/message_size_filter.h +66 -0
  200. data/src/core/ext/service_config/service_config.cc +227 -0
  201. data/src/core/ext/service_config/service_config.h +127 -0
  202. data/src/core/ext/service_config/service_config_call_data.h +72 -0
  203. data/src/core/ext/service_config/service_config_parser.cc +89 -0
  204. data/src/core/ext/service_config/service_config_parser.h +97 -0
  205. data/src/core/ext/transport/chttp2/alpn/alpn.cc +45 -0
  206. data/src/core/ext/transport/chttp2/alpn/alpn.h +36 -0
  207. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +276 -0
  208. data/src/core/ext/transport/chttp2/client/chttp2_connector.h +77 -0
  209. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +119 -0
  210. data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +95 -0
  211. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +189 -0
  212. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +923 -0
  213. data/src/core/ext/transport/chttp2/server/chttp2_server.h +47 -0
  214. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +53 -0
  215. data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +83 -0
  216. data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +125 -0
  217. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +252 -0
  218. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +57 -0
  219. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +231 -0
  220. data/src/core/ext/transport/chttp2/transport/bin_encoder.h +42 -0
  221. data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +37 -0
  222. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +3351 -0
  223. data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +66 -0
  224. data/src/core/ext/transport/chttp2/transport/context_list.cc +68 -0
  225. data/src/core/ext/transport/chttp2/transport/context_list.h +52 -0
  226. data/src/core/ext/transport/chttp2/transport/flow_control.cc +430 -0
  227. data/src/core/ext/transport/chttp2/transport/flow_control.h +488 -0
  228. data/src/core/ext/transport/chttp2/transport/frame.h +47 -0
  229. data/src/core/ext/transport/chttp2/transport/frame_data.cc +308 -0
  230. data/src/core/ext/transport/chttp2/transport/frame_data.h +83 -0
  231. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +187 -0
  232. data/src/core/ext/transport/chttp2/transport/frame_goaway.h +63 -0
  233. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +132 -0
  234. data/src/core/ext/transport/chttp2/transport/frame_ping.h +46 -0
  235. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +118 -0
  236. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +51 -0
  237. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +273 -0
  238. data/src/core/ext/transport/chttp2/transport/frame_settings.h +62 -0
  239. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +123 -0
  240. data/src/core/ext/transport/chttp2/transport/frame_window_update.h +43 -0
  241. data/src/core/ext/transport/chttp2/transport/hpack_constants.h +41 -0
  242. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +546 -0
  243. data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +277 -0
  244. data/src/core/ext/transport/chttp2/transport/hpack_encoder_index.h +107 -0
  245. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +86 -0
  246. data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +69 -0
  247. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +1454 -0
  248. data/src/core/ext/transport/chttp2/transport/hpack_parser.h +136 -0
  249. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +146 -0
  250. data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +137 -0
  251. data/src/core/ext/transport/chttp2/transport/hpack_utils.cc +46 -0
  252. data/src/core/ext/transport/chttp2/transport/hpack_utils.h +30 -0
  253. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +62 -0
  254. data/src/core/ext/transport/chttp2/transport/http2_settings.h +61 -0
  255. data/src/core/ext/transport/chttp2/transport/huffsyms.cc +92 -0
  256. data/src/core/ext/transport/chttp2/transport/huffsyms.h +32 -0
  257. data/src/core/ext/transport/chttp2/transport/internal.h +892 -0
  258. data/src/core/ext/transport/chttp2/transport/parsing.cc +651 -0
  259. data/src/core/ext/transport/chttp2/transport/popularity_count.h +60 -0
  260. data/src/core/ext/transport/chttp2/transport/stream_lists.cc +216 -0
  261. data/src/core/ext/transport/chttp2/transport/stream_map.cc +177 -0
  262. data/src/core/ext/transport/chttp2/transport/stream_map.h +67 -0
  263. data/src/core/ext/transport/chttp2/transport/varint.cc +62 -0
  264. data/src/core/ext/transport/chttp2/transport/varint.h +71 -0
  265. data/src/core/ext/transport/chttp2/transport/writing.cc +716 -0
  266. data/src/core/ext/transport/inproc/inproc_plugin.cc +28 -0
  267. data/src/core/ext/transport/inproc/inproc_transport.cc +1360 -0
  268. data/src/core/ext/transport/inproc/inproc_transport.h +35 -0
  269. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +406 -0
  270. data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +1591 -0
  271. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +17 -0
  272. data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +30 -0
  273. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +27 -0
  274. data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +66 -0
  275. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +243 -0
  276. data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +955 -0
  277. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +371 -0
  278. data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +1554 -0
  279. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +74 -0
  280. data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +271 -0
  281. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +494 -0
  282. data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2116 -0
  283. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +35 -0
  284. data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +83 -0
  285. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +56 -0
  286. data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +370 -0
  287. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +124 -0
  288. data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +470 -0
  289. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +35 -0
  290. data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +94 -0
  291. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +382 -0
  292. data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1295 -0
  293. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +103 -0
  294. data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +418 -0
  295. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +34 -0
  296. data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +84 -0
  297. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +53 -0
  298. data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +161 -0
  299. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +241 -0
  300. data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +917 -0
  301. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +171 -0
  302. data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +830 -0
  303. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +36 -0
  304. data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +94 -0
  305. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +244 -0
  306. data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1089 -0
  307. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +27 -0
  308. data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +71 -0
  309. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +46 -0
  310. data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +133 -0
  311. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +34 -0
  312. data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +101 -0
  313. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +43 -0
  314. data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +132 -0
  315. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +35 -0
  316. data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +96 -0
  317. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +90 -0
  318. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +261 -0
  319. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +125 -0
  320. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +462 -0
  321. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +112 -0
  322. data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +397 -0
  323. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +33 -0
  324. data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +79 -0
  325. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +138 -0
  326. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +640 -0
  327. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +161 -0
  328. data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +680 -0
  329. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +48 -0
  330. data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +177 -0
  331. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +42 -0
  332. data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +127 -0
  333. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +144 -0
  334. data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +536 -0
  335. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +153 -0
  336. data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +550 -0
  337. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +185 -0
  338. data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +738 -0
  339. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +82 -0
  340. data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +312 -0
  341. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +960 -0
  342. data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +4213 -0
  343. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +60 -0
  344. data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +177 -0
  345. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +49 -0
  346. data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +134 -0
  347. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +29 -0
  348. data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +73 -0
  349. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +79 -0
  350. data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +298 -0
  351. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +79 -0
  352. data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +303 -0
  353. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +42 -0
  354. data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +123 -0
  355. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +403 -0
  356. data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +1785 -0
  357. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +19 -0
  358. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +35 -0
  359. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +130 -0
  360. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +559 -0
  361. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +73 -0
  362. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +237 -0
  363. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +148 -0
  364. data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +674 -0
  365. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +27 -0
  366. data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +62 -0
  367. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +25 -0
  368. data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +62 -0
  369. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +146 -0
  370. data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +535 -0
  371. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +27 -0
  372. data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +62 -0
  373. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +27 -0
  374. data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +62 -0
  375. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +54 -0
  376. data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +163 -0
  377. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +27 -0
  378. data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +62 -0
  379. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +27 -0
  380. data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +62 -0
  381. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +121 -0
  382. data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +468 -0
  383. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +60 -0
  384. data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +205 -0
  385. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +48 -0
  386. data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +144 -0
  387. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +36 -0
  388. data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +96 -0
  389. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +35 -0
  390. data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +90 -0
  391. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +34 -0
  392. data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +84 -0
  393. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +65 -0
  394. data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +184 -0
  395. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +53 -0
  396. data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +158 -0
  397. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +46 -0
  398. data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +136 -0
  399. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +63 -0
  400. data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +225 -0
  401. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +88 -0
  402. data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +343 -0
  403. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +90 -0
  404. data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +313 -0
  405. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +17 -0
  406. data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +36 -0
  407. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +40 -0
  408. data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +111 -0
  409. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +51 -0
  410. data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +148 -0
  411. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +30 -0
  412. data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +74 -0
  413. data/src/core/ext/upb-generated/google/api/annotations.upb.c +18 -0
  414. data/src/core/ext/upb-generated/google/api/annotations.upb.h +30 -0
  415. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +242 -0
  416. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +896 -0
  417. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +251 -0
  418. data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +943 -0
  419. data/src/core/ext/upb-generated/google/api/http.upb.c +66 -0
  420. data/src/core/ext/upb-generated/google/api/http.upb.h +228 -0
  421. data/src/core/ext/upb-generated/google/protobuf/any.upb.c +27 -0
  422. data/src/core/ext/upb-generated/google/protobuf/any.upb.h +70 -0
  423. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +486 -0
  424. data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2047 -0
  425. data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +27 -0
  426. data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +70 -0
  427. data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +22 -0
  428. data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +62 -0
  429. data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +79 -0
  430. data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +231 -0
  431. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +27 -0
  432. data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +70 -0
  433. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +106 -0
  434. data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +346 -0
  435. data/src/core/ext/upb-generated/google/rpc/status.upb.c +33 -0
  436. data/src/core/ext/upb-generated/google/rpc/status.upb.h +87 -0
  437. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +49 -0
  438. data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +127 -0
  439. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +212 -0
  440. data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +805 -0
  441. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +42 -0
  442. data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +137 -0
  443. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +36 -0
  444. data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +108 -0
  445. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +141 -0
  446. data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +507 -0
  447. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +55 -0
  448. data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +154 -0
  449. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +48 -0
  450. data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +140 -0
  451. data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +29 -0
  452. data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +70 -0
  453. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +17 -0
  454. data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +30 -0
  455. data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +28 -0
  456. data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +77 -0
  457. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +27 -0
  458. data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +66 -0
  459. data/src/core/ext/upb-generated/validate/validate.upb.c +464 -0
  460. data/src/core/ext/upb-generated/validate/validate.upb.h +2447 -0
  461. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +58 -0
  462. data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +182 -0
  463. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +28 -0
  464. data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +66 -0
  465. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +52 -0
  466. data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +155 -0
  467. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +42 -0
  468. data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +90 -0
  469. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +36 -0
  470. data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +100 -0
  471. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +54 -0
  472. data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +178 -0
  473. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +36 -0
  474. data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +91 -0
  475. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +58 -0
  476. data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +130 -0
  477. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +33 -0
  478. data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +83 -0
  479. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +354 -0
  480. data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +140 -0
  481. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +46 -0
  482. data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +30 -0
  483. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +41 -0
  484. data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +35 -0
  485. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +252 -0
  486. data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +105 -0
  487. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +424 -0
  488. data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +120 -0
  489. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +100 -0
  490. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
  491. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +596 -0
  492. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +155 -0
  493. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +53 -0
  494. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
  495. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +136 -0
  496. data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
  497. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +127 -0
  498. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +65 -0
  499. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +56 -0
  500. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +35 -0
  501. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +313 -0
  502. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +150 -0
  503. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +144 -0
  504. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +55 -0
  505. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +56 -0
  506. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
  507. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +66 -0
  508. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +40 -0
  509. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +263 -0
  510. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
  511. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +236 -0
  512. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +70 -0
  513. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +56 -0
  514. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
  515. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +300 -0
  516. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +100 -0
  517. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +43 -0
  518. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +35 -0
  519. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +59 -0
  520. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +40 -0
  521. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +59 -0
  522. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +35 -0
  523. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +72 -0
  524. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
  525. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +52 -0
  526. data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
  527. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +107 -0
  528. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
  529. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +140 -0
  530. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +60 -0
  531. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +146 -0
  532. data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
  533. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +50 -0
  534. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
  535. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +205 -0
  536. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +60 -0
  537. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +201 -0
  538. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
  539. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +90 -0
  540. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
  541. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +67 -0
  542. data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
  543. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +141 -0
  544. data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +70 -0
  545. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +152 -0
  546. data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +75 -0
  547. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +115 -0
  548. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +45 -0
  549. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +982 -0
  550. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +295 -0
  551. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +71 -0
  552. data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
  553. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +61 -0
  554. data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
  555. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +51 -0
  556. data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +35 -0
  557. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +102 -0
  558. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +55 -0
  559. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +123 -0
  560. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +45 -0
  561. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +79 -0
  562. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +35 -0
  563. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +567 -0
  564. data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +125 -0
  565. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +44 -0
  566. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
  567. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +196 -0
  568. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +60 -0
  569. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +97 -0
  570. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
  571. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +251 -0
  572. data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +60 -0
  573. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.c +72 -0
  574. data/src/core/ext/upbdefs-generated/envoy/service/cluster/v3/cds.upbdefs.h +35 -0
  575. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +60 -0
  576. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
  577. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +142 -0
  578. data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +65 -0
  579. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.c +73 -0
  580. data/src/core/ext/upbdefs-generated/envoy/service/endpoint/v3/eds.upbdefs.h +35 -0
  581. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.c +72 -0
  582. data/src/core/ext/upbdefs-generated/envoy/service/listener/v3/lds.upbdefs.h +35 -0
  583. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +80 -0
  584. data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
  585. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.c +80 -0
  586. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/rds.upbdefs.h +35 -0
  587. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.c +74 -0
  588. data/src/core/ext/upbdefs-generated/envoy/service/route/v3/srds.upbdefs.h +35 -0
  589. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +163 -0
  590. data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +55 -0
  591. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +64 -0
  592. data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
  593. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +65 -0
  594. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
  595. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +56 -0
  596. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +35 -0
  597. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +54 -0
  598. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +35 -0
  599. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +53 -0
  600. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +35 -0
  601. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +76 -0
  602. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
  603. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +69 -0
  604. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +40 -0
  605. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +63 -0
  606. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +40 -0
  607. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +81 -0
  608. data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +45 -0
  609. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +92 -0
  610. data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
  611. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +95 -0
  612. data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
  613. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +34 -0
  614. data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +30 -0
  615. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +59 -0
  616. data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +40 -0
  617. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +54 -0
  618. data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +45 -0
  619. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +47 -0
  620. data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +35 -0
  621. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +40 -0
  622. data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +30 -0
  623. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +61 -0
  624. data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +45 -0
  625. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +39 -0
  626. data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +35 -0
  627. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +386 -0
  628. data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +165 -0
  629. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +40 -0
  630. data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +35 -0
  631. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +37 -0
  632. data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +35 -0
  633. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +65 -0
  634. data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +50 -0
  635. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +40 -0
  636. data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +35 -0
  637. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +66 -0
  638. data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +75 -0
  639. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +42 -0
  640. data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +35 -0
  641. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +71 -0
  642. data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +45 -0
  643. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +52 -0
  644. data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +35 -0
  645. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +34 -0
  646. data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +30 -0
  647. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +51 -0
  648. data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +35 -0
  649. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +44 -0
  650. data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +35 -0
  651. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +332 -0
  652. data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +145 -0
  653. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +75 -0
  654. data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +50 -0
  655. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +43 -0
  656. data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +35 -0
  657. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +63 -0
  658. data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +40 -0
  659. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +46 -0
  660. data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +40 -0
  661. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +50 -0
  662. data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +35 -0
  663. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +68 -0
  664. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +40 -0
  665. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +51 -0
  666. data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +35 -0
  667. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +45 -0
  668. data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +35 -0
  669. data/src/core/ext/xds/certificate_provider_factory.h +61 -0
  670. data/src/core/ext/xds/certificate_provider_registry.cc +103 -0
  671. data/src/core/ext/xds/certificate_provider_registry.h +57 -0
  672. data/src/core/ext/xds/certificate_provider_store.cc +87 -0
  673. data/src/core/ext/xds/certificate_provider_store.h +112 -0
  674. data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +144 -0
  675. data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +69 -0
  676. data/src/core/ext/xds/xds_api.cc +3965 -0
  677. data/src/core/ext/xds/xds_api.h +744 -0
  678. data/src/core/ext/xds/xds_bootstrap.cc +471 -0
  679. data/src/core/ext/xds/xds_bootstrap.h +125 -0
  680. data/src/core/ext/xds/xds_certificate_provider.cc +405 -0
  681. data/src/core/ext/xds/xds_certificate_provider.h +151 -0
  682. data/src/core/ext/xds/xds_channel_args.h +32 -0
  683. data/src/core/ext/xds/xds_channel_stack_modifier.cc +113 -0
  684. data/src/core/ext/xds/xds_channel_stack_modifier.h +52 -0
  685. data/src/core/ext/xds/xds_client.cc +2791 -0
  686. data/src/core/ext/xds/xds_client.h +380 -0
  687. data/src/core/ext/xds/xds_client_stats.cc +160 -0
  688. data/src/core/ext/xds/xds_client_stats.h +240 -0
  689. data/src/core/ext/xds/xds_http_fault_filter.cc +227 -0
  690. data/src/core/ext/xds/xds_http_fault_filter.h +64 -0
  691. data/src/core/ext/xds/xds_http_filters.cc +116 -0
  692. data/src/core/ext/xds/xds_http_filters.h +133 -0
  693. data/src/core/ext/xds/xds_server_config_fetcher.cc +544 -0
  694. data/src/core/lib/address_utils/parse_address.cc +320 -0
  695. data/src/core/lib/address_utils/parse_address.h +77 -0
  696. data/src/core/lib/address_utils/sockaddr_utils.cc +412 -0
  697. data/src/core/lib/address_utils/sockaddr_utils.h +110 -0
  698. data/src/core/lib/avl/avl.cc +306 -0
  699. data/src/core/lib/avl/avl.h +94 -0
  700. data/src/core/lib/backoff/backoff.cc +78 -0
  701. data/src/core/lib/backoff/backoff.h +89 -0
  702. data/src/core/lib/channel/call_tracer.h +85 -0
  703. data/src/core/lib/channel/channel_args.cc +400 -0
  704. data/src/core/lib/channel/channel_args.h +143 -0
  705. data/src/core/lib/channel/channel_stack.cc +267 -0
  706. data/src/core/lib/channel/channel_stack.h +312 -0
  707. data/src/core/lib/channel/channel_stack_builder.cc +313 -0
  708. data/src/core/lib/channel/channel_stack_builder.h +158 -0
  709. data/src/core/lib/channel/channel_trace.cc +193 -0
  710. data/src/core/lib/channel/channel_trace.h +135 -0
  711. data/src/core/lib/channel/channelz.cc +596 -0
  712. data/src/core/lib/channel/channelz.h +357 -0
  713. data/src/core/lib/channel/channelz_registry.cc +285 -0
  714. data/src/core/lib/channel/channelz_registry.h +99 -0
  715. data/src/core/lib/channel/connected_channel.cc +245 -0
  716. data/src/core/lib/channel/connected_channel.h +33 -0
  717. data/src/core/lib/channel/context.h +52 -0
  718. data/src/core/lib/channel/handshaker.cc +222 -0
  719. data/src/core/lib/channel/handshaker.h +161 -0
  720. data/src/core/lib/channel/handshaker_factory.h +50 -0
  721. data/src/core/lib/channel/handshaker_registry.cc +50 -0
  722. data/src/core/lib/channel/handshaker_registry.h +71 -0
  723. data/src/core/lib/channel/status_util.cc +109 -0
  724. data/src/core/lib/channel/status_util.h +67 -0
  725. data/src/core/lib/compression/algorithm_metadata.h +62 -0
  726. data/src/core/lib/compression/compression.cc +183 -0
  727. data/src/core/lib/compression/compression_args.cc +138 -0
  728. data/src/core/lib/compression/compression_args.h +56 -0
  729. data/src/core/lib/compression/compression_internal.cc +283 -0
  730. data/src/core/lib/compression/compression_internal.h +97 -0
  731. data/src/core/lib/compression/message_compress.cc +192 -0
  732. data/src/core/lib/compression/message_compress.h +40 -0
  733. data/src/core/lib/compression/stream_compression.cc +81 -0
  734. data/src/core/lib/compression/stream_compression.h +117 -0
  735. data/src/core/lib/compression/stream_compression_gzip.cc +231 -0
  736. data/src/core/lib/compression/stream_compression_gzip.h +28 -0
  737. data/src/core/lib/compression/stream_compression_identity.cc +91 -0
  738. data/src/core/lib/compression/stream_compression_identity.h +29 -0
  739. data/src/core/lib/config/core_configuration.cc +96 -0
  740. data/src/core/lib/config/core_configuration.h +146 -0
  741. data/src/core/lib/debug/stats.cc +172 -0
  742. data/src/core/lib/debug/stats.h +71 -0
  743. data/src/core/lib/debug/stats_data.cc +689 -0
  744. data/src/core/lib/debug/stats_data.h +556 -0
  745. data/src/core/lib/debug/trace.cc +155 -0
  746. data/src/core/lib/debug/trace.h +132 -0
  747. data/src/core/lib/event_engine/endpoint_config.cc +45 -0
  748. data/src/core/lib/event_engine/endpoint_config_internal.h +42 -0
  749. data/src/core/lib/event_engine/event_engine.cc +50 -0
  750. data/src/core/lib/event_engine/sockaddr.cc +40 -0
  751. data/src/core/lib/event_engine/sockaddr.h +44 -0
  752. data/src/core/lib/gpr/alloc.cc +76 -0
  753. data/src/core/lib/gpr/alloc.h +28 -0
  754. data/src/core/lib/gpr/atm.cc +35 -0
  755. data/src/core/lib/gpr/cpu_iphone.cc +44 -0
  756. data/src/core/lib/gpr/cpu_linux.cc +82 -0
  757. data/src/core/lib/gpr/cpu_posix.cc +83 -0
  758. data/src/core/lib/gpr/cpu_windows.cc +33 -0
  759. data/src/core/lib/gpr/env.h +40 -0
  760. data/src/core/lib/gpr/env_linux.cc +75 -0
  761. data/src/core/lib/gpr/env_posix.cc +46 -0
  762. data/src/core/lib/gpr/env_windows.cc +74 -0
  763. data/src/core/lib/gpr/log.cc +140 -0
  764. data/src/core/lib/gpr/log_android.cc +77 -0
  765. data/src/core/lib/gpr/log_linux.cc +114 -0
  766. data/src/core/lib/gpr/log_posix.cc +110 -0
  767. data/src/core/lib/gpr/log_windows.cc +116 -0
  768. data/src/core/lib/gpr/murmur_hash.cc +82 -0
  769. data/src/core/lib/gpr/murmur_hash.h +29 -0
  770. data/src/core/lib/gpr/spinlock.h +53 -0
  771. data/src/core/lib/gpr/string.cc +343 -0
  772. data/src/core/lib/gpr/string.h +112 -0
  773. data/src/core/lib/gpr/string_posix.cc +72 -0
  774. data/src/core/lib/gpr/string_util_windows.cc +82 -0
  775. data/src/core/lib/gpr/string_windows.cc +69 -0
  776. data/src/core/lib/gpr/string_windows.h +32 -0
  777. data/src/core/lib/gpr/sync.cc +124 -0
  778. data/src/core/lib/gpr/sync_abseil.cc +114 -0
  779. data/src/core/lib/gpr/sync_posix.cc +170 -0
  780. data/src/core/lib/gpr/sync_windows.cc +120 -0
  781. data/src/core/lib/gpr/time.cc +264 -0
  782. data/src/core/lib/gpr/time_posix.cc +186 -0
  783. data/src/core/lib/gpr/time_precise.cc +168 -0
  784. data/src/core/lib/gpr/time_precise.h +70 -0
  785. data/src/core/lib/gpr/time_windows.cc +99 -0
  786. data/src/core/lib/gpr/tls.h +151 -0
  787. data/src/core/lib/gpr/tmpfile.h +32 -0
  788. data/src/core/lib/gpr/tmpfile_msys.cc +58 -0
  789. data/src/core/lib/gpr/tmpfile_posix.cc +69 -0
  790. data/src/core/lib/gpr/tmpfile_windows.cc +69 -0
  791. data/src/core/lib/gpr/useful.h +113 -0
  792. data/src/core/lib/gpr/wrap_memcpy.cc +43 -0
  793. data/src/core/lib/gprpp/arena.cc +104 -0
  794. data/src/core/lib/gprpp/arena.h +131 -0
  795. data/src/core/lib/gprpp/atomic_utils.h +47 -0
  796. data/src/core/lib/gprpp/bitset.h +188 -0
  797. data/src/core/lib/gprpp/chunked_vector.h +211 -0
  798. data/src/core/lib/gprpp/construct_destruct.h +39 -0
  799. data/src/core/lib/gprpp/debug_location.h +53 -0
  800. data/src/core/lib/gprpp/dual_ref_counted.h +330 -0
  801. data/src/core/lib/gprpp/examine_stack.cc +43 -0
  802. data/src/core/lib/gprpp/examine_stack.h +46 -0
  803. data/src/core/lib/gprpp/fork.cc +244 -0
  804. data/src/core/lib/gprpp/fork.h +103 -0
  805. data/src/core/lib/gprpp/global_config.h +95 -0
  806. data/src/core/lib/gprpp/global_config_custom.h +29 -0
  807. data/src/core/lib/gprpp/global_config_env.cc +137 -0
  808. data/src/core/lib/gprpp/global_config_env.h +131 -0
  809. data/src/core/lib/gprpp/global_config_generic.h +44 -0
  810. data/src/core/lib/gprpp/host_port.cc +112 -0
  811. data/src/core/lib/gprpp/host_port.h +56 -0
  812. data/src/core/lib/gprpp/manual_constructor.h +216 -0
  813. data/src/core/lib/gprpp/match.h +73 -0
  814. data/src/core/lib/gprpp/memory.h +57 -0
  815. data/src/core/lib/gprpp/mpscq.cc +108 -0
  816. data/src/core/lib/gprpp/mpscq.h +99 -0
  817. data/src/core/lib/gprpp/orphanable.h +125 -0
  818. data/src/core/lib/gprpp/overload.h +59 -0
  819. data/src/core/lib/gprpp/ref_counted.h +349 -0
  820. data/src/core/lib/gprpp/ref_counted_ptr.h +353 -0
  821. data/src/core/lib/gprpp/stat.h +38 -0
  822. data/src/core/lib/gprpp/stat_posix.cc +49 -0
  823. data/src/core/lib/gprpp/stat_windows.cc +48 -0
  824. data/src/core/lib/gprpp/status_helper.cc +427 -0
  825. data/src/core/lib/gprpp/status_helper.h +194 -0
  826. data/src/core/lib/gprpp/sync.h +198 -0
  827. data/src/core/lib/gprpp/table.h +411 -0
  828. data/src/core/lib/gprpp/thd.h +174 -0
  829. data/src/core/lib/gprpp/thd_posix.cc +209 -0
  830. data/src/core/lib/gprpp/thd_windows.cc +171 -0
  831. data/src/core/lib/gprpp/time_util.cc +77 -0
  832. data/src/core/lib/gprpp/time_util.h +42 -0
  833. data/src/core/lib/http/format_request.cc +104 -0
  834. data/src/core/lib/http/format_request.h +35 -0
  835. data/src/core/lib/http/httpcli.cc +324 -0
  836. data/src/core/lib/http/httpcli.h +128 -0
  837. data/src/core/lib/http/httpcli_security_connector.cc +215 -0
  838. data/src/core/lib/http/parser.cc +392 -0
  839. data/src/core/lib/http/parser.h +114 -0
  840. data/src/core/lib/iomgr/block_annotate.h +57 -0
  841. data/src/core/lib/iomgr/buffer_list.cc +307 -0
  842. data/src/core/lib/iomgr/buffer_list.h +163 -0
  843. data/src/core/lib/iomgr/call_combiner.cc +281 -0
  844. data/src/core/lib/iomgr/call_combiner.h +215 -0
  845. data/src/core/lib/iomgr/cfstream_handle.cc +210 -0
  846. data/src/core/lib/iomgr/cfstream_handle.h +90 -0
  847. data/src/core/lib/iomgr/closure.h +256 -0
  848. data/src/core/lib/iomgr/combiner.cc +328 -0
  849. data/src/core/lib/iomgr/combiner.h +89 -0
  850. data/src/core/lib/iomgr/dualstack_socket_posix.cc +48 -0
  851. data/src/core/lib/iomgr/dynamic_annotations.h +67 -0
  852. data/src/core/lib/iomgr/endpoint.cc +67 -0
  853. data/src/core/lib/iomgr/endpoint.h +108 -0
  854. data/src/core/lib/iomgr/endpoint_cfstream.cc +389 -0
  855. data/src/core/lib/iomgr/endpoint_cfstream.h +49 -0
  856. data/src/core/lib/iomgr/endpoint_pair.h +34 -0
  857. data/src/core/lib/iomgr/endpoint_pair_event_engine.cc +32 -0
  858. data/src/core/lib/iomgr/endpoint_pair_posix.cc +77 -0
  859. data/src/core/lib/iomgr/endpoint_pair_windows.cc +95 -0
  860. data/src/core/lib/iomgr/error.cc +985 -0
  861. data/src/core/lib/iomgr/error.h +442 -0
  862. data/src/core/lib/iomgr/error_cfstream.cc +59 -0
  863. data/src/core/lib/iomgr/error_cfstream.h +31 -0
  864. data/src/core/lib/iomgr/error_internal.h +66 -0
  865. data/src/core/lib/iomgr/ev_apple.cc +359 -0
  866. data/src/core/lib/iomgr/ev_apple.h +43 -0
  867. data/src/core/lib/iomgr/ev_epoll1_linux.cc +1364 -0
  868. data/src/core/lib/iomgr/ev_epoll1_linux.h +31 -0
  869. data/src/core/lib/iomgr/ev_epollex_linux.cc +1654 -0
  870. data/src/core/lib/iomgr/ev_epollex_linux.h +30 -0
  871. data/src/core/lib/iomgr/ev_poll_posix.cc +1430 -0
  872. data/src/core/lib/iomgr/ev_poll_posix.h +29 -0
  873. data/src/core/lib/iomgr/ev_posix.cc +417 -0
  874. data/src/core/lib/iomgr/ev_posix.h +207 -0
  875. data/src/core/lib/iomgr/ev_windows.cc +30 -0
  876. data/src/core/lib/iomgr/event_engine/closure.cc +77 -0
  877. data/src/core/lib/iomgr/event_engine/closure.h +42 -0
  878. data/src/core/lib/iomgr/event_engine/endpoint.cc +173 -0
  879. data/src/core/lib/iomgr/event_engine/endpoint.h +52 -0
  880. data/src/core/lib/iomgr/event_engine/iomgr.cc +104 -0
  881. data/src/core/lib/iomgr/event_engine/iomgr.h +42 -0
  882. data/src/core/lib/iomgr/event_engine/pollset.cc +88 -0
  883. data/src/core/lib/iomgr/event_engine/pollset.h +25 -0
  884. data/src/core/lib/iomgr/event_engine/promise.h +51 -0
  885. data/src/core/lib/iomgr/event_engine/resolved_address_internal.cc +41 -0
  886. data/src/core/lib/iomgr/event_engine/resolved_address_internal.h +35 -0
  887. data/src/core/lib/iomgr/event_engine/resolver.cc +114 -0
  888. data/src/core/lib/iomgr/event_engine/tcp.cc +293 -0
  889. data/src/core/lib/iomgr/event_engine/timer.cc +62 -0
  890. data/src/core/lib/iomgr/exec_ctx.cc +227 -0
  891. data/src/core/lib/iomgr/exec_ctx.h +375 -0
  892. data/src/core/lib/iomgr/executor/mpmcqueue.cc +182 -0
  893. data/src/core/lib/iomgr/executor/mpmcqueue.h +171 -0
  894. data/src/core/lib/iomgr/executor/threadpool.cc +136 -0
  895. data/src/core/lib/iomgr/executor/threadpool.h +150 -0
  896. data/src/core/lib/iomgr/executor.cc +455 -0
  897. data/src/core/lib/iomgr/executor.h +122 -0
  898. data/src/core/lib/iomgr/fork_posix.cc +119 -0
  899. data/src/core/lib/iomgr/fork_windows.cc +41 -0
  900. data/src/core/lib/iomgr/gethostname.h +26 -0
  901. data/src/core/lib/iomgr/gethostname_fallback.cc +30 -0
  902. data/src/core/lib/iomgr/gethostname_host_name_max.cc +40 -0
  903. data/src/core/lib/iomgr/gethostname_sysconf.cc +40 -0
  904. data/src/core/lib/iomgr/grpc_if_nametoindex.h +30 -0
  905. data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +42 -0
  906. data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +38 -0
  907. data/src/core/lib/iomgr/internal_errqueue.cc +68 -0
  908. data/src/core/lib/iomgr/internal_errqueue.h +191 -0
  909. data/src/core/lib/iomgr/iocp_windows.cc +158 -0
  910. data/src/core/lib/iomgr/iocp_windows.h +48 -0
  911. data/src/core/lib/iomgr/iomgr.cc +196 -0
  912. data/src/core/lib/iomgr/iomgr.h +60 -0
  913. data/src/core/lib/iomgr/iomgr_custom.cc +79 -0
  914. data/src/core/lib/iomgr/iomgr_custom.h +49 -0
  915. data/src/core/lib/iomgr/iomgr_internal.cc +53 -0
  916. data/src/core/lib/iomgr/iomgr_internal.h +74 -0
  917. data/src/core/lib/iomgr/iomgr_posix.cc +90 -0
  918. data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +200 -0
  919. data/src/core/lib/iomgr/iomgr_windows.cc +105 -0
  920. data/src/core/lib/iomgr/is_epollexclusive_available.cc +119 -0
  921. data/src/core/lib/iomgr/is_epollexclusive_available.h +36 -0
  922. data/src/core/lib/iomgr/load_file.cc +81 -0
  923. data/src/core/lib/iomgr/load_file.h +35 -0
  924. data/src/core/lib/iomgr/lockfree_event.cc +278 -0
  925. data/src/core/lib/iomgr/lockfree_event.h +72 -0
  926. data/src/core/lib/iomgr/nameser.h +106 -0
  927. data/src/core/lib/iomgr/polling_entity.cc +96 -0
  928. data/src/core/lib/iomgr/polling_entity.h +68 -0
  929. data/src/core/lib/iomgr/pollset.cc +56 -0
  930. data/src/core/lib/iomgr/pollset.h +99 -0
  931. data/src/core/lib/iomgr/pollset_custom.cc +105 -0
  932. data/src/core/lib/iomgr/pollset_custom.h +37 -0
  933. data/src/core/lib/iomgr/pollset_set.cc +55 -0
  934. data/src/core/lib/iomgr/pollset_set.h +55 -0
  935. data/src/core/lib/iomgr/pollset_set_custom.cc +47 -0
  936. data/src/core/lib/iomgr/pollset_set_custom.h +26 -0
  937. data/src/core/lib/iomgr/pollset_set_windows.cc +52 -0
  938. data/src/core/lib/iomgr/pollset_set_windows.h +26 -0
  939. data/src/core/lib/iomgr/pollset_windows.cc +243 -0
  940. data/src/core/lib/iomgr/pollset_windows.h +70 -0
  941. data/src/core/lib/iomgr/port.h +221 -0
  942. data/src/core/lib/iomgr/python_util.h +47 -0
  943. data/src/core/lib/iomgr/resolve_address.cc +55 -0
  944. data/src/core/lib/iomgr/resolve_address.h +83 -0
  945. data/src/core/lib/iomgr/resolve_address_custom.cc +169 -0
  946. data/src/core/lib/iomgr/resolve_address_custom.h +44 -0
  947. data/src/core/lib/iomgr/resolve_address_posix.cc +170 -0
  948. data/src/core/lib/iomgr/resolve_address_windows.cc +152 -0
  949. data/src/core/lib/iomgr/resource_quota.cc +1106 -0
  950. data/src/core/lib/iomgr/resource_quota.h +226 -0
  951. data/src/core/lib/iomgr/sockaddr.h +33 -0
  952. data/src/core/lib/iomgr/sockaddr_posix.h +55 -0
  953. data/src/core/lib/iomgr/sockaddr_windows.h +55 -0
  954. data/src/core/lib/iomgr/socket_factory_posix.cc +95 -0
  955. data/src/core/lib/iomgr/socket_factory_posix.h +69 -0
  956. data/src/core/lib/iomgr/socket_mutator.cc +97 -0
  957. data/src/core/lib/iomgr/socket_mutator.h +84 -0
  958. data/src/core/lib/iomgr/socket_utils.h +47 -0
  959. data/src/core/lib/iomgr/socket_utils_common_posix.cc +515 -0
  960. data/src/core/lib/iomgr/socket_utils_linux.cc +42 -0
  961. data/src/core/lib/iomgr/socket_utils_posix.cc +58 -0
  962. data/src/core/lib/iomgr/socket_utils_posix.h +163 -0
  963. data/src/core/lib/iomgr/socket_utils_windows.cc +47 -0
  964. data/src/core/lib/iomgr/socket_windows.cc +202 -0
  965. data/src/core/lib/iomgr/socket_windows.h +127 -0
  966. data/src/core/lib/iomgr/sys_epoll_wrapper.h +30 -0
  967. data/src/core/lib/iomgr/tcp_client.cc +38 -0
  968. data/src/core/lib/iomgr/tcp_client.h +56 -0
  969. data/src/core/lib/iomgr/tcp_client_cfstream.cc +205 -0
  970. data/src/core/lib/iomgr/tcp_client_custom.cc +152 -0
  971. data/src/core/lib/iomgr/tcp_client_posix.cc +360 -0
  972. data/src/core/lib/iomgr/tcp_client_posix.h +70 -0
  973. data/src/core/lib/iomgr/tcp_client_windows.cc +241 -0
  974. data/src/core/lib/iomgr/tcp_custom.cc +377 -0
  975. data/src/core/lib/iomgr/tcp_custom.h +86 -0
  976. data/src/core/lib/iomgr/tcp_posix.cc +1848 -0
  977. data/src/core/lib/iomgr/tcp_posix.h +67 -0
  978. data/src/core/lib/iomgr/tcp_server.cc +79 -0
  979. data/src/core/lib/iomgr/tcp_server.h +149 -0
  980. data/src/core/lib/iomgr/tcp_server_custom.cc +467 -0
  981. data/src/core/lib/iomgr/tcp_server_posix.cc +645 -0
  982. data/src/core/lib/iomgr/tcp_server_utils_posix.h +128 -0
  983. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +223 -0
  984. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +175 -0
  985. data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +36 -0
  986. data/src/core/lib/iomgr/tcp_server_windows.cc +568 -0
  987. data/src/core/lib/iomgr/tcp_windows.cc +530 -0
  988. data/src/core/lib/iomgr/tcp_windows.h +54 -0
  989. data/src/core/lib/iomgr/time_averaged_stats.cc +64 -0
  990. data/src/core/lib/iomgr/time_averaged_stats.h +72 -0
  991. data/src/core/lib/iomgr/timer.cc +46 -0
  992. data/src/core/lib/iomgr/timer.h +131 -0
  993. data/src/core/lib/iomgr/timer_custom.cc +96 -0
  994. data/src/core/lib/iomgr/timer_custom.h +43 -0
  995. data/src/core/lib/iomgr/timer_generic.cc +718 -0
  996. data/src/core/lib/iomgr/timer_generic.h +40 -0
  997. data/src/core/lib/iomgr/timer_heap.cc +134 -0
  998. data/src/core/lib/iomgr/timer_heap.h +43 -0
  999. data/src/core/lib/iomgr/timer_manager.cc +363 -0
  1000. data/src/core/lib/iomgr/timer_manager.h +41 -0
  1001. data/src/core/lib/iomgr/unix_sockets_posix.cc +108 -0
  1002. data/src/core/lib/iomgr/unix_sockets_posix.h +49 -0
  1003. data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +62 -0
  1004. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +82 -0
  1005. data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +39 -0
  1006. data/src/core/lib/iomgr/wakeup_fd_pipe.cc +99 -0
  1007. data/src/core/lib/iomgr/wakeup_fd_pipe.h +28 -0
  1008. data/src/core/lib/iomgr/wakeup_fd_posix.cc +70 -0
  1009. data/src/core/lib/iomgr/wakeup_fd_posix.h +98 -0
  1010. data/src/core/lib/iomgr/work_serializer.cc +155 -0
  1011. data/src/core/lib/iomgr/work_serializer.h +81 -0
  1012. data/src/core/lib/json/json.h +250 -0
  1013. data/src/core/lib/json/json_reader.cc +849 -0
  1014. data/src/core/lib/json/json_util.cc +126 -0
  1015. data/src/core/lib/json/json_util.h +154 -0
  1016. data/src/core/lib/json/json_writer.cc +335 -0
  1017. data/src/core/lib/matchers/matchers.cc +327 -0
  1018. data/src/core/lib/matchers/matchers.h +160 -0
  1019. data/src/core/lib/profiling/basic_timers.cc +295 -0
  1020. data/src/core/lib/profiling/stap_timers.cc +50 -0
  1021. data/src/core/lib/profiling/timers.h +94 -0
  1022. data/src/core/lib/security/authorization/authorization_engine.h +44 -0
  1023. data/src/core/lib/security/authorization/authorization_policy_provider.h +33 -0
  1024. data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +46 -0
  1025. data/src/core/lib/security/authorization/evaluate_args.cc +213 -0
  1026. data/src/core/lib/security/authorization/evaluate_args.h +91 -0
  1027. data/src/core/lib/security/authorization/sdk_server_authz_filter.cc +171 -0
  1028. data/src/core/lib/security/authorization/sdk_server_authz_filter.h +67 -0
  1029. data/src/core/lib/security/context/security_context.cc +325 -0
  1030. data/src/core/lib/security/context/security_context.h +152 -0
  1031. data/src/core/lib/security/credentials/alts/alts_credentials.cc +111 -0
  1032. data/src/core/lib/security/credentials/alts/alts_credentials.h +109 -0
  1033. data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +72 -0
  1034. data/src/core/lib/security/credentials/alts/check_gcp_environment.h +57 -0
  1035. data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +68 -0
  1036. data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +33 -0
  1037. data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +102 -0
  1038. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +127 -0
  1039. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +46 -0
  1040. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +75 -0
  1041. data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +59 -0
  1042. data/src/core/lib/security/credentials/composite/composite_credentials.cc +230 -0
  1043. data/src/core/lib/security/credentials/composite/composite_credentials.h +106 -0
  1044. data/src/core/lib/security/credentials/credentials.cc +164 -0
  1045. data/src/core/lib/security/credentials/credentials.h +291 -0
  1046. data/src/core/lib/security/credentials/credentials_metadata.cc +61 -0
  1047. data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +404 -0
  1048. data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +81 -0
  1049. data/src/core/lib/security/credentials/external/aws_request_signer.cc +214 -0
  1050. data/src/core/lib/security/credentials/external/aws_request_signer.h +72 -0
  1051. data/src/core/lib/security/credentials/external/external_account_credentials.cc +527 -0
  1052. data/src/core/lib/security/credentials/external/external_account_credentials.h +122 -0
  1053. data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +136 -0
  1054. data/src/core/lib/security/credentials/external/file_external_account_credentials.h +49 -0
  1055. data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +211 -0
  1056. data/src/core/lib/security/credentials/external/url_external_account_credentials.h +60 -0
  1057. data/src/core/lib/security/credentials/fake/fake_credentials.cc +113 -0
  1058. data/src/core/lib/security/credentials/fake/fake_credentials.h +87 -0
  1059. data/src/core/lib/security/credentials/google_default/credentials_generic.cc +42 -0
  1060. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +465 -0
  1061. data/src/core/lib/security/credentials/google_default/google_default_credentials.h +87 -0
  1062. data/src/core/lib/security/credentials/iam/iam_credentials.cc +81 -0
  1063. data/src/core/lib/security/credentials/iam/iam_credentials.h +49 -0
  1064. data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +64 -0
  1065. data/src/core/lib/security/credentials/jwt/json_token.cc +288 -0
  1066. data/src/core/lib/security/credentials/jwt/json_token.h +76 -0
  1067. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +192 -0
  1068. data/src/core/lib/security/credentials/jwt/jwt_credentials.h +89 -0
  1069. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +922 -0
  1070. data/src/core/lib/security/credentials/jwt/jwt_verifier.h +122 -0
  1071. data/src/core/lib/security/credentials/local/local_credentials.cc +65 -0
  1072. data/src/core/lib/security/credentials/local/local_credentials.h +61 -0
  1073. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +753 -0
  1074. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +173 -0
  1075. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +267 -0
  1076. data/src/core/lib/security/credentials/plugin/plugin_credentials.h +72 -0
  1077. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +385 -0
  1078. data/src/core/lib/security/credentials/ssl/ssl_credentials.h +108 -0
  1079. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +348 -0
  1080. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +217 -0
  1081. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +455 -0
  1082. data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +147 -0
  1083. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +177 -0
  1084. data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +193 -0
  1085. data/src/core/lib/security/credentials/tls/tls_credentials.cc +133 -0
  1086. data/src/core/lib/security/credentials/tls/tls_credentials.h +62 -0
  1087. data/src/core/lib/security/credentials/tls/tls_utils.cc +123 -0
  1088. data/src/core/lib/security/credentials/tls/tls_utils.h +51 -0
  1089. data/src/core/lib/security/credentials/xds/xds_credentials.cc +244 -0
  1090. data/src/core/lib/security/credentials/xds/xds_credentials.h +69 -0
  1091. data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +311 -0
  1092. data/src/core/lib/security/security_connector/alts/alts_security_connector.h +76 -0
  1093. data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +327 -0
  1094. data/src/core/lib/security/security_connector/fake/fake_security_connector.h +45 -0
  1095. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +121 -0
  1096. data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +97 -0
  1097. data/src/core/lib/security/security_connector/load_system_roots.h +33 -0
  1098. data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +33 -0
  1099. data/src/core/lib/security/security_connector/load_system_roots_linux.cc +171 -0
  1100. data/src/core/lib/security/security_connector/load_system_roots_linux.h +46 -0
  1101. data/src/core/lib/security/security_connector/local/local_security_connector.cc +294 -0
  1102. data/src/core/lib/security/security_connector/local/local_security_connector.h +59 -0
  1103. data/src/core/lib/security/security_connector/security_connector.cc +137 -0
  1104. data/src/core/lib/security/security_connector/security_connector.h +183 -0
  1105. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +453 -0
  1106. data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +81 -0
  1107. data/src/core/lib/security/security_connector/ssl_utils.cc +611 -0
  1108. data/src/core/lib/security/security_connector/ssl_utils.h +188 -0
  1109. data/src/core/lib/security/security_connector/ssl_utils_config.cc +32 -0
  1110. data/src/core/lib/security/security_connector/ssl_utils_config.h +30 -0
  1111. data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +667 -0
  1112. data/src/core/lib/security/security_connector/tls/tls_security_connector.h +243 -0
  1113. data/src/core/lib/security/transport/auth_filters.h +36 -0
  1114. data/src/core/lib/security/transport/client_auth_filter.cc +473 -0
  1115. data/src/core/lib/security/transport/secure_endpoint.cc +442 -0
  1116. data/src/core/lib/security/transport/secure_endpoint.h +42 -0
  1117. data/src/core/lib/security/transport/security_handshaker.cc +642 -0
  1118. data/src/core/lib/security/transport/security_handshaker.h +46 -0
  1119. data/src/core/lib/security/transport/server_auth_filter.cc +331 -0
  1120. data/src/core/lib/security/transport/tsi_error.cc +28 -0
  1121. data/src/core/lib/security/transport/tsi_error.h +30 -0
  1122. data/src/core/lib/security/util/json_util.cc +70 -0
  1123. data/src/core/lib/security/util/json_util.h +45 -0
  1124. data/src/core/lib/slice/b64.cc +239 -0
  1125. data/src/core/lib/slice/b64.h +50 -0
  1126. data/src/core/lib/slice/percent_encoding.cc +212 -0
  1127. data/src/core/lib/slice/percent_encoding.h +66 -0
  1128. data/src/core/lib/slice/slice.cc +592 -0
  1129. data/src/core/lib/slice/slice_api.cc +39 -0
  1130. data/src/core/lib/slice/slice_buffer.cc +413 -0
  1131. data/src/core/lib/slice/slice_intern.cc +367 -0
  1132. data/src/core/lib/slice/slice_internal.h +123 -0
  1133. data/src/core/lib/slice/slice_refcount.cc +17 -0
  1134. data/src/core/lib/slice/slice_refcount.h +121 -0
  1135. data/src/core/lib/slice/slice_refcount_base.h +173 -0
  1136. data/src/core/lib/slice/slice_split.cc +100 -0
  1137. data/src/core/lib/slice/slice_split.h +40 -0
  1138. data/src/core/lib/slice/slice_string_helpers.cc +44 -0
  1139. data/src/core/lib/slice/slice_string_helpers.h +38 -0
  1140. data/src/core/lib/slice/slice_utils.h +200 -0
  1141. data/src/core/lib/slice/static_slice.cc +529 -0
  1142. data/src/core/lib/slice/static_slice.h +331 -0
  1143. data/src/core/lib/surface/api_trace.cc +25 -0
  1144. data/src/core/lib/surface/api_trace.h +53 -0
  1145. data/src/core/lib/surface/builtins.cc +49 -0
  1146. data/src/core/lib/surface/builtins.h +26 -0
  1147. data/src/core/lib/surface/byte_buffer.cc +92 -0
  1148. data/src/core/lib/surface/byte_buffer_reader.cc +101 -0
  1149. data/src/core/lib/surface/call.cc +2056 -0
  1150. data/src/core/lib/surface/call.h +131 -0
  1151. data/src/core/lib/surface/call_details.cc +41 -0
  1152. data/src/core/lib/surface/call_log_batch.cc +111 -0
  1153. data/src/core/lib/surface/call_test_only.h +43 -0
  1154. data/src/core/lib/surface/channel.cc +535 -0
  1155. data/src/core/lib/surface/channel.h +178 -0
  1156. data/src/core/lib/surface/channel_init.cc +56 -0
  1157. data/src/core/lib/surface/channel_init.h +86 -0
  1158. data/src/core/lib/surface/channel_ping.cc +63 -0
  1159. data/src/core/lib/surface/channel_stack_type.cc +59 -0
  1160. data/src/core/lib/surface/channel_stack_type.h +47 -0
  1161. data/src/core/lib/surface/completion_queue.cc +1429 -0
  1162. data/src/core/lib/surface/completion_queue.h +98 -0
  1163. data/src/core/lib/surface/completion_queue_factory.cc +88 -0
  1164. data/src/core/lib/surface/completion_queue_factory.h +39 -0
  1165. data/src/core/lib/surface/event_string.cc +62 -0
  1166. data/src/core/lib/surface/event_string.h +31 -0
  1167. data/src/core/lib/surface/init.cc +220 -0
  1168. data/src/core/lib/surface/init.h +35 -0
  1169. data/src/core/lib/surface/init_secure.cc +103 -0
  1170. data/src/core/lib/surface/lame_client.cc +192 -0
  1171. data/src/core/lib/surface/lame_client.h +33 -0
  1172. data/src/core/lib/surface/metadata_array.cc +36 -0
  1173. data/src/core/lib/surface/server.cc +1608 -0
  1174. data/src/core/lib/surface/server.h +497 -0
  1175. data/src/core/lib/surface/validate_metadata.cc +136 -0
  1176. data/src/core/lib/surface/validate_metadata.h +45 -0
  1177. data/src/core/lib/surface/version.cc +28 -0
  1178. data/src/core/lib/transport/bdp_estimator.cc +87 -0
  1179. data/src/core/lib/transport/bdp_estimator.h +95 -0
  1180. data/src/core/lib/transport/byte_stream.cc +158 -0
  1181. data/src/core/lib/transport/byte_stream.h +166 -0
  1182. data/src/core/lib/transport/connectivity_state.cc +188 -0
  1183. data/src/core/lib/transport/connectivity_state.h +145 -0
  1184. data/src/core/lib/transport/error_utils.cc +191 -0
  1185. data/src/core/lib/transport/error_utils.h +58 -0
  1186. data/src/core/lib/transport/http2_errors.h +41 -0
  1187. data/src/core/lib/transport/metadata.cc +714 -0
  1188. data/src/core/lib/transport/metadata.h +449 -0
  1189. data/src/core/lib/transport/metadata_batch.cc +94 -0
  1190. data/src/core/lib/transport/metadata_batch.h +1055 -0
  1191. data/src/core/lib/transport/parsed_metadata.h +263 -0
  1192. data/src/core/lib/transport/pid_controller.cc +51 -0
  1193. data/src/core/lib/transport/pid_controller.h +116 -0
  1194. data/src/core/lib/transport/static_metadata.cc +1117 -0
  1195. data/src/core/lib/transport/static_metadata.h +340 -0
  1196. data/src/core/lib/transport/status_conversion.cc +92 -0
  1197. data/src/core/lib/transport/status_conversion.h +38 -0
  1198. data/src/core/lib/transport/status_metadata.cc +63 -0
  1199. data/src/core/lib/transport/status_metadata.h +48 -0
  1200. data/src/core/lib/transport/timeout_encoding.cc +151 -0
  1201. data/src/core/lib/transport/timeout_encoding.h +38 -0
  1202. data/src/core/lib/transport/transport.cc +261 -0
  1203. data/src/core/lib/transport/transport.h +471 -0
  1204. data/src/core/lib/transport/transport_impl.h +71 -0
  1205. data/src/core/lib/transport/transport_op_string.cc +189 -0
  1206. data/src/core/lib/uri/uri_parser.cc +191 -0
  1207. data/src/core/lib/uri/uri_parser.h +87 -0
  1208. data/src/core/plugin_registry/grpc_plugin_registry.cc +197 -0
  1209. data/src/core/tsi/alts/crypt/aes_gcm.cc +690 -0
  1210. data/src/core/tsi/alts/crypt/gsec.cc +190 -0
  1211. data/src/core/tsi/alts/crypt/gsec.h +459 -0
  1212. data/src/core/tsi/alts/frame_protector/alts_counter.cc +118 -0
  1213. data/src/core/tsi/alts/frame_protector/alts_counter.h +98 -0
  1214. data/src/core/tsi/alts/frame_protector/alts_crypter.cc +66 -0
  1215. data/src/core/tsi/alts/frame_protector/alts_crypter.h +255 -0
  1216. data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +408 -0
  1217. data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +55 -0
  1218. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +114 -0
  1219. data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +114 -0
  1220. data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +105 -0
  1221. data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +103 -0
  1222. data/src/core/tsi/alts/frame_protector/frame_handler.cc +219 -0
  1223. data/src/core/tsi/alts/frame_protector/frame_handler.h +236 -0
  1224. data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +903 -0
  1225. data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +160 -0
  1226. data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +83 -0
  1227. data/src/core/tsi/alts/handshaker/alts_shared_resource.h +73 -0
  1228. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +705 -0
  1229. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +104 -0
  1230. data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +89 -0
  1231. data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +64 -0
  1232. data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +53 -0
  1233. data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +223 -0
  1234. data/src/core/tsi/alts/handshaker/transport_security_common_api.h +171 -0
  1235. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +226 -0
  1236. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +54 -0
  1237. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +144 -0
  1238. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +49 -0
  1239. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +91 -0
  1240. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +174 -0
  1241. data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +99 -0
  1242. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +478 -0
  1243. data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +199 -0
  1244. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +307 -0
  1245. data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +57 -0
  1246. data/src/core/tsi/fake_transport_security.cc +809 -0
  1247. data/src/core/tsi/fake_transport_security.h +47 -0
  1248. data/src/core/tsi/local_transport_security.cc +178 -0
  1249. data/src/core/tsi/local_transport_security.h +50 -0
  1250. data/src/core/tsi/ssl/session_cache/ssl_session.h +71 -0
  1251. data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +57 -0
  1252. data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +179 -0
  1253. data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +92 -0
  1254. data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +75 -0
  1255. data/src/core/tsi/ssl_transport_security.cc +2260 -0
  1256. data/src/core/tsi/ssl_transport_security.h +366 -0
  1257. data/src/core/tsi/ssl_types.h +42 -0
  1258. data/src/core/tsi/transport_security.cc +384 -0
  1259. data/src/core/tsi/transport_security.h +142 -0
  1260. data/src/core/tsi/transport_security_grpc.cc +73 -0
  1261. data/src/core/tsi/transport_security_grpc.h +80 -0
  1262. data/src/core/tsi/transport_security_interface.h +507 -0
  1263. data/src/ruby/bin/math_client.rb +140 -0
  1264. data/src/ruby/bin/math_pb.rb +34 -0
  1265. data/src/ruby/bin/math_server.rb +191 -0
  1266. data/src/ruby/bin/math_services_pb.rb +51 -0
  1267. data/src/ruby/bin/noproto_client.rb +93 -0
  1268. data/src/ruby/bin/noproto_server.rb +97 -0
  1269. data/src/ruby/ext/grpc/ext-export.clang +1 -0
  1270. data/src/ruby/ext/grpc/ext-export.gcc +6 -0
  1271. data/src/ruby/ext/grpc/extconf.rb +129 -0
  1272. data/src/ruby/ext/grpc/extconf.rb.orig +130 -0
  1273. data/src/ruby/ext/grpc/extconf.rb.rej +18 -0
  1274. data/src/ruby/ext/grpc/rb_byte_buffer.c +65 -0
  1275. data/src/ruby/ext/grpc/rb_byte_buffer.h +35 -0
  1276. data/src/ruby/ext/grpc/rb_call.c +1051 -0
  1277. data/src/ruby/ext/grpc/rb_call.h +57 -0
  1278. data/src/ruby/ext/grpc/rb_call_credentials.c +341 -0
  1279. data/src/ruby/ext/grpc/rb_call_credentials.h +31 -0
  1280. data/src/ruby/ext/grpc/rb_channel.c +846 -0
  1281. data/src/ruby/ext/grpc/rb_channel.h +34 -0
  1282. data/src/ruby/ext/grpc/rb_channel_args.c +155 -0
  1283. data/src/ruby/ext/grpc/rb_channel_args.h +38 -0
  1284. data/src/ruby/ext/grpc/rb_channel_credentials.c +286 -0
  1285. data/src/ruby/ext/grpc/rb_channel_credentials.h +37 -0
  1286. data/src/ruby/ext/grpc/rb_completion_queue.c +101 -0
  1287. data/src/ruby/ext/grpc/rb_completion_queue.h +36 -0
  1288. data/src/ruby/ext/grpc/rb_compression_options.c +471 -0
  1289. data/src/ruby/ext/grpc/rb_compression_options.h +29 -0
  1290. data/src/ruby/ext/grpc/rb_enable_cpp.cc +22 -0
  1291. data/src/ruby/ext/grpc/rb_event_thread.c +145 -0
  1292. data/src/ruby/ext/grpc/rb_event_thread.h +21 -0
  1293. data/src/ruby/ext/grpc/rb_grpc.c +333 -0
  1294. data/src/ruby/ext/grpc/rb_grpc.h +77 -0
  1295. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +605 -0
  1296. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +913 -0
  1297. data/src/ruby/ext/grpc/rb_loader.c +57 -0
  1298. data/src/ruby/ext/grpc/rb_loader.h +25 -0
  1299. data/src/ruby/ext/grpc/rb_server.c +385 -0
  1300. data/src/ruby/ext/grpc/rb_server.h +32 -0
  1301. data/src/ruby/ext/grpc/rb_server_credentials.c +259 -0
  1302. data/src/ruby/ext/grpc/rb_server_credentials.h +37 -0
  1303. data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +218 -0
  1304. data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +37 -0
  1305. data/src/ruby/ext/grpc/rb_xds_server_credentials.c +170 -0
  1306. data/src/ruby/ext/grpc/rb_xds_server_credentials.h +37 -0
  1307. data/src/ruby/lib/grpc/core/status_codes.rb +135 -0
  1308. data/src/ruby/lib/grpc/core/time_consts.rb +56 -0
  1309. data/src/ruby/lib/grpc/errors.rb +277 -0
  1310. data/src/ruby/lib/grpc/generic/active_call.rb +669 -0
  1311. data/src/ruby/lib/grpc/generic/bidi_call.rb +233 -0
  1312. data/src/ruby/lib/grpc/generic/client_stub.rb +503 -0
  1313. data/src/ruby/lib/grpc/generic/interceptor_registry.rb +53 -0
  1314. data/src/ruby/lib/grpc/generic/interceptors.rb +186 -0
  1315. data/src/ruby/lib/grpc/generic/rpc_desc.rb +204 -0
  1316. data/src/ruby/lib/grpc/generic/rpc_server.rb +551 -0
  1317. data/src/ruby/lib/grpc/generic/service.rb +211 -0
  1318. data/src/ruby/lib/grpc/google_rpc_status_utils.rb +40 -0
  1319. data/src/ruby/lib/grpc/grpc.rb +24 -0
  1320. data/src/ruby/lib/grpc/logconfig.rb +44 -0
  1321. data/src/ruby/lib/grpc/notifier.rb +45 -0
  1322. data/src/ruby/lib/grpc/structs.rb +15 -0
  1323. data/src/ruby/lib/grpc/version.rb +18 -0
  1324. data/src/ruby/lib/grpc.rb +37 -0
  1325. data/src/ruby/pb/README.md +42 -0
  1326. data/src/ruby/pb/generate_proto_ruby.sh +51 -0
  1327. data/src/ruby/pb/grpc/health/checker.rb +75 -0
  1328. data/src/ruby/pb/grpc/health/v1/health_pb.rb +31 -0
  1329. data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +62 -0
  1330. data/src/ruby/pb/grpc/testing/duplicate/echo_duplicate_services_pb.rb +44 -0
  1331. data/src/ruby/pb/grpc/testing/metrics_pb.rb +28 -0
  1332. data/src/ruby/pb/grpc/testing/metrics_services_pb.rb +49 -0
  1333. data/src/ruby/pb/src/proto/grpc/testing/empty_pb.rb +17 -0
  1334. data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +145 -0
  1335. data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +16 -0
  1336. data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +152 -0
  1337. data/src/ruby/spec/call_credentials_spec.rb +42 -0
  1338. data/src/ruby/spec/call_spec.rb +180 -0
  1339. data/src/ruby/spec/channel_connection_spec.rb +126 -0
  1340. data/src/ruby/spec/channel_credentials_spec.rb +124 -0
  1341. data/src/ruby/spec/channel_spec.rb +245 -0
  1342. data/src/ruby/spec/client_auth_spec.rb +152 -0
  1343. data/src/ruby/spec/client_server_spec.rb +664 -0
  1344. data/src/ruby/spec/compression_options_spec.rb +149 -0
  1345. data/src/ruby/spec/debug_message_spec.rb +134 -0
  1346. data/src/ruby/spec/error_sanity_spec.rb +49 -0
  1347. data/src/ruby/spec/errors_spec.rb +142 -0
  1348. data/src/ruby/spec/errors_spec.rb.rej +11 -0
  1349. data/src/ruby/spec/generic/active_call_spec.rb +683 -0
  1350. data/src/ruby/spec/generic/client_interceptors_spec.rb +153 -0
  1351. data/src/ruby/spec/generic/client_stub_spec.rb +1083 -0
  1352. data/src/ruby/spec/generic/interceptor_registry_spec.rb +65 -0
  1353. data/src/ruby/spec/generic/rpc_desc_spec.rb +374 -0
  1354. data/src/ruby/spec/generic/rpc_server_pool_spec.rb +127 -0
  1355. data/src/ruby/spec/generic/rpc_server_spec.rb +748 -0
  1356. data/src/ruby/spec/generic/server_interceptors_spec.rb +218 -0
  1357. data/src/ruby/spec/generic/service_spec.rb +263 -0
  1358. data/src/ruby/spec/google_rpc_status_utils_spec.rb +282 -0
  1359. data/src/ruby/spec/pb/codegen/grpc/testing/package_options.proto +28 -0
  1360. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_import.proto +22 -0
  1361. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_import2.proto +23 -0
  1362. data/src/ruby/spec/pb/codegen/grpc/testing/package_options_ruby_style.proto +41 -0
  1363. data/src/ruby/spec/pb/codegen/grpc/testing/same_package_service_name.proto +27 -0
  1364. data/src/ruby/spec/pb/codegen/grpc/testing/same_ruby_package_service_name.proto +29 -0
  1365. data/src/ruby/spec/pb/codegen/package_option_spec.rb +98 -0
  1366. data/src/ruby/spec/pb/duplicate/codegen_spec.rb +57 -0
  1367. data/src/ruby/spec/pb/health/checker_spec.rb +236 -0
  1368. data/src/ruby/spec/server_credentials_spec.rb +104 -0
  1369. data/src/ruby/spec/server_spec.rb +231 -0
  1370. data/src/ruby/spec/spec_helper.rb +61 -0
  1371. data/src/ruby/spec/support/helpers.rb +107 -0
  1372. data/src/ruby/spec/support/services.rb +160 -0
  1373. data/src/ruby/spec/testdata/README +1 -0
  1374. data/src/ruby/spec/testdata/ca.pem +20 -0
  1375. data/src/ruby/spec/testdata/client.key +28 -0
  1376. data/src/ruby/spec/testdata/client.pem +20 -0
  1377. data/src/ruby/spec/testdata/server1.key +28 -0
  1378. data/src/ruby/spec/testdata/server1.pem +22 -0
  1379. data/src/ruby/spec/time_consts_spec.rb +74 -0
  1380. data/src/ruby/spec/user_agent_spec.rb +74 -0
  1381. data/third_party/abseil-cpp/absl/algorithm/algorithm.h +159 -0
  1382. data/third_party/abseil-cpp/absl/algorithm/container.h +1764 -0
  1383. data/third_party/abseil-cpp/absl/base/attributes.h +702 -0
  1384. data/third_party/abseil-cpp/absl/base/call_once.h +219 -0
  1385. data/third_party/abseil-cpp/absl/base/casts.h +187 -0
  1386. data/third_party/abseil-cpp/absl/base/config.h +742 -0
  1387. data/third_party/abseil-cpp/absl/base/const_init.h +76 -0
  1388. data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +496 -0
  1389. data/third_party/abseil-cpp/absl/base/internal/atomic_hook.h +200 -0
  1390. data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +107 -0
  1391. data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +94 -0
  1392. data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +169 -0
  1393. data/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
  1394. data/third_party/abseil-cpp/absl/base/internal/endian.h +327 -0
  1395. data/third_party/abseil-cpp/absl/base/internal/errno_saver.h +43 -0
  1396. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.cc +93 -0
  1397. data/third_party/abseil-cpp/absl/base/internal/exponential_biased.h +130 -0
  1398. data/third_party/abseil-cpp/absl/base/internal/hide_ptr.h +51 -0
  1399. data/third_party/abseil-cpp/absl/base/internal/identity.h +37 -0
  1400. data/third_party/abseil-cpp/absl/base/internal/inline_variable.h +107 -0
  1401. data/third_party/abseil-cpp/absl/base/internal/invoke.h +187 -0
  1402. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +620 -0
  1403. data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.h +126 -0
  1404. data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +134 -0
  1405. data/third_party/abseil-cpp/absl/base/internal/per_thread_tls.h +52 -0
  1406. data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +242 -0
  1407. data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +195 -0
  1408. data/third_party/abseil-cpp/absl/base/internal/scheduling_mode.h +58 -0
  1409. data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +229 -0
  1410. data/third_party/abseil-cpp/absl/base/internal/spinlock.h +246 -0
  1411. data/third_party/abseil-cpp/absl/base/internal/spinlock_akaros.inc +35 -0
  1412. data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +74 -0
  1413. data/third_party/abseil-cpp/absl/base/internal/spinlock_posix.inc +46 -0
  1414. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.cc +81 -0
  1415. data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +93 -0
  1416. data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +37 -0
  1417. data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +439 -0
  1418. data/third_party/abseil-cpp/absl/base/internal/sysinfo.h +74 -0
  1419. data/third_party/abseil-cpp/absl/base/internal/thread_annotations.h +271 -0
  1420. data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +155 -0
  1421. data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +265 -0
  1422. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +212 -0
  1423. data/third_party/abseil-cpp/absl/base/internal/throw_delegate.h +75 -0
  1424. data/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +68 -0
  1425. data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +82 -0
  1426. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +138 -0
  1427. data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +124 -0
  1428. data/third_party/abseil-cpp/absl/base/log_severity.cc +27 -0
  1429. data/third_party/abseil-cpp/absl/base/log_severity.h +121 -0
  1430. data/third_party/abseil-cpp/absl/base/macros.h +158 -0
  1431. data/third_party/abseil-cpp/absl/base/optimization.h +244 -0
  1432. data/third_party/abseil-cpp/absl/base/options.h +238 -0
  1433. data/third_party/abseil-cpp/absl/base/policy_checks.h +111 -0
  1434. data/third_party/abseil-cpp/absl/base/port.h +25 -0
  1435. data/third_party/abseil-cpp/absl/base/thread_annotations.h +335 -0
  1436. data/third_party/abseil-cpp/absl/container/fixed_array.h +532 -0
  1437. data/third_party/abseil-cpp/absl/container/flat_hash_map.h +606 -0
  1438. data/third_party/abseil-cpp/absl/container/inlined_vector.h +847 -0
  1439. data/third_party/abseil-cpp/absl/container/internal/common.h +206 -0
  1440. data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +290 -0
  1441. data/third_party/abseil-cpp/absl/container/internal/container_memory.h +460 -0
  1442. data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +161 -0
  1443. data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +208 -0
  1444. data/third_party/abseil-cpp/absl/container/internal/hashtable_debug_hooks.h +85 -0
  1445. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +274 -0
  1446. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +322 -0
  1447. data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +31 -0
  1448. data/third_party/abseil-cpp/absl/container/internal/have_sse.h +50 -0
  1449. data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +967 -0
  1450. data/third_party/abseil-cpp/absl/container/internal/layout.h +743 -0
  1451. data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +197 -0
  1452. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +61 -0
  1453. data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +1903 -0
  1454. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +139 -0
  1455. data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.h +32 -0
  1456. data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +1949 -0
  1457. data/third_party/abseil-cpp/absl/debugging/internal/demangle.h +71 -0
  1458. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +382 -0
  1459. data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +134 -0
  1460. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +199 -0
  1461. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +134 -0
  1462. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +80 -0
  1463. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +108 -0
  1464. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +253 -0
  1465. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_unimplemented-inl.inc +24 -0
  1466. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +93 -0
  1467. data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +346 -0
  1468. data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +147 -0
  1469. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +173 -0
  1470. data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.h +158 -0
  1471. data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +140 -0
  1472. data/third_party/abseil-cpp/absl/debugging/stacktrace.h +231 -0
  1473. data/third_party/abseil-cpp/absl/debugging/symbolize.cc +36 -0
  1474. data/third_party/abseil-cpp/absl/debugging/symbolize.h +99 -0
  1475. data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +101 -0
  1476. data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +1560 -0
  1477. data/third_party/abseil-cpp/absl/debugging/symbolize_unimplemented.inc +40 -0
  1478. data/third_party/abseil-cpp/absl/debugging/symbolize_win32.inc +81 -0
  1479. data/third_party/abseil-cpp/absl/functional/bind_front.h +184 -0
  1480. data/third_party/abseil-cpp/absl/functional/function_ref.h +139 -0
  1481. data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +95 -0
  1482. data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +106 -0
  1483. data/third_party/abseil-cpp/absl/hash/hash.h +325 -0
  1484. data/third_party/abseil-cpp/absl/hash/internal/city.cc +349 -0
  1485. data/third_party/abseil-cpp/absl/hash/internal/city.h +78 -0
  1486. data/third_party/abseil-cpp/absl/hash/internal/hash.cc +70 -0
  1487. data/third_party/abseil-cpp/absl/hash/internal/hash.h +1045 -0
  1488. data/third_party/abseil-cpp/absl/hash/internal/wyhash.cc +111 -0
  1489. data/third_party/abseil-cpp/absl/hash/internal/wyhash.h +48 -0
  1490. data/third_party/abseil-cpp/absl/memory/memory.h +699 -0
  1491. data/third_party/abseil-cpp/absl/meta/type_traits.h +767 -0
  1492. data/third_party/abseil-cpp/absl/numeric/bits.h +177 -0
  1493. data/third_party/abseil-cpp/absl/numeric/int128.cc +390 -0
  1494. data/third_party/abseil-cpp/absl/numeric/int128.h +1092 -0
  1495. data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +302 -0
  1496. data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +308 -0
  1497. data/third_party/abseil-cpp/absl/numeric/internal/bits.h +358 -0
  1498. data/third_party/abseil-cpp/absl/numeric/internal/representation.h +55 -0
  1499. data/third_party/abseil-cpp/absl/status/internal/status_internal.h +69 -0
  1500. data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +396 -0
  1501. data/third_party/abseil-cpp/absl/status/status.cc +452 -0
  1502. data/third_party/abseil-cpp/absl/status/status.h +878 -0
  1503. data/third_party/abseil-cpp/absl/status/status_payload_printer.cc +38 -0
  1504. data/third_party/abseil-cpp/absl/status/status_payload_printer.h +51 -0
  1505. data/third_party/abseil-cpp/absl/status/statusor.cc +71 -0
  1506. data/third_party/abseil-cpp/absl/status/statusor.h +760 -0
  1507. data/third_party/abseil-cpp/absl/strings/ascii.cc +200 -0
  1508. data/third_party/abseil-cpp/absl/strings/ascii.h +242 -0
  1509. data/third_party/abseil-cpp/absl/strings/charconv.cc +984 -0
  1510. data/third_party/abseil-cpp/absl/strings/charconv.h +119 -0
  1511. data/third_party/abseil-cpp/absl/strings/cord.cc +1953 -0
  1512. data/third_party/abseil-cpp/absl/strings/cord.h +1394 -0
  1513. data/third_party/abseil-cpp/absl/strings/escaping.cc +949 -0
  1514. data/third_party/abseil-cpp/absl/strings/escaping.h +164 -0
  1515. data/third_party/abseil-cpp/absl/strings/internal/char_map.h +156 -0
  1516. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +359 -0
  1517. data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +423 -0
  1518. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +504 -0
  1519. data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.h +99 -0
  1520. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +83 -0
  1521. data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +543 -0
  1522. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +146 -0
  1523. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +897 -0
  1524. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +589 -0
  1525. data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +114 -0
  1526. data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +180 -0
  1527. data/third_party/abseil-cpp/absl/strings/internal/escaping.h +58 -0
  1528. data/third_party/abseil-cpp/absl/strings/internal/memutil.cc +112 -0
  1529. data/third_party/abseil-cpp/absl/strings/internal/memutil.h +148 -0
  1530. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +36 -0
  1531. data/third_party/abseil-cpp/absl/strings/internal/ostringstream.h +89 -0
  1532. data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +73 -0
  1533. data/third_party/abseil-cpp/absl/strings/internal/stl_type_traits.h +248 -0
  1534. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +488 -0
  1535. data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +518 -0
  1536. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +259 -0
  1537. data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +217 -0
  1538. data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +333 -0
  1539. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +75 -0
  1540. data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +427 -0
  1541. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +1423 -0
  1542. data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +37 -0
  1543. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.cc +72 -0
  1544. data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +96 -0
  1545. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +350 -0
  1546. data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +349 -0
  1547. data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +314 -0
  1548. data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +430 -0
  1549. data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +64 -0
  1550. data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +53 -0
  1551. data/third_party/abseil-cpp/absl/strings/internal/utf8.h +50 -0
  1552. data/third_party/abseil-cpp/absl/strings/match.cc +43 -0
  1553. data/third_party/abseil-cpp/absl/strings/match.h +100 -0
  1554. data/third_party/abseil-cpp/absl/strings/numbers.cc +1093 -0
  1555. data/third_party/abseil-cpp/absl/strings/numbers.h +266 -0
  1556. data/third_party/abseil-cpp/absl/strings/str_cat.cc +246 -0
  1557. data/third_party/abseil-cpp/absl/strings/str_cat.h +408 -0
  1558. data/third_party/abseil-cpp/absl/strings/str_format.h +813 -0
  1559. data/third_party/abseil-cpp/absl/strings/str_join.h +293 -0
  1560. data/third_party/abseil-cpp/absl/strings/str_replace.cc +82 -0
  1561. data/third_party/abseil-cpp/absl/strings/str_replace.h +219 -0
  1562. data/third_party/abseil-cpp/absl/strings/str_split.cc +139 -0
  1563. data/third_party/abseil-cpp/absl/strings/str_split.h +548 -0
  1564. data/third_party/abseil-cpp/absl/strings/string_view.cc +235 -0
  1565. data/third_party/abseil-cpp/absl/strings/string_view.h +629 -0
  1566. data/third_party/abseil-cpp/absl/strings/strip.h +91 -0
  1567. data/third_party/abseil-cpp/absl/strings/substitute.cc +171 -0
  1568. data/third_party/abseil-cpp/absl/strings/substitute.h +696 -0
  1569. data/third_party/abseil-cpp/absl/synchronization/barrier.cc +52 -0
  1570. data/third_party/abseil-cpp/absl/synchronization/barrier.h +79 -0
  1571. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +57 -0
  1572. data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +99 -0
  1573. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +140 -0
  1574. data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +60 -0
  1575. data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +154 -0
  1576. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +698 -0
  1577. data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.h +141 -0
  1578. data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +156 -0
  1579. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +106 -0
  1580. data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +115 -0
  1581. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +428 -0
  1582. data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +155 -0
  1583. data/third_party/abseil-cpp/absl/synchronization/mutex.cc +2751 -0
  1584. data/third_party/abseil-cpp/absl/synchronization/mutex.h +1082 -0
  1585. data/third_party/abseil-cpp/absl/synchronization/notification.cc +78 -0
  1586. data/third_party/abseil-cpp/absl/synchronization/notification.h +123 -0
  1587. data/third_party/abseil-cpp/absl/time/civil_time.cc +175 -0
  1588. data/third_party/abseil-cpp/absl/time/civil_time.h +538 -0
  1589. data/third_party/abseil-cpp/absl/time/clock.cc +585 -0
  1590. data/third_party/abseil-cpp/absl/time/clock.h +74 -0
  1591. data/third_party/abseil-cpp/absl/time/duration.cc +954 -0
  1592. data/third_party/abseil-cpp/absl/time/format.cc +160 -0
  1593. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time.h +332 -0
  1594. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +628 -0
  1595. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +386 -0
  1596. data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +102 -0
  1597. data/third_party/abseil-cpp/absl/time/internal/cctz/src/civil_time_detail.cc +94 -0
  1598. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +140 -0
  1599. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.h +52 -0
  1600. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +1029 -0
  1601. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.cc +45 -0
  1602. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +76 -0
  1603. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +113 -0
  1604. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +93 -0
  1605. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +965 -0
  1606. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +137 -0
  1607. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +315 -0
  1608. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.h +55 -0
  1609. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +187 -0
  1610. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.cc +159 -0
  1611. data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_posix.h +132 -0
  1612. data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +122 -0
  1613. data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +116 -0
  1614. data/third_party/abseil-cpp/absl/time/internal/get_current_time_chrono.inc +31 -0
  1615. data/third_party/abseil-cpp/absl/time/internal/get_current_time_posix.inc +24 -0
  1616. data/third_party/abseil-cpp/absl/time/time.cc +500 -0
  1617. data/third_party/abseil-cpp/absl/time/time.h +1585 -0
  1618. data/third_party/abseil-cpp/absl/types/bad_optional_access.cc +48 -0
  1619. data/third_party/abseil-cpp/absl/types/bad_optional_access.h +78 -0
  1620. data/third_party/abseil-cpp/absl/types/bad_variant_access.cc +64 -0
  1621. data/third_party/abseil-cpp/absl/types/bad_variant_access.h +82 -0
  1622. data/third_party/abseil-cpp/absl/types/internal/optional.h +396 -0
  1623. data/third_party/abseil-cpp/absl/types/internal/span.h +128 -0
  1624. data/third_party/abseil-cpp/absl/types/internal/variant.h +1646 -0
  1625. data/third_party/abseil-cpp/absl/types/optional.h +776 -0
  1626. data/third_party/abseil-cpp/absl/types/span.h +726 -0
  1627. data/third_party/abseil-cpp/absl/types/variant.h +866 -0
  1628. data/third_party/abseil-cpp/absl/utility/utility.h +350 -0
  1629. data/third_party/address_sorting/address_sorting.c +375 -0
  1630. data/third_party/address_sorting/address_sorting_internal.h +70 -0
  1631. data/third_party/address_sorting/address_sorting_posix.c +98 -0
  1632. data/third_party/address_sorting/address_sorting_windows.c +95 -0
  1633. data/third_party/address_sorting/include/address_sorting/address_sorting.h +115 -0
  1634. data/third_party/boringssl-with-bazel/err_data.c +1489 -0
  1635. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +276 -0
  1636. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +122 -0
  1637. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +91 -0
  1638. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_dup.c +87 -0
  1639. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +195 -0
  1640. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +266 -0
  1641. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_i2d_fp.c +88 -0
  1642. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +420 -0
  1643. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +298 -0
  1644. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +288 -0
  1645. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +77 -0
  1646. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c +83 -0
  1647. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +650 -0
  1648. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +266 -0
  1649. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +212 -0
  1650. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +163 -0
  1651. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +264 -0
  1652. data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utf8.c +236 -0
  1653. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +440 -0
  1654. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +80 -0
  1655. data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +105 -0
  1656. data/third_party/boringssl-with-bazel/src/crypto/asn1/charmap.h +15 -0
  1657. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +93 -0
  1658. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +97 -0
  1659. data/third_party/boringssl-with-bazel/src/crypto/asn1/f_string.c +91 -0
  1660. data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +196 -0
  1661. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +1193 -0
  1662. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +709 -0
  1663. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +233 -0
  1664. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +332 -0
  1665. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +129 -0
  1666. data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +281 -0
  1667. data/third_party/boringssl-with-bazel/src/crypto/asn1/time_support.c +206 -0
  1668. data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +469 -0
  1669. data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +702 -0
  1670. data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +324 -0
  1671. data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +541 -0
  1672. data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +275 -0
  1673. data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +311 -0
  1674. data/third_party/boringssl-with-bazel/src/crypto/bio/hexdump.c +192 -0
  1675. data/third_party/boringssl-with-bazel/src/crypto/bio/internal.h +111 -0
  1676. data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +483 -0
  1677. data/third_party/boringssl-with-bazel/src/crypto/bio/printf.c +115 -0
  1678. data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +192 -0
  1679. data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +122 -0
  1680. data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +156 -0
  1681. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +57 -0
  1682. data/third_party/boringssl-with-bazel/src/crypto/bn_extra/convert.c +470 -0
  1683. data/third_party/boringssl-with-bazel/src/crypto/buf/buf.c +172 -0
  1684. data/third_party/boringssl-with-bazel/src/crypto/bytestring/asn1_compat.c +52 -0
  1685. data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +264 -0
  1686. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +728 -0
  1687. data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +711 -0
  1688. data/third_party/boringssl-with-bazel/src/crypto/bytestring/internal.h +96 -0
  1689. data/third_party/boringssl-with-bazel/src/crypto/bytestring/unicode.c +155 -0
  1690. data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +175 -0
  1691. data/third_party/boringssl-with-bazel/src/crypto/chacha/internal.h +45 -0
  1692. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +127 -0
  1693. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/derive_key.c +152 -0
  1694. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesccm.c +447 -0
  1695. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesctrhmac.c +283 -0
  1696. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_aesgcmsiv.c +891 -0
  1697. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +343 -0
  1698. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_null.c +85 -0
  1699. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc2.c +462 -0
  1700. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_rc4.c +87 -0
  1701. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +601 -0
  1702. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +226 -0
  1703. data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +338 -0
  1704. data/third_party/boringssl-with-bazel/src/crypto/cmac/cmac.c +278 -0
  1705. data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +821 -0
  1706. data/third_party/boringssl-with-bazel/src/crypto/conf/conf_def.h +127 -0
  1707. data/third_party/boringssl-with-bazel/src/crypto/conf/internal.h +31 -0
  1708. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-fuchsia.c +55 -0
  1709. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-linux.c +62 -0
  1710. data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-win.c +41 -0
  1711. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm-linux.c +229 -0
  1712. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm-linux.h +201 -0
  1713. data/third_party/boringssl-with-bazel/src/crypto/cpu-arm.c +38 -0
  1714. data/third_party/boringssl-with-bazel/src/crypto/cpu-intel.c +291 -0
  1715. data/third_party/boringssl-with-bazel/src/crypto/cpu-ppc64le.c +38 -0
  1716. data/third_party/boringssl-with-bazel/src/crypto/crypto.c +226 -0
  1717. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +2159 -0
  1718. data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519_tables.h +7872 -0
  1719. data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +146 -0
  1720. data/third_party/boringssl-with-bazel/src/crypto/curve25519/spake25519.c +539 -0
  1721. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/dh_asn1.c +160 -0
  1722. data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +272 -0
  1723. data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +268 -0
  1724. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +946 -0
  1725. data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +390 -0
  1726. data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +34 -0
  1727. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +559 -0
  1728. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_derive.c +95 -0
  1729. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/hash_to_curve.c +385 -0
  1730. data/third_party/boringssl-with-bazel/src/crypto/ec_extra/internal.h +56 -0
  1731. data/third_party/boringssl-with-bazel/src/crypto/ecdh_extra/ecdh_extra.c +124 -0
  1732. data/third_party/boringssl-with-bazel/src/crypto/ecdsa_extra/ecdsa_asn1.c +267 -0
  1733. data/third_party/boringssl-with-bazel/src/crypto/engine/engine.c +99 -0
  1734. data/third_party/boringssl-with-bazel/src/crypto/err/err.c +857 -0
  1735. data/third_party/boringssl-with-bazel/src/crypto/err/internal.h +58 -0
  1736. data/third_party/boringssl-with-bazel/src/crypto/evp/digestsign.c +231 -0
  1737. data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +456 -0
  1738. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +547 -0
  1739. data/third_party/boringssl-with-bazel/src/crypto/evp/evp_ctx.c +484 -0
  1740. data/third_party/boringssl-with-bazel/src/crypto/evp/internal.h +269 -0
  1741. data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +277 -0
  1742. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec.c +286 -0
  1743. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ec_asn1.c +255 -0
  1744. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519.c +104 -0
  1745. data/third_party/boringssl-with-bazel/src/crypto/evp/p_ed25519_asn1.c +221 -0
  1746. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa.c +648 -0
  1747. data/third_party/boringssl-with-bazel/src/crypto/evp/p_rsa_asn1.c +194 -0
  1748. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519.c +110 -0
  1749. data/third_party/boringssl-with-bazel/src/crypto/evp/p_x25519_asn1.c +248 -0
  1750. data/third_party/boringssl-with-bazel/src/crypto/evp/pbkdf.c +146 -0
  1751. data/third_party/boringssl-with-bazel/src/crypto/evp/print.c +489 -0
  1752. data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +211 -0
  1753. data/third_party/boringssl-with-bazel/src/crypto/evp/sign.c +151 -0
  1754. data/third_party/boringssl-with-bazel/src/crypto/ex_data.c +261 -0
  1755. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes.c +108 -0
  1756. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/aes_nohw.c +1282 -0
  1757. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/internal.h +238 -0
  1758. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/key_wrap.c +236 -0
  1759. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/aes/mode_wrappers.c +122 -0
  1760. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +266 -0
  1761. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/add.c +316 -0
  1762. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/asm/x86_64-gcc.c +541 -0
  1763. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +438 -0
  1764. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bytes.c +230 -0
  1765. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/cmp.c +200 -0
  1766. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/ctx.c +236 -0
  1767. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +902 -0
  1768. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div_extra.c +87 -0
  1769. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/exponentiation.c +1288 -0
  1770. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd.c +378 -0
  1771. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +326 -0
  1772. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/generic.c +711 -0
  1773. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +715 -0
  1774. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/jacobi.c +146 -0
  1775. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery.c +502 -0
  1776. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/montgomery_inv.c +186 -0
  1777. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/mul.c +749 -0
  1778. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +1064 -0
  1779. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/random.c +341 -0
  1780. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.c +226 -0
  1781. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/rsaz_exp.h +104 -0
  1782. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/shift.c +364 -0
  1783. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +498 -0
  1784. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/aead.c +284 -0
  1785. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +636 -0
  1786. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +1473 -0
  1787. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_des.c +237 -0
  1788. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/internal.h +128 -0
  1789. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/delocate.h +89 -0
  1790. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/des.c +784 -0
  1791. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/internal.h +238 -0
  1792. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/check.c +217 -0
  1793. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +456 -0
  1794. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +282 -0
  1795. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +304 -0
  1796. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/internal.h +112 -0
  1797. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +195 -0
  1798. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +1268 -0
  1799. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +472 -0
  1800. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_montgomery.c +524 -0
  1801. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/felem.c +100 -0
  1802. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +772 -0
  1803. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/oct.c +328 -0
  1804. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p224-64.c +1180 -0
  1805. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64-table.h +9497 -0
  1806. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.c +633 -0
  1807. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256-x86_64.h +153 -0
  1808. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256.c +740 -0
  1809. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/p256_table.h +297 -0
  1810. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/scalar.c +175 -0
  1811. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple.c +357 -0
  1812. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/simple_mul.c +270 -0
  1813. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/util.c +255 -0
  1814. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/wnaf.c +270 -0
  1815. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdh/ecdh.c +122 -0
  1816. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +339 -0
  1817. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +39 -0
  1818. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/fips_shared_support.c +32 -0
  1819. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/hmac/hmac.c +228 -0
  1820. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +240 -0
  1821. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/internal.h +37 -0
  1822. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +284 -0
  1823. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +178 -0
  1824. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +203 -0
  1825. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +201 -0
  1826. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +733 -0
  1827. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +304 -0
  1828. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +420 -0
  1829. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +97 -0
  1830. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/polyval.c +91 -0
  1831. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/ctrdrbg.c +202 -0
  1832. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.c +137 -0
  1833. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/fork_detect.h +49 -0
  1834. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/getrandom_fillin.h +64 -0
  1835. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +184 -0
  1836. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +457 -0
  1837. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +401 -0
  1838. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/blinding.c +243 -0
  1839. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +131 -0
  1840. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/padding.c +695 -0
  1841. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +935 -0
  1842. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +1416 -0
  1843. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +79 -0
  1844. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +874 -0
  1845. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/internal.h +53 -0
  1846. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1-altivec.c +361 -0
  1847. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +357 -0
  1848. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +321 -0
  1849. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +508 -0
  1850. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/internal.h +39 -0
  1851. data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/tls/kdf.c +165 -0
  1852. data/third_party/boringssl-with-bazel/src/crypto/hkdf/hkdf.c +112 -0
  1853. data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +618 -0
  1854. data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +2198 -0
  1855. data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +68 -0
  1856. data/third_party/boringssl-with-bazel/src/crypto/internal.h +959 -0
  1857. data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +253 -0
  1858. data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +353 -0
  1859. data/third_party/boringssl-with-bazel/src/crypto/mem.c +392 -0
  1860. data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +553 -0
  1861. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_dat.h +11585 -0
  1862. data/third_party/boringssl-with-bazel/src/crypto/obj/obj_xref.c +122 -0
  1863. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +252 -0
  1864. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +358 -0
  1865. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +769 -0
  1866. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_oth.c +87 -0
  1867. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +255 -0
  1868. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +214 -0
  1869. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_x509.c +65 -0
  1870. data/third_party/boringssl-with-bazel/src/crypto/pem/pem_xaux.c +65 -0
  1871. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +58 -0
  1872. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +164 -0
  1873. data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +526 -0
  1874. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +138 -0
  1875. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/p5_pbev2.c +316 -0
  1876. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +530 -0
  1877. data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +1383 -0
  1878. data/third_party/boringssl-with-bazel/src/crypto/poly1305/internal.h +41 -0
  1879. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +321 -0
  1880. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +307 -0
  1881. data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +860 -0
  1882. data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +45 -0
  1883. data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +221 -0
  1884. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +56 -0
  1885. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/forkunsafe.c +46 -0
  1886. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +34 -0
  1887. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +34 -0
  1888. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +74 -0
  1889. data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +73 -0
  1890. data/third_party/boringssl-with-bazel/src/crypto/rc4/rc4.c +98 -0
  1891. data/third_party/boringssl-with-bazel/src/crypto/refcount_c11.c +67 -0
  1892. data/third_party/boringssl-with-bazel/src/crypto/refcount_lock.c +53 -0
  1893. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +324 -0
  1894. data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_print.c +22 -0
  1895. data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +82 -0
  1896. data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +425 -0
  1897. data/third_party/boringssl-with-bazel/src/crypto/thread.c +110 -0
  1898. data/third_party/boringssl-with-bazel/src/crypto/thread_none.c +59 -0
  1899. data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +182 -0
  1900. data/third_party/boringssl-with-bazel/src/crypto/thread_win.c +260 -0
  1901. data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +318 -0
  1902. data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +1399 -0
  1903. data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +858 -0
  1904. data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +766 -0
  1905. data/third_party/boringssl-with-bazel/src/crypto/x509/a_digest.c +96 -0
  1906. data/third_party/boringssl-with-bazel/src/crypto/x509/a_sign.c +128 -0
  1907. data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +118 -0
  1908. data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +163 -0
  1909. data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +842 -0
  1910. data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +459 -0
  1911. data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +277 -0
  1912. data/third_party/boringssl-with-bazel/src/crypto/x509/i2d_pr.c +83 -0
  1913. data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +398 -0
  1914. data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +246 -0
  1915. data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +400 -0
  1916. data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +130 -0
  1917. data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +246 -0
  1918. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +365 -0
  1919. data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +116 -0
  1920. data/third_party/boringssl-with-bazel/src/crypto/x509/x509.c +90 -0
  1921. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +358 -0
  1922. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +461 -0
  1923. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_d2.c +106 -0
  1924. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_def.c +103 -0
  1925. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +212 -0
  1926. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +830 -0
  1927. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +199 -0
  1928. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +304 -0
  1929. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +240 -0
  1930. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +331 -0
  1931. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +204 -0
  1932. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +281 -0
  1933. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +2456 -0
  1934. data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +651 -0
  1935. data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +284 -0
  1936. data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +388 -0
  1937. data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +84 -0
  1938. data/third_party/boringssl-with-bazel/src/crypto/x509/x509spki.c +137 -0
  1939. data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +153 -0
  1940. data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +386 -0
  1941. data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +98 -0
  1942. data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +565 -0
  1943. data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +77 -0
  1944. data/third_party/boringssl-with-bazel/src/crypto/x509/x_info.c +98 -0
  1945. data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +544 -0
  1946. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c +106 -0
  1947. data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +217 -0
  1948. data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +106 -0
  1949. data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +94 -0
  1950. data/third_party/boringssl-with-bazel/src/crypto/x509/x_spki.c +80 -0
  1951. data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +71 -0
  1952. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +394 -0
  1953. data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +201 -0
  1954. data/third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h +138 -0
  1955. data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +84 -0
  1956. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +287 -0
  1957. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +132 -0
  1958. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +217 -0
  1959. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +155 -0
  1960. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +131 -0
  1961. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +189 -0
  1962. data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +843 -0
  1963. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c +226 -0
  1964. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akeya.c +72 -0
  1965. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +639 -0
  1966. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bcons.c +133 -0
  1967. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c +144 -0
  1968. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +468 -0
  1969. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +501 -0
  1970. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c +563 -0
  1971. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c +106 -0
  1972. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_extku.c +148 -0
  1973. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +266 -0
  1974. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c +121 -0
  1975. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +218 -0
  1976. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_int.c +91 -0
  1977. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +362 -0
  1978. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c +558 -0
  1979. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ocsp.c +68 -0
  1980. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pci.c +289 -0
  1981. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcia.c +57 -0
  1982. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pcons.c +139 -0
  1983. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pmaps.c +154 -0
  1984. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +230 -0
  1985. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +929 -0
  1986. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +156 -0
  1987. data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +1437 -0
  1988. data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +480 -0
  1989. data/third_party/boringssl-with-bazel/src/include/openssl/aes.h +207 -0
  1990. data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +240 -0
  1991. data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +1321 -0
  1992. data/third_party/boringssl-with-bazel/src/include/openssl/asn1_mac.h +18 -0
  1993. data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +718 -0
  1994. data/third_party/boringssl-with-bazel/src/include/openssl/base.h +628 -0
  1995. data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +190 -0
  1996. data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +939 -0
  1997. data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +62 -0
  1998. data/third_party/boringssl-with-bazel/src/include/openssl/blowfish.h +93 -0
  1999. data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +1057 -0
  2000. data/third_party/boringssl-with-bazel/src/include/openssl/buf.h +137 -0
  2001. data/third_party/boringssl-with-bazel/src/include/openssl/buffer.h +18 -0
  2002. data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +586 -0
  2003. data/third_party/boringssl-with-bazel/src/include/openssl/cast.h +96 -0
  2004. data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +41 -0
  2005. data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +661 -0
  2006. data/third_party/boringssl-with-bazel/src/include/openssl/cmac.h +91 -0
  2007. data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +183 -0
  2008. data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +202 -0
  2009. data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +169 -0
  2010. data/third_party/boringssl-with-bazel/src/include/openssl/curve25519.h +201 -0
  2011. data/third_party/boringssl-with-bazel/src/include/openssl/des.h +183 -0
  2012. data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +361 -0
  2013. data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +348 -0
  2014. data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +457 -0
  2015. data/third_party/boringssl-with-bazel/src/include/openssl/dtls1.h +16 -0
  2016. data/third_party/boringssl-with-bazel/src/include/openssl/e_os2.h +18 -0
  2017. data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +442 -0
  2018. data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +372 -0
  2019. data/third_party/boringssl-with-bazel/src/include/openssl/ecdh.h +118 -0
  2020. data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +238 -0
  2021. data/third_party/boringssl-with-bazel/src/include/openssl/engine.h +109 -0
  2022. data/third_party/boringssl-with-bazel/src/include/openssl/err.h +466 -0
  2023. data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +1109 -0
  2024. data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +99 -0
  2025. data/third_party/boringssl-with-bazel/src/include/openssl/ex_data.h +203 -0
  2026. data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +68 -0
  2027. data/third_party/boringssl-with-bazel/src/include/openssl/hmac.h +186 -0
  2028. data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +350 -0
  2029. data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +102 -0
  2030. data/third_party/boringssl-with-bazel/src/include/openssl/is_boringssl.h +16 -0
  2031. data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +81 -0
  2032. data/third_party/boringssl-with-bazel/src/include/openssl/md4.h +108 -0
  2033. data/third_party/boringssl-with-bazel/src/include/openssl/md5.h +109 -0
  2034. data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +184 -0
  2035. data/third_party/boringssl-with-bazel/src/include/openssl/nid.h +4259 -0
  2036. data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +256 -0
  2037. data/third_party/boringssl-with-bazel/src/include/openssl/obj_mac.h +18 -0
  2038. data/third_party/boringssl-with-bazel/src/include/openssl/objects.h +18 -0
  2039. data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +70 -0
  2040. data/third_party/boringssl-with-bazel/src/include/openssl/opensslv.h +18 -0
  2041. data/third_party/boringssl-with-bazel/src/include/openssl/ossl_typ.h +18 -0
  2042. data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +483 -0
  2043. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs12.h +18 -0
  2044. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +240 -0
  2045. data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +277 -0
  2046. data/third_party/boringssl-with-bazel/src/include/openssl/poly1305.h +49 -0
  2047. data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +102 -0
  2048. data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +114 -0
  2049. data/third_party/boringssl-with-bazel/src/include/openssl/rc4.h +96 -0
  2050. data/third_party/boringssl-with-bazel/src/include/openssl/ripemd.h +108 -0
  2051. data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +859 -0
  2052. data/third_party/boringssl-with-bazel/src/include/openssl/safestack.h +16 -0
  2053. data/third_party/boringssl-with-bazel/src/include/openssl/sha.h +294 -0
  2054. data/third_party/boringssl-with-bazel/src/include/openssl/siphash.h +37 -0
  2055. data/third_party/boringssl-with-bazel/src/include/openssl/span.h +222 -0
  2056. data/third_party/boringssl-with-bazel/src/include/openssl/srtp.h +18 -0
  2057. data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +5606 -0
  2058. data/third_party/boringssl-with-bazel/src/include/openssl/ssl3.h +333 -0
  2059. data/third_party/boringssl-with-bazel/src/include/openssl/stack.h +542 -0
  2060. data/third_party/boringssl-with-bazel/src/include/openssl/thread.h +191 -0
  2061. data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +647 -0
  2062. data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +310 -0
  2063. data/third_party/boringssl-with-bazel/src/include/openssl/type_check.h +90 -0
  2064. data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +2450 -0
  2065. data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +18 -0
  2066. data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +1020 -0
  2067. data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +192 -0
  2068. data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +835 -0
  2069. data/third_party/boringssl-with-bazel/src/ssl/d1_lib.cc +268 -0
  2070. data/third_party/boringssl-with-bazel/src/ssl/d1_pkt.cc +273 -0
  2071. data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +232 -0
  2072. data/third_party/boringssl-with-bazel/src/ssl/dtls_method.cc +200 -0
  2073. data/third_party/boringssl-with-bazel/src/ssl/dtls_record.cc +353 -0
  2074. data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +1084 -0
  2075. data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +4325 -0
  2076. data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +986 -0
  2077. data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +758 -0
  2078. data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +1986 -0
  2079. data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +1956 -0
  2080. data/third_party/boringssl-with-bazel/src/ssl/internal.h +3953 -0
  2081. data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +730 -0
  2082. data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +219 -0
  2083. data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +453 -0
  2084. data/third_party/boringssl-with-bazel/src/ssl/ssl_aead_ctx.cc +432 -0
  2085. data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +896 -0
  2086. data/third_party/boringssl-with-bazel/src/ssl/ssl_buffer.cc +306 -0
  2087. data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +1014 -0
  2088. data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +1717 -0
  2089. data/third_party/boringssl-with-bazel/src/ssl/ssl_file.cc +585 -0
  2090. data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +400 -0
  2091. data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +3068 -0
  2092. data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +837 -0
  2093. data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +1342 -0
  2094. data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +233 -0
  2095. data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +272 -0
  2096. data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +398 -0
  2097. data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +1363 -0
  2098. data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +384 -0
  2099. data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +733 -0
  2100. data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +1122 -0
  2101. data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +582 -0
  2102. data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +1349 -0
  2103. data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +319 -0
  2104. data/third_party/boringssl-with-bazel/src/ssl/tls_record.cc +705 -0
  2105. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_32.h +981 -0
  2106. data/third_party/boringssl-with-bazel/src/third_party/fiat/curve25519_64.h +619 -0
  2107. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_32.h +3147 -0
  2108. data/third_party/boringssl-with-bazel/src/third_party/fiat/p256_64.h +1226 -0
  2109. data/third_party/cares/ares_build.h +223 -0
  2110. data/third_party/cares/cares/ares.h +670 -0
  2111. data/third_party/cares/cares/ares__close_sockets.c +61 -0
  2112. data/third_party/cares/cares/ares__get_hostent.c +261 -0
  2113. data/third_party/cares/cares/ares__read_line.c +73 -0
  2114. data/third_party/cares/cares/ares__timeval.c +111 -0
  2115. data/third_party/cares/cares/ares_cancel.c +63 -0
  2116. data/third_party/cares/cares/ares_create_query.c +206 -0
  2117. data/third_party/cares/cares/ares_data.c +222 -0
  2118. data/third_party/cares/cares/ares_data.h +72 -0
  2119. data/third_party/cares/cares/ares_destroy.c +113 -0
  2120. data/third_party/cares/cares/ares_dns.h +103 -0
  2121. data/third_party/cares/cares/ares_expand_name.c +209 -0
  2122. data/third_party/cares/cares/ares_expand_string.c +70 -0
  2123. data/third_party/cares/cares/ares_fds.c +59 -0
  2124. data/third_party/cares/cares/ares_free_hostent.c +41 -0
  2125. data/third_party/cares/cares/ares_free_string.c +25 -0
  2126. data/third_party/cares/cares/ares_getenv.c +30 -0
  2127. data/third_party/cares/cares/ares_getenv.h +26 -0
  2128. data/third_party/cares/cares/ares_gethostbyaddr.c +294 -0
  2129. data/third_party/cares/cares/ares_gethostbyname.c +529 -0
  2130. data/third_party/cares/cares/ares_getnameinfo.c +453 -0
  2131. data/third_party/cares/cares/ares_getopt.c +122 -0
  2132. data/third_party/cares/cares/ares_getopt.h +53 -0
  2133. data/third_party/cares/cares/ares_getsock.c +66 -0
  2134. data/third_party/cares/cares/ares_inet_net_pton.h +25 -0
  2135. data/third_party/cares/cares/ares_init.c +2615 -0
  2136. data/third_party/cares/cares/ares_iphlpapi.h +221 -0
  2137. data/third_party/cares/cares/ares_ipv6.h +78 -0
  2138. data/third_party/cares/cares/ares_library_init.c +195 -0
  2139. data/third_party/cares/cares/ares_library_init.h +43 -0
  2140. data/third_party/cares/cares/ares_llist.c +63 -0
  2141. data/third_party/cares/cares/ares_llist.h +39 -0
  2142. data/third_party/cares/cares/ares_mkquery.c +24 -0
  2143. data/third_party/cares/cares/ares_nowarn.c +260 -0
  2144. data/third_party/cares/cares/ares_nowarn.h +61 -0
  2145. data/third_party/cares/cares/ares_options.c +406 -0
  2146. data/third_party/cares/cares/ares_parse_a_reply.c +264 -0
  2147. data/third_party/cares/cares/ares_parse_aaaa_reply.c +264 -0
  2148. data/third_party/cares/cares/ares_parse_mx_reply.c +170 -0
  2149. data/third_party/cares/cares/ares_parse_naptr_reply.c +194 -0
  2150. data/third_party/cares/cares/ares_parse_ns_reply.c +183 -0
  2151. data/third_party/cares/cares/ares_parse_ptr_reply.c +221 -0
  2152. data/third_party/cares/cares/ares_parse_soa_reply.c +133 -0
  2153. data/third_party/cares/cares/ares_parse_srv_reply.c +179 -0
  2154. data/third_party/cares/cares/ares_parse_txt_reply.c +220 -0
  2155. data/third_party/cares/cares/ares_platform.c +11042 -0
  2156. data/third_party/cares/cares/ares_platform.h +43 -0
  2157. data/third_party/cares/cares/ares_private.h +382 -0
  2158. data/third_party/cares/cares/ares_process.c +1473 -0
  2159. data/third_party/cares/cares/ares_query.c +186 -0
  2160. data/third_party/cares/cares/ares_rules.h +125 -0
  2161. data/third_party/cares/cares/ares_search.c +323 -0
  2162. data/third_party/cares/cares/ares_send.c +137 -0
  2163. data/third_party/cares/cares/ares_setup.h +217 -0
  2164. data/third_party/cares/cares/ares_strcasecmp.c +66 -0
  2165. data/third_party/cares/cares/ares_strcasecmp.h +30 -0
  2166. data/third_party/cares/cares/ares_strdup.c +49 -0
  2167. data/third_party/cares/cares/ares_strdup.h +24 -0
  2168. data/third_party/cares/cares/ares_strerror.c +56 -0
  2169. data/third_party/cares/cares/ares_strsplit.c +174 -0
  2170. data/third_party/cares/cares/ares_strsplit.h +43 -0
  2171. data/third_party/cares/cares/ares_timeout.c +88 -0
  2172. data/third_party/cares/cares/ares_version.c +11 -0
  2173. data/third_party/cares/cares/ares_version.h +24 -0
  2174. data/third_party/cares/cares/ares_writev.c +79 -0
  2175. data/third_party/cares/cares/bitncmp.c +59 -0
  2176. data/third_party/cares/cares/bitncmp.h +26 -0
  2177. data/third_party/cares/cares/config-win32.h +351 -0
  2178. data/third_party/cares/cares/inet_net_pton.c +450 -0
  2179. data/third_party/cares/cares/inet_ntop.c +207 -0
  2180. data/third_party/cares/cares/setup_once.h +554 -0
  2181. data/third_party/cares/cares/windows_port.c +22 -0
  2182. data/third_party/cares/config_darwin/ares_config.h +428 -0
  2183. data/third_party/cares/config_freebsd/ares_config.h +505 -0
  2184. data/third_party/cares/config_linux/ares_config.h +461 -0
  2185. data/third_party/cares/config_openbsd/ares_config.h +505 -0
  2186. data/third_party/re2/re2/bitmap256.h +117 -0
  2187. data/third_party/re2/re2/bitstate.cc +385 -0
  2188. data/third_party/re2/re2/compile.cc +1261 -0
  2189. data/third_party/re2/re2/dfa.cc +2118 -0
  2190. data/third_party/re2/re2/filtered_re2.cc +137 -0
  2191. data/third_party/re2/re2/filtered_re2.h +114 -0
  2192. data/third_party/re2/re2/mimics_pcre.cc +197 -0
  2193. data/third_party/re2/re2/nfa.cc +713 -0
  2194. data/third_party/re2/re2/onepass.cc +623 -0
  2195. data/third_party/re2/re2/parse.cc +2483 -0
  2196. data/third_party/re2/re2/perl_groups.cc +119 -0
  2197. data/third_party/re2/re2/pod_array.h +55 -0
  2198. data/third_party/re2/re2/prefilter.cc +711 -0
  2199. data/third_party/re2/re2/prefilter.h +108 -0
  2200. data/third_party/re2/re2/prefilter_tree.cc +407 -0
  2201. data/third_party/re2/re2/prefilter_tree.h +139 -0
  2202. data/third_party/re2/re2/prog.cc +1166 -0
  2203. data/third_party/re2/re2/prog.h +455 -0
  2204. data/third_party/re2/re2/re2.cc +1331 -0
  2205. data/third_party/re2/re2/re2.h +1017 -0
  2206. data/third_party/re2/re2/regexp.cc +987 -0
  2207. data/third_party/re2/re2/regexp.h +665 -0
  2208. data/third_party/re2/re2/set.cc +176 -0
  2209. data/third_party/re2/re2/set.h +85 -0
  2210. data/third_party/re2/re2/simplify.cc +665 -0
  2211. data/third_party/re2/re2/sparse_array.h +392 -0
  2212. data/third_party/re2/re2/sparse_set.h +264 -0
  2213. data/third_party/re2/re2/stringpiece.cc +65 -0
  2214. data/third_party/re2/re2/stringpiece.h +210 -0
  2215. data/third_party/re2/re2/tostring.cc +351 -0
  2216. data/third_party/re2/re2/unicode_casefold.cc +582 -0
  2217. data/third_party/re2/re2/unicode_casefold.h +78 -0
  2218. data/third_party/re2/re2/unicode_groups.cc +6269 -0
  2219. data/third_party/re2/re2/unicode_groups.h +67 -0
  2220. data/third_party/re2/re2/walker-inl.h +246 -0
  2221. data/third_party/re2/util/benchmark.h +156 -0
  2222. data/third_party/re2/util/flags.h +26 -0
  2223. data/third_party/re2/util/logging.h +109 -0
  2224. data/third_party/re2/util/malloc_counter.h +19 -0
  2225. data/third_party/re2/util/mix.h +41 -0
  2226. data/third_party/re2/util/mutex.h +148 -0
  2227. data/third_party/re2/util/pcre.cc +1025 -0
  2228. data/third_party/re2/util/pcre.h +681 -0
  2229. data/third_party/re2/util/rune.cc +260 -0
  2230. data/third_party/re2/util/strutil.cc +149 -0
  2231. data/third_party/re2/util/strutil.h +21 -0
  2232. data/third_party/re2/util/test.h +50 -0
  2233. data/third_party/re2/util/utf.h +44 -0
  2234. data/third_party/re2/util/util.h +42 -0
  2235. data/third_party/upb/upb/decode.c +771 -0
  2236. data/third_party/upb/upb/decode.h +68 -0
  2237. data/third_party/upb/upb/decode_fast.c +1053 -0
  2238. data/third_party/upb/upb/decode_fast.h +153 -0
  2239. data/third_party/upb/upb/decode_internal.h +193 -0
  2240. data/third_party/upb/upb/def.c +2168 -0
  2241. data/third_party/upb/upb/def.h +337 -0
  2242. data/third_party/upb/upb/def.hpp +468 -0
  2243. data/third_party/upb/upb/encode.c +511 -0
  2244. data/third_party/upb/upb/encode.h +73 -0
  2245. data/third_party/upb/upb/msg.c +397 -0
  2246. data/third_party/upb/upb/msg.h +108 -0
  2247. data/third_party/upb/upb/msg_internal.h +687 -0
  2248. data/third_party/upb/upb/port_def.inc +253 -0
  2249. data/third_party/upb/upb/port_undef.inc +61 -0
  2250. data/third_party/upb/upb/reflection.c +400 -0
  2251. data/third_party/upb/upb/reflection.h +196 -0
  2252. data/third_party/upb/upb/reflection.hpp +37 -0
  2253. data/third_party/upb/upb/table.c +842 -0
  2254. data/third_party/upb/upb/table_internal.h +351 -0
  2255. data/third_party/upb/upb/text_encode.c +449 -0
  2256. data/third_party/upb/upb/text_encode.h +64 -0
  2257. data/third_party/upb/upb/upb.c +315 -0
  2258. data/third_party/upb/upb/upb.h +367 -0
  2259. data/third_party/upb/upb/upb.hpp +112 -0
  2260. data/third_party/upb/upb/upb_internal.h +58 -0
  2261. data/third_party/xxhash/xxhash.h +5325 -0
  2262. data/third_party/zlib/adler32.c +186 -0
  2263. data/third_party/zlib/compress.c +86 -0
  2264. data/third_party/zlib/crc32.c +442 -0
  2265. data/third_party/zlib/crc32.h +441 -0
  2266. data/third_party/zlib/deflate.c +2163 -0
  2267. data/third_party/zlib/deflate.h +349 -0
  2268. data/third_party/zlib/gzclose.c +25 -0
  2269. data/third_party/zlib/gzguts.h +218 -0
  2270. data/third_party/zlib/gzlib.c +637 -0
  2271. data/third_party/zlib/gzread.c +654 -0
  2272. data/third_party/zlib/gzwrite.c +665 -0
  2273. data/third_party/zlib/infback.c +640 -0
  2274. data/third_party/zlib/inffast.c +323 -0
  2275. data/third_party/zlib/inffast.h +11 -0
  2276. data/third_party/zlib/inffixed.h +94 -0
  2277. data/third_party/zlib/inflate.c +1561 -0
  2278. data/third_party/zlib/inflate.h +125 -0
  2279. data/third_party/zlib/inftrees.c +304 -0
  2280. data/third_party/zlib/inftrees.h +62 -0
  2281. data/third_party/zlib/trees.c +1203 -0
  2282. data/third_party/zlib/trees.h +128 -0
  2283. data/third_party/zlib/uncompr.c +93 -0
  2284. data/third_party/zlib/zconf.h +534 -0
  2285. data/third_party/zlib/zlib.h +1912 -0
  2286. data/third_party/zlib/zutil.c +325 -0
  2287. data/third_party/zlib/zutil.h +271 -0
  2288. metadata +2563 -0
@@ -0,0 +1,350 @@
1
+ /* Copyright (c) 2020, Google Inc.
2
+ *
3
+ * Permission to use, copy, modify, and/or distribute this software for any
4
+ * purpose with or without fee is hereby granted, provided that the above
5
+ * copyright notice and this permission notice appear in all copies.
6
+ *
7
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
10
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
12
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
13
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
14
+
15
+ #ifndef OPENSSL_HEADER_CRYPTO_HPKE_INTERNAL_H
16
+ #define OPENSSL_HEADER_CRYPTO_HPKE_INTERNAL_H
17
+
18
+ #include <openssl/aead.h>
19
+ #include <openssl/base.h>
20
+ #include <openssl/curve25519.h>
21
+ #include <openssl/digest.h>
22
+
23
+ #if defined(__cplusplus)
24
+ extern "C" {
25
+ #endif
26
+
27
+
28
+ // Hybrid Public Key Encryption.
29
+ //
30
+ // Hybrid Public Key Encryption (HPKE) enables a sender to encrypt messages to a
31
+ // receiver with a public key.
32
+ //
33
+ // See https://tools.ietf.org/html/draft-irtf-cfrg-hpke-08.
34
+
35
+
36
+ // Parameters.
37
+ //
38
+ // An HPKE context is parameterized by KEM, KDF, and AEAD algorithms,
39
+ // represented by |EVP_HPKE_KEM|, |EVP_HPKE_KDF|, and |EVP_HPKE_AEAD| types,
40
+ // respectively.
41
+
42
+ // The following constants are KEM identifiers.
43
+ #define EVP_HPKE_DHKEM_X25519_HKDF_SHA256 0x0020
44
+
45
+ // The following functions are KEM algorithms which may be used with HPKE. Note
46
+ // that, while some HPKE KEMs use KDFs internally, this is separate from the
47
+ // |EVP_HPKE_KDF| selection.
48
+ OPENSSL_EXPORT const EVP_HPKE_KEM *EVP_hpke_x25519_hkdf_sha256(void);
49
+
50
+ // EVP_HPKE_KEM_id returns the HPKE KEM identifier for |kem|, which
51
+ // will be one of the |EVP_HPKE_KEM_*| constants.
52
+ OPENSSL_EXPORT uint16_t EVP_HPKE_KEM_id(const EVP_HPKE_KEM *kem);
53
+
54
+ // The following constants are KDF identifiers.
55
+ #define EVP_HPKE_HKDF_SHA256 0x0001
56
+
57
+ // The following functions are KDF algorithms which may be used with HPKE.
58
+ OPENSSL_EXPORT const EVP_HPKE_KDF *EVP_hpke_hkdf_sha256(void);
59
+
60
+ // EVP_HPKE_KDF_id returns the HPKE KDF identifier for |kdf|.
61
+ OPENSSL_EXPORT uint16_t EVP_HPKE_KDF_id(const EVP_HPKE_KDF *kdf);
62
+
63
+ // The following constants are AEAD identifiers.
64
+ #define EVP_HPKE_AES_128_GCM 0x0001
65
+ #define EVP_HPKE_AES_256_GCM 0x0002
66
+ #define EVP_HPKE_CHACHA20_POLY1305 0x0003
67
+
68
+ // The following functions are AEAD algorithms which may be used with HPKE.
69
+ OPENSSL_EXPORT const EVP_HPKE_AEAD *EVP_hpke_aes_128_gcm(void);
70
+ OPENSSL_EXPORT const EVP_HPKE_AEAD *EVP_hpke_aes_256_gcm(void);
71
+ OPENSSL_EXPORT const EVP_HPKE_AEAD *EVP_hpke_chacha20_poly1305(void);
72
+
73
+ // EVP_HPKE_AEAD_id returns the HPKE AEAD identifier for |aead|.
74
+ OPENSSL_EXPORT uint16_t EVP_HPKE_AEAD_id(const EVP_HPKE_AEAD *aead);
75
+
76
+ // EVP_HPKE_AEAD_aead returns the |EVP_AEAD| corresponding to |aead|.
77
+ OPENSSL_EXPORT const EVP_AEAD *EVP_HPKE_AEAD_aead(const EVP_HPKE_AEAD *aead);
78
+
79
+
80
+ // Recipient keys.
81
+ //
82
+ // An HPKE recipient maintains a long-term KEM key. This library represents keys
83
+ // with the |EVP_HPKE_KEY| type.
84
+
85
+ // EVP_HPKE_KEY_zero sets an uninitialized |EVP_HPKE_KEY| to the zero state. The
86
+ // caller should then use |EVP_HPKE_KEY_init|, |EVP_HPKE_KEY_copy|, or
87
+ // |EVP_HPKE_KEY_generate| to finish initializing |key|.
88
+ //
89
+ // It is safe, but not necessary to call |EVP_HPKE_KEY_cleanup| in this state.
90
+ // This may be used for more uniform cleanup of |EVP_HPKE_KEY|.
91
+ OPENSSL_EXPORT void EVP_HPKE_KEY_zero(EVP_HPKE_KEY *key);
92
+
93
+ // EVP_HPKE_KEY_cleanup releases memory referenced by |key|.
94
+ OPENSSL_EXPORT void EVP_HPKE_KEY_cleanup(EVP_HPKE_KEY *key);
95
+
96
+ // EVP_HPKE_KEY_new returns a newly-allocated |EVP_HPKE_KEY|, or NULL on error.
97
+ // The caller must call |EVP_HPKE_KEY_free| on the result to release it.
98
+ //
99
+ // This is a convenience function for callers that need a heap-allocated
100
+ // |EVP_HPKE_KEY|.
101
+ OPENSSL_EXPORT EVP_HPKE_KEY *EVP_HPKE_KEY_new(void);
102
+
103
+ // EVP_HPKE_KEY_free releases memory associated with |key|, which must have been
104
+ // created with |EVP_HPKE_KEY_new|.
105
+ OPENSSL_EXPORT void EVP_HPKE_KEY_free(EVP_HPKE_KEY *key);
106
+
107
+ // EVP_HPKE_KEY_copy sets |dst| to a copy of |src|. It returns one on success
108
+ // and zero on error. On success, the caller must call |EVP_HPKE_KEY_cleanup| to
109
+ // release |dst|. On failure, calling |EVP_HPKE_KEY_cleanup| is safe, but not
110
+ // necessary.
111
+ OPENSSL_EXPORT int EVP_HPKE_KEY_copy(EVP_HPKE_KEY *dst,
112
+ const EVP_HPKE_KEY *src);
113
+
114
+ // EVP_HPKE_KEY_init decodes |priv_key| as a private key for |kem| and
115
+ // initializes |key| with the result. It returns one on success and zero if
116
+ // |priv_key| was invalid. On success, the caller must call
117
+ // |EVP_HPKE_KEY_cleanup| to release the key. On failure, calling
118
+ // |EVP_HPKE_KEY_cleanup| is safe, but not necessary.
119
+ OPENSSL_EXPORT int EVP_HPKE_KEY_init(EVP_HPKE_KEY *key, const EVP_HPKE_KEM *kem,
120
+ const uint8_t *priv_key,
121
+ size_t priv_key_len);
122
+
123
+ // EVP_HPKE_KEY_generate sets |key| to a newly-generated key using |kem|.
124
+ OPENSSL_EXPORT int EVP_HPKE_KEY_generate(EVP_HPKE_KEY *key,
125
+ const EVP_HPKE_KEM *kem);
126
+
127
+ // EVP_HPKE_KEY_kem returns the HPKE KEM used by |key|.
128
+ OPENSSL_EXPORT const EVP_HPKE_KEM *EVP_HPKE_KEY_kem(const EVP_HPKE_KEY *key);
129
+
130
+ // EVP_HPKE_MAX_PUBLIC_KEY_LENGTH is the maximum length of a public key for all
131
+ // KEMs supported by this library.
132
+ #define EVP_HPKE_MAX_PUBLIC_KEY_LENGTH 32
133
+
134
+ // EVP_HPKE_KEY_public_key writes |key|'s public key to |out| and sets
135
+ // |*out_len| to the number of bytes written. On success, it returns one and
136
+ // writes at most |max_out| bytes. If |max_out| is too small, it returns zero.
137
+ // Setting |max_out| to |EVP_HPKE_MAX_PUBLIC_KEY_LENGTH| will ensure the public
138
+ // key fits.
139
+ OPENSSL_EXPORT int EVP_HPKE_KEY_public_key(const EVP_HPKE_KEY *key,
140
+ uint8_t *out, size_t *out_len,
141
+ size_t max_out);
142
+
143
+ // EVP_HPKE_MAX_PRIVATE_KEY_LENGTH is the maximum length of a private key for
144
+ // all KEMs supported by this library.
145
+ #define EVP_HPKE_MAX_PRIVATE_KEY_LENGTH 32
146
+
147
+ // EVP_HPKE_KEY_private_key writes |key|'s private key to |out| and sets
148
+ // |*out_len| to the number of bytes written. On success, it returns one and
149
+ // writes at most |max_out| bytes. If |max_out| is too small, it returns zero.
150
+ // Setting |max_out| to |EVP_HPKE_MAX_PRIVATE_KEY_LENGTH| will ensure the
151
+ // private key fits.
152
+ OPENSSL_EXPORT int EVP_HPKE_KEY_private_key(const EVP_HPKE_KEY *key,
153
+ uint8_t *out, size_t *out_len,
154
+ size_t max_out);
155
+
156
+
157
+ // Encryption contexts.
158
+ //
159
+ // An HPKE encryption context is represented by the |EVP_HPKE_CTX| type.
160
+
161
+ // EVP_HPKE_CTX_zero sets an uninitialized |EVP_HPKE_CTX| to the zero state. The
162
+ // caller should then use one of the |EVP_HPKE_CTX_setup_*| functions to finish
163
+ // setting up |ctx|.
164
+ //
165
+ // It is safe, but not necessary to call |EVP_HPKE_CTX_cleanup| in this state.
166
+ // This may be used for more uniform cleanup of |EVP_HPKE_CTX|.
167
+ OPENSSL_EXPORT void EVP_HPKE_CTX_zero(EVP_HPKE_CTX *ctx);
168
+
169
+ // EVP_HPKE_CTX_cleanup releases memory referenced by |ctx|. |ctx| must have
170
+ // been initialized with |EVP_HPKE_CTX_zero| or one of the
171
+ // |EVP_HPKE_CTX_setup_*| functions.
172
+ OPENSSL_EXPORT void EVP_HPKE_CTX_cleanup(EVP_HPKE_CTX *ctx);
173
+
174
+ // EVP_HPKE_CTX_new returns a newly-allocated |EVP_HPKE_CTX|, or NULL on error.
175
+ // The caller must call |EVP_HPKE_CTX_free| on the result to release it.
176
+ //
177
+ // This is a convenience function for callers that need a heap-allocated
178
+ // |EVP_HPKE_CTX|.
179
+ OPENSSL_EXPORT EVP_HPKE_CTX *EVP_HPKE_CTX_new(void);
180
+
181
+ // EVP_HPKE_CTX_free releases memory associated with |ctx|, which must have been
182
+ // created with |EVP_HPKE_CTX_new|.
183
+ OPENSSL_EXPORT void EVP_HPKE_CTX_free(EVP_HPKE_CTX *ctx);
184
+
185
+ // EVP_HPKE_MAX_ENC_LENGTH is the maximum length of "enc", the encapsulated
186
+ // shared secret, for all supported KEMs in this library.
187
+ #define EVP_HPKE_MAX_ENC_LENGTH 32
188
+
189
+ // EVP_HPKE_CTX_setup_sender implements the SetupBaseS HPKE operation. It
190
+ // encapsulates a shared secret for |peer_public_key| and sets up |ctx| as a
191
+ // sender context. It writes the encapsulated shared secret to |out_enc| and
192
+ // sets |*out_enc_len| to the number of bytes written. It writes at most
193
+ // |max_enc| bytes and fails if the buffer is too small. Setting |max_enc| to at
194
+ // least |EVP_HPKE_MAX_ENC_LENGTH| will ensure the buffer is large enough.
195
+ //
196
+ // This function returns one on success and zero on error. Note that
197
+ // |peer_public_key| may be invalid, in which case this function will return an
198
+ // error.
199
+ //
200
+ // On success, callers may call |EVP_HPKE_CTX_seal| to encrypt messages for the
201
+ // recipient. Callers must then call |EVP_HPKE_CTX_cleanup| when done. On
202
+ // failure, calling |EVP_HPKE_CTX_cleanup| is safe, but not required.
203
+ OPENSSL_EXPORT int EVP_HPKE_CTX_setup_sender(
204
+ EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
205
+ const EVP_HPKE_KEM *kem, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
206
+ const uint8_t *peer_public_key, size_t peer_public_key_len,
207
+ const uint8_t *info, size_t info_len);
208
+
209
+ // EVP_HPKE_CTX_setup_sender_with_seed_for_testing behaves like
210
+ // |EVP_HPKE_CTX_setup_sender|, but takes a seed to behave deterministically.
211
+ // The seed's format depends on |kem|. For X25519, it is the sender's
212
+ // ephemeral private key.
213
+ OPENSSL_EXPORT int EVP_HPKE_CTX_setup_sender_with_seed_for_testing(
214
+ EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
215
+ const EVP_HPKE_KEM *kem, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
216
+ const uint8_t *peer_public_key, size_t peer_public_key_len,
217
+ const uint8_t *info, size_t info_len, const uint8_t *seed, size_t seed_len);
218
+
219
+ // EVP_HPKE_CTX_setup_recipient implements the SetupBaseR HPKE operation. It
220
+ // decapsulates the shared secret in |enc| with |key| and sets up |ctx| as a
221
+ // recipient context. It returns one on success and zero on failure. Note that
222
+ // |enc| may be invalid, in which case this function will return an error.
223
+ //
224
+ // On success, callers may call |EVP_HPKE_CTX_open| to decrypt messages from the
225
+ // sender. Callers must then call |EVP_HPKE_CTX_cleanup| when done. On failure,
226
+ // calling |EVP_HPKE_CTX_cleanup| is safe, but not required.
227
+ OPENSSL_EXPORT int EVP_HPKE_CTX_setup_recipient(
228
+ EVP_HPKE_CTX *ctx, const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf,
229
+ const EVP_HPKE_AEAD *aead, const uint8_t *enc, size_t enc_len,
230
+ const uint8_t *info, size_t info_len);
231
+
232
+
233
+ // Using an HPKE context.
234
+ //
235
+ // Once set up, callers may encrypt or decrypt with an |EVP_HPKE_CTX| using the
236
+ // following functions.
237
+
238
+ // EVP_HPKE_CTX_open uses the HPKE context |ctx| to authenticate |in_len| bytes
239
+ // from |in| and |ad_len| bytes from |ad| and to decrypt at most |in_len| bytes
240
+ // into |out|. It returns one on success, and zero otherwise.
241
+ //
242
+ // This operation will fail if the |ctx| context is not set up as a receiver.
243
+ //
244
+ // Note that HPKE encryption is stateful and ordered. The sender's first call to
245
+ // |EVP_HPKE_CTX_seal| must correspond to the recipient's first call to
246
+ // |EVP_HPKE_CTX_open|, etc.
247
+ //
248
+ // At most |in_len| bytes are written to |out|. In order to ensure success,
249
+ // |max_out_len| should be at least |in_len|. On successful return, |*out_len|
250
+ // is set to the actual number of bytes written.
251
+ OPENSSL_EXPORT int EVP_HPKE_CTX_open(EVP_HPKE_CTX *ctx, uint8_t *out,
252
+ size_t *out_len, size_t max_out_len,
253
+ const uint8_t *in, size_t in_len,
254
+ const uint8_t *ad, size_t ad_len);
255
+
256
+ // EVP_HPKE_CTX_seal uses the HPKE context |ctx| to encrypt and authenticate
257
+ // |in_len| bytes of ciphertext |in| and authenticate |ad_len| bytes from |ad|,
258
+ // writing the result to |out|. It returns one on success and zero otherwise.
259
+ //
260
+ // This operation will fail if the |ctx| context is not set up as a sender.
261
+ //
262
+ // Note that HPKE encryption is stateful and ordered. The sender's first call to
263
+ // |EVP_HPKE_CTX_seal| must correspond to the recipient's first call to
264
+ // |EVP_HPKE_CTX_open|, etc.
265
+ //
266
+ // At most, |max_out_len| encrypted bytes are written to |out|. On successful
267
+ // return, |*out_len| is set to the actual number of bytes written.
268
+ //
269
+ // To ensure success, |max_out_len| should be |in_len| plus the result of
270
+ // |EVP_HPKE_CTX_max_overhead| or |EVP_HPKE_MAX_OVERHEAD|.
271
+ OPENSSL_EXPORT int EVP_HPKE_CTX_seal(EVP_HPKE_CTX *ctx, uint8_t *out,
272
+ size_t *out_len, size_t max_out_len,
273
+ const uint8_t *in, size_t in_len,
274
+ const uint8_t *ad, size_t ad_len);
275
+
276
+ // EVP_HPKE_CTX_export uses the HPKE context |ctx| to export a secret of
277
+ // |secret_len| bytes into |out|. This function uses |context_len| bytes from
278
+ // |context| as a context string for the secret. This is necessary to separate
279
+ // different uses of exported secrets and bind relevant caller-specific context
280
+ // into the output. It returns one on success and zero otherwise.
281
+ OPENSSL_EXPORT int EVP_HPKE_CTX_export(const EVP_HPKE_CTX *ctx, uint8_t *out,
282
+ size_t secret_len,
283
+ const uint8_t *context,
284
+ size_t context_len);
285
+
286
+ // EVP_HPKE_MAX_OVERHEAD contains the largest value that
287
+ // |EVP_HPKE_CTX_max_overhead| would ever return for any context.
288
+ #define EVP_HPKE_MAX_OVERHEAD EVP_AEAD_MAX_OVERHEAD
289
+
290
+ // EVP_HPKE_CTX_max_overhead returns the maximum number of additional bytes
291
+ // added by sealing data with |EVP_HPKE_CTX_seal|. The |ctx| context must be set
292
+ // up as a sender.
293
+ OPENSSL_EXPORT size_t EVP_HPKE_CTX_max_overhead(const EVP_HPKE_CTX *ctx);
294
+
295
+ // EVP_HPKE_CTX_aead returns |ctx|'s configured AEAD, or NULL if the context has
296
+ // not been set up.
297
+ OPENSSL_EXPORT const EVP_HPKE_AEAD *EVP_HPKE_CTX_aead(const EVP_HPKE_CTX *ctx);
298
+
299
+ // EVP_HPKE_CTX_kdf returns |ctx|'s configured KDF, or NULL if the context has
300
+ // not been set up.
301
+ OPENSSL_EXPORT const EVP_HPKE_KDF *EVP_HPKE_CTX_kdf(const EVP_HPKE_CTX *ctx);
302
+
303
+
304
+ // Private structures.
305
+ //
306
+ // The following structures are exported so their types are stack-allocatable,
307
+ // but accessing or modifying their fields is forbidden.
308
+
309
+ struct evp_hpke_ctx_st {
310
+ const EVP_HPKE_AEAD *aead;
311
+ const EVP_HPKE_KDF *kdf;
312
+ EVP_AEAD_CTX aead_ctx;
313
+ uint8_t base_nonce[EVP_AEAD_MAX_NONCE_LENGTH];
314
+ uint8_t exporter_secret[EVP_MAX_MD_SIZE];
315
+ uint64_t seq;
316
+ int is_sender;
317
+ };
318
+
319
+ struct evp_hpke_key_st {
320
+ const EVP_HPKE_KEM *kem;
321
+ uint8_t private_key[X25519_PRIVATE_KEY_LEN];
322
+ uint8_t public_key[X25519_PUBLIC_VALUE_LEN];
323
+ };
324
+
325
+
326
+ #if defined(__cplusplus)
327
+ } // extern C
328
+ #endif
329
+
330
+ #if !defined(BORINGSSL_NO_CXX)
331
+ extern "C++" {
332
+
333
+ BSSL_NAMESPACE_BEGIN
334
+
335
+ using ScopedEVP_HPKE_CTX =
336
+ internal::StackAllocated<EVP_HPKE_CTX, void, EVP_HPKE_CTX_zero,
337
+ EVP_HPKE_CTX_cleanup>;
338
+ using ScopedEVP_HPKE_KEY =
339
+ internal::StackAllocated<EVP_HPKE_KEY, void, EVP_HPKE_KEY_zero,
340
+ EVP_HPKE_KEY_cleanup>;
341
+
342
+ BORINGSSL_MAKE_DELETER(EVP_HPKE_CTX, EVP_HPKE_CTX_free)
343
+ BORINGSSL_MAKE_DELETER(EVP_HPKE_KEY, EVP_HPKE_KEY_free)
344
+
345
+ BSSL_NAMESPACE_END
346
+
347
+ } // extern C++
348
+ #endif
349
+
350
+ #endif // OPENSSL_HEADER_CRYPTO_HPKE_INTERNAL_H
@@ -0,0 +1,102 @@
1
+ /* Copyright (c) 2018, Google Inc.
2
+ *
3
+ * Permission to use, copy, modify, and/or distribute this software for any
4
+ * purpose with or without fee is hereby granted, provided that the above
5
+ * copyright notice and this permission notice appear in all copies.
6
+ *
7
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
10
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
12
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
13
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
14
+
15
+ #ifndef OPENSSL_HEADER_HRSS_H
16
+ #define OPENSSL_HEADER_HRSS_H
17
+
18
+ #include <openssl/base.h>
19
+
20
+ #if defined(__cplusplus)
21
+ extern "C" {
22
+ #endif
23
+
24
+ // HRSS
25
+ //
26
+ // HRSS is a structured-lattice-based post-quantum key encapsulation mechanism.
27
+ // The best exposition is https://eprint.iacr.org/2017/667.pdf although this
28
+ // implementation uses a different KEM construction based on
29
+ // https://eprint.iacr.org/2017/1005.pdf.
30
+
31
+ struct HRSS_private_key {
32
+ uint8_t opaque[1808];
33
+ };
34
+
35
+ struct HRSS_public_key {
36
+ uint8_t opaque[1424];
37
+ };
38
+
39
+ // HRSS_SAMPLE_BYTES is the number of bytes of entropy needed to generate a
40
+ // short vector. There are 701 coefficients, but the final one is always set to
41
+ // zero when sampling. Otherwise, we need one byte of input per coefficient.
42
+ #define HRSS_SAMPLE_BYTES (701 - 1)
43
+ // HRSS_GENERATE_KEY_BYTES is the number of bytes of entropy needed to generate
44
+ // an HRSS key pair.
45
+ #define HRSS_GENERATE_KEY_BYTES (HRSS_SAMPLE_BYTES + HRSS_SAMPLE_BYTES + 32)
46
+ // HRSS_ENCAP_BYTES is the number of bytes of entropy needed to encapsulate a
47
+ // session key.
48
+ #define HRSS_ENCAP_BYTES (HRSS_SAMPLE_BYTES + HRSS_SAMPLE_BYTES)
49
+ // HRSS_PUBLIC_KEY_BYTES is the number of bytes in a public key.
50
+ #define HRSS_PUBLIC_KEY_BYTES 1138
51
+ // HRSS_CIPHERTEXT_BYTES is the number of bytes in a ciphertext.
52
+ #define HRSS_CIPHERTEXT_BYTES 1138
53
+ // HRSS_KEY_BYTES is the number of bytes in a shared key.
54
+ #define HRSS_KEY_BYTES 32
55
+ // HRSS_POLY3_BYTES is the number of bytes needed to serialise a mod 3
56
+ // polynomial.
57
+ #define HRSS_POLY3_BYTES 140
58
+ #define HRSS_PRIVATE_KEY_BYTES \
59
+ (HRSS_POLY3_BYTES * 2 + HRSS_PUBLIC_KEY_BYTES + 2 + 32)
60
+
61
+ // HRSS_generate_key is a deterministic function that outputs a public and
62
+ // private key based on the given entropy. It returns one on success or zero
63
+ // on malloc failure.
64
+ OPENSSL_EXPORT int HRSS_generate_key(
65
+ struct HRSS_public_key *out_pub, struct HRSS_private_key *out_priv,
66
+ const uint8_t input[HRSS_GENERATE_KEY_BYTES]);
67
+
68
+ // HRSS_encap is a deterministic function the generates and encrypts a random
69
+ // session key from the given entropy, writing those values to |out_shared_key|
70
+ // and |out_ciphertext|, respectively. It returns one on success or zero on
71
+ // malloc failure.
72
+ OPENSSL_EXPORT int HRSS_encap(uint8_t out_ciphertext[HRSS_CIPHERTEXT_BYTES],
73
+ uint8_t out_shared_key[HRSS_KEY_BYTES],
74
+ const struct HRSS_public_key *in_pub,
75
+ const uint8_t in[HRSS_ENCAP_BYTES]);
76
+
77
+ // HRSS_decap decrypts a session key from |ciphertext_len| bytes of
78
+ // |ciphertext|. If the ciphertext is valid, the decrypted key is written to
79
+ // |out_shared_key|. Otherwise the HMAC of |ciphertext| under a secret key (kept
80
+ // in |in_priv|) is written. If the ciphertext is the wrong length then it will
81
+ // leak which was done via side-channels. Otherwise it should perform either
82
+ // action in constant-time. It returns one on success (whether the ciphertext
83
+ // was valid or not) and zero on malloc failure.
84
+ OPENSSL_EXPORT int HRSS_decap(uint8_t out_shared_key[HRSS_KEY_BYTES],
85
+ const struct HRSS_private_key *in_priv,
86
+ const uint8_t *ciphertext, size_t ciphertext_len);
87
+
88
+ // HRSS_marshal_public_key serialises |in_pub| to |out|.
89
+ OPENSSL_EXPORT void HRSS_marshal_public_key(
90
+ uint8_t out[HRSS_PUBLIC_KEY_BYTES], const struct HRSS_public_key *in_pub);
91
+
92
+ // HRSS_parse_public_key sets |*out| to the public-key encoded in |in|. It
93
+ // returns true on success and zero on error.
94
+ OPENSSL_EXPORT int HRSS_parse_public_key(
95
+ struct HRSS_public_key *out, const uint8_t in[HRSS_PUBLIC_KEY_BYTES]);
96
+
97
+
98
+ #if defined(__cplusplus)
99
+ } // extern C
100
+ #endif
101
+
102
+ #endif // OPENSSL_HEADER_HRSS_H
@@ -0,0 +1,16 @@
1
+ /* Copyright (c) 2017, Google Inc.
2
+ *
3
+ * Permission to use, copy, modify, and/or distribute this software for any
4
+ * purpose with or without fee is hereby granted, provided that the above
5
+ * copyright notice and this permission notice appear in all copies.
6
+ *
7
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
10
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
12
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
13
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
14
+
15
+ // This header is provided in order to catch include path errors in consuming
16
+ // BoringSSL.
@@ -0,0 +1,81 @@
1
+ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
2
+ * All rights reserved.
3
+ *
4
+ * This package is an SSL implementation written
5
+ * by Eric Young (eay@cryptsoft.com).
6
+ * The implementation was written so as to conform with Netscapes SSL.
7
+ *
8
+ * This library is free for commercial and non-commercial use as long as
9
+ * the following conditions are aheared to. The following conditions
10
+ * apply to all code found in this distribution, be it the RC4, RSA,
11
+ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
12
+ * included with this distribution is covered by the same copyright terms
13
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
14
+ *
15
+ * Copyright remains Eric Young's, and as such any Copyright notices in
16
+ * the code are not to be removed.
17
+ * If this package is used in a product, Eric Young should be given attribution
18
+ * as the author of the parts of the library used.
19
+ * This can be in the form of a textual message at program startup or
20
+ * in documentation (online or textual) provided with the package.
21
+ *
22
+ * Redistribution and use in source and binary forms, with or without
23
+ * modification, are permitted provided that the following conditions
24
+ * are met:
25
+ * 1. Redistributions of source code must retain the copyright
26
+ * notice, this list of conditions and the following disclaimer.
27
+ * 2. Redistributions in binary form must reproduce the above copyright
28
+ * notice, this list of conditions and the following disclaimer in the
29
+ * documentation and/or other materials provided with the distribution.
30
+ * 3. All advertising materials mentioning features or use of this software
31
+ * must display the following acknowledgement:
32
+ * "This product includes cryptographic software written by
33
+ * Eric Young (eay@cryptsoft.com)"
34
+ * The word 'cryptographic' can be left out if the rouines from the library
35
+ * being used are not cryptographic related :-).
36
+ * 4. If you include any Windows specific code (or a derivative thereof) from
37
+ * the apps directory (application code) you must include an acknowledgement:
38
+ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
39
+ *
40
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
41
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
42
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
43
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
44
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
45
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
46
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
48
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
49
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
50
+ * SUCH DAMAGE.
51
+ *
52
+ * The licence and distribution terms for any publically available version or
53
+ * derivative of this code cannot be changed. i.e. this code cannot simply be
54
+ * copied and put under another distribution licence
55
+ * [including the GNU Public Licence.] */
56
+
57
+ #ifndef OPENSSL_HEADER_LHASH_H
58
+ #define OPENSSL_HEADER_LHASH_H
59
+
60
+ #include <openssl/base.h>
61
+
62
+ #if defined(__cplusplus)
63
+ extern "C" {
64
+ #endif
65
+
66
+
67
+ // lhash is an internal library and not exported for use outside BoringSSL. This
68
+ // header is provided for compatibility with code that expects OpenSSL.
69
+
70
+
71
+ // These two macros are exported for compatibility with existing callers of
72
+ // |X509V3_EXT_conf_nid|. Do not use these symbols outside BoringSSL.
73
+ #define LHASH_OF(type) struct lhash_st_##type
74
+ #define DECLARE_LHASH_OF(type) LHASH_OF(type);
75
+
76
+
77
+ #if defined(__cplusplus)
78
+ } // extern C
79
+ #endif
80
+
81
+ #endif // OPENSSL_HEADER_LHASH_H
@@ -0,0 +1,108 @@
1
+ /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
2
+ * All rights reserved.
3
+ *
4
+ * This package is an SSL implementation written
5
+ * by Eric Young (eay@cryptsoft.com).
6
+ * The implementation was written so as to conform with Netscapes SSL.
7
+ *
8
+ * This library is free for commercial and non-commercial use as long as
9
+ * the following conditions are aheared to. The following conditions
10
+ * apply to all code found in this distribution, be it the RC4, RSA,
11
+ * lhash, DES, etc., code; not just the SSL code. The SSL documentation
12
+ * included with this distribution is covered by the same copyright terms
13
+ * except that the holder is Tim Hudson (tjh@cryptsoft.com).
14
+ *
15
+ * Copyright remains Eric Young's, and as such any Copyright notices in
16
+ * the code are not to be removed.
17
+ * If this package is used in a product, Eric Young should be given attribution
18
+ * as the author of the parts of the library used.
19
+ * This can be in the form of a textual message at program startup or
20
+ * in documentation (online or textual) provided with the package.
21
+ *
22
+ * Redistribution and use in source and binary forms, with or without
23
+ * modification, are permitted provided that the following conditions
24
+ * are met:
25
+ * 1. Redistributions of source code must retain the copyright
26
+ * notice, this list of conditions and the following disclaimer.
27
+ * 2. Redistributions in binary form must reproduce the above copyright
28
+ * notice, this list of conditions and the following disclaimer in the
29
+ * documentation and/or other materials provided with the distribution.
30
+ * 3. All advertising materials mentioning features or use of this software
31
+ * must display the following acknowledgement:
32
+ * "This product includes cryptographic software written by
33
+ * Eric Young (eay@cryptsoft.com)"
34
+ * The word 'cryptographic' can be left out if the rouines from the library
35
+ * being used are not cryptographic related :-).
36
+ * 4. If you include any Windows specific code (or a derivative thereof) from
37
+ * the apps directory (application code) you must include an acknowledgement:
38
+ * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
39
+ *
40
+ * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
41
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
42
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
43
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
44
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
45
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
46
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
47
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
48
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
49
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
50
+ * SUCH DAMAGE.
51
+ *
52
+ * The licence and distribution terms for any publically available version or
53
+ * derivative of this code cannot be changed. i.e. this code cannot simply be
54
+ * copied and put under another distribution licence
55
+ * [including the GNU Public Licence.] */
56
+
57
+ #ifndef OPENSSL_HEADER_MD4_H
58
+ #define OPENSSL_HEADER_MD4_H
59
+
60
+ #include <openssl/base.h>
61
+
62
+ #if defined(__cplusplus)
63
+ extern "C" {
64
+ #endif
65
+
66
+
67
+ // MD4.
68
+
69
+ // MD4_CBLOCK is the block size of MD4.
70
+ #define MD4_CBLOCK 64
71
+
72
+ // MD4_DIGEST_LENGTH is the length of an MD4 digest.
73
+ #define MD4_DIGEST_LENGTH 16
74
+
75
+ // MD4_Init initialises |md4| and returns one.
76
+ OPENSSL_EXPORT int MD4_Init(MD4_CTX *md4);
77
+
78
+ // MD4_Update adds |len| bytes from |data| to |md4| and returns one.
79
+ OPENSSL_EXPORT int MD4_Update(MD4_CTX *md4, const void *data, size_t len);
80
+
81
+ // MD4_Final adds the final padding to |md4| and writes the resulting digest to
82
+ // |out|, which must have at least |MD4_DIGEST_LENGTH| bytes of space. It
83
+ // returns one.
84
+ OPENSSL_EXPORT int MD4_Final(uint8_t out[MD4_DIGEST_LENGTH], MD4_CTX *md4);
85
+
86
+ // MD4 writes the digest of |len| bytes from |data| to |out| and returns |out|.
87
+ // There must be at least |MD4_DIGEST_LENGTH| bytes of space in |out|.
88
+ OPENSSL_EXPORT uint8_t *MD4(const uint8_t *data, size_t len,
89
+ uint8_t out[MD4_DIGEST_LENGTH]);
90
+
91
+ // MD4_Transform is a low-level function that performs a single, MD4 block
92
+ // transformation using the state from |md4| and 64 bytes from |block|.
93
+ OPENSSL_EXPORT void MD4_Transform(MD4_CTX *md4,
94
+ const uint8_t block[MD4_CBLOCK]);
95
+
96
+ struct md4_state_st {
97
+ uint32_t h[4];
98
+ uint32_t Nl, Nh;
99
+ uint8_t data[MD4_CBLOCK];
100
+ unsigned num;
101
+ };
102
+
103
+
104
+ #if defined(__cplusplus)
105
+ } // extern C
106
+ #endif
107
+
108
+ #endif // OPENSSL_HEADER_MD4_H