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
@@ -52,7 +52,6 @@ struct call_data {
52
52
  grpc_closure* recv_message_ready;
53
53
  grpc_closure* on_complete;
54
54
  grpc_byte_stream** pp_recv_message;
55
- grpc_slice_buffer read_slice_buffer;
56
55
  grpc_slice_buffer_stream read_stream;
57
56
 
58
57
  /** Receive closures are chained: we inject this closure as the on_done_recv
@@ -95,7 +94,7 @@ static void add_error(const char* error_name, grpc_error** cumulative,
95
94
 
96
95
  static grpc_error* server_filter_incoming_metadata(grpc_call_element* elem,
97
96
  grpc_metadata_batch* b) {
98
- call_data* calld = (call_data*)elem->call_data;
97
+ call_data* calld = static_cast<call_data*>(elem->call_data);
99
98
  grpc_error* error = GRPC_ERROR_NONE;
100
99
  static const char* error_name = "Failed processing incoming headers";
101
100
 
@@ -204,7 +203,7 @@ static grpc_error* server_filter_incoming_metadata(grpc_call_element* elem,
204
203
  * query parameter which is base64 encoded request payload. */
205
204
  const char k_query_separator = '?';
206
205
  grpc_slice path_slice = GRPC_MDVALUE(b->idx.named.path->md);
207
- uint8_t* path_ptr = (uint8_t*)GRPC_SLICE_START_PTR(path_slice);
206
+ uint8_t* path_ptr = GRPC_SLICE_START_PTR(path_slice);
208
207
  size_t path_length = GRPC_SLICE_LENGTH(path_slice);
209
208
  /* offset of the character '?' */
210
209
  size_t offset = 0;
@@ -224,12 +223,15 @@ static grpc_error* server_filter_incoming_metadata(grpc_call_element* elem,
224
223
 
225
224
  /* decode payload from query and add to the slice buffer to be returned */
226
225
  const int k_url_safe = 1;
227
- grpc_slice_buffer_add(&calld->read_slice_buffer,
228
- grpc_base64_decode_with_len(
229
- (const char*)GRPC_SLICE_START_PTR(query_slice),
230
- GRPC_SLICE_LENGTH(query_slice), k_url_safe));
231
- grpc_slice_buffer_stream_init(&calld->read_stream,
232
- &calld->read_slice_buffer, 0);
226
+ grpc_slice_buffer read_slice_buffer;
227
+ grpc_slice_buffer_init(&read_slice_buffer);
228
+ grpc_slice_buffer_add(
229
+ &read_slice_buffer,
230
+ grpc_base64_decode_with_len(
231
+ reinterpret_cast<const char*> GRPC_SLICE_START_PTR(query_slice),
232
+ GRPC_SLICE_LENGTH(query_slice), k_url_safe));
233
+ grpc_slice_buffer_stream_init(&calld->read_stream, &read_slice_buffer, 0);
234
+ grpc_slice_buffer_destroy_internal(&read_slice_buffer);
233
235
  calld->seen_path_with_query = true;
234
236
  grpc_slice_unref_internal(query_slice);
235
237
  } else {
@@ -262,8 +264,8 @@ static grpc_error* server_filter_incoming_metadata(grpc_call_element* elem,
262
264
  }
263
265
 
264
266
  static void hs_on_recv(void* user_data, grpc_error* err) {
265
- grpc_call_element* elem = (grpc_call_element*)user_data;
266
- call_data* calld = (call_data*)elem->call_data;
267
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
268
+ call_data* calld = static_cast<call_data*>(elem->call_data);
267
269
  if (err == GRPC_ERROR_NONE) {
268
270
  err = server_filter_incoming_metadata(elem, calld->recv_initial_metadata);
269
271
  } else {
@@ -273,13 +275,14 @@ static void hs_on_recv(void* user_data, grpc_error* err) {
273
275
  }
274
276
 
275
277
  static void hs_on_complete(void* user_data, grpc_error* err) {
276
- grpc_call_element* elem = (grpc_call_element*)user_data;
277
- call_data* calld = (call_data*)elem->call_data;
278
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
279
+ call_data* calld = static_cast<call_data*>(elem->call_data);
278
280
  /* Call recv_message_ready if we got the payload via the path field */
279
281
  if (calld->seen_path_with_query && calld->recv_message_ready != nullptr) {
280
- *calld->pp_recv_message = calld->payload_bin_delivered
281
- ? nullptr
282
- : (grpc_byte_stream*)&calld->read_stream;
282
+ *calld->pp_recv_message =
283
+ calld->payload_bin_delivered
284
+ ? nullptr
285
+ : reinterpret_cast<grpc_byte_stream*>(&calld->read_stream);
283
286
  // Re-enter call combiner for recv_message_ready, since the surface
284
287
  // code will release the call combiner for each callback it receives.
285
288
  GRPC_CALL_COMBINER_START(calld->call_combiner, calld->recv_message_ready,
@@ -292,8 +295,8 @@ static void hs_on_complete(void* user_data, grpc_error* err) {
292
295
  }
293
296
 
294
297
  static void hs_recv_message_ready(void* user_data, grpc_error* err) {
295
- grpc_call_element* elem = (grpc_call_element*)user_data;
296
- call_data* calld = (call_data*)elem->call_data;
298
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
299
+ call_data* calld = static_cast<call_data*>(elem->call_data);
297
300
  if (calld->seen_path_with_query) {
298
301
  // Do nothing. This is probably a GET request, and payload will be
299
302
  // returned in hs_on_complete callback.
@@ -309,7 +312,7 @@ static void hs_recv_message_ready(void* user_data, grpc_error* err) {
309
312
  static grpc_error* hs_mutate_op(grpc_call_element* elem,
310
313
  grpc_transport_stream_op_batch* op) {
311
314
  /* grab pointers to our data from the call element */
312
- call_data* calld = (call_data*)elem->call_data;
315
+ call_data* calld = static_cast<call_data*>(elem->call_data);
313
316
 
314
317
  if (op->send_initial_metadata) {
315
318
  grpc_error* error = GRPC_ERROR_NONE;
@@ -367,8 +370,8 @@ static grpc_error* hs_mutate_op(grpc_call_element* elem,
367
370
 
368
371
  static void hs_start_transport_stream_op_batch(
369
372
  grpc_call_element* elem, grpc_transport_stream_op_batch* op) {
370
- call_data* calld = (call_data*)elem->call_data;
371
- GPR_TIMER_BEGIN("hs_start_transport_stream_op_batch", 0);
373
+ GPR_TIMER_SCOPE("hs_start_transport_stream_op_batch", 0);
374
+ call_data* calld = static_cast<call_data*>(elem->call_data);
372
375
  grpc_error* error = hs_mutate_op(elem, op);
373
376
  if (error != GRPC_ERROR_NONE) {
374
377
  grpc_transport_stream_op_batch_finish_with_failure(op, error,
@@ -376,14 +379,13 @@ static void hs_start_transport_stream_op_batch(
376
379
  } else {
377
380
  grpc_call_next_op(elem, op);
378
381
  }
379
- GPR_TIMER_END("hs_start_transport_stream_op_batch", 0);
380
382
  }
381
383
 
382
384
  /* Constructor for call_data */
383
385
  static grpc_error* init_call_elem(grpc_call_element* elem,
384
386
  const grpc_call_element_args* args) {
385
387
  /* grab pointers to our data from the call element */
386
- call_data* calld = (call_data*)elem->call_data;
388
+ call_data* calld = static_cast<call_data*>(elem->call_data);
387
389
  /* initialize members */
388
390
  calld->call_combiner = args->call_combiner;
389
391
  GRPC_CLOSURE_INIT(&calld->hs_on_recv, hs_on_recv, elem,
@@ -392,7 +394,6 @@ static grpc_error* init_call_elem(grpc_call_element* elem,
392
394
  grpc_schedule_on_exec_ctx);
393
395
  GRPC_CLOSURE_INIT(&calld->hs_recv_message_ready, hs_recv_message_ready, elem,
394
396
  grpc_schedule_on_exec_ctx);
395
- grpc_slice_buffer_init(&calld->read_slice_buffer);
396
397
  return GRPC_ERROR_NONE;
397
398
  }
398
399
 
@@ -400,8 +401,10 @@ static grpc_error* init_call_elem(grpc_call_element* elem,
400
401
  static void destroy_call_elem(grpc_call_element* elem,
401
402
  const grpc_call_final_info* final_info,
402
403
  grpc_closure* ignored) {
403
- call_data* calld = (call_data*)elem->call_data;
404
- grpc_slice_buffer_destroy_internal(&calld->read_slice_buffer);
404
+ call_data* calld = static_cast<call_data*>(elem->call_data);
405
+ if (calld->seen_path_with_query && !calld->payload_bin_delivered) {
406
+ grpc_byte_stream_destroy(&calld->read_stream.base);
407
+ }
405
408
  }
406
409
 
407
410
  /* Constructor for channel_data */
@@ -57,8 +57,8 @@ struct channel_data {
57
57
  } // namespace
58
58
 
59
59
  static void on_initial_md_ready(void* user_data, grpc_error* err) {
60
- grpc_call_element* elem = (grpc_call_element*)user_data;
61
- call_data* calld = (call_data*)elem->call_data;
60
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
61
+ call_data* calld = static_cast<call_data*>(elem->call_data);
62
62
 
63
63
  if (err == GRPC_ERROR_NONE) {
64
64
  if (calld->recv_initial_metadata->idx.named.path != nullptr) {
@@ -88,7 +88,7 @@ static void on_initial_md_ready(void* user_data, grpc_error* err) {
88
88
  /* Constructor for call_data */
89
89
  static grpc_error* init_call_elem(grpc_call_element* elem,
90
90
  const grpc_call_element_args* args) {
91
- call_data* calld = (call_data*)elem->call_data;
91
+ call_data* calld = static_cast<call_data*>(elem->call_data);
92
92
  calld->id = (intptr_t)args->call_stack;
93
93
  GRPC_CLOSURE_INIT(&calld->on_initial_md_ready, on_initial_md_ready, elem,
94
94
  grpc_schedule_on_exec_ctx);
@@ -111,7 +111,7 @@ static grpc_error* init_call_elem(grpc_call_element* elem,
111
111
  static void destroy_call_elem(grpc_call_element* elem,
112
112
  const grpc_call_final_info* final_info,
113
113
  grpc_closure* ignored) {
114
- call_data* calld = (call_data*)elem->call_data;
114
+ call_data* calld = static_cast<call_data*>(elem->call_data);
115
115
 
116
116
  /* TODO(dgq): do something with the data
117
117
  channel_data *chand = elem->channel_data;
@@ -140,7 +140,7 @@ static grpc_error* init_channel_elem(grpc_channel_element* elem,
140
140
  grpc_channel_element_args* args) {
141
141
  GPR_ASSERT(!args->is_last);
142
142
 
143
- channel_data* chand = (channel_data*)elem->channel_data;
143
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
144
144
  chand->id = (intptr_t)args->channel_stack;
145
145
 
146
146
  /* TODO(dgq): do something with the data
@@ -173,8 +173,8 @@ static void destroy_channel_elem(grpc_channel_element* elem) {
173
173
 
174
174
  static grpc_filtered_mdelem lr_trailing_md_filter(void* user_data,
175
175
  grpc_mdelem md) {
176
- grpc_call_element* elem = (grpc_call_element*)user_data;
177
- call_data* calld = (call_data*)elem->call_data;
176
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
177
+ call_data* calld = static_cast<call_data*>(elem->call_data);
178
178
  if (grpc_slice_eq(GRPC_MDKEY(md), GRPC_MDSTR_LB_COST_BIN)) {
179
179
  calld->trailing_md_string = GRPC_MDVALUE(md);
180
180
  return GRPC_FILTERED_REMOVE();
@@ -184,8 +184,8 @@ static grpc_filtered_mdelem lr_trailing_md_filter(void* user_data,
184
184
 
185
185
  static void lr_start_transport_stream_op_batch(
186
186
  grpc_call_element* elem, grpc_transport_stream_op_batch* op) {
187
- GPR_TIMER_BEGIN("lr_start_transport_stream_op_batch", 0);
188
- call_data* calld = (call_data*)elem->call_data;
187
+ GPR_TIMER_SCOPE("lr_start_transport_stream_op_batch", 0);
188
+ call_data* calld = static_cast<call_data*>(elem->call_data);
189
189
 
190
190
  if (op->recv_initial_metadata) {
191
191
  /* substitute our callback for the higher callback */
@@ -204,8 +204,6 @@ static void lr_start_transport_stream_op_batch(
204
204
  "LR trailing metadata filtering error"));
205
205
  }
206
206
  grpc_call_next_op(elem, op);
207
-
208
- GPR_TIMER_END("lr_start_transport_stream_op_batch", 0);
209
207
  }
210
208
 
211
209
  const grpc_channel_filter grpc_server_load_reporting_filter = {
@@ -41,7 +41,8 @@ static bool maybe_add_server_load_reporting_filter(
41
41
  grpc_channel_stack_builder* builder, void* arg) {
42
42
  const grpc_channel_args* args =
43
43
  grpc_channel_stack_builder_get_channel_arguments(builder);
44
- const grpc_channel_filter* filter = (const grpc_channel_filter*)arg;
44
+ const grpc_channel_filter* filter =
45
+ static_cast<const grpc_channel_filter*>(arg);
45
46
  grpc_channel_stack_builder_iterator* it =
46
47
  grpc_channel_stack_builder_iterator_find(builder, filter->name);
47
48
  const bool already_has_load_reporting_filter =
@@ -206,7 +206,7 @@ static void decrease_call_count(channel_data* chand) {
206
206
  }
207
207
 
208
208
  static void start_max_idle_timer_after_init(void* arg, grpc_error* error) {
209
- channel_data* chand = (channel_data*)arg;
209
+ channel_data* chand = static_cast<channel_data*>(arg);
210
210
  /* Decrease call_count. If there are no active calls at this time,
211
211
  max_idle_timer will start here. If the number of active calls is not 0,
212
212
  max_idle_timer will start after all the active calls end. */
@@ -216,7 +216,7 @@ static void start_max_idle_timer_after_init(void* arg, grpc_error* error) {
216
216
  }
217
217
 
218
218
  static void start_max_age_timer_after_init(void* arg, grpc_error* error) {
219
- channel_data* chand = (channel_data*)arg;
219
+ channel_data* chand = static_cast<channel_data*>(arg);
220
220
  gpr_mu_lock(&chand->max_age_timer_mu);
221
221
  chand->max_age_timer_pending = true;
222
222
  GRPC_CHANNEL_STACK_REF(chand->channel_stack, "max_age max_age_timer");
@@ -234,7 +234,7 @@ static void start_max_age_timer_after_init(void* arg, grpc_error* error) {
234
234
 
235
235
  static void start_max_age_grace_timer_after_goaway_op(void* arg,
236
236
  grpc_error* error) {
237
- channel_data* chand = (channel_data*)arg;
237
+ channel_data* chand = static_cast<channel_data*>(arg);
238
238
  gpr_mu_lock(&chand->max_age_timer_mu);
239
239
  chand->max_age_grace_timer_pending = true;
240
240
  GRPC_CHANNEL_STACK_REF(chand->channel_stack, "max_age max_age_grace_timer");
@@ -262,7 +262,7 @@ static void close_max_idle_channel(channel_data* chand) {
262
262
  }
263
263
 
264
264
  static void max_idle_timer_cb(void* arg, grpc_error* error) {
265
- channel_data* chand = (channel_data*)arg;
265
+ channel_data* chand = static_cast<channel_data*>(arg);
266
266
  if (error == GRPC_ERROR_NONE) {
267
267
  bool try_again = true;
268
268
  while (try_again) {
@@ -285,8 +285,8 @@ static void max_idle_timer_cb(void* arg, grpc_error* error) {
285
285
  GRPC_CHANNEL_STACK_REF(chand->channel_stack,
286
286
  "max_age max_idle_timer");
287
287
  grpc_timer_init(&chand->max_idle_timer,
288
- (grpc_millis)gpr_atm_no_barrier_load(
289
- &chand->last_enter_idle_time_millis) +
288
+ static_cast<grpc_millis>(gpr_atm_no_barrier_load(
289
+ &chand->last_enter_idle_time_millis)) +
290
290
  chand->max_connection_idle,
291
291
  &chand->max_idle_timer_cb);
292
292
  /* idle_state may have already been set to
@@ -306,7 +306,7 @@ static void max_idle_timer_cb(void* arg, grpc_error* error) {
306
306
  }
307
307
 
308
308
  static void close_max_age_channel(void* arg, grpc_error* error) {
309
- channel_data* chand = (channel_data*)arg;
309
+ channel_data* chand = static_cast<channel_data*>(arg);
310
310
  gpr_mu_lock(&chand->max_age_timer_mu);
311
311
  chand->max_age_timer_pending = false;
312
312
  gpr_mu_unlock(&chand->max_age_timer_mu);
@@ -328,7 +328,7 @@ static void close_max_age_channel(void* arg, grpc_error* error) {
328
328
  }
329
329
 
330
330
  static void force_close_max_age_channel(void* arg, grpc_error* error) {
331
- channel_data* chand = (channel_data*)arg;
331
+ channel_data* chand = static_cast<channel_data*>(arg);
332
332
  gpr_mu_lock(&chand->max_age_timer_mu);
333
333
  chand->max_age_grace_timer_pending = false;
334
334
  gpr_mu_unlock(&chand->max_age_timer_mu);
@@ -346,7 +346,7 @@ static void force_close_max_age_channel(void* arg, grpc_error* error) {
346
346
  }
347
347
 
348
348
  static void channel_connectivity_changed(void* arg, grpc_error* error) {
349
- channel_data* chand = (channel_data*)arg;
349
+ channel_data* chand = static_cast<channel_data*>(arg);
350
350
  if (chand->connectivity_state != GRPC_CHANNEL_SHUTDOWN) {
351
351
  grpc_transport_op* op = grpc_make_transport_op(nullptr);
352
352
  op->on_connectivity_state_change = &chand->channel_connectivity_changed;
@@ -384,15 +384,15 @@ add_random_max_connection_age_jitter_and_convert_to_grpc_millis(int value) {
384
384
  double result = multiplier * value;
385
385
  /* INT_MAX - 0.5 converts the value to float, so that result will not be
386
386
  cast to int implicitly before the comparison. */
387
- return result > ((double)GRPC_MILLIS_INF_FUTURE) - 0.5
387
+ return result > (static_cast<double>(GRPC_MILLIS_INF_FUTURE)) - 0.5
388
388
  ? GRPC_MILLIS_INF_FUTURE
389
- : (grpc_millis)result;
389
+ : static_cast<grpc_millis>(result);
390
390
  }
391
391
 
392
392
  /* Constructor for call_data. */
393
393
  static grpc_error* init_call_elem(grpc_call_element* elem,
394
394
  const grpc_call_element_args* args) {
395
- channel_data* chand = (channel_data*)elem->channel_data;
395
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
396
396
  increase_call_count(chand);
397
397
  return GRPC_ERROR_NONE;
398
398
  }
@@ -401,14 +401,14 @@ static grpc_error* init_call_elem(grpc_call_element* elem,
401
401
  static void destroy_call_elem(grpc_call_element* elem,
402
402
  const grpc_call_final_info* final_info,
403
403
  grpc_closure* ignored) {
404
- channel_data* chand = (channel_data*)elem->channel_data;
404
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
405
405
  decrease_call_count(chand);
406
406
  }
407
407
 
408
408
  /* Constructor for channel_data. */
409
409
  static grpc_error* init_channel_elem(grpc_channel_element* elem,
410
410
  grpc_channel_element_args* args) {
411
- channel_data* chand = (channel_data*)elem->channel_data;
411
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
412
412
  gpr_mu_init(&chand->max_age_timer_mu);
413
413
  chand->max_age_timer_pending = false;
414
414
  chand->max_age_grace_timer_pending = false;
@@ -42,14 +42,14 @@ typedef struct {
42
42
 
43
43
  static void* refcounted_message_size_limits_ref(void* value) {
44
44
  refcounted_message_size_limits* limits =
45
- (refcounted_message_size_limits*)value;
45
+ static_cast<refcounted_message_size_limits*>(value);
46
46
  gpr_ref(&limits->refs);
47
47
  return value;
48
48
  }
49
49
 
50
50
  static void refcounted_message_size_limits_unref(void* value) {
51
51
  refcounted_message_size_limits* limits =
52
- (refcounted_message_size_limits*)value;
52
+ static_cast<refcounted_message_size_limits*>(value);
53
53
  if (gpr_unref(&limits->refs)) {
54
54
  gpr_free(value);
55
55
  }
@@ -78,8 +78,8 @@ static void* refcounted_message_size_limits_create_from_json(
78
78
  }
79
79
  }
80
80
  refcounted_message_size_limits* value =
81
- (refcounted_message_size_limits*)gpr_malloc(
82
- sizeof(refcounted_message_size_limits));
81
+ static_cast<refcounted_message_size_limits*>(
82
+ gpr_malloc(sizeof(refcounted_message_size_limits)));
83
83
  gpr_ref_init(&value->refs, 1);
84
84
  value->limits.max_send_size = max_request_message_bytes;
85
85
  value->limits.max_recv_size = max_response_message_bytes;
@@ -110,10 +110,11 @@ struct channel_data {
110
110
  // Callback invoked when we receive a message. Here we check the max
111
111
  // receive message size.
112
112
  static void recv_message_ready(void* user_data, grpc_error* error) {
113
- grpc_call_element* elem = (grpc_call_element*)user_data;
114
- call_data* calld = (call_data*)elem->call_data;
113
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
114
+ call_data* calld = static_cast<call_data*>(elem->call_data);
115
115
  if (*calld->recv_message != nullptr && calld->limits.max_recv_size >= 0 &&
116
- (*calld->recv_message)->length > (size_t)calld->limits.max_recv_size) {
116
+ (*calld->recv_message)->length >
117
+ static_cast<size_t>(calld->limits.max_recv_size)) {
117
118
  char* message_string;
118
119
  gpr_asprintf(&message_string,
119
120
  "Received message larger than max (%u vs. %d)",
@@ -138,11 +139,11 @@ static void recv_message_ready(void* user_data, grpc_error* error) {
138
139
  // Start transport stream op.
139
140
  static void start_transport_stream_op_batch(
140
141
  grpc_call_element* elem, grpc_transport_stream_op_batch* op) {
141
- call_data* calld = (call_data*)elem->call_data;
142
+ call_data* calld = static_cast<call_data*>(elem->call_data);
142
143
  // Check max send message size.
143
144
  if (op->send_message && calld->limits.max_send_size >= 0 &&
144
145
  op->payload->send_message.send_message->length >
145
- (size_t)calld->limits.max_send_size) {
146
+ static_cast<size_t>(calld->limits.max_send_size)) {
146
147
  char* message_string;
147
148
  gpr_asprintf(&message_string, "Sent message larger than max (%u vs. %d)",
148
149
  op->payload->send_message.send_message->length,
@@ -170,8 +171,8 @@ static void start_transport_stream_op_batch(
170
171
  // Constructor for call_data.
171
172
  static grpc_error* init_call_elem(grpc_call_element* elem,
172
173
  const grpc_call_element_args* args) {
173
- channel_data* chand = (channel_data*)elem->channel_data;
174
- call_data* calld = (call_data*)elem->call_data;
174
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
175
+ call_data* calld = static_cast<call_data*>(elem->call_data);
175
176
  calld->call_combiner = args->call_combiner;
176
177
  calld->next_recv_message_ready = nullptr;
177
178
  GRPC_CLOSURE_INIT(&calld->recv_message_ready, recv_message_ready, elem,
@@ -183,8 +184,9 @@ static grpc_error* init_call_elem(grpc_call_element* elem,
183
184
  calld->limits = chand->limits;
184
185
  if (chand->method_limit_table != nullptr) {
185
186
  refcounted_message_size_limits* limits =
186
- (refcounted_message_size_limits*)grpc_method_config_table_get(
187
- chand->method_limit_table, args->path);
187
+ static_cast<refcounted_message_size_limits*>(
188
+ grpc_method_config_table_get(chand->method_limit_table,
189
+ args->path));
188
190
  if (limits != nullptr) {
189
191
  if (limits->limits.max_send_size >= 0 &&
190
192
  (limits->limits.max_send_size < calld->limits.max_send_size ||
@@ -242,15 +244,15 @@ message_size_limits get_message_size_limits(
242
244
  static grpc_error* init_channel_elem(grpc_channel_element* elem,
243
245
  grpc_channel_element_args* args) {
244
246
  GPR_ASSERT(!args->is_last);
245
- channel_data* chand = (channel_data*)elem->channel_data;
247
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
246
248
  chand->limits = get_message_size_limits(args->channel_args);
247
249
  // Get method config table from channel args.
248
250
  const grpc_arg* channel_arg =
249
251
  grpc_channel_args_find(args->channel_args, GRPC_ARG_SERVICE_CONFIG);
250
- if (channel_arg != nullptr) {
251
- GPR_ASSERT(channel_arg->type == GRPC_ARG_STRING);
252
+ const char* service_config_str = grpc_channel_arg_get_string(channel_arg);
253
+ if (service_config_str != nullptr) {
252
254
  grpc_service_config* service_config =
253
- grpc_service_config_create(channel_arg->value.string);
255
+ grpc_service_config_create(service_config_str);
254
256
  if (service_config != nullptr) {
255
257
  chand->method_limit_table =
256
258
  grpc_service_config_create_method_config_table(
@@ -265,7 +267,7 @@ static grpc_error* init_channel_elem(grpc_channel_element* elem,
265
267
 
266
268
  // Destructor for channel_data.
267
269
  static void destroy_channel_elem(grpc_channel_element* elem) {
268
- channel_data* chand = (channel_data*)elem->channel_data;
270
+ channel_data* chand = static_cast<channel_data*>(elem->channel_data);
269
271
  grpc_slice_hash_table_unref(chand->method_limit_table);
270
272
  }
271
273
 
@@ -53,8 +53,8 @@ static bool get_user_agent_mdelem(const grpc_metadata_batch* batch,
53
53
 
54
54
  // Callback invoked when we receive an initial metadata.
55
55
  static void recv_initial_metadata_ready(void* user_data, grpc_error* error) {
56
- grpc_call_element* elem = (grpc_call_element*)user_data;
57
- call_data* calld = (call_data*)elem->call_data;
56
+ grpc_call_element* elem = static_cast<grpc_call_element*>(user_data);
57
+ call_data* calld = static_cast<call_data*>(elem->call_data);
58
58
 
59
59
  if (GRPC_ERROR_NONE == error) {
60
60
  grpc_mdelem md;
@@ -75,7 +75,7 @@ static void recv_initial_metadata_ready(void* user_data, grpc_error* error) {
75
75
  // Start transport stream op.
76
76
  static void start_transport_stream_op_batch(
77
77
  grpc_call_element* elem, grpc_transport_stream_op_batch* op) {
78
- call_data* calld = (call_data*)elem->call_data;
78
+ call_data* calld = static_cast<call_data*>(elem->call_data);
79
79
 
80
80
  // Inject callback for receiving initial metadata
81
81
  if (op->recv_initial_metadata) {
@@ -102,7 +102,7 @@ static void start_transport_stream_op_batch(
102
102
  // Constructor for call_data.
103
103
  static grpc_error* init_call_elem(grpc_call_element* elem,
104
104
  const grpc_call_element_args* args) {
105
- call_data* calld = (call_data*)elem->call_data;
105
+ call_data* calld = static_cast<call_data*>(elem->call_data);
106
106
  calld->next_recv_initial_metadata_ready = nullptr;
107
107
  calld->workaround_active = false;
108
108
  GRPC_CLOSURE_INIT(&calld->recv_initial_metadata_ready,