grpc 1.9.1 → 1.10.0.pre1

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

Potentially problematic release.


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

Files changed (637) hide show
  1. checksums.yaml +4 -4
  2. data/Makefile +2654 -953
  3. data/etc/roots.pem +282 -683
  4. data/include/grpc/compression.h +9 -26
  5. data/include/grpc/grpc.h +10 -24
  6. data/include/grpc/grpc_security.h +7 -1
  7. data/include/grpc/impl/codegen/compression_types.h +5 -62
  8. data/include/grpc/impl/codegen/grpc_types.h +10 -6
  9. data/include/grpc/module.modulemap +1 -10
  10. data/include/grpc/support/alloc.h +3 -2
  11. data/include/grpc/support/log.h +1 -2
  12. data/{src/core/lib/gpr/thd_internal.h → include/grpc/support/thd_id.h} +23 -9
  13. data/src/boringssl/err_data.c +550 -496
  14. data/src/core/ext/census/grpc_context.cc +2 -1
  15. data/src/core/ext/filters/client_channel/backup_poller.cc +5 -4
  16. data/src/core/ext/filters/client_channel/channel_connectivity.cc +7 -7
  17. data/src/core/ext/filters/client_channel/client_channel.cc +162 -172
  18. data/src/core/ext/filters/client_channel/client_channel_factory.cc +4 -2
  19. data/src/core/ext/filters/client_channel/client_channel_plugin.cc +10 -10
  20. data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +18 -14
  21. data/src/core/ext/filters/client_channel/http_proxy.cc +3 -1
  22. data/src/core/ext/filters/client_channel/lb_policy.cc +21 -105
  23. data/src/core/ext/filters/client_channel/lb_policy.h +166 -170
  24. data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +41 -36
  25. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +1452 -1459
  26. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +1 -1
  27. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +3 -2
  28. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +7 -8
  29. data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +27 -27
  30. data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +279 -304
  31. data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +358 -330
  32. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.cc +30 -41
  33. data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +7 -14
  34. data/src/core/ext/filters/client_channel/lb_policy_factory.cc +8 -21
  35. data/src/core/ext/filters/client_channel/lb_policy_factory.h +23 -27
  36. data/src/core/ext/filters/client_channel/lb_policy_registry.cc +58 -33
  37. data/src/core/ext/filters/client_channel/lb_policy_registry.h +25 -12
  38. data/src/core/ext/filters/client_channel/parse_address.cc +10 -8
  39. data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +2 -2
  40. data/src/core/ext/filters/client_channel/resolver.cc +6 -52
  41. data/src/core/ext/filters/client_channel/resolver.h +98 -55
  42. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +266 -237
  43. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +5 -5
  44. data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +31 -27
  45. data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +244 -207
  46. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +161 -148
  47. data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +47 -31
  48. data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +126 -126
  49. data/src/core/ext/filters/client_channel/resolver_factory.h +33 -32
  50. data/src/core/ext/filters/client_channel/resolver_registry.cc +110 -90
  51. data/src/core/ext/filters/client_channel/resolver_registry.h +49 -36
  52. data/src/core/ext/filters/client_channel/retry_throttle.cc +29 -22
  53. data/src/core/ext/filters/client_channel/subchannel.cc +173 -173
  54. data/src/core/ext/filters/client_channel/subchannel.h +38 -45
  55. data/src/core/ext/filters/client_channel/subchannel_index.cc +44 -40
  56. data/src/core/ext/filters/client_channel/uri_parser.cc +3 -3
  57. data/src/core/ext/filters/deadline/deadline_filter.cc +27 -18
  58. data/src/core/ext/filters/http/client/http_client_filter.cc +26 -23
  59. data/src/core/ext/filters/http/http_filters_plugin.cc +3 -2
  60. data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +78 -110
  61. data/src/core/ext/filters/http/server/http_server_filter.cc +29 -26
  62. data/src/core/ext/filters/load_reporting/server_load_reporting_filter.cc +9 -11
  63. data/src/core/ext/filters/load_reporting/server_load_reporting_plugin.cc +2 -1
  64. data/src/core/ext/filters/max_age/max_age_filter.cc +14 -14
  65. data/src/core/ext/filters/message_size/message_size_filter.cc +20 -18
  66. data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +4 -4
  67. data/src/core/ext/filters/workarounds/workaround_utils.cc +4 -4
  68. data/src/core/ext/transport/chttp2/alpn/alpn.cc +2 -1
  69. data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +10 -10
  70. data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +4 -4
  71. data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +11 -12
  72. data/src/core/ext/transport/chttp2/server/chttp2_server.cc +16 -13
  73. data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +36 -9
  74. data/src/core/ext/transport/chttp2/transport/bin_decoder.h +3 -0
  75. data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +17 -14
  76. data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +139 -145
  77. data/src/core/ext/transport/chttp2/transport/flow_control.cc +16 -14
  78. data/src/core/ext/transport/chttp2/transport/flow_control.h +8 -7
  79. data/src/core/ext/transport/chttp2/transport/frame_data.cc +35 -33
  80. data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +27 -25
  81. data/src/core/ext/transport/chttp2/transport/frame_ping.cc +12 -12
  82. data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +16 -15
  83. data/src/core/ext/transport/chttp2/transport/frame_settings.cc +19 -19
  84. data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +11 -11
  85. data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +23 -22
  86. data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +35 -35
  87. data/src/core/ext/transport/chttp2/transport/hpack_table.cc +10 -7
  88. data/src/core/ext/transport/chttp2/transport/http2_settings.cc +2 -2
  89. data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +2 -2
  90. data/src/core/ext/transport/chttp2/transport/internal.h +1 -1
  91. data/src/core/ext/transport/chttp2/transport/parsing.cc +35 -39
  92. data/src/core/ext/transport/chttp2/transport/stream_map.cc +8 -7
  93. data/src/core/ext/transport/chttp2/transport/varint.cc +5 -5
  94. data/src/core/ext/transport/chttp2/transport/writing.cc +18 -18
  95. data/src/core/ext/transport/inproc/inproc_transport.cc +43 -23
  96. data/src/core/lib/{gpr → avl}/avl.cc +61 -57
  97. data/{include/grpc/support → src/core/lib/avl}/avl.h +25 -35
  98. data/src/core/lib/backoff/backoff.cc +6 -5
  99. data/src/core/lib/channel/channel_args.cc +23 -109
  100. data/src/core/lib/channel/channel_args.h +5 -31
  101. data/src/core/lib/channel/channel_stack.cc +11 -8
  102. data/src/core/lib/channel/channel_stack_builder.cc +10 -7
  103. data/src/core/lib/channel/connected_channel.cc +18 -17
  104. data/src/core/lib/channel/handshaker.cc +8 -8
  105. data/src/core/lib/channel/handshaker_registry.cc +3 -2
  106. data/src/core/lib/compression/algorithm_metadata.h +13 -6
  107. data/src/core/lib/compression/compression.cc +72 -183
  108. data/src/core/lib/compression/compression_internal.cc +274 -0
  109. data/src/core/lib/compression/compression_internal.h +86 -0
  110. data/src/core/lib/compression/message_compress.cc +15 -15
  111. data/src/core/lib/compression/message_compress.h +4 -3
  112. data/src/core/lib/compression/stream_compression_gzip.cc +8 -8
  113. data/src/core/lib/compression/stream_compression_identity.cc +1 -1
  114. data/src/core/lib/debug/stats.cc +10 -8
  115. data/src/core/lib/debug/stats_data.cc +2 -1
  116. data/src/core/lib/debug/trace.cc +3 -3
  117. data/src/core/lib/gpr/alloc.cc +7 -11
  118. data/src/core/lib/gpr/arena.cc +34 -12
  119. data/src/core/lib/gpr/atm.cc +2 -1
  120. data/src/core/lib/gpr/cpu_linux.cc +3 -3
  121. data/src/core/lib/gpr/cpu_posix.cc +2 -1
  122. data/src/core/lib/gpr/env.h +1 -1
  123. data/src/core/lib/gpr/env_linux.cc +1 -1
  124. data/src/core/lib/gpr/env_windows.cc +4 -4
  125. data/src/core/lib/gpr/fork.cc +16 -2
  126. data/src/core/lib/gpr/host_port.cc +5 -4
  127. data/{include/grpc/support → src/core/lib/gpr}/host_port.h +5 -13
  128. data/src/core/lib/gpr/log.cc +5 -4
  129. data/src/core/lib/gpr/log_linux.cc +1 -1
  130. data/src/core/lib/gpr/mpscq.cc +1 -0
  131. data/src/core/lib/gpr/murmur_hash.cc +4 -4
  132. data/src/core/lib/gpr/string.cc +19 -16
  133. data/src/core/lib/gpr/string_posix.cc +3 -3
  134. data/src/core/lib/gpr/sync_posix.cc +5 -9
  135. data/src/core/lib/gpr/thd.cc +3 -3
  136. data/{include/grpc/support → src/core/lib/gpr}/thd.h +20 -28
  137. data/src/core/lib/gpr/thd_posix.cc +6 -4
  138. data/src/core/lib/gpr/thd_windows.cc +3 -1
  139. data/src/core/lib/gpr/time.cc +6 -4
  140. data/src/core/lib/gpr/time_posix.cc +2 -2
  141. data/{include/grpc/support → src/core/lib/gpr}/tls.h +6 -6
  142. data/{include/grpc/support → src/core/lib/gpr}/tls_gcc.h +3 -3
  143. data/{include/grpc/support → src/core/lib/gpr}/tls_msvc.h +3 -3
  144. data/src/core/lib/gpr/tls_pthread.cc +1 -1
  145. data/{include/grpc/support → src/core/lib/gpr}/tls_pthread.h +3 -3
  146. data/{include/grpc/support → src/core/lib/gpr}/useful.h +3 -3
  147. data/src/core/lib/{gpr++ → gprpp}/abstract.h +3 -3
  148. data/src/core/lib/{gpr++ → gprpp}/atomic.h +5 -5
  149. data/src/core/lib/{gpr++ → gprpp}/atomic_with_atm.h +3 -3
  150. data/src/core/lib/{gpr++ → gprpp}/atomic_with_std.h +3 -3
  151. data/src/core/lib/{gpr++ → gprpp}/debug_location.h +3 -3
  152. data/src/core/lib/{gpr++ → gprpp}/inlined_vector.h +44 -22
  153. data/src/core/lib/{gpr++ → gprpp}/manual_constructor.h +2 -2
  154. data/src/core/lib/{gpr++ → gprpp}/memory.h +14 -5
  155. data/src/core/lib/{gpr++ → gprpp}/orphanable.h +39 -14
  156. data/src/core/lib/{gpr++ → gprpp}/ref_counted.h +42 -10
  157. data/src/core/lib/{gpr++ → gprpp}/ref_counted_ptr.h +18 -8
  158. data/src/core/lib/http/format_request.cc +3 -3
  159. data/src/core/lib/http/httpcli.cc +6 -7
  160. data/src/core/lib/http/httpcli_security_connector.cc +10 -10
  161. data/src/core/lib/http/parser.cc +16 -12
  162. data/src/core/lib/iomgr/call_combiner.cc +12 -13
  163. data/src/core/lib/iomgr/closure.h +4 -6
  164. data/src/core/lib/iomgr/combiner.cc +10 -21
  165. data/src/core/lib/iomgr/error.cc +50 -55
  166. data/src/core/lib/iomgr/ev_epoll1_linux.cc +41 -52
  167. data/src/core/lib/iomgr/ev_epollex_linux.cc +80 -28
  168. data/src/core/lib/iomgr/ev_epollsig_linux.cc +23 -30
  169. data/src/core/lib/iomgr/ev_poll_posix.cc +52 -46
  170. data/src/core/lib/iomgr/ev_posix.cc +47 -6
  171. data/src/core/lib/iomgr/exec_ctx.cc +10 -10
  172. data/src/core/lib/iomgr/exec_ctx.h +1 -1
  173. data/src/core/lib/iomgr/executor.cc +16 -13
  174. data/src/core/lib/iomgr/fork_posix.cc +1 -3
  175. data/src/core/lib/iomgr/gethostname_host_name_max.cc +1 -1
  176. data/src/core/lib/iomgr/iocp_windows.cc +1 -2
  177. data/src/core/lib/iomgr/iomgr.cc +2 -2
  178. data/src/core/lib/iomgr/iomgr_uv.cc +2 -0
  179. data/src/core/lib/iomgr/iomgr_uv.h +1 -1
  180. data/src/core/lib/iomgr/is_epollexclusive_available.cc +5 -4
  181. data/src/core/lib/iomgr/load_file.cc +3 -3
  182. data/src/core/lib/iomgr/pollset_windows.cc +1 -1
  183. data/src/core/lib/iomgr/resolve_address_posix.cc +10 -9
  184. data/src/core/lib/iomgr/resolve_address_uv.cc +2 -2
  185. data/src/core/lib/iomgr/resolve_address_windows.cc +3 -2
  186. data/src/core/lib/iomgr/resource_quota.cc +36 -34
  187. data/src/core/lib/iomgr/sockaddr_utils.cc +39 -23
  188. data/src/core/lib/iomgr/socket_factory_posix.cc +5 -5
  189. data/src/core/lib/iomgr/socket_mutator.cc +7 -7
  190. data/src/core/lib/iomgr/socket_utils_common_posix.cc +7 -4
  191. data/src/core/lib/iomgr/socket_utils_linux.cc +3 -2
  192. data/src/core/lib/iomgr/tcp_client_posix.cc +7 -6
  193. data/src/core/lib/iomgr/tcp_client_windows.cc +0 -1
  194. data/src/core/lib/iomgr/tcp_posix.cc +47 -55
  195. data/src/core/lib/iomgr/tcp_server_posix.cc +12 -10
  196. data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +7 -5
  197. data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +4 -3
  198. data/src/core/lib/iomgr/tcp_windows.cc +1 -1
  199. data/src/core/lib/iomgr/timer_generic.cc +16 -14
  200. data/src/core/lib/iomgr/timer_heap.cc +8 -7
  201. data/src/core/lib/iomgr/timer_manager.cc +4 -3
  202. data/src/core/lib/iomgr/udp_server.cc +24 -16
  203. data/src/core/lib/iomgr/unix_sockets_posix.cc +15 -10
  204. data/src/core/lib/iomgr/wakeup_fd_cv.cc +6 -5
  205. data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +1 -2
  206. data/src/core/lib/json/json.cc +1 -1
  207. data/src/core/lib/json/json_reader.cc +8 -6
  208. data/src/core/lib/json/json_string.cc +19 -18
  209. data/src/core/lib/json/json_writer.cc +10 -8
  210. data/src/core/lib/profiling/basic_timers.cc +1 -1
  211. data/src/core/lib/profiling/timers.h +3 -20
  212. data/src/core/lib/security/context/security_context.cc +16 -14
  213. data/src/core/lib/security/credentials/composite/composite_credentials.cc +17 -14
  214. data/src/core/lib/security/credentials/credentials.cc +9 -8
  215. data/src/core/lib/security/credentials/credentials.h +1 -1
  216. data/src/core/lib/security/credentials/credentials_metadata.cc +2 -2
  217. data/src/core/lib/security/credentials/fake/fake_credentials.cc +12 -13
  218. data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +7 -4
  219. data/src/core/lib/security/credentials/iam/iam_credentials.cc +5 -3
  220. data/src/core/lib/security/credentials/jwt/json_token.cc +4 -3
  221. data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +7 -7
  222. data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +21 -18
  223. data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +23 -18
  224. data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +11 -7
  225. data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +22 -21
  226. data/src/core/lib/security/{transport → security_connector}/security_connector.cc +46 -43
  227. data/src/core/lib/security/{transport → security_connector}/security_connector.h +3 -3
  228. data/src/core/lib/security/transport/client_auth_filter.cc +32 -34
  229. data/src/core/lib/security/transport/lb_targets_info.cc +7 -5
  230. data/src/core/lib/security/transport/secure_endpoint.cc +21 -21
  231. data/src/core/lib/security/transport/security_handshaker.cc +19 -18
  232. data/src/core/lib/security/transport/security_handshaker.h +1 -1
  233. data/src/core/lib/security/transport/server_auth_filter.cc +21 -21
  234. data/src/core/lib/slice/b64.cc +19 -16
  235. data/src/core/lib/slice/percent_encoding.cc +5 -5
  236. data/src/core/lib/slice/slice.cc +35 -33
  237. data/src/core/lib/slice/slice_buffer.cc +16 -14
  238. data/src/core/lib/slice/slice_hash_table.cc +3 -2
  239. data/src/core/lib/slice/slice_intern.cc +21 -25
  240. data/src/core/lib/slice/slice_string_helpers.cc +45 -9
  241. data/src/core/lib/slice/slice_string_helpers.h +6 -0
  242. data/src/core/lib/surface/byte_buffer.cc +2 -2
  243. data/src/core/lib/surface/byte_buffer_reader.cc +6 -3
  244. data/src/core/lib/surface/call.cc +171 -260
  245. data/src/core/lib/surface/call_test_only.h +1 -13
  246. data/src/core/lib/surface/channel.cc +20 -43
  247. data/src/core/lib/surface/channel_init.cc +7 -7
  248. data/src/core/lib/surface/channel_ping.cc +2 -2
  249. data/src/core/lib/surface/completion_queue.cc +69 -75
  250. data/src/core/lib/surface/init.cc +4 -5
  251. data/src/core/lib/surface/init_secure.cc +1 -1
  252. data/src/core/lib/surface/lame_client.cc +1 -1
  253. data/src/core/lib/surface/server.cc +64 -59
  254. data/src/core/lib/surface/version.cc +2 -2
  255. data/src/core/lib/transport/bdp_estimator.cc +6 -5
  256. data/src/core/lib/transport/byte_stream.cc +23 -14
  257. data/src/core/lib/transport/byte_stream.h +1 -1
  258. data/src/core/lib/transport/connectivity_state.cc +9 -13
  259. data/src/core/lib/transport/error_utils.cc +10 -7
  260. data/src/core/lib/transport/metadata.cc +27 -26
  261. data/src/core/lib/transport/metadata.h +1 -1
  262. data/src/core/lib/transport/pid_controller.cc +2 -1
  263. data/src/core/lib/transport/service_config.cc +5 -5
  264. data/src/core/lib/transport/static_metadata.cc +225 -222
  265. data/src/core/lib/transport/static_metadata.h +77 -76
  266. data/src/core/lib/transport/timeout_encoding.cc +3 -2
  267. data/src/core/lib/transport/transport.cc +6 -5
  268. data/src/core/lib/transport/transport_op_string.cc +0 -1
  269. data/src/core/plugin_registry/grpc_plugin_registry.cc +4 -4
  270. data/src/core/tsi/alts_transport_security.cc +61 -0
  271. data/src/core/tsi/{gts_transport_security.h → alts_transport_security.h} +16 -8
  272. data/src/core/tsi/fake_transport_security.cc +59 -43
  273. data/src/core/tsi/ssl_transport_security.cc +122 -107
  274. data/src/core/tsi/transport_security.cc +3 -3
  275. data/src/core/tsi/transport_security_adapter.cc +16 -10
  276. data/src/ruby/bin/apis/pubsub_demo.rb +1 -1
  277. data/src/ruby/ext/grpc/rb_channel.c +3 -4
  278. data/src/ruby/ext/grpc/rb_compression_options.c +13 -3
  279. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +4 -76
  280. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +8 -120
  281. data/src/ruby/ext/grpc/rb_server.c +52 -28
  282. data/src/ruby/lib/grpc/generic/rpc_server.rb +7 -4
  283. data/src/ruby/lib/grpc/version.rb +1 -1
  284. data/src/ruby/pb/test/client.rb +1 -1
  285. data/src/ruby/pb/test/server.rb +1 -1
  286. data/src/ruby/spec/client_server_spec.rb +4 -2
  287. data/src/ruby/spec/generic/active_call_spec.rb +2 -1
  288. data/src/ruby/spec/generic/client_stub_spec.rb +32 -8
  289. data/src/ruby/spec/server_spec.rb +26 -7
  290. data/third_party/boringssl/crypto/asn1/a_bitstr.c +7 -2
  291. data/third_party/boringssl/crypto/asn1/a_d2i_fp.c +15 -0
  292. data/third_party/boringssl/crypto/asn1/a_gentm.c +1 -1
  293. data/third_party/boringssl/crypto/asn1/a_print.c +0 -28
  294. data/third_party/boringssl/crypto/asn1/a_strnid.c +3 -0
  295. data/third_party/boringssl/crypto/asn1/a_time.c +17 -9
  296. data/third_party/boringssl/crypto/asn1/a_utctm.c +1 -1
  297. data/third_party/boringssl/crypto/asn1/asn1_lib.c +5 -49
  298. data/third_party/boringssl/crypto/asn1/asn1_locl.h +1 -1
  299. data/third_party/boringssl/crypto/asn1/tasn_dec.c +9 -9
  300. data/third_party/boringssl/crypto/asn1/tasn_enc.c +0 -6
  301. data/third_party/boringssl/crypto/asn1/time_support.c +5 -5
  302. data/third_party/boringssl/crypto/base64/base64.c +65 -43
  303. data/third_party/boringssl/crypto/bio/bio.c +134 -110
  304. data/third_party/boringssl/crypto/bio/bio_mem.c +9 -9
  305. data/third_party/boringssl/crypto/bio/connect.c +17 -17
  306. data/third_party/boringssl/crypto/bio/fd.c +2 -1
  307. data/third_party/boringssl/crypto/bio/file.c +14 -14
  308. data/third_party/boringssl/crypto/bio/hexdump.c +15 -16
  309. data/third_party/boringssl/crypto/bio/internal.h +14 -14
  310. data/third_party/boringssl/crypto/bio/pair.c +45 -45
  311. data/third_party/boringssl/crypto/bio/printf.c +6 -10
  312. data/third_party/boringssl/crypto/{bn → bn_extra}/bn_asn1.c +9 -9
  313. data/third_party/boringssl/crypto/{bn → bn_extra}/convert.c +18 -223
  314. data/third_party/boringssl/crypto/buf/buf.c +20 -44
  315. data/third_party/boringssl/crypto/bytestring/ber.c +35 -35
  316. data/third_party/boringssl/crypto/bytestring/cbb.c +24 -24
  317. data/third_party/boringssl/crypto/bytestring/cbs.c +33 -37
  318. data/third_party/boringssl/crypto/bytestring/internal.h +38 -38
  319. data/third_party/boringssl/crypto/chacha/chacha.c +7 -7
  320. data/third_party/boringssl/crypto/{asn1/t_bitst.c → cipher_extra/cipher_extra.c} +49 -38
  321. data/third_party/boringssl/crypto/{cipher → cipher_extra}/derive_key.c +0 -2
  322. data/third_party/boringssl/crypto/cipher_extra/e_aesctrhmac.c +281 -0
  323. data/third_party/boringssl/crypto/cipher_extra/e_aesgcmsiv.c +867 -0
  324. data/third_party/boringssl/crypto/cipher_extra/e_chacha20poly1305.c +326 -0
  325. data/third_party/boringssl/crypto/{cipher → cipher_extra}/e_null.c +0 -1
  326. data/third_party/boringssl/crypto/{cipher → cipher_extra}/e_rc2.c +22 -10
  327. data/third_party/boringssl/crypto/{cipher → cipher_extra}/e_rc4.c +0 -0
  328. data/third_party/boringssl/crypto/{cipher → cipher_extra}/e_ssl3.c +120 -64
  329. data/third_party/boringssl/crypto/{cipher → cipher_extra}/e_tls.c +220 -141
  330. data/third_party/boringssl/crypto/{asn1/x_bignum.c → cipher_extra/internal.h} +61 -86
  331. data/third_party/boringssl/crypto/cipher_extra/tls_cbc.c +482 -0
  332. data/third_party/boringssl/crypto/cmac/cmac.c +20 -20
  333. data/third_party/boringssl/crypto/conf/conf.c +32 -20
  334. data/third_party/boringssl/crypto/conf/internal.h +3 -3
  335. data/third_party/boringssl/crypto/cpu-aarch64-linux.c +5 -5
  336. data/third_party/boringssl/crypto/cpu-arm-linux.c +44 -41
  337. data/third_party/boringssl/crypto/cpu-intel.c +68 -43
  338. data/third_party/boringssl/crypto/cpu-ppc64le.c +5 -7
  339. data/third_party/boringssl/crypto/crypto.c +54 -32
  340. data/third_party/boringssl/crypto/curve25519/curve25519.c +269 -269
  341. data/third_party/boringssl/crypto/curve25519/internal.h +28 -8
  342. data/third_party/boringssl/crypto/curve25519/spake25519.c +180 -106
  343. data/third_party/boringssl/crypto/curve25519/x25519-x86_64.c +9 -9
  344. data/third_party/boringssl/crypto/dh/check.c +33 -34
  345. data/third_party/boringssl/crypto/dh/dh.c +72 -36
  346. data/third_party/boringssl/crypto/dh/dh_asn1.c +1 -1
  347. data/third_party/boringssl/crypto/dh/params.c +1 -161
  348. data/third_party/boringssl/crypto/digest_extra/digest_extra.c +240 -0
  349. data/third_party/boringssl/crypto/dsa/dsa.c +127 -87
  350. data/third_party/boringssl/crypto/dsa/dsa_asn1.c +1 -1
  351. data/third_party/boringssl/crypto/{ec → ec_extra}/ec_asn1.c +83 -70
  352. data/third_party/boringssl/crypto/ecdh/ecdh.c +1 -1
  353. data/third_party/boringssl/crypto/{ecdsa → ecdsa_extra}/ecdsa_asn1.c +86 -31
  354. data/third_party/boringssl/crypto/engine/engine.c +6 -6
  355. data/third_party/boringssl/crypto/err/err.c +197 -106
  356. data/third_party/boringssl/crypto/err/internal.h +58 -0
  357. data/third_party/boringssl/crypto/evp/digestsign.c +86 -14
  358. data/third_party/boringssl/crypto/evp/evp.c +6 -11
  359. data/third_party/boringssl/crypto/evp/evp_asn1.c +17 -17
  360. data/third_party/boringssl/crypto/evp/evp_ctx.c +15 -11
  361. data/third_party/boringssl/crypto/evp/internal.h +66 -51
  362. data/third_party/boringssl/crypto/evp/p_dsa_asn1.c +11 -11
  363. data/third_party/boringssl/crypto/evp/p_ec.c +10 -8
  364. data/third_party/boringssl/crypto/evp/p_ec_asn1.c +11 -12
  365. data/third_party/boringssl/crypto/evp/p_ed25519.c +71 -0
  366. data/third_party/boringssl/crypto/evp/p_ed25519_asn1.c +190 -0
  367. data/third_party/boringssl/crypto/evp/p_rsa.c +50 -95
  368. data/third_party/boringssl/crypto/evp/p_rsa_asn1.c +28 -18
  369. data/third_party/boringssl/crypto/evp/pbkdf.c +49 -56
  370. data/third_party/boringssl/crypto/evp/print.c +5 -36
  371. data/third_party/boringssl/crypto/evp/scrypt.c +209 -0
  372. data/third_party/boringssl/crypto/ex_data.c +15 -45
  373. data/third_party/boringssl/crypto/fipsmodule/aes/internal.h +100 -0
  374. data/third_party/boringssl/crypto/fipsmodule/bcm.c +679 -0
  375. data/third_party/boringssl/crypto/{bn → fipsmodule/bn}/internal.h +40 -27
  376. data/third_party/boringssl/crypto/{bn → fipsmodule/bn}/rsaz_exp.h +0 -0
  377. data/third_party/boringssl/crypto/{cipher → fipsmodule/cipher}/internal.h +34 -67
  378. data/third_party/boringssl/crypto/fipsmodule/delocate.h +88 -0
  379. data/third_party/boringssl/crypto/{des → fipsmodule/des}/internal.h +18 -4
  380. data/third_party/boringssl/crypto/{digest → fipsmodule/digest}/internal.h +18 -18
  381. data/third_party/boringssl/crypto/{digest → fipsmodule/digest}/md32_common.h +58 -64
  382. data/third_party/boringssl/crypto/{ec → fipsmodule/ec}/internal.h +58 -52
  383. data/third_party/boringssl/crypto/{ec → fipsmodule/ec}/p256-x86_64-table.h +11 -11
  384. data/third_party/boringssl/crypto/{ec → fipsmodule/ec}/p256-x86_64.h +32 -32
  385. data/third_party/boringssl/crypto/{rand/internal.h → fipsmodule/is_fips.c} +10 -15
  386. data/third_party/boringssl/crypto/{modes → fipsmodule/modes}/internal.h +112 -119
  387. data/third_party/boringssl/crypto/fipsmodule/rand/internal.h +92 -0
  388. data/third_party/boringssl/crypto/{rsa → fipsmodule/rsa}/internal.h +36 -49
  389. data/third_party/boringssl/crypto/hkdf/hkdf.c +6 -6
  390. data/third_party/boringssl/crypto/internal.h +301 -233
  391. data/third_party/boringssl/crypto/lhash/lhash.c +26 -45
  392. data/third_party/boringssl/crypto/mem.c +76 -33
  393. data/third_party/boringssl/crypto/obj/obj.c +44 -28
  394. data/third_party/boringssl/crypto/obj/obj_dat.h +102 -34
  395. data/third_party/boringssl/crypto/obj/obj_xref.c +6 -6
  396. data/third_party/boringssl/crypto/pem/pem_info.c +3 -5
  397. data/third_party/boringssl/crypto/pem/pem_lib.c +1 -6
  398. data/third_party/boringssl/crypto/pem/pem_pk8.c +1 -0
  399. data/third_party/boringssl/crypto/pem/pem_pkey.c +1 -1
  400. data/third_party/boringssl/crypto/pem/pem_xaux.c +0 -2
  401. data/third_party/boringssl/crypto/pkcs7/internal.h +49 -0
  402. data/third_party/boringssl/crypto/pkcs7/pkcs7.c +166 -0
  403. data/third_party/boringssl/crypto/{x509/pkcs7.c → pkcs7/pkcs7_x509.c} +27 -147
  404. data/third_party/boringssl/crypto/pkcs8/internal.h +34 -16
  405. data/third_party/boringssl/crypto/pkcs8/p5_pbev2.c +120 -39
  406. data/third_party/boringssl/crypto/pkcs8/pkcs8.c +144 -857
  407. data/third_party/boringssl/crypto/pkcs8/pkcs8_x509.c +789 -0
  408. data/third_party/boringssl/crypto/poly1305/internal.h +4 -3
  409. data/third_party/boringssl/crypto/poly1305/poly1305.c +14 -14
  410. data/third_party/boringssl/crypto/poly1305/poly1305_arm.c +11 -11
  411. data/third_party/boringssl/crypto/poly1305/poly1305_vec.c +41 -41
  412. data/third_party/boringssl/crypto/pool/internal.h +2 -2
  413. data/third_party/boringssl/crypto/pool/pool.c +15 -15
  414. data/third_party/boringssl/crypto/{rand → rand_extra}/deterministic.c +7 -7
  415. data/third_party/boringssl/crypto/rand_extra/forkunsafe.c +46 -0
  416. data/third_party/boringssl/crypto/{rand → rand_extra}/fuchsia.c +7 -7
  417. data/third_party/boringssl/crypto/rand_extra/rand_extra.c +70 -0
  418. data/third_party/boringssl/crypto/{rand → rand_extra}/windows.c +5 -5
  419. data/third_party/boringssl/crypto/refcount_c11.c +2 -2
  420. data/third_party/boringssl/crypto/refcount_lock.c +1 -1
  421. data/third_party/boringssl/crypto/{rsa → rsa_extra}/rsa_asn1.c +12 -120
  422. data/third_party/boringssl/crypto/stack/stack.c +13 -13
  423. data/third_party/boringssl/crypto/thread_none.c +1 -1
  424. data/third_party/boringssl/crypto/thread_pthread.c +1 -1
  425. data/third_party/boringssl/crypto/thread_win.c +40 -40
  426. data/third_party/boringssl/crypto/x509/a_sign.c +5 -12
  427. data/third_party/boringssl/crypto/x509/a_verify.c +6 -18
  428. data/third_party/boringssl/crypto/x509/algorithm.c +22 -6
  429. data/third_party/boringssl/crypto/x509/asn1_gen.c +30 -7
  430. data/third_party/boringssl/crypto/x509/by_dir.c +2 -2
  431. data/third_party/boringssl/crypto/x509/by_file.c +2 -2
  432. data/third_party/boringssl/crypto/x509/rsa_pss.c +5 -5
  433. data/third_party/boringssl/crypto/x509/t_x509.c +2 -1
  434. data/third_party/boringssl/crypto/x509/x509_def.c +5 -0
  435. data/third_party/boringssl/crypto/x509/x509_lu.c +35 -4
  436. data/third_party/boringssl/crypto/x509/x509_set.c +10 -0
  437. data/third_party/boringssl/crypto/x509/x509_vfy.c +20 -17
  438. data/third_party/boringssl/crypto/x509/x_name.c +13 -16
  439. data/third_party/boringssl/crypto/x509/x_x509.c +3 -3
  440. data/third_party/boringssl/crypto/x509/x_x509a.c +0 -7
  441. data/third_party/boringssl/crypto/x509v3/ext_dat.h +8 -0
  442. data/third_party/boringssl/crypto/x509v3/pcy_int.h +2 -2
  443. data/third_party/boringssl/crypto/x509v3/pcy_lib.c +0 -9
  444. data/third_party/boringssl/crypto/x509v3/pcy_node.c +1 -1
  445. data/third_party/boringssl/crypto/x509v3/pcy_tree.c +25 -15
  446. data/third_party/boringssl/crypto/x509v3/v3_alt.c +21 -11
  447. data/third_party/boringssl/crypto/x509v3/v3_cpols.c +9 -3
  448. data/third_party/boringssl/crypto/x509v3/v3_info.c +22 -14
  449. data/third_party/boringssl/crypto/x509v3/v3_ncons.c +27 -11
  450. data/third_party/boringssl/crypto/x509v3/v3_pci.c +0 -33
  451. data/third_party/boringssl/crypto/x509v3/v3_utl.c +4 -4
  452. data/third_party/boringssl/include/openssl/aead.h +280 -191
  453. data/third_party/boringssl/include/openssl/aes.h +50 -50
  454. data/third_party/boringssl/include/openssl/arm_arch.h +12 -12
  455. data/third_party/boringssl/include/openssl/asn1.h +14 -77
  456. data/third_party/boringssl/include/openssl/asn1t.h +11 -15
  457. data/third_party/boringssl/include/openssl/base.h +78 -51
  458. data/third_party/boringssl/include/openssl/base64.h +68 -68
  459. data/third_party/boringssl/include/openssl/bio.h +472 -406
  460. data/third_party/boringssl/include/openssl/blowfish.h +1 -1
  461. data/third_party/boringssl/include/openssl/bn.h +454 -435
  462. data/third_party/boringssl/include/openssl/buf.h +27 -27
  463. data/third_party/boringssl/include/openssl/bytestring.h +282 -267
  464. data/third_party/boringssl/include/openssl/cast.h +2 -2
  465. data/third_party/boringssl/include/openssl/chacha.h +5 -5
  466. data/third_party/boringssl/include/openssl/cipher.h +209 -200
  467. data/third_party/boringssl/include/openssl/cmac.h +27 -27
  468. data/third_party/boringssl/include/openssl/conf.h +49 -46
  469. data/third_party/boringssl/include/openssl/cpu.h +60 -45
  470. data/third_party/boringssl/include/openssl/crypto.h +59 -35
  471. data/third_party/boringssl/include/openssl/curve25519.h +97 -92
  472. data/third_party/boringssl/include/openssl/des.h +25 -25
  473. data/third_party/boringssl/include/openssl/dh.h +98 -97
  474. data/third_party/boringssl/include/openssl/digest.h +143 -114
  475. data/third_party/boringssl/include/openssl/dsa.h +217 -202
  476. data/third_party/boringssl/include/openssl/ec.h +132 -131
  477. data/third_party/boringssl/include/openssl/ec_key.h +132 -128
  478. data/third_party/boringssl/include/openssl/ecdh.h +9 -9
  479. data/third_party/boringssl/include/openssl/ecdsa.h +66 -66
  480. data/third_party/boringssl/include/openssl/engine.h +38 -38
  481. data/third_party/boringssl/include/openssl/err.h +189 -219
  482. data/third_party/boringssl/include/openssl/evp.h +473 -397
  483. data/third_party/boringssl/include/openssl/ex_data.h +46 -56
  484. data/third_party/boringssl/include/openssl/hkdf.h +17 -17
  485. data/third_party/boringssl/include/openssl/hmac.h +55 -43
  486. data/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  487. data/third_party/boringssl/include/openssl/lhash.h +67 -67
  488. data/third_party/boringssl/include/openssl/lhash_macros.h +4 -4
  489. data/third_party/boringssl/include/openssl/md4.h +14 -14
  490. data/third_party/boringssl/include/openssl/md5.h +14 -14
  491. data/third_party/boringssl/include/openssl/mem.h +39 -33
  492. data/third_party/boringssl/include/openssl/nid.h +43 -0
  493. data/third_party/boringssl/include/openssl/obj.h +93 -87
  494. data/third_party/boringssl/include/openssl/opensslconf.h +8 -1
  495. data/third_party/boringssl/include/openssl/pem.h +2 -122
  496. data/third_party/boringssl/include/openssl/pkcs7.h +68 -2
  497. data/third_party/boringssl/include/openssl/pkcs8.h +81 -66
  498. data/third_party/boringssl/include/openssl/poly1305.h +11 -11
  499. data/third_party/boringssl/include/openssl/pool.h +29 -25
  500. data/third_party/boringssl/include/openssl/rand.h +48 -45
  501. data/third_party/boringssl/include/openssl/rc4.h +9 -9
  502. data/third_party/boringssl/include/openssl/ripemd.h +13 -13
  503. data/third_party/boringssl/include/openssl/rsa.h +371 -340
  504. data/third_party/boringssl/include/openssl/sha.h +71 -71
  505. data/third_party/boringssl/include/openssl/span.h +191 -0
  506. data/third_party/boringssl/include/openssl/ssl.h +2639 -2519
  507. data/third_party/boringssl/include/openssl/ssl3.h +39 -122
  508. data/third_party/boringssl/include/openssl/stack.h +355 -164
  509. data/third_party/boringssl/include/openssl/thread.h +43 -43
  510. data/third_party/boringssl/include/openssl/tls1.h +60 -63
  511. data/third_party/boringssl/include/openssl/type_check.h +10 -14
  512. data/third_party/boringssl/include/openssl/x509.h +41 -116
  513. data/third_party/boringssl/include/openssl/x509_vfy.h +17 -25
  514. data/third_party/boringssl/include/openssl/x509v3.h +27 -21
  515. data/third_party/boringssl/ssl/{bio_ssl.c → bio_ssl.cc} +9 -5
  516. data/third_party/boringssl/ssl/{custom_extensions.c → custom_extensions.cc} +19 -12
  517. data/third_party/boringssl/ssl/{d1_both.c → d1_both.cc} +224 -193
  518. data/third_party/boringssl/ssl/{d1_lib.c → d1_lib.cc} +86 -79
  519. data/third_party/boringssl/ssl/{d1_pkt.c → d1_pkt.cc} +55 -87
  520. data/third_party/boringssl/ssl/{d1_srtp.c → d1_srtp.cc} +12 -16
  521. data/third_party/boringssl/ssl/{dtls_method.c → dtls_method.cc} +33 -50
  522. data/third_party/boringssl/ssl/{dtls_record.c → dtls_record.cc} +76 -64
  523. data/third_party/boringssl/ssl/handshake.cc +547 -0
  524. data/third_party/boringssl/ssl/handshake_client.cc +1828 -0
  525. data/third_party/boringssl/ssl/handshake_server.cc +1672 -0
  526. data/third_party/boringssl/ssl/internal.h +2027 -1280
  527. data/third_party/boringssl/ssl/s3_both.cc +603 -0
  528. data/third_party/boringssl/ssl/{s3_lib.c → s3_lib.cc} +22 -10
  529. data/third_party/boringssl/ssl/{s3_pkt.c → s3_pkt.cc} +171 -75
  530. data/third_party/boringssl/ssl/ssl_aead_ctx.cc +415 -0
  531. data/third_party/boringssl/ssl/{ssl_asn1.c → ssl_asn1.cc} +257 -261
  532. data/third_party/boringssl/ssl/{ssl_buffer.c → ssl_buffer.cc} +81 -97
  533. data/third_party/boringssl/ssl/{ssl_cert.c → ssl_cert.cc} +304 -414
  534. data/third_party/boringssl/ssl/{ssl_cipher.c → ssl_cipher.cc} +427 -505
  535. data/third_party/boringssl/ssl/{ssl_file.c → ssl_file.cc} +24 -16
  536. data/third_party/boringssl/ssl/ssl_key_share.cc +245 -0
  537. data/third_party/boringssl/ssl/{ssl_lib.c → ssl_lib.cc} +665 -828
  538. data/third_party/boringssl/ssl/ssl_privkey.cc +518 -0
  539. data/third_party/boringssl/ssl/{ssl_session.c → ssl_session.cc} +596 -471
  540. data/third_party/boringssl/ssl/{ssl_stat.c → ssl_stat.cc} +5 -224
  541. data/third_party/boringssl/ssl/{ssl_transcript.c → ssl_transcript.cc} +117 -140
  542. data/third_party/boringssl/ssl/ssl_versions.cc +439 -0
  543. data/third_party/boringssl/ssl/{ssl_x509.c → ssl_x509.cc} +751 -267
  544. data/third_party/boringssl/ssl/{t1_enc.c → t1_enc.cc} +120 -161
  545. data/third_party/boringssl/ssl/{t1_lib.c → t1_lib.cc} +859 -966
  546. data/third_party/boringssl/ssl/{tls13_both.c → tls13_both.cc} +202 -284
  547. data/third_party/boringssl/ssl/tls13_client.cc +842 -0
  548. data/third_party/boringssl/ssl/{tls13_enc.c → tls13_enc.cc} +108 -90
  549. data/third_party/boringssl/ssl/tls13_server.cc +967 -0
  550. data/third_party/boringssl/ssl/{tls_method.c → tls_method.cc} +94 -73
  551. data/third_party/boringssl/ssl/tls_record.cc +675 -0
  552. metadata +117 -168
  553. data/include/grpc/support/cmdline.h +0 -88
  554. data/include/grpc/support/subprocess.h +0 -44
  555. data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +0 -29
  556. data/src/core/ext/filters/client_channel/resolver_factory.cc +0 -40
  557. data/src/core/lib/gpr/cmdline.cc +0 -330
  558. data/src/core/lib/gpr/subprocess_posix.cc +0 -99
  559. data/src/core/lib/gpr/subprocess_windows.cc +0 -126
  560. data/src/core/lib/surface/alarm.cc +0 -137
  561. data/src/core/lib/surface/alarm_internal.h +0 -40
  562. data/src/core/tsi/gts_transport_security.cc +0 -40
  563. data/third_party/boringssl/crypto/aes/aes.c +0 -1142
  564. data/third_party/boringssl/crypto/aes/internal.h +0 -87
  565. data/third_party/boringssl/crypto/aes/key_wrap.c +0 -138
  566. data/third_party/boringssl/crypto/aes/mode_wrappers.c +0 -112
  567. data/third_party/boringssl/crypto/asn1/x_long.c +0 -200
  568. data/third_party/boringssl/crypto/bn/add.c +0 -377
  569. data/third_party/boringssl/crypto/bn/asm/x86_64-gcc.c +0 -532
  570. data/third_party/boringssl/crypto/bn/bn.c +0 -365
  571. data/third_party/boringssl/crypto/bn/cmp.c +0 -239
  572. data/third_party/boringssl/crypto/bn/ctx.c +0 -313
  573. data/third_party/boringssl/crypto/bn/div.c +0 -728
  574. data/third_party/boringssl/crypto/bn/exponentiation.c +0 -1240
  575. data/third_party/boringssl/crypto/bn/gcd.c +0 -635
  576. data/third_party/boringssl/crypto/bn/generic.c +0 -707
  577. data/third_party/boringssl/crypto/bn/kronecker.c +0 -176
  578. data/third_party/boringssl/crypto/bn/montgomery.c +0 -409
  579. data/third_party/boringssl/crypto/bn/montgomery_inv.c +0 -207
  580. data/third_party/boringssl/crypto/bn/mul.c +0 -871
  581. data/third_party/boringssl/crypto/bn/prime.c +0 -861
  582. data/third_party/boringssl/crypto/bn/random.c +0 -343
  583. data/third_party/boringssl/crypto/bn/rsaz_exp.c +0 -254
  584. data/third_party/boringssl/crypto/bn/shift.c +0 -307
  585. data/third_party/boringssl/crypto/bn/sqrt.c +0 -506
  586. data/third_party/boringssl/crypto/cipher/aead.c +0 -156
  587. data/third_party/boringssl/crypto/cipher/cipher.c +0 -657
  588. data/third_party/boringssl/crypto/cipher/e_aes.c +0 -1771
  589. data/third_party/boringssl/crypto/cipher/e_chacha20poly1305.c +0 -276
  590. data/third_party/boringssl/crypto/cipher/e_des.c +0 -205
  591. data/third_party/boringssl/crypto/cipher/tls_cbc.c +0 -482
  592. data/third_party/boringssl/crypto/des/des.c +0 -771
  593. data/third_party/boringssl/crypto/digest/digest.c +0 -251
  594. data/third_party/boringssl/crypto/digest/digests.c +0 -358
  595. data/third_party/boringssl/crypto/ec/ec.c +0 -847
  596. data/third_party/boringssl/crypto/ec/ec_key.c +0 -479
  597. data/third_party/boringssl/crypto/ec/ec_montgomery.c +0 -303
  598. data/third_party/boringssl/crypto/ec/oct.c +0 -416
  599. data/third_party/boringssl/crypto/ec/p224-64.c +0 -1143
  600. data/third_party/boringssl/crypto/ec/p256-64.c +0 -1701
  601. data/third_party/boringssl/crypto/ec/p256-x86_64.c +0 -561
  602. data/third_party/boringssl/crypto/ec/simple.c +0 -1118
  603. data/third_party/boringssl/crypto/ec/util-64.c +0 -109
  604. data/third_party/boringssl/crypto/ec/wnaf.c +0 -458
  605. data/third_party/boringssl/crypto/ecdsa/ecdsa.c +0 -479
  606. data/third_party/boringssl/crypto/hmac/hmac.c +0 -215
  607. data/third_party/boringssl/crypto/md4/md4.c +0 -236
  608. data/third_party/boringssl/crypto/md5/md5.c +0 -285
  609. data/third_party/boringssl/crypto/modes/cbc.c +0 -212
  610. data/third_party/boringssl/crypto/modes/cfb.c +0 -230
  611. data/third_party/boringssl/crypto/modes/ctr.c +0 -219
  612. data/third_party/boringssl/crypto/modes/gcm.c +0 -1071
  613. data/third_party/boringssl/crypto/modes/ofb.c +0 -95
  614. data/third_party/boringssl/crypto/modes/polyval.c +0 -94
  615. data/third_party/boringssl/crypto/pkcs8/p8_pkey.c +0 -85
  616. data/third_party/boringssl/crypto/rand/rand.c +0 -244
  617. data/third_party/boringssl/crypto/rand/urandom.c +0 -335
  618. data/third_party/boringssl/crypto/rsa/blinding.c +0 -265
  619. data/third_party/boringssl/crypto/rsa/padding.c +0 -708
  620. data/third_party/boringssl/crypto/rsa/rsa.c +0 -830
  621. data/third_party/boringssl/crypto/rsa/rsa_impl.c +0 -1100
  622. data/third_party/boringssl/crypto/sha/sha1-altivec.c +0 -346
  623. data/third_party/boringssl/crypto/sha/sha1.c +0 -355
  624. data/third_party/boringssl/crypto/sha/sha256.c +0 -329
  625. data/third_party/boringssl/crypto/sha/sha512.c +0 -609
  626. data/third_party/boringssl/crypto/x509/x509type.c +0 -126
  627. data/third_party/boringssl/include/openssl/stack_macros.h +0 -3987
  628. data/third_party/boringssl/ssl/handshake_client.c +0 -1883
  629. data/third_party/boringssl/ssl/handshake_server.c +0 -1950
  630. data/third_party/boringssl/ssl/s3_both.c +0 -895
  631. data/third_party/boringssl/ssl/ssl_aead_ctx.c +0 -335
  632. data/third_party/boringssl/ssl/ssl_ecdh.c +0 -465
  633. data/third_party/boringssl/ssl/ssl_privkey.c +0 -683
  634. data/third_party/boringssl/ssl/ssl_privkey_cc.cc +0 -76
  635. data/third_party/boringssl/ssl/tls13_client.c +0 -712
  636. data/third_party/boringssl/ssl/tls13_server.c +0 -680
  637. data/third_party/boringssl/ssl/tls_record.c +0 -556
@@ -21,7 +21,7 @@
21
21
 
22
22
  #include "src/core/lib/channel/handshaker.h"
23
23
  #include "src/core/lib/iomgr/exec_ctx.h"
24
- #include "src/core/lib/security/transport/security_connector.h"
24
+ #include "src/core/lib/security/security_connector/security_connector.h"
25
25
 
26
26
  /// Creates a security handshaker using \a handshaker.
27
27
  grpc_handshaker* grpc_security_handshaker_create(
@@ -65,8 +65,8 @@ static grpc_metadata_array metadata_batch_to_md_array(
65
65
  grpc_slice value = GRPC_MDVALUE(md);
66
66
  if (result.count == result.capacity) {
67
67
  result.capacity = GPR_MAX(result.capacity + 8, result.capacity * 2);
68
- result.metadata = (grpc_metadata*)gpr_realloc(
69
- result.metadata, result.capacity * sizeof(grpc_metadata));
68
+ result.metadata = static_cast<grpc_metadata*>(gpr_realloc(
69
+ result.metadata, result.capacity * sizeof(grpc_metadata)));
70
70
  }
71
71
  usr_md = &result.metadata[result.count++];
72
72
  usr_md->key = grpc_slice_ref_internal(key);
@@ -77,8 +77,8 @@ static grpc_metadata_array metadata_batch_to_md_array(
77
77
 
78
78
  static grpc_filtered_mdelem remove_consumed_md(void* user_data,
79
79
  grpc_mdelem md) {
80
- grpc_call_element* elem = (grpc_call_element*)user_data;
81
- call_data* calld = (call_data*)elem->call_data;
80
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
81
+ call_data* calld = static_cast<call_data*>(elem->call_data);
82
82
  size_t i;
83
83
  for (i = 0; i < calld->num_consumed_md; i++) {
84
84
  const grpc_metadata* consumed_md = &calld->consumed_md[i];
@@ -95,7 +95,7 @@ static void on_md_processing_done_inner(grpc_call_element* elem,
95
95
  const grpc_metadata* response_md,
96
96
  size_t num_response_md,
97
97
  grpc_error* error) {
98
- call_data* calld = (call_data*)elem->call_data;
98
+ call_data* calld = static_cast<call_data*>(elem->call_data);
99
99
  grpc_transport_stream_op_batch* batch = calld->recv_initial_metadata_batch;
100
100
  /* TODO(jboeuf): Implement support for response_md. */
101
101
  if (response_md != nullptr && num_response_md > 0) {
@@ -118,12 +118,12 @@ static void on_md_processing_done(
118
118
  void* user_data, const grpc_metadata* consumed_md, size_t num_consumed_md,
119
119
  const grpc_metadata* response_md, size_t num_response_md,
120
120
  grpc_status_code status, const char* error_details) {
121
- grpc_call_element* elem = (grpc_call_element*)user_data;
122
- call_data* calld = (call_data*)elem->call_data;
121
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
122
+ call_data* calld = static_cast<call_data*>(elem->call_data);
123
123
  grpc_core::ExecCtx exec_ctx;
124
124
  // If the call was not cancelled while we were in flight, process the result.
125
- if (gpr_atm_full_cas(&calld->state, (gpr_atm)STATE_INIT,
126
- (gpr_atm)STATE_DONE)) {
125
+ if (gpr_atm_full_cas(&calld->state, static_cast<gpr_atm>(STATE_INIT),
126
+ static_cast<gpr_atm>(STATE_DONE))) {
127
127
  grpc_error* error = GRPC_ERROR_NONE;
128
128
  if (status != GRPC_STATUS_OK) {
129
129
  if (error_details == nullptr) {
@@ -146,12 +146,12 @@ static void on_md_processing_done(
146
146
  }
147
147
 
148
148
  static void cancel_call(void* arg, grpc_error* error) {
149
- grpc_call_element* elem = (grpc_call_element*)arg;
150
- call_data* calld = (call_data*)elem->call_data;
149
+ grpc_call_element* elem = static_cast<grpc_call_element*>(arg);
150
+ call_data* calld = static_cast<call_data*>(elem->call_data);
151
151
  // If the result was not already processed, invoke the callback now.
152
152
  if (error != GRPC_ERROR_NONE &&
153
- gpr_atm_full_cas(&calld->state, (gpr_atm)STATE_INIT,
154
- (gpr_atm)STATE_CANCELLED)) {
153
+ gpr_atm_full_cas(&calld->state, static_cast<gpr_atm>(STATE_INIT),
154
+ static_cast<gpr_atm>(STATE_CANCELLED))) {
155
155
  on_md_processing_done_inner(elem, nullptr, 0, nullptr, 0,
156
156
  GRPC_ERROR_REF(error));
157
157
  }
@@ -159,9 +159,9 @@ static void cancel_call(void* arg, grpc_error* error) {
159
159
  }
160
160
 
161
161
  static void recv_initial_metadata_ready(void* arg, grpc_error* error) {
162
- grpc_call_element* elem = (grpc_call_element*)arg;
163
- channel_data* chand = (channel_data*)elem->channel_data;
164
- call_data* calld = (call_data*)elem->call_data;
162
+ grpc_call_element* elem = static_cast<grpc_call_element*>(arg);
163
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
164
+ call_data* calld = static_cast<call_data*>(elem->call_data);
165
165
  grpc_transport_stream_op_batch* batch = calld->recv_initial_metadata_batch;
166
166
  if (error == GRPC_ERROR_NONE) {
167
167
  if (chand->creds != nullptr && chand->creds->processor.process != nullptr) {
@@ -187,7 +187,7 @@ static void recv_initial_metadata_ready(void* arg, grpc_error* error) {
187
187
 
188
188
  static void auth_start_transport_stream_op_batch(
189
189
  grpc_call_element* elem, grpc_transport_stream_op_batch* batch) {
190
- call_data* calld = (call_data*)elem->call_data;
190
+ call_data* calld = static_cast<call_data*>(elem->call_data);
191
191
  if (batch->recv_initial_metadata) {
192
192
  // Inject our callback.
193
193
  calld->recv_initial_metadata_batch = batch;
@@ -202,8 +202,8 @@ static void auth_start_transport_stream_op_batch(
202
202
  /* Constructor for call_data */
203
203
  static grpc_error* init_call_elem(grpc_call_element* elem,
204
204
  const grpc_call_element_args* args) {
205
- call_data* calld = (call_data*)elem->call_data;
206
- channel_data* chand = (channel_data*)elem->channel_data;
205
+ call_data* calld = static_cast<call_data*>(elem->call_data);
206
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
207
207
  calld->call_combiner = args->call_combiner;
208
208
  calld->owning_call = args->call_stack;
209
209
  GRPC_CLOSURE_INIT(&calld->recv_initial_metadata_ready,
@@ -234,7 +234,7 @@ static void destroy_call_elem(grpc_call_element* elem,
234
234
  static grpc_error* init_channel_elem(grpc_channel_element* elem,
235
235
  grpc_channel_element_args* args) {
236
236
  GPR_ASSERT(!args->is_last);
237
- channel_data* chand = (channel_data*)elem->channel_data;
237
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
238
238
  grpc_auth_context* auth_context =
239
239
  grpc_find_auth_context_in_args(args->channel_args);
240
240
  GPR_ASSERT(auth_context != nullptr);
@@ -248,7 +248,7 @@ static grpc_error* init_channel_elem(grpc_channel_element* elem,
248
248
 
249
249
  /* Destructor for channel data */
250
250
  static void destroy_channel_elem(grpc_channel_element* elem) {
251
- channel_data* chand = (channel_data*)elem->channel_data;
251
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
252
252
  GRPC_AUTH_CONTEXT_UNREF(chand->auth_context, "server_auth_filter");
253
253
  grpc_server_credentials_unref(chand->creds);
254
254
  }
@@ -23,8 +23,8 @@
23
23
 
24
24
  #include <grpc/support/alloc.h>
25
25
  #include <grpc/support/log.h>
26
- #include <grpc/support/useful.h>
27
26
 
27
+ #include "src/core/lib/gpr/useful.h"
28
28
  #include "src/core/lib/slice/slice_internal.h"
29
29
 
30
30
  /* --- Constants. --- */
@@ -58,7 +58,7 @@ char* grpc_base64_encode(const void* vdata, size_t data_size, int url_safe,
58
58
  int multiline) {
59
59
  size_t result_projected_size =
60
60
  grpc_base64_estimate_encoded_size(data_size, url_safe, multiline);
61
- char* result = (char*)gpr_malloc(result_projected_size);
61
+ char* result = static_cast<char*>(gpr_malloc(result_projected_size));
62
62
  grpc_base64_encode_core(result, vdata, data_size, url_safe, multiline);
63
63
  return result;
64
64
  }
@@ -75,7 +75,7 @@ size_t grpc_base64_estimate_encoded_size(size_t data_size, int url_safe,
75
75
 
76
76
  void grpc_base64_encode_core(char* result, const void* vdata, size_t data_size,
77
77
  int url_safe, int multiline) {
78
- const unsigned char* data = (const unsigned char*)vdata;
78
+ const unsigned char* data = static_cast<const unsigned char*>(vdata);
79
79
  const char* base64_chars =
80
80
  url_safe ? base64_url_safe_chars : base64_url_unsafe_chars;
81
81
  const size_t result_projected_size =
@@ -128,16 +128,18 @@ grpc_slice grpc_base64_decode(const char* b64, int url_safe) {
128
128
 
129
129
  static void decode_one_char(const unsigned char* codes, unsigned char* result,
130
130
  size_t* result_offset) {
131
- uint32_t packed = ((uint32_t)codes[0] << 2) | ((uint32_t)codes[1] >> 4);
132
- result[(*result_offset)++] = (unsigned char)packed;
131
+ uint32_t packed = (static_cast<uint32_t>(codes[0]) << 2) |
132
+ (static_cast<uint32_t>(codes[1]) >> 4);
133
+ result[(*result_offset)++] = static_cast<unsigned char>(packed);
133
134
  }
134
135
 
135
136
  static void decode_two_chars(const unsigned char* codes, unsigned char* result,
136
137
  size_t* result_offset) {
137
- uint32_t packed = ((uint32_t)codes[0] << 10) | ((uint32_t)codes[1] << 4) |
138
- ((uint32_t)codes[2] >> 2);
139
- result[(*result_offset)++] = (unsigned char)(packed >> 8);
140
- result[(*result_offset)++] = (unsigned char)(packed);
138
+ uint32_t packed = (static_cast<uint32_t>(codes[0]) << 10) |
139
+ (static_cast<uint32_t>(codes[1]) << 4) |
140
+ (static_cast<uint32_t>(codes[2]) >> 2);
141
+ result[(*result_offset)++] = static_cast<unsigned char>(packed >> 8);
142
+ result[(*result_offset)++] = static_cast<unsigned char>(packed);
141
143
  }
142
144
 
143
145
  static int decode_group(const unsigned char* codes, size_t num_codes,
@@ -175,11 +177,12 @@ static int decode_group(const unsigned char* codes, size_t num_codes,
175
177
  decode_two_chars(codes, result, result_offset);
176
178
  } else {
177
179
  /* No padding. */
178
- uint32_t packed = ((uint32_t)codes[0] << 18) | ((uint32_t)codes[1] << 12) |
179
- ((uint32_t)codes[2] << 6) | codes[3];
180
- result[(*result_offset)++] = (unsigned char)(packed >> 16);
181
- result[(*result_offset)++] = (unsigned char)(packed >> 8);
182
- result[(*result_offset)++] = (unsigned char)(packed);
180
+ uint32_t packed = (static_cast<uint32_t>(codes[0]) << 18) |
181
+ (static_cast<uint32_t>(codes[1]) << 12) |
182
+ (static_cast<uint32_t>(codes[2]) << 6) | codes[3];
183
+ result[(*result_offset)++] = static_cast<unsigned char>(packed >> 16);
184
+ result[(*result_offset)++] = static_cast<unsigned char>(packed >> 8);
185
+ result[(*result_offset)++] = static_cast<unsigned char>(packed);
183
186
  }
184
187
  return 1;
185
188
  }
@@ -193,7 +196,7 @@ grpc_slice grpc_base64_decode_with_len(const char* b64, size_t b64_len,
193
196
  size_t num_codes = 0;
194
197
 
195
198
  while (b64_len--) {
196
- unsigned char c = (unsigned char)(*b64++);
199
+ unsigned char c = static_cast<unsigned char>(*b64++);
197
200
  signed char code;
198
201
  if (c >= GPR_ARRAY_SIZE(base64_bytes)) continue;
199
202
  if (url_safe) {
@@ -214,7 +217,7 @@ grpc_slice grpc_base64_decode_with_len(const char* b64, size_t b64_len,
214
217
  goto fail;
215
218
  }
216
219
  } else {
217
- codes[num_codes++] = (unsigned char)code;
220
+ codes[num_codes++] = static_cast<unsigned char>(code);
218
221
  if (num_codes == 4) {
219
222
  if (!decode_group(codes, num_codes, current, &result_size)) goto fail;
220
223
  num_codes = 0;
@@ -78,9 +78,9 @@ static bool valid_hex(const uint8_t* p, const uint8_t* end) {
78
78
  }
79
79
 
80
80
  static uint8_t dehex(uint8_t c) {
81
- if (c >= '0' && c <= '9') return (uint8_t)(c - '0');
82
- if (c >= 'A' && c <= 'F') return (uint8_t)(c - 'A' + 10);
83
- if (c >= 'a' && c <= 'f') return (uint8_t)(c - 'a' + 10);
81
+ if (c >= '0' && c <= '9') return static_cast<uint8_t>(c - '0');
82
+ if (c >= 'A' && c <= 'F') return static_cast<uint8_t>(c - 'A' + 10);
83
+ if (c >= 'a' && c <= 'f') return static_cast<uint8_t>(c - 'a' + 10);
84
84
  GPR_UNREACHABLE_CODE(return 255);
85
85
  }
86
86
 
@@ -114,7 +114,7 @@ bool grpc_strict_percent_decode_slice(grpc_slice slice_in,
114
114
  uint8_t* q = GRPC_SLICE_START_PTR(*slice_out);
115
115
  while (p != in_end) {
116
116
  if (*p == '%') {
117
- *q++ = (uint8_t)(dehex(p[1]) << 4) | (dehex(p[2]));
117
+ *q++ = static_cast<uint8_t>(dehex(p[1]) << 4) | (dehex(p[2]));
118
118
  p += 3;
119
119
  } else {
120
120
  *q++ = *p++;
@@ -155,7 +155,7 @@ grpc_slice grpc_permissive_percent_decode_slice(grpc_slice slice_in) {
155
155
  if (!valid_hex(p + 1, in_end) || !valid_hex(p + 2, in_end)) {
156
156
  *q++ = *p++;
157
157
  } else {
158
- *q++ = (uint8_t)(dehex(p[1]) << 4) | (dehex(p[2]));
158
+ *q++ = static_cast<uint8_t>(dehex(p[1]) << 4) | (dehex(p[2]));
159
159
  p += 3;
160
160
  }
161
161
  } else {
@@ -27,7 +27,7 @@
27
27
  #include "src/core/lib/iomgr/exec_ctx.h"
28
28
 
29
29
  char* grpc_slice_to_c_string(grpc_slice slice) {
30
- char* out = (char*)gpr_malloc(GRPC_SLICE_LENGTH(slice) + 1);
30
+ char* out = static_cast<char*>(gpr_malloc(GRPC_SLICE_LENGTH(slice) + 1));
31
31
  memcpy(out, GRPC_SLICE_START_PTR(slice), GRPC_SLICE_LENGTH(slice));
32
32
  out[GRPC_SLICE_LENGTH(slice)] = 0;
33
33
  return out;
@@ -104,12 +104,12 @@ typedef struct new_slice_refcount {
104
104
  } new_slice_refcount;
105
105
 
106
106
  static void new_slice_ref(void* p) {
107
- new_slice_refcount* r = (new_slice_refcount*)p;
107
+ new_slice_refcount* r = static_cast<new_slice_refcount*>(p);
108
108
  gpr_ref(&r->refs);
109
109
  }
110
110
 
111
111
  static void new_slice_unref(void* p) {
112
- new_slice_refcount* r = (new_slice_refcount*)p;
112
+ new_slice_refcount* r = static_cast<new_slice_refcount*>(p);
113
113
  if (gpr_unref(&r->refs)) {
114
114
  r->user_destroy(r->user_data);
115
115
  gpr_free(r);
@@ -125,7 +125,7 @@ grpc_slice grpc_slice_new_with_user_data(void* p, size_t len,
125
125
  void* user_data) {
126
126
  grpc_slice slice;
127
127
  new_slice_refcount* rc =
128
- (new_slice_refcount*)gpr_malloc(sizeof(new_slice_refcount));
128
+ static_cast<new_slice_refcount*>(gpr_malloc(sizeof(new_slice_refcount)));
129
129
  gpr_ref_init(&rc->refs, 1);
130
130
  rc->rc.vtable = &new_slice_vtable;
131
131
  rc->rc.sub_refcount = &rc->rc;
@@ -133,7 +133,7 @@ grpc_slice grpc_slice_new_with_user_data(void* p, size_t len,
133
133
  rc->user_data = user_data;
134
134
 
135
135
  slice.refcount = &rc->rc;
136
- slice.data.refcounted.bytes = (uint8_t*)p;
136
+ slice.data.refcounted.bytes = static_cast<uint8_t*>(p);
137
137
  slice.data.refcounted.length = len;
138
138
  return slice;
139
139
  }
@@ -154,12 +154,12 @@ typedef struct new_with_len_slice_refcount {
154
154
  } new_with_len_slice_refcount;
155
155
 
156
156
  static void new_with_len_ref(void* p) {
157
- new_with_len_slice_refcount* r = (new_with_len_slice_refcount*)p;
157
+ new_with_len_slice_refcount* r = static_cast<new_with_len_slice_refcount*>(p);
158
158
  gpr_ref(&r->refs);
159
159
  }
160
160
 
161
161
  static void new_with_len_unref(void* p) {
162
- new_with_len_slice_refcount* r = (new_with_len_slice_refcount*)p;
162
+ new_with_len_slice_refcount* r = static_cast<new_with_len_slice_refcount*>(p);
163
163
  if (gpr_unref(&r->refs)) {
164
164
  r->user_destroy(r->user_data, r->user_length);
165
165
  gpr_free(r);
@@ -173,8 +173,8 @@ static const grpc_slice_refcount_vtable new_with_len_vtable = {
173
173
  grpc_slice grpc_slice_new_with_len(void* p, size_t len,
174
174
  void (*destroy)(void*, size_t)) {
175
175
  grpc_slice slice;
176
- new_with_len_slice_refcount* rc = (new_with_len_slice_refcount*)gpr_malloc(
177
- sizeof(new_with_len_slice_refcount));
176
+ new_with_len_slice_refcount* rc = static_cast<new_with_len_slice_refcount*>(
177
+ gpr_malloc(sizeof(new_with_len_slice_refcount)));
178
178
  gpr_ref_init(&rc->refs, 1);
179
179
  rc->rc.vtable = &new_with_len_vtable;
180
180
  rc->rc.sub_refcount = &rc->rc;
@@ -183,7 +183,7 @@ grpc_slice grpc_slice_new_with_len(void* p, size_t len,
183
183
  rc->user_length = len;
184
184
 
185
185
  slice.refcount = &rc->rc;
186
- slice.data.refcounted.bytes = (uint8_t*)p;
186
+ slice.data.refcounted.bytes = static_cast<uint8_t*>(p);
187
187
  slice.data.refcounted.length = len;
188
188
  return slice;
189
189
  }
@@ -205,12 +205,12 @@ typedef struct {
205
205
  } malloc_refcount;
206
206
 
207
207
  static void malloc_ref(void* p) {
208
- malloc_refcount* r = (malloc_refcount*)p;
208
+ malloc_refcount* r = static_cast<malloc_refcount*>(p);
209
209
  gpr_ref(&r->refs);
210
210
  }
211
211
 
212
212
  static void malloc_unref(void* p) {
213
- malloc_refcount* r = (malloc_refcount*)p;
213
+ malloc_refcount* r = static_cast<malloc_refcount*>(p);
214
214
  if (gpr_unref(&r->refs)) {
215
215
  gpr_free(r);
216
216
  }
@@ -232,8 +232,8 @@ grpc_slice grpc_slice_malloc_large(size_t length) {
232
232
  refcount is a malloc_refcount
233
233
  bytes is an array of bytes of the requested length
234
234
  Both parts are placed in the same allocation returned from gpr_malloc */
235
- malloc_refcount* rc =
236
- (malloc_refcount*)gpr_malloc(sizeof(malloc_refcount) + length);
235
+ malloc_refcount* rc = static_cast<malloc_refcount*>(
236
+ gpr_malloc(sizeof(malloc_refcount) + length));
237
237
 
238
238
  /* Initial refcount on rc is 1 - and it's up to the caller to release
239
239
  this reference. */
@@ -246,7 +246,7 @@ grpc_slice grpc_slice_malloc_large(size_t length) {
246
246
  /* The slices refcount points back to the allocated block. */
247
247
  slice.refcount = &rc->base;
248
248
  /* The data bytes are placed immediately after the refcount struct */
249
- slice.data.refcounted.bytes = (uint8_t*)(rc + 1);
249
+ slice.data.refcounted.bytes = reinterpret_cast<uint8_t*>(rc + 1);
250
250
  /* And the length of the block is set to the requested length */
251
251
  slice.data.refcounted.length = length;
252
252
  return slice;
@@ -260,7 +260,7 @@ grpc_slice grpc_slice_malloc(size_t length) {
260
260
  } else {
261
261
  /* small slice: just inline the data */
262
262
  slice.refcount = nullptr;
263
- slice.data.inlined.length = (uint8_t)length;
263
+ slice.data.inlined.length = static_cast<uint8_t>(length);
264
264
  }
265
265
  return slice;
266
266
  }
@@ -283,7 +283,7 @@ grpc_slice grpc_slice_sub_no_ref(grpc_slice source, size_t begin, size_t end) {
283
283
  /* Enforce preconditions */
284
284
  GPR_ASSERT(source.data.inlined.length >= end);
285
285
  subset.refcount = nullptr;
286
- subset.data.inlined.length = (uint8_t)(end - begin);
286
+ subset.data.inlined.length = static_cast<uint8_t>(end - begin);
287
287
  memcpy(subset.data.inlined.bytes, source.data.inlined.bytes + begin,
288
288
  end - begin);
289
289
  }
@@ -295,7 +295,7 @@ grpc_slice grpc_slice_sub(grpc_slice source, size_t begin, size_t end) {
295
295
 
296
296
  if (end - begin <= sizeof(subset.data.inlined.bytes)) {
297
297
  subset.refcount = nullptr;
298
- subset.data.inlined.length = (uint8_t)(end - begin);
298
+ subset.data.inlined.length = static_cast<uint8_t>(end - begin);
299
299
  memcpy(subset.data.inlined.bytes, GRPC_SLICE_START_PTR(source) + begin,
300
300
  end - begin);
301
301
  } else {
@@ -314,10 +314,11 @@ grpc_slice grpc_slice_split_tail_maybe_ref(grpc_slice* source, size_t split,
314
314
  /* inlined data, copy it out */
315
315
  GPR_ASSERT(source->data.inlined.length >= split);
316
316
  tail.refcount = nullptr;
317
- tail.data.inlined.length = (uint8_t)(source->data.inlined.length - split);
317
+ tail.data.inlined.length =
318
+ static_cast<uint8_t>(source->data.inlined.length - split);
318
319
  memcpy(tail.data.inlined.bytes, source->data.inlined.bytes + split,
319
320
  tail.data.inlined.length);
320
- source->data.inlined.length = (uint8_t)split;
321
+ source->data.inlined.length = static_cast<uint8_t>(split);
321
322
  } else {
322
323
  size_t tail_length = source->data.refcounted.length - split;
323
324
  GPR_ASSERT(source->data.refcounted.length >= split);
@@ -325,7 +326,7 @@ grpc_slice grpc_slice_split_tail_maybe_ref(grpc_slice* source, size_t split,
325
326
  ref_whom != GRPC_SLICE_REF_TAIL) {
326
327
  /* Copy out the bytes - it'll be cheaper than refcounting */
327
328
  tail.refcount = nullptr;
328
- tail.data.inlined.length = (uint8_t)tail_length;
329
+ tail.data.inlined.length = static_cast<uint8_t>(tail_length);
329
330
  memcpy(tail.data.inlined.bytes, source->data.refcounted.bytes + split,
330
331
  tail_length);
331
332
  source->refcount = source->refcount->sub_refcount;
@@ -368,17 +369,17 @@ grpc_slice grpc_slice_split_head(grpc_slice* source, size_t split) {
368
369
  GPR_ASSERT(source->data.inlined.length >= split);
369
370
 
370
371
  head.refcount = nullptr;
371
- head.data.inlined.length = (uint8_t)split;
372
+ head.data.inlined.length = static_cast<uint8_t>(split);
372
373
  memcpy(head.data.inlined.bytes, source->data.inlined.bytes, split);
373
374
  source->data.inlined.length =
374
- (uint8_t)(source->data.inlined.length - split);
375
+ static_cast<uint8_t>(source->data.inlined.length - split);
375
376
  memmove(source->data.inlined.bytes, source->data.inlined.bytes + split,
376
377
  source->data.inlined.length);
377
378
  } else if (split < sizeof(head.data.inlined.bytes)) {
378
379
  GPR_ASSERT(source->data.refcounted.length >= split);
379
380
 
380
381
  head.refcount = nullptr;
381
- head.data.inlined.length = (uint8_t)split;
382
+ head.data.inlined.length = static_cast<uint8_t>(split);
382
383
  memcpy(head.data.inlined.bytes, source->data.refcounted.bytes, split);
383
384
  source->refcount = source->refcount->sub_refcount;
384
385
  source->data.refcounted.bytes += split;
@@ -416,7 +417,7 @@ int grpc_slice_eq(grpc_slice a, grpc_slice b) {
416
417
  }
417
418
 
418
419
  int grpc_slice_cmp(grpc_slice a, grpc_slice b) {
419
- int d = (int)(GRPC_SLICE_LENGTH(a) - GRPC_SLICE_LENGTH(b));
420
+ int d = static_cast<int>(GRPC_SLICE_LENGTH(a) - GRPC_SLICE_LENGTH(b));
420
421
  if (d != 0) return d;
421
422
  return memcmp(GRPC_SLICE_START_PTR(a), GRPC_SLICE_START_PTR(b),
422
423
  GRPC_SLICE_LENGTH(a));
@@ -424,7 +425,7 @@ int grpc_slice_cmp(grpc_slice a, grpc_slice b) {
424
425
 
425
426
  int grpc_slice_str_cmp(grpc_slice a, const char* b) {
426
427
  size_t b_length = strlen(b);
427
- int d = (int)(GRPC_SLICE_LENGTH(a) - b_length);
428
+ int d = static_cast<int>(GRPC_SLICE_LENGTH(a) - b_length);
428
429
  if (d != 0) return d;
429
430
  return memcmp(GRPC_SLICE_START_PTR(a), b, b_length);
430
431
  }
@@ -443,17 +444,17 @@ int grpc_slice_buf_start_eq(grpc_slice a, const void* b, size_t len) {
443
444
  }
444
445
 
445
446
  int grpc_slice_rchr(grpc_slice s, char c) {
446
- const char* b = (const char*)GRPC_SLICE_START_PTR(s);
447
+ const char* b = reinterpret_cast<const char*> GRPC_SLICE_START_PTR(s);
447
448
  int i;
448
- for (i = (int)GRPC_SLICE_LENGTH(s) - 1; i != -1 && b[i] != c; i--)
449
+ for (i = static_cast<int> GRPC_SLICE_LENGTH(s) - 1; i != -1 && b[i] != c; i--)
449
450
  ;
450
451
  return i;
451
452
  }
452
453
 
453
454
  int grpc_slice_chr(grpc_slice s, char c) {
454
- const char* b = (const char*)GRPC_SLICE_START_PTR(s);
455
- const char* p = (const char*)memchr(b, c, GRPC_SLICE_LENGTH(s));
456
- return p == nullptr ? -1 : (int)(p - b);
455
+ const char* b = reinterpret_cast<const char*> GRPC_SLICE_START_PTR(s);
456
+ const char* p = static_cast<const char*>(memchr(b, c, GRPC_SLICE_LENGTH(s)));
457
+ return p == nullptr ? -1 : static_cast<int>(p - b);
457
458
  }
458
459
 
459
460
  int grpc_slice_slice(grpc_slice haystack, grpc_slice needle) {
@@ -466,12 +467,13 @@ int grpc_slice_slice(grpc_slice haystack, grpc_slice needle) {
466
467
  if (haystack_len < needle_len) return -1;
467
468
  if (haystack_len == needle_len)
468
469
  return grpc_slice_eq(haystack, needle) ? 0 : -1;
469
- if (needle_len == 1) return grpc_slice_chr(haystack, (char)*needle_bytes);
470
+ if (needle_len == 1)
471
+ return grpc_slice_chr(haystack, static_cast<char>(*needle_bytes));
470
472
 
471
473
  const uint8_t* last = haystack_bytes + haystack_len - needle_len;
472
474
  for (const uint8_t* cur = haystack_bytes; cur != last; ++cur) {
473
475
  if (0 == memcmp(cur, needle_bytes, needle_len)) {
474
- return (int)(cur - haystack_bytes);
476
+ return static_cast<int>(cur - haystack_bytes);
475
477
  }
476
478
  }
477
479
  return -1;