awesome-grpc-that-works 0.12.2 → 0.14.0.dev

Sign up to get free protection for your applications and to get access to all the features.
Files changed (724) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -0
  3. data/Makefile +5783 -22121
  4. data/include/grpc/byte_buffer.h +2 -83
  5. data/include/grpc/census.h +173 -121
  6. data/include/grpc/compression.h +14 -38
  7. data/include/grpc/grpc.h +85 -434
  8. data/include/grpc/grpc_security.h +76 -46
  9. data/include/grpc/grpc_zookeeper.h +1 -1
  10. data/include/grpc/impl/codegen/alloc.h +74 -0
  11. data/include/grpc/impl/codegen/atm.h +92 -0
  12. data/include/grpc/impl/codegen/atm_gcc_atomic.h +72 -0
  13. data/include/grpc/impl/codegen/atm_gcc_sync.h +87 -0
  14. data/include/grpc/impl/codegen/atm_win32.h +125 -0
  15. data/include/grpc/impl/codegen/byte_buffer.h +121 -0
  16. data/include/grpc/impl/codegen/compression_types.h +73 -0
  17. data/include/grpc/impl/codegen/connectivity_state.h +59 -0
  18. data/include/grpc/impl/codegen/grpc_types.h +378 -0
  19. data/include/grpc/impl/codegen/log.h +110 -0
  20. data/include/grpc/impl/codegen/port_platform.h +370 -0
  21. data/include/grpc/impl/codegen/propagation_bits.h +67 -0
  22. data/include/grpc/impl/codegen/slice.h +182 -0
  23. data/include/grpc/impl/codegen/slice_buffer.h +105 -0
  24. data/include/grpc/impl/codegen/status.h +163 -0
  25. data/include/grpc/impl/codegen/sync.h +316 -0
  26. data/include/grpc/impl/codegen/sync_generic.h +55 -0
  27. data/{src/core/census/context.h → include/grpc/impl/codegen/sync_posix.h} +11 -11
  28. data/include/grpc/impl/codegen/sync_win32.h +49 -0
  29. data/include/grpc/impl/codegen/time.h +130 -0
  30. data/include/grpc/status.h +2 -126
  31. data/include/grpc/support/alloc.h +2 -35
  32. data/include/grpc/support/atm.h +2 -55
  33. data/include/grpc/support/atm_gcc_atomic.h +5 -38
  34. data/include/grpc/support/atm_gcc_sync.h +2 -50
  35. data/include/grpc/support/atm_win32.h +2 -88
  36. data/include/grpc/support/avl.h +10 -9
  37. data/include/grpc/support/cmdline.h +15 -13
  38. data/include/grpc/support/cpu.h +5 -3
  39. data/include/grpc/support/histogram.h +23 -20
  40. data/include/grpc/support/host_port.h +5 -3
  41. data/include/grpc/support/log.h +2 -71
  42. data/include/grpc/support/log_win32.h +2 -2
  43. data/include/grpc/support/port_platform.h +2 -319
  44. data/include/grpc/support/slice.h +2 -145
  45. data/include/grpc/support/slice_buffer.h +2 -65
  46. data/include/grpc/support/string_util.h +3 -3
  47. data/include/grpc/support/subprocess.h +8 -6
  48. data/include/grpc/support/sync.h +2 -278
  49. data/include/grpc/support/sync_generic.h +2 -18
  50. data/include/grpc/support/sync_posix.h +2 -10
  51. data/include/grpc/support/sync_win32.h +2 -12
  52. data/include/grpc/support/thd.h +11 -11
  53. data/include/grpc/support/time.h +2 -91
  54. data/include/grpc/support/tls.h +1 -1
  55. data/include/grpc/support/tls_gcc.h +1 -1
  56. data/include/grpc/support/tls_msvc.h +1 -1
  57. data/include/grpc/support/tls_pthread.h +2 -2
  58. data/include/grpc/support/useful.h +3 -1
  59. data/src/boringssl/err_data.c +1252 -0
  60. data/src/core/census/context.c +471 -8
  61. data/src/core/census/grpc_filter.c +5 -5
  62. data/src/core/census/initialize.c +4 -7
  63. data/src/core/census/mlog.c +600 -0
  64. data/src/core/census/mlog.h +95 -0
  65. data/src/core/census/operation.c +2 -2
  66. data/src/core/census/placeholders.c +109 -0
  67. data/src/core/census/rpc_metric_id.h +6 -6
  68. data/src/core/census/tracing.c +1 -1
  69. data/src/core/channel/channel_args.c +71 -9
  70. data/src/core/channel/channel_args.h +7 -1
  71. data/src/core/channel/channel_stack.c +1 -1
  72. data/src/core/channel/client_channel.c +33 -30
  73. data/src/core/channel/client_uchannel.c +3 -3
  74. data/src/core/channel/compress_filter.c +8 -8
  75. data/src/core/channel/http_client_filter.c +4 -4
  76. data/src/core/channel/http_server_filter.c +11 -11
  77. data/src/core/channel/subchannel_call_holder.c +11 -11
  78. data/src/core/client_config/connector.c +3 -2
  79. data/src/core/client_config/connector.h +2 -2
  80. data/src/core/client_config/lb_policies/load_balancer_api.c +163 -0
  81. data/src/core/client_config/lb_policies/load_balancer_api.h +85 -0
  82. data/src/core/client_config/lb_policies/pick_first.c +57 -40
  83. data/src/core/client_config/lb_policies/round_robin.c +14 -15
  84. data/src/core/client_config/lb_policy.c +3 -3
  85. data/src/core/client_config/lb_policy.h +3 -2
  86. data/src/core/client_config/resolvers/dns_resolver.c +3 -3
  87. data/src/core/client_config/resolvers/sockaddr_resolver.c +5 -5
  88. data/src/core/client_config/subchannel.c +84 -39
  89. data/src/core/client_config/subchannel.h +15 -6
  90. data/src/core/client_config/subchannel_index.c +261 -0
  91. data/src/core/client_config/subchannel_index.h +77 -0
  92. data/src/core/compression/{algorithm.c → compression_algorithm.c} +3 -3
  93. data/src/core/httpcli/format_request.c +1 -1
  94. data/src/core/httpcli/httpcli.c +18 -16
  95. data/src/core/httpcli/httpcli.h +3 -2
  96. data/src/core/httpcli/httpcli_security_connector.c +9 -10
  97. data/src/core/httpcli/parser.c +7 -7
  98. data/src/core/httpcli/parser.h +1 -1
  99. data/src/core/iomgr/closure.c +7 -7
  100. data/src/core/iomgr/closure.h +6 -5
  101. data/src/core/iomgr/exec_ctx.c +12 -8
  102. data/src/core/iomgr/exec_ctx.h +12 -5
  103. data/src/core/iomgr/executor.c +4 -4
  104. data/src/core/iomgr/executor.h +2 -2
  105. data/src/core/iomgr/fd_posix.c +32 -19
  106. data/src/core/iomgr/fd_posix.h +7 -4
  107. data/src/core/iomgr/iocp_windows.c +7 -9
  108. data/src/core/iomgr/iomgr.c +2 -2
  109. data/src/core/iomgr/pollset.h +9 -10
  110. data/src/core/iomgr/pollset_multipoller_with_epoll.c +71 -5
  111. data/src/core/iomgr/pollset_multipoller_with_poll_posix.c +9 -5
  112. data/src/core/iomgr/pollset_posix.c +44 -49
  113. data/src/core/iomgr/pollset_posix.h +14 -8
  114. data/src/core/iomgr/pollset_set.h +3 -9
  115. data/src/core/iomgr/pollset_set_posix.c +23 -3
  116. data/src/core/iomgr/pollset_set_posix.h +2 -18
  117. data/src/core/iomgr/pollset_set_windows.c +3 -3
  118. data/src/core/iomgr/pollset_set_windows.h +2 -2
  119. data/src/core/iomgr/pollset_windows.c +29 -37
  120. data/src/core/iomgr/pollset_windows.h +1 -5
  121. data/src/core/iomgr/resolve_address_posix.c +2 -2
  122. data/src/core/iomgr/resolve_address_windows.c +2 -2
  123. data/src/core/iomgr/sockaddr_utils.c +6 -6
  124. data/src/core/iomgr/sockaddr_win32.h +1 -6
  125. data/src/core/iomgr/tcp_client_posix.c +14 -12
  126. data/src/core/iomgr/tcp_client_windows.c +4 -4
  127. data/src/core/iomgr/tcp_posix.c +18 -10
  128. data/src/core/iomgr/tcp_posix.h +7 -1
  129. data/src/core/iomgr/tcp_server.h +40 -20
  130. data/src/core/iomgr/tcp_server_posix.c +106 -49
  131. data/src/core/iomgr/tcp_server_windows.c +98 -49
  132. data/src/core/iomgr/tcp_windows.c +11 -15
  133. data/src/core/iomgr/timer.c +10 -11
  134. data/src/core/iomgr/timer.h +22 -2
  135. data/src/core/iomgr/timer_heap.c +10 -10
  136. data/src/core/iomgr/timer_heap.h +2 -2
  137. data/src/core/iomgr/udp_server.c +7 -16
  138. data/src/core/iomgr/udp_server.h +2 -9
  139. data/src/core/iomgr/workqueue.h +2 -4
  140. data/src/core/iomgr/workqueue_posix.c +4 -3
  141. data/src/core/iomgr/workqueue_posix.h +3 -1
  142. data/src/core/json/json_reader.c +11 -12
  143. data/src/core/json/json_reader.h +4 -4
  144. data/src/core/json/json_string.c +19 -19
  145. data/src/core/json/json_writer.c +7 -9
  146. data/src/core/profiling/basic_timers.c +1 -1
  147. data/src/core/proto/grpc/lb/v0/load_balancer.pb.c +119 -0
  148. data/src/core/proto/grpc/lb/v0/load_balancer.pb.h +182 -0
  149. data/src/core/security/{base64.c → b64.c} +10 -10
  150. data/src/core/security/{base64.h → b64.h} +1 -1
  151. data/src/core/security/client_auth_filter.c +4 -5
  152. data/src/core/security/credentials.c +17 -10
  153. data/src/core/security/credentials.h +3 -3
  154. data/src/core/security/google_default_credentials.c +27 -22
  155. data/src/core/security/handshake.c +21 -12
  156. data/src/core/security/handshake.h +2 -1
  157. data/src/core/security/json_token.c +14 -8
  158. data/src/core/security/jwt_verifier.c +4 -3
  159. data/src/core/security/secure_endpoint.c +16 -16
  160. data/src/core/security/security_connector.c +131 -81
  161. data/src/core/security/security_connector.h +47 -27
  162. data/src/core/security/security_context.c +8 -3
  163. data/src/core/security/server_auth_filter.c +5 -5
  164. data/src/core/security/server_secure_chttp2.c +36 -37
  165. data/src/core/statistics/census_interface.h +2 -2
  166. data/src/core/statistics/census_rpc_stats.h +3 -3
  167. data/src/core/support/alloc.c +1 -1
  168. data/src/core/support/avl.c +2 -2
  169. data/src/core/support/cpu_posix.c +2 -2
  170. data/src/core/support/env_linux.c +28 -1
  171. data/src/core/support/env_win32.c +15 -7
  172. data/src/core/support/histogram.c +5 -5
  173. data/src/core/support/{file.c → load_file.c} +2 -2
  174. data/src/core/support/{file.h → load_file.h} +4 -12
  175. data/src/core/support/log_posix.c +1 -1
  176. data/src/core/support/log_win32.c +4 -3
  177. data/src/core/support/murmur_hash.c +11 -11
  178. data/src/core/support/murmur_hash.h +1 -1
  179. data/src/core/support/slice.c +11 -11
  180. data/src/core/support/slice_buffer.c +6 -6
  181. data/src/core/support/stack_lockfree.c +20 -10
  182. data/src/core/support/string.c +15 -15
  183. data/src/core/support/string.h +5 -5
  184. data/src/core/support/string_win32.c +5 -5
  185. data/src/core/support/subprocess_windows.c +141 -0
  186. data/src/core/support/sync.c +4 -4
  187. data/src/core/support/sync_posix.c +2 -2
  188. data/src/core/support/sync_win32.c +10 -5
  189. data/src/core/support/time.c +29 -29
  190. data/src/core/support/time_posix.c +15 -6
  191. data/src/core/support/time_precise.c +2 -2
  192. data/src/core/support/time_win32.c +18 -9
  193. data/src/core/support/tls_pthread.c +1 -1
  194. data/src/core/support/tmpfile.h +55 -0
  195. data/src/core/support/{file_posix.c → tmpfile_posix.c} +2 -2
  196. data/src/core/support/{file_win32.c → tmpfile_win32.c} +2 -2
  197. data/src/core/support/wrap_memcpy.c +53 -0
  198. data/src/core/surface/alarm.c +84 -0
  199. data/src/core/surface/byte_buffer_reader.c +1 -1
  200. data/src/core/surface/call.c +175 -116
  201. data/src/core/surface/call.h +2 -2
  202. data/src/core/surface/call_test_only.h +2 -2
  203. data/src/core/surface/channel.c +9 -9
  204. data/src/core/surface/channel.h +1 -1
  205. data/src/core/surface/channel_connectivity.c +3 -3
  206. data/src/core/surface/channel_create.c +4 -4
  207. data/src/core/surface/channel_ping.c +2 -2
  208. data/src/core/surface/completion_queue.c +84 -53
  209. data/src/core/surface/completion_queue.h +1 -1
  210. data/src/core/surface/init.c +11 -5
  211. data/src/core/surface/lame_client.c +2 -3
  212. data/src/core/surface/secure_channel_create.c +9 -10
  213. data/src/core/surface/server.c +30 -30
  214. data/src/core/surface/server_chttp2.c +8 -8
  215. data/src/core/surface/server_create.c +1 -4
  216. data/src/core/surface/validate_metadata.c +4 -4
  217. data/src/core/surface/version.c +2 -2
  218. data/src/core/transport/byte_stream.c +8 -6
  219. data/src/core/transport/byte_stream.h +6 -5
  220. data/src/core/transport/chttp2/bin_encoder.c +29 -29
  221. data/src/core/transport/chttp2/frame_data.c +29 -26
  222. data/src/core/transport/chttp2/frame_data.h +6 -6
  223. data/src/core/transport/chttp2/frame_goaway.c +30 -30
  224. data/src/core/transport/chttp2/frame_goaway.h +6 -6
  225. data/src/core/transport/chttp2/frame_ping.c +6 -6
  226. data/src/core/transport/chttp2/frame_ping.h +5 -5
  227. data/src/core/transport/chttp2/frame_rst_stream.c +18 -19
  228. data/src/core/transport/chttp2/frame_rst_stream.h +4 -4
  229. data/src/core/transport/chttp2/frame_settings.c +30 -30
  230. data/src/core/transport/chttp2/frame_settings.h +13 -13
  231. data/src/core/transport/chttp2/frame_window_update.c +17 -18
  232. data/src/core/transport/chttp2/frame_window_update.h +5 -7
  233. data/src/core/transport/chttp2/hpack_encoder.c +69 -73
  234. data/src/core/transport/chttp2/hpack_encoder.h +16 -16
  235. data/src/core/transport/chttp2/hpack_parser.c +167 -167
  236. data/src/core/transport/chttp2/hpack_parser.h +16 -16
  237. data/src/core/transport/chttp2/hpack_table.c +13 -13
  238. data/src/core/transport/chttp2/hpack_table.h +11 -11
  239. data/src/core/transport/chttp2/internal.h +103 -87
  240. data/src/core/transport/chttp2/parsing.c +25 -25
  241. data/src/core/transport/chttp2/stream_lists.c +38 -1
  242. data/src/core/transport/chttp2/stream_map.c +13 -14
  243. data/src/core/transport/chttp2/stream_map.h +6 -7
  244. data/src/core/transport/chttp2/timeout_encoding.c +19 -16
  245. data/src/core/transport/chttp2/varint.c +8 -9
  246. data/src/core/transport/chttp2/varint.h +7 -8
  247. data/src/core/transport/chttp2/writing.c +25 -22
  248. data/src/core/transport/chttp2_transport.c +147 -100
  249. data/src/core/transport/connectivity_state.c +6 -6
  250. data/src/core/transport/metadata.c +18 -18
  251. data/src/core/transport/metadata.h +5 -5
  252. data/src/core/transport/static_metadata.c +32 -33
  253. data/src/core/transport/static_metadata.h +8 -8
  254. data/src/core/transport/transport.c +6 -5
  255. data/src/core/transport/transport.h +17 -1
  256. data/src/core/tsi/fake_transport_security.c +7 -7
  257. data/src/core/tsi/ssl_transport_security.c +6 -4
  258. data/src/core/{iomgr/timer_internal.h → tsi/ssl_types.h} +19 -25
  259. data/src/ruby/ext/grpc/extconf.rb +52 -14
  260. data/src/ruby/ext/grpc/rb_byte_buffer.c +3 -1
  261. data/src/ruby/ext/grpc/rb_call.c +7 -3
  262. data/src/ruby/ext/grpc/rb_call_credentials.c +4 -0
  263. data/src/ruby/ext/grpc/rb_channel.c +4 -2
  264. data/src/ruby/ext/grpc/rb_channel_args.c +3 -1
  265. data/src/ruby/ext/grpc/rb_channel_credentials.c +3 -1
  266. data/src/ruby/ext/grpc/rb_completion_queue.c +3 -1
  267. data/src/ruby/ext/grpc/rb_event_thread.c +5 -0
  268. data/src/ruby/ext/grpc/rb_grpc.c +28 -19
  269. data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +562 -0
  270. data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +846 -0
  271. data/src/ruby/ext/grpc/rb_loader.c +72 -0
  272. data/src/ruby/ext/grpc/rb_loader.h +40 -0
  273. data/src/ruby/ext/grpc/rb_server.c +3 -1
  274. data/src/ruby/ext/grpc/rb_server_credentials.c +4 -2
  275. data/src/ruby/lib/grpc/core/time_consts.rb +2 -2
  276. data/src/ruby/lib/grpc/errors.rb +2 -2
  277. data/src/ruby/lib/grpc/generic/bidi_call.rb +1 -1
  278. data/src/ruby/lib/grpc/generic/rpc_desc.rb +1 -1
  279. data/src/ruby/lib/grpc/generic/rpc_server.rb +1 -1
  280. data/src/ruby/lib/grpc/grpc.rb +34 -0
  281. data/src/ruby/lib/grpc/version.rb +1 -1
  282. data/src/ruby/pb/README.md +2 -2
  283. data/src/ruby/pb/generate_proto_ruby.sh +2 -2
  284. data/src/ruby/pb/grpc/health/checker.rb +11 -11
  285. data/src/ruby/pb/grpc/health/v1/health.rb +28 -0
  286. data/src/ruby/pb/grpc/health/{v1alpha → v1}/health_services.rb +4 -4
  287. data/src/ruby/spec/client_server_spec.rb +2 -1
  288. data/src/ruby/spec/pb/health/checker_spec.rb +23 -37
  289. data/third_party/boringssl/crypto/aes/aes.c +1142 -0
  290. data/third_party/boringssl/crypto/aes/internal.h +87 -0
  291. data/third_party/boringssl/crypto/aes/mode_wrappers.c +108 -0
  292. data/third_party/boringssl/crypto/asn1/a_bitstr.c +255 -0
  293. data/third_party/boringssl/crypto/asn1/a_bool.c +112 -0
  294. data/third_party/boringssl/crypto/asn1/a_bytes.c +317 -0
  295. data/third_party/boringssl/crypto/asn1/a_d2i_fp.c +286 -0
  296. data/third_party/boringssl/crypto/asn1/a_dup.c +103 -0
  297. data/third_party/boringssl/crypto/asn1/a_enum.c +183 -0
  298. data/third_party/boringssl/crypto/asn1/a_gentm.c +255 -0
  299. data/third_party/boringssl/crypto/asn1/a_i2d_fp.c +154 -0
  300. data/third_party/boringssl/crypto/asn1/a_int.c +456 -0
  301. data/third_party/boringssl/crypto/asn1/a_mbstr.c +390 -0
  302. data/third_party/boringssl/crypto/asn1/a_object.c +412 -0
  303. data/third_party/boringssl/crypto/asn1/a_octet.c +70 -0
  304. data/third_party/boringssl/crypto/asn1/a_print.c +119 -0
  305. data/third_party/boringssl/crypto/asn1/a_strnid.c +286 -0
  306. data/third_party/boringssl/crypto/asn1/a_time.c +221 -0
  307. data/third_party/boringssl/crypto/asn1/a_type.c +160 -0
  308. data/third_party/boringssl/crypto/asn1/a_utctm.c +342 -0
  309. data/third_party/boringssl/crypto/asn1/a_utf8.c +210 -0
  310. data/third_party/boringssl/crypto/asn1/asn1_lib.c +510 -0
  311. data/third_party/boringssl/crypto/asn1/asn1_locl.h +73 -0
  312. data/third_party/boringssl/crypto/asn1/asn1_par.c +444 -0
  313. data/third_party/boringssl/crypto/asn1/asn_pack.c +104 -0
  314. data/third_party/boringssl/crypto/asn1/bio_asn1.c +496 -0
  315. data/third_party/boringssl/crypto/asn1/bio_ndef.c +254 -0
  316. data/third_party/boringssl/crypto/asn1/f_enum.c +206 -0
  317. data/third_party/boringssl/crypto/asn1/f_int.c +210 -0
  318. data/third_party/boringssl/crypto/asn1/f_string.c +204 -0
  319. data/third_party/boringssl/crypto/asn1/t_bitst.c +102 -0
  320. data/third_party/boringssl/crypto/asn1/t_pkey.c +112 -0
  321. data/third_party/boringssl/crypto/asn1/tasn_dec.c +1342 -0
  322. data/third_party/boringssl/crypto/asn1/tasn_enc.c +695 -0
  323. data/third_party/boringssl/crypto/asn1/tasn_fre.c +264 -0
  324. data/third_party/boringssl/crypto/asn1/tasn_new.c +398 -0
  325. data/third_party/boringssl/crypto/asn1/tasn_prn.c +642 -0
  326. data/third_party/boringssl/crypto/asn1/tasn_typ.c +137 -0
  327. data/third_party/boringssl/crypto/asn1/tasn_utl.c +266 -0
  328. data/third_party/boringssl/crypto/asn1/x_bignum.c +143 -0
  329. data/third_party/boringssl/crypto/asn1/x_long.c +182 -0
  330. data/third_party/boringssl/crypto/base64/base64.c +478 -0
  331. data/third_party/boringssl/crypto/bio/bio.c +608 -0
  332. data/third_party/boringssl/crypto/bio/bio_mem.c +327 -0
  333. data/third_party/boringssl/crypto/bio/buffer.c +496 -0
  334. data/third_party/boringssl/crypto/bio/connect.c +544 -0
  335. data/third_party/boringssl/crypto/bio/fd.c +270 -0
  336. data/third_party/boringssl/crypto/bio/file.c +349 -0
  337. data/third_party/boringssl/crypto/bio/hexdump.c +192 -0
  338. data/third_party/boringssl/crypto/bio/internal.h +108 -0
  339. data/third_party/boringssl/crypto/bio/pair.c +803 -0
  340. data/third_party/boringssl/crypto/bio/printf.c +119 -0
  341. data/third_party/boringssl/crypto/bio/socket.c +195 -0
  342. data/third_party/boringssl/crypto/bio/socket_helper.c +113 -0
  343. data/third_party/boringssl/crypto/bn/add.c +377 -0
  344. data/third_party/boringssl/crypto/bn/asm/x86_64-gcc.c +599 -0
  345. data/third_party/boringssl/crypto/bn/bn.c +341 -0
  346. data/third_party/boringssl/crypto/bn/bn_asn1.c +93 -0
  347. data/third_party/boringssl/crypto/bn/cmp.c +200 -0
  348. data/third_party/boringssl/crypto/bn/convert.c +597 -0
  349. data/third_party/boringssl/crypto/bn/ctx.c +311 -0
  350. data/third_party/boringssl/crypto/bn/div.c +625 -0
  351. data/third_party/boringssl/crypto/bn/exponentiation.c +1544 -0
  352. data/third_party/boringssl/crypto/bn/gcd.c +711 -0
  353. data/third_party/boringssl/crypto/bn/generic.c +1019 -0
  354. data/third_party/boringssl/crypto/bn/internal.h +294 -0
  355. data/third_party/boringssl/crypto/bn/kronecker.c +175 -0
  356. data/third_party/boringssl/crypto/bn/montgomery.c +561 -0
  357. data/third_party/boringssl/crypto/bn/mul.c +888 -0
  358. data/third_party/boringssl/crypto/bn/prime.c +845 -0
  359. data/third_party/boringssl/crypto/bn/random.c +326 -0
  360. data/third_party/boringssl/crypto/bn/rsaz_exp.c +326 -0
  361. data/third_party/boringssl/crypto/bn/rsaz_exp.h +56 -0
  362. data/third_party/boringssl/crypto/bn/shift.c +299 -0
  363. data/third_party/boringssl/crypto/bn/sqrt.c +505 -0
  364. data/third_party/boringssl/crypto/buf/buf.c +235 -0
  365. data/third_party/boringssl/crypto/bytestring/ber.c +221 -0
  366. data/third_party/boringssl/crypto/bytestring/cbb.c +411 -0
  367. data/third_party/boringssl/crypto/bytestring/cbs.c +415 -0
  368. data/third_party/boringssl/crypto/bytestring/internal.h +46 -0
  369. data/third_party/boringssl/crypto/chacha/chacha_generic.c +140 -0
  370. data/third_party/boringssl/crypto/chacha/chacha_vec.c +323 -0
  371. data/third_party/boringssl/crypto/cipher/aead.c +167 -0
  372. data/third_party/boringssl/crypto/cipher/cipher.c +652 -0
  373. data/third_party/boringssl/crypto/cipher/derive_key.c +154 -0
  374. data/third_party/boringssl/crypto/cipher/e_aes.c +1767 -0
  375. data/third_party/boringssl/crypto/cipher/e_chacha20poly1305.c +311 -0
  376. data/third_party/boringssl/crypto/cipher/e_des.c +207 -0
  377. data/third_party/boringssl/crypto/cipher/e_null.c +85 -0
  378. data/third_party/boringssl/crypto/cipher/e_rc2.c +443 -0
  379. data/third_party/boringssl/crypto/cipher/e_rc4.c +87 -0
  380. data/third_party/boringssl/crypto/cipher/e_ssl3.c +463 -0
  381. data/third_party/boringssl/crypto/cipher/e_tls.c +673 -0
  382. data/third_party/boringssl/crypto/cipher/internal.h +164 -0
  383. data/third_party/boringssl/crypto/cipher/tls_cbc.c +495 -0
  384. data/third_party/boringssl/crypto/cmac/cmac.c +239 -0
  385. data/third_party/boringssl/crypto/conf/conf.c +778 -0
  386. data/third_party/boringssl/crypto/conf/conf_def.h +127 -0
  387. data/third_party/boringssl/crypto/conf/internal.h +31 -0
  388. data/third_party/boringssl/crypto/cpu-arm.c +199 -0
  389. data/third_party/boringssl/crypto/cpu-intel.c +261 -0
  390. data/third_party/boringssl/crypto/crypto.c +140 -0
  391. data/third_party/boringssl/crypto/curve25519/curve25519.c +4897 -0
  392. data/third_party/boringssl/crypto/des/des.c +771 -0
  393. data/third_party/boringssl/crypto/des/internal.h +212 -0
  394. data/third_party/boringssl/crypto/dh/check.c +180 -0
  395. data/third_party/boringssl/crypto/dh/dh.c +463 -0
  396. data/third_party/boringssl/crypto/dh/dh_asn1.c +84 -0
  397. data/third_party/boringssl/crypto/dh/internal.h +80 -0
  398. data/third_party/boringssl/crypto/dh/params.c +301 -0
  399. data/third_party/boringssl/crypto/digest/digest.c +248 -0
  400. data/third_party/boringssl/crypto/digest/digests.c +321 -0
  401. data/third_party/boringssl/crypto/digest/internal.h +112 -0
  402. data/third_party/boringssl/crypto/digest/md32_common.h +322 -0
  403. data/third_party/boringssl/crypto/directory.h +66 -0
  404. data/third_party/boringssl/crypto/directory_posix.c +108 -0
  405. data/third_party/boringssl/crypto/directory_win.c +144 -0
  406. data/third_party/boringssl/crypto/dsa/dsa.c +908 -0
  407. data/third_party/boringssl/crypto/dsa/dsa_asn1.c +150 -0
  408. data/third_party/boringssl/crypto/dsa/internal.h +78 -0
  409. data/third_party/boringssl/crypto/ec/ec.c +889 -0
  410. data/third_party/boringssl/crypto/ec/ec_asn1.c +586 -0
  411. data/third_party/boringssl/crypto/ec/ec_key.c +482 -0
  412. data/third_party/boringssl/crypto/ec/ec_montgomery.c +280 -0
  413. data/third_party/boringssl/crypto/ec/internal.h +318 -0
  414. data/third_party/boringssl/crypto/ec/oct.c +416 -0
  415. data/third_party/boringssl/crypto/ec/p224-64.c +1305 -0
  416. data/third_party/boringssl/crypto/ec/p256-64.c +1878 -0
  417. data/third_party/boringssl/crypto/ec/p256-x86_64-table.h +9548 -0
  418. data/third_party/boringssl/crypto/ec/p256-x86_64.c +596 -0
  419. data/third_party/boringssl/crypto/ec/simple.c +1313 -0
  420. data/third_party/boringssl/crypto/ec/util-64.c +183 -0
  421. data/third_party/boringssl/crypto/ec/wnaf.c +449 -0
  422. data/third_party/boringssl/crypto/ecdh/ecdh.c +153 -0
  423. data/third_party/boringssl/crypto/ecdsa/ecdsa.c +496 -0
  424. data/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.c +240 -0
  425. data/third_party/boringssl/crypto/engine/engine.c +96 -0
  426. data/third_party/boringssl/crypto/err/err.c +756 -0
  427. data/third_party/boringssl/crypto/evp/algorithm.c +153 -0
  428. data/third_party/boringssl/crypto/evp/digestsign.c +159 -0
  429. data/third_party/boringssl/crypto/evp/evp.c +411 -0
  430. data/third_party/boringssl/crypto/evp/evp_asn1.c +179 -0
  431. data/third_party/boringssl/crypto/evp/evp_ctx.c +477 -0
  432. data/third_party/boringssl/crypto/evp/internal.h +278 -0
  433. data/third_party/boringssl/crypto/evp/p_dsa_asn1.c +588 -0
  434. data/third_party/boringssl/crypto/evp/p_ec.c +283 -0
  435. data/third_party/boringssl/crypto/evp/p_ec_asn1.c +562 -0
  436. data/third_party/boringssl/crypto/evp/p_rsa.c +596 -0
  437. data/third_party/boringssl/crypto/evp/p_rsa_asn1.c +737 -0
  438. data/third_party/boringssl/crypto/evp/pbkdf.c +151 -0
  439. data/third_party/boringssl/crypto/evp/sign.c +151 -0
  440. data/third_party/boringssl/crypto/ex_data.c +294 -0
  441. data/third_party/boringssl/crypto/hkdf/hkdf.c +89 -0
  442. data/third_party/boringssl/crypto/hmac/hmac.c +213 -0
  443. data/third_party/boringssl/crypto/internal.h +532 -0
  444. data/third_party/boringssl/crypto/lhash/lhash.c +346 -0
  445. data/third_party/boringssl/crypto/md4/md4.c +225 -0
  446. data/third_party/boringssl/crypto/md5/md5.c +275 -0
  447. data/third_party/boringssl/crypto/mem.c +200 -0
  448. data/third_party/boringssl/crypto/modes/cbc.c +216 -0
  449. data/third_party/boringssl/crypto/modes/cfb.c +231 -0
  450. data/third_party/boringssl/crypto/modes/ctr.c +226 -0
  451. data/third_party/boringssl/crypto/modes/gcm.c +1252 -0
  452. data/third_party/boringssl/crypto/modes/internal.h +370 -0
  453. data/third_party/boringssl/crypto/modes/ofb.c +108 -0
  454. data/third_party/boringssl/crypto/obj/obj.c +664 -0
  455. data/third_party/boringssl/crypto/obj/obj_dat.h +5257 -0
  456. data/third_party/boringssl/crypto/obj/obj_xref.c +124 -0
  457. data/third_party/boringssl/crypto/obj/obj_xref.h +96 -0
  458. data/third_party/boringssl/crypto/pem/pem_all.c +281 -0
  459. data/third_party/boringssl/crypto/pem/pem_info.c +404 -0
  460. data/third_party/boringssl/crypto/pem/pem_lib.c +835 -0
  461. data/third_party/boringssl/crypto/pem/pem_oth.c +89 -0
  462. data/third_party/boringssl/crypto/pem/pem_pk8.c +244 -0
  463. data/third_party/boringssl/crypto/pem/pem_pkey.c +312 -0
  464. data/third_party/boringssl/crypto/pem/pem_x509.c +65 -0
  465. data/third_party/boringssl/crypto/pem/pem_xaux.c +66 -0
  466. data/third_party/boringssl/crypto/pkcs8/internal.h +83 -0
  467. data/third_party/boringssl/crypto/pkcs8/p5_pbe.c +150 -0
  468. data/third_party/boringssl/crypto/pkcs8/p5_pbev2.c +440 -0
  469. data/third_party/boringssl/crypto/pkcs8/p8_pkey.c +85 -0
  470. data/third_party/boringssl/crypto/pkcs8/pkcs8.c +1217 -0
  471. data/third_party/boringssl/crypto/poly1305/poly1305.c +331 -0
  472. data/third_party/boringssl/crypto/poly1305/poly1305_arm.c +301 -0
  473. data/third_party/boringssl/crypto/poly1305/poly1305_vec.c +892 -0
  474. data/third_party/boringssl/crypto/rand/internal.h +32 -0
  475. data/third_party/boringssl/crypto/rand/rand.c +239 -0
  476. data/third_party/boringssl/crypto/rand/urandom.c +223 -0
  477. data/third_party/boringssl/crypto/rand/windows.c +56 -0
  478. data/third_party/boringssl/crypto/rc4/rc4.c +283 -0
  479. data/third_party/boringssl/crypto/refcount_c11.c +67 -0
  480. data/third_party/boringssl/crypto/refcount_lock.c +53 -0
  481. data/third_party/boringssl/crypto/rsa/blinding.c +462 -0
  482. data/third_party/boringssl/crypto/rsa/internal.h +164 -0
  483. data/third_party/boringssl/crypto/rsa/padding.c +711 -0
  484. data/third_party/boringssl/crypto/rsa/rsa.c +808 -0
  485. data/third_party/boringssl/crypto/rsa/rsa_asn1.c +473 -0
  486. data/third_party/boringssl/crypto/rsa/rsa_impl.c +1138 -0
  487. data/third_party/boringssl/crypto/sha/sha1.c +337 -0
  488. data/third_party/boringssl/crypto/sha/sha256.c +327 -0
  489. data/third_party/boringssl/crypto/sha/sha512.c +607 -0
  490. data/third_party/boringssl/crypto/stack/stack.c +386 -0
  491. data/third_party/boringssl/crypto/test/scoped_types.h +137 -0
  492. data/third_party/boringssl/crypto/test/test_util.h +35 -0
  493. data/third_party/boringssl/crypto/thread.c +101 -0
  494. data/third_party/boringssl/crypto/thread_none.c +55 -0
  495. data/third_party/boringssl/crypto/thread_pthread.c +167 -0
  496. data/third_party/boringssl/crypto/thread_win.c +282 -0
  497. data/third_party/boringssl/crypto/time_support.c +212 -0
  498. data/third_party/boringssl/crypto/x509/a_digest.c +97 -0
  499. data/third_party/boringssl/crypto/x509/a_sign.c +136 -0
  500. data/third_party/boringssl/crypto/x509/a_strex.c +564 -0
  501. data/third_party/boringssl/crypto/x509/a_verify.c +133 -0
  502. data/third_party/boringssl/crypto/x509/asn1_gen.c +873 -0
  503. data/third_party/boringssl/crypto/x509/by_dir.c +491 -0
  504. data/third_party/boringssl/crypto/x509/by_file.c +295 -0
  505. data/third_party/boringssl/crypto/x509/charmap.h +15 -0
  506. data/third_party/boringssl/crypto/x509/i2d_pr.c +84 -0
  507. data/third_party/boringssl/crypto/x509/pkcs7.c +353 -0
  508. data/third_party/boringssl/crypto/x509/t_crl.c +129 -0
  509. data/third_party/boringssl/crypto/x509/t_req.c +246 -0
  510. data/third_party/boringssl/crypto/x509/t_x509.c +500 -0
  511. data/third_party/boringssl/crypto/x509/t_x509a.c +109 -0
  512. data/third_party/boringssl/crypto/x509/vpm_int.h +70 -0
  513. data/third_party/boringssl/crypto/x509/x509.c +152 -0
  514. data/third_party/boringssl/crypto/x509/x509_att.c +353 -0
  515. data/third_party/boringssl/crypto/x509/x509_cmp.c +490 -0
  516. data/third_party/boringssl/crypto/x509/x509_d2.c +105 -0
  517. data/third_party/boringssl/crypto/x509/x509_def.c +88 -0
  518. data/third_party/boringssl/crypto/x509/x509_ext.c +206 -0
  519. data/third_party/boringssl/crypto/x509/x509_lu.c +738 -0
  520. data/third_party/boringssl/crypto/x509/x509_obj.c +191 -0
  521. data/third_party/boringssl/crypto/x509/x509_r2x.c +113 -0
  522. data/third_party/boringssl/crypto/x509/x509_req.c +315 -0
  523. data/third_party/boringssl/crypto/x509/x509_set.c +154 -0
  524. data/third_party/boringssl/crypto/x509/x509_trs.c +304 -0
  525. data/third_party/boringssl/crypto/x509/x509_txt.c +209 -0
  526. data/third_party/boringssl/crypto/x509/x509_v3.c +271 -0
  527. data/third_party/boringssl/crypto/x509/x509_vfy.c +2456 -0
  528. data/third_party/boringssl/crypto/x509/x509_vpm.c +672 -0
  529. data/third_party/boringssl/crypto/x509/x509cset.c +172 -0
  530. data/third_party/boringssl/crypto/x509/x509name.c +381 -0
  531. data/third_party/boringssl/crypto/x509/x509rset.c +80 -0
  532. data/third_party/boringssl/crypto/x509/x509spki.c +135 -0
  533. data/third_party/boringssl/crypto/x509/x509type.c +128 -0
  534. data/third_party/boringssl/crypto/x509/x_algor.c +154 -0
  535. data/third_party/boringssl/crypto/x509/x_all.c +547 -0
  536. data/third_party/boringssl/crypto/x509/x_attrib.c +117 -0
  537. data/third_party/boringssl/crypto/x509/x_crl.c +560 -0
  538. data/third_party/boringssl/crypto/x509/x_exten.c +75 -0
  539. data/third_party/boringssl/crypto/x509/x_info.c +95 -0
  540. data/third_party/boringssl/crypto/x509/x_name.c +538 -0
  541. data/third_party/boringssl/crypto/x509/x_pkey.c +100 -0
  542. data/third_party/boringssl/crypto/x509/x_pubkey.c +384 -0
  543. data/third_party/boringssl/crypto/x509/x_req.c +112 -0
  544. data/third_party/boringssl/crypto/x509/x_sig.c +69 -0
  545. data/third_party/boringssl/crypto/x509/x_spki.c +78 -0
  546. data/third_party/boringssl/crypto/x509/x_val.c +69 -0
  547. data/third_party/boringssl/crypto/x509/x_x509.c +227 -0
  548. data/third_party/boringssl/crypto/x509/x_x509a.c +197 -0
  549. data/third_party/boringssl/crypto/x509v3/ext_dat.h +129 -0
  550. data/third_party/boringssl/crypto/x509v3/pcy_cache.c +299 -0
  551. data/third_party/boringssl/crypto/x509v3/pcy_data.c +137 -0
  552. data/third_party/boringssl/crypto/x509v3/pcy_int.h +212 -0
  553. data/third_party/boringssl/crypto/x509v3/pcy_lib.c +165 -0
  554. data/third_party/boringssl/crypto/x509v3/pcy_map.c +133 -0
  555. data/third_party/boringssl/crypto/x509v3/pcy_node.c +197 -0
  556. data/third_party/boringssl/crypto/x509v3/pcy_tree.c +876 -0
  557. data/third_party/boringssl/crypto/x509v3/v3_akey.c +212 -0
  558. data/third_party/boringssl/crypto/x509v3/v3_akeya.c +71 -0
  559. data/third_party/boringssl/crypto/x509v3/v3_alt.c +622 -0
  560. data/third_party/boringssl/crypto/x509v3/v3_bcons.c +126 -0
  561. data/third_party/boringssl/crypto/x509v3/v3_bitst.c +141 -0
  562. data/third_party/boringssl/crypto/x509v3/v3_conf.c +459 -0
  563. data/third_party/boringssl/crypto/x509v3/v3_cpols.c +475 -0
  564. data/third_party/boringssl/crypto/x509v3/v3_crld.c +616 -0
  565. data/third_party/boringssl/crypto/x509v3/v3_enum.c +98 -0
  566. data/third_party/boringssl/crypto/x509v3/v3_extku.c +145 -0
  567. data/third_party/boringssl/crypto/x509v3/v3_genn.c +252 -0
  568. data/third_party/boringssl/crypto/x509v3/v3_ia5.c +117 -0
  569. data/third_party/boringssl/crypto/x509v3/v3_info.c +200 -0
  570. data/third_party/boringssl/crypto/x509v3/v3_int.c +87 -0
  571. data/third_party/boringssl/crypto/x509v3/v3_lib.c +335 -0
  572. data/third_party/boringssl/crypto/x509v3/v3_ncons.c +510 -0
  573. data/third_party/boringssl/crypto/x509v3/v3_pci.c +335 -0
  574. data/third_party/boringssl/crypto/x509v3/v3_pcia.c +56 -0
  575. data/third_party/boringssl/crypto/x509v3/v3_pcons.c +142 -0
  576. data/third_party/boringssl/crypto/x509v3/v3_pku.c +109 -0
  577. data/third_party/boringssl/crypto/x509v3/v3_pmaps.c +156 -0
  578. data/third_party/boringssl/crypto/x509v3/v3_prn.c +207 -0
  579. data/third_party/boringssl/crypto/x509v3/v3_purp.c +805 -0
  580. data/third_party/boringssl/crypto/x509v3/v3_skey.c +148 -0
  581. data/third_party/boringssl/crypto/x509v3/v3_sxnet.c +266 -0
  582. data/third_party/boringssl/crypto/x509v3/v3_utl.c +1322 -0
  583. data/third_party/boringssl/include/openssl/aead.h +346 -0
  584. data/third_party/boringssl/include/openssl/aes.h +158 -0
  585. data/third_party/boringssl/include/openssl/arm_arch.h +127 -0
  586. data/third_party/boringssl/include/openssl/asn1.h +1168 -0
  587. data/third_party/boringssl/include/openssl/asn1_mac.h +75 -0
  588. data/third_party/boringssl/include/openssl/asn1t.h +906 -0
  589. data/third_party/boringssl/include/openssl/base.h +261 -0
  590. data/third_party/boringssl/include/openssl/base64.h +184 -0
  591. data/third_party/boringssl/include/openssl/bio.h +902 -0
  592. data/third_party/boringssl/include/openssl/blowfish.h +93 -0
  593. data/third_party/boringssl/include/openssl/bn.h +885 -0
  594. data/third_party/boringssl/include/openssl/buf.h +118 -0
  595. data/third_party/boringssl/include/openssl/buffer.h +18 -0
  596. data/third_party/boringssl/include/openssl/bytestring.h +360 -0
  597. data/third_party/boringssl/include/openssl/cast.h +96 -0
  598. data/third_party/boringssl/include/openssl/chacha.h +37 -0
  599. data/third_party/boringssl/include/openssl/cipher.h +571 -0
  600. data/third_party/boringssl/include/openssl/cmac.h +76 -0
  601. data/third_party/boringssl/include/openssl/conf.h +145 -0
  602. data/third_party/boringssl/include/openssl/cpu.h +184 -0
  603. data/third_party/boringssl/include/openssl/crypto.h +68 -0
  604. data/third_party/boringssl/include/openssl/curve25519.h +88 -0
  605. data/third_party/boringssl/include/openssl/des.h +177 -0
  606. data/third_party/boringssl/include/openssl/dh.h +238 -0
  607. data/third_party/boringssl/include/openssl/digest.h +258 -0
  608. data/third_party/boringssl/include/openssl/dsa.h +343 -0
  609. data/third_party/boringssl/include/openssl/dtls1.h +16 -0
  610. data/third_party/boringssl/include/openssl/ec.h +355 -0
  611. data/third_party/boringssl/include/openssl/ec_key.h +280 -0
  612. data/third_party/boringssl/include/openssl/ecdh.h +102 -0
  613. data/third_party/boringssl/include/openssl/ecdsa.h +206 -0
  614. data/third_party/boringssl/include/openssl/engine.h +98 -0
  615. data/third_party/boringssl/include/openssl/err.h +487 -0
  616. data/third_party/boringssl/include/openssl/evp.h +750 -0
  617. data/third_party/boringssl/include/openssl/ex_data.h +213 -0
  618. data/third_party/boringssl/include/openssl/hkdf.h +44 -0
  619. data/third_party/boringssl/include/openssl/hmac.h +160 -0
  620. data/third_party/boringssl/include/openssl/lhash.h +192 -0
  621. data/third_party/boringssl/include/openssl/lhash_macros.h +132 -0
  622. data/third_party/boringssl/include/openssl/md4.h +102 -0
  623. data/third_party/boringssl/include/openssl/md5.h +107 -0
  624. data/third_party/boringssl/include/openssl/mem.h +140 -0
  625. data/third_party/boringssl/include/openssl/obj.h +198 -0
  626. data/third_party/boringssl/include/openssl/obj_mac.h +4140 -0
  627. data/third_party/boringssl/include/openssl/objects.h +18 -0
  628. data/third_party/boringssl/include/openssl/opensslfeatures.h +60 -0
  629. data/third_party/boringssl/include/openssl/opensslv.h +18 -0
  630. data/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  631. data/third_party/boringssl/include/openssl/pem.h +521 -0
  632. data/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  633. data/third_party/boringssl/include/openssl/pkcs7.h +16 -0
  634. data/third_party/boringssl/include/openssl/pkcs8.h +220 -0
  635. data/third_party/boringssl/include/openssl/poly1305.h +51 -0
  636. data/third_party/boringssl/include/openssl/pqueue.h +146 -0
  637. data/third_party/boringssl/include/openssl/rand.h +113 -0
  638. data/third_party/boringssl/include/openssl/rc4.h +90 -0
  639. data/third_party/boringssl/include/openssl/rsa.h +637 -0
  640. data/third_party/boringssl/include/openssl/safestack.h +16 -0
  641. data/third_party/boringssl/include/openssl/sha.h +256 -0
  642. data/third_party/boringssl/include/openssl/srtp.h +18 -0
  643. data/third_party/boringssl/include/openssl/ssl.h +4466 -0
  644. data/third_party/boringssl/include/openssl/ssl3.h +441 -0
  645. data/third_party/boringssl/include/openssl/stack.h +298 -0
  646. data/third_party/boringssl/include/openssl/stack_macros.h +4190 -0
  647. data/third_party/boringssl/include/openssl/thread.h +173 -0
  648. data/third_party/boringssl/include/openssl/time_support.h +90 -0
  649. data/third_party/boringssl/include/openssl/tls1.h +653 -0
  650. data/third_party/boringssl/include/openssl/type_check.h +91 -0
  651. data/third_party/boringssl/include/openssl/x509.h +1258 -0
  652. data/third_party/boringssl/include/openssl/x509_vfy.h +611 -0
  653. data/third_party/boringssl/include/openssl/x509v3.h +798 -0
  654. data/third_party/boringssl/ssl/custom_extensions.c +257 -0
  655. data/third_party/boringssl/ssl/d1_both.c +880 -0
  656. data/third_party/boringssl/ssl/d1_clnt.c +566 -0
  657. data/third_party/boringssl/ssl/d1_lib.c +340 -0
  658. data/third_party/boringssl/ssl/d1_meth.c +130 -0
  659. data/third_party/boringssl/ssl/d1_pkt.c +578 -0
  660. data/third_party/boringssl/ssl/d1_srtp.c +234 -0
  661. data/third_party/boringssl/ssl/d1_srvr.c +485 -0
  662. data/third_party/boringssl/ssl/dtls_record.c +308 -0
  663. data/third_party/boringssl/ssl/internal.h +1276 -0
  664. data/third_party/boringssl/ssl/pqueue/pqueue.c +197 -0
  665. data/third_party/boringssl/ssl/s3_both.c +571 -0
  666. data/third_party/boringssl/ssl/s3_clnt.c +2241 -0
  667. data/third_party/boringssl/ssl/s3_enc.c +494 -0
  668. data/third_party/boringssl/ssl/s3_lib.c +587 -0
  669. data/third_party/boringssl/ssl/s3_meth.c +166 -0
  670. data/third_party/boringssl/ssl/s3_pkt.c +732 -0
  671. data/third_party/boringssl/ssl/s3_srvr.c +2536 -0
  672. data/third_party/boringssl/ssl/ssl_aead_ctx.c +300 -0
  673. data/third_party/boringssl/ssl/ssl_asn1.c +718 -0
  674. data/third_party/boringssl/ssl/ssl_buffer.c +319 -0
  675. data/third_party/boringssl/ssl/ssl_cert.c +539 -0
  676. data/third_party/boringssl/ssl/ssl_cipher.c +2003 -0
  677. data/third_party/boringssl/ssl/ssl_file.c +633 -0
  678. data/third_party/boringssl/ssl/ssl_lib.c +2653 -0
  679. data/third_party/boringssl/ssl/ssl_rsa.c +423 -0
  680. data/third_party/boringssl/ssl/ssl_session.c +764 -0
  681. data/third_party/boringssl/ssl/ssl_stat.c +591 -0
  682. data/third_party/boringssl/ssl/t1_enc.c +708 -0
  683. data/third_party/boringssl/ssl/t1_lib.c +2905 -0
  684. data/third_party/boringssl/ssl/test/async_bio.h +45 -0
  685. data/third_party/boringssl/ssl/test/packeted_bio.h +44 -0
  686. data/third_party/boringssl/ssl/test/scoped_types.h +28 -0
  687. data/third_party/boringssl/ssl/test/test_config.h +108 -0
  688. data/third_party/boringssl/ssl/tls_record.c +342 -0
  689. data/third_party/nanopb/pb.h +547 -0
  690. data/third_party/nanopb/pb_common.c +97 -0
  691. data/third_party/nanopb/pb_common.h +42 -0
  692. data/third_party/nanopb/pb_decode.c +1319 -0
  693. data/third_party/nanopb/pb_decode.h +149 -0
  694. data/third_party/nanopb/pb_encode.c +690 -0
  695. data/third_party/nanopb/pb_encode.h +154 -0
  696. data/third_party/zlib/adler32.c +179 -0
  697. data/third_party/zlib/compress.c +80 -0
  698. data/third_party/zlib/crc32.c +425 -0
  699. data/third_party/zlib/crc32.h +441 -0
  700. data/third_party/zlib/deflate.c +1967 -0
  701. data/third_party/zlib/deflate.h +346 -0
  702. data/third_party/zlib/gzclose.c +25 -0
  703. data/third_party/zlib/gzguts.h +209 -0
  704. data/third_party/zlib/gzlib.c +634 -0
  705. data/third_party/zlib/gzread.c +594 -0
  706. data/third_party/zlib/gzwrite.c +577 -0
  707. data/third_party/zlib/infback.c +640 -0
  708. data/third_party/zlib/inffast.c +340 -0
  709. data/third_party/zlib/inffast.h +11 -0
  710. data/third_party/zlib/inffixed.h +94 -0
  711. data/third_party/zlib/inflate.c +1512 -0
  712. data/third_party/zlib/inflate.h +122 -0
  713. data/third_party/zlib/inftrees.c +306 -0
  714. data/third_party/zlib/inftrees.h +62 -0
  715. data/third_party/zlib/trees.c +1226 -0
  716. data/third_party/zlib/trees.h +128 -0
  717. data/third_party/zlib/uncompr.c +59 -0
  718. data/third_party/zlib/zconf.h +511 -0
  719. data/third_party/zlib/zlib.h +1768 -0
  720. data/third_party/zlib/zutil.c +324 -0
  721. data/third_party/zlib/zutil.h +253 -0
  722. metadata +504 -20
  723. data/Rakefile +0 -63
  724. data/src/ruby/pb/grpc/health/v1alpha/health.rb +0 -29
@@ -70,39 +70,38 @@ typedef struct {
70
70
  /* index (in output) of the header for the current frame */
71
71
  size_t header_idx;
72
72
  /* have we seen a regular (non-colon-prefixed) header yet? */
73
- gpr_uint8 seen_regular_header;
73
+ uint8_t seen_regular_header;
74
74
  /* output stream id */
75
- gpr_uint32 stream_id;
75
+ uint32_t stream_id;
76
76
  gpr_slice_buffer *output;
77
77
  } framer_state;
78
78
 
79
79
  /* fills p (which is expected to be 9 bytes long) with a data frame header */
80
- static void fill_header(gpr_uint8 *p, gpr_uint8 type, gpr_uint32 id, size_t len,
81
- gpr_uint8 flags) {
80
+ static void fill_header(uint8_t *p, uint8_t type, uint32_t id, size_t len,
81
+ uint8_t flags) {
82
82
  GPR_ASSERT(len < 16777316);
83
- *p++ = (gpr_uint8)(len >> 16);
84
- *p++ = (gpr_uint8)(len >> 8);
85
- *p++ = (gpr_uint8)(len);
83
+ *p++ = (uint8_t)(len >> 16);
84
+ *p++ = (uint8_t)(len >> 8);
85
+ *p++ = (uint8_t)(len);
86
86
  *p++ = type;
87
87
  *p++ = flags;
88
- *p++ = (gpr_uint8)(id >> 24);
89
- *p++ = (gpr_uint8)(id >> 16);
90
- *p++ = (gpr_uint8)(id >> 8);
91
- *p++ = (gpr_uint8)(id);
88
+ *p++ = (uint8_t)(id >> 24);
89
+ *p++ = (uint8_t)(id >> 16);
90
+ *p++ = (uint8_t)(id >> 8);
91
+ *p++ = (uint8_t)(id);
92
92
  }
93
93
 
94
94
  /* finish a frame - fill in the previously reserved header */
95
95
  static void finish_frame(framer_state *st, int is_header_boundary,
96
96
  int is_last_in_stream) {
97
- gpr_uint8 type = 0xff;
97
+ uint8_t type = 0xff;
98
98
  type = st->is_first_frame ? GRPC_CHTTP2_FRAME_HEADER
99
99
  : GRPC_CHTTP2_FRAME_CONTINUATION;
100
100
  fill_header(
101
101
  GPR_SLICE_START_PTR(st->output->slices[st->header_idx]), type,
102
102
  st->stream_id, st->output->length - st->output_length_at_start_of_frame,
103
- (gpr_uint8)(
104
- (is_last_in_stream ? GRPC_CHTTP2_DATA_FLAG_END_STREAM : 0) |
105
- (is_header_boundary ? GRPC_CHTTP2_DATA_FLAG_END_HEADERS : 0)));
103
+ (uint8_t)((is_last_in_stream ? GRPC_CHTTP2_DATA_FLAG_END_STREAM : 0) |
104
+ (is_header_boundary ? GRPC_CHTTP2_DATA_FLAG_END_HEADERS : 0)));
106
105
  st->is_first_frame = 0;
107
106
  }
108
107
 
@@ -127,7 +126,7 @@ static void ensure_space(framer_state *st, size_t need_bytes) {
127
126
  }
128
127
 
129
128
  /* increment a filter count, halve all counts if one element reaches max */
130
- static void inc_filter(gpr_uint8 idx, gpr_uint32 *sum, gpr_uint8 *elems) {
129
+ static void inc_filter(uint8_t idx, uint32_t *sum, uint8_t *elems) {
131
130
  elems[idx]++;
132
131
  if (elems[idx] < 255) {
133
132
  (*sum)++;
@@ -157,7 +156,7 @@ static void add_header_data(framer_state *st, gpr_slice slice) {
157
156
  }
158
157
  }
159
158
 
160
- static gpr_uint8 *add_tiny_header_data(framer_state *st, size_t len) {
159
+ static uint8_t *add_tiny_header_data(framer_state *st, size_t len) {
161
160
  ensure_space(st, len);
162
161
  return gpr_slice_buffer_tiny_add(st->output, len);
163
162
  }
@@ -168,17 +167,17 @@ static void evict_entry(grpc_chttp2_hpack_compressor *c) {
168
167
  GPR_ASSERT(c->table_size >=
169
168
  c->table_elem_size[c->tail_remote_index % c->cap_table_elems]);
170
169
  GPR_ASSERT(c->table_elems > 0);
171
- c->table_size = (gpr_uint16)(
172
- c->table_size -
173
- c->table_elem_size[c->tail_remote_index % c->cap_table_elems]);
170
+ c->table_size =
171
+ (uint16_t)(c->table_size -
172
+ c->table_elem_size[c->tail_remote_index % c->cap_table_elems]);
174
173
  c->table_elems--;
175
174
  }
176
175
 
177
176
  /* add an element to the decoder table */
178
177
  static void add_elem(grpc_chttp2_hpack_compressor *c, grpc_mdelem *elem) {
179
- gpr_uint32 key_hash = elem->key->hash;
180
- gpr_uint32 elem_hash = GRPC_MDSTR_KV_HASH(key_hash, elem->value->hash);
181
- gpr_uint32 new_index = c->tail_remote_index + c->table_elems + 1;
178
+ uint32_t key_hash = elem->key->hash;
179
+ uint32_t elem_hash = GRPC_MDSTR_KV_HASH(key_hash, elem->value->hash);
180
+ uint32_t new_index = c->tail_remote_index + c->table_elems + 1;
182
181
  size_t elem_size = 32 + GPR_SLICE_LENGTH(elem->key->slice) +
183
182
  GPR_SLICE_LENGTH(elem->value->slice);
184
183
 
@@ -198,8 +197,8 @@ static void add_elem(grpc_chttp2_hpack_compressor *c, grpc_mdelem *elem) {
198
197
  evict_entry(c);
199
198
  }
200
199
  GPR_ASSERT(c->table_elems < c->max_table_size);
201
- c->table_elem_size[new_index % c->cap_table_elems] = (gpr_uint16)elem_size;
202
- c->table_size = (gpr_uint16)(c->table_size + elem_size);
200
+ c->table_elem_size[new_index % c->cap_table_elems] = (uint16_t)elem_size;
201
+ c->table_size = (uint16_t)(c->table_size + elem_size);
203
202
  c->table_elems++;
204
203
 
205
204
  /* Store this element into {entries,indices}_elem */
@@ -254,14 +253,14 @@ static void add_elem(grpc_chttp2_hpack_compressor *c, grpc_mdelem *elem) {
254
253
  }
255
254
  }
256
255
 
257
- static void emit_indexed(grpc_chttp2_hpack_compressor *c, gpr_uint32 elem_index,
256
+ static void emit_indexed(grpc_chttp2_hpack_compressor *c, uint32_t elem_index,
258
257
  framer_state *st) {
259
- gpr_uint32 len = GRPC_CHTTP2_VARINT_LENGTH(elem_index, 1);
258
+ uint32_t len = GRPC_CHTTP2_VARINT_LENGTH(elem_index, 1);
260
259
  GRPC_CHTTP2_WRITE_VARINT(elem_index, 1, 0x80, add_tiny_header_data(st, len),
261
260
  len);
262
261
  }
263
262
 
264
- static gpr_slice get_wire_value(grpc_mdelem *elem, gpr_uint8 *huffman_prefix) {
263
+ static gpr_slice get_wire_value(grpc_mdelem *elem, uint8_t *huffman_prefix) {
265
264
  if (grpc_is_binary_header((const char *)GPR_SLICE_START_PTR(elem->key->slice),
266
265
  GPR_SLICE_LENGTH(elem->key->slice))) {
267
266
  *huffman_prefix = 0x80;
@@ -273,49 +272,49 @@ static gpr_slice get_wire_value(grpc_mdelem *elem, gpr_uint8 *huffman_prefix) {
273
272
  }
274
273
 
275
274
  static void emit_lithdr_incidx(grpc_chttp2_hpack_compressor *c,
276
- gpr_uint32 key_index, grpc_mdelem *elem,
275
+ uint32_t key_index, grpc_mdelem *elem,
277
276
  framer_state *st) {
278
- gpr_uint32 len_pfx = GRPC_CHTTP2_VARINT_LENGTH(key_index, 2);
279
- gpr_uint8 huffman_prefix;
277
+ uint32_t len_pfx = GRPC_CHTTP2_VARINT_LENGTH(key_index, 2);
278
+ uint8_t huffman_prefix;
280
279
  gpr_slice value_slice = get_wire_value(elem, &huffman_prefix);
281
280
  size_t len_val = GPR_SLICE_LENGTH(value_slice);
282
- gpr_uint32 len_val_len;
283
- GPR_ASSERT(len_val <= GPR_UINT32_MAX);
284
- len_val_len = GRPC_CHTTP2_VARINT_LENGTH((gpr_uint32)len_val, 1);
281
+ uint32_t len_val_len;
282
+ GPR_ASSERT(len_val <= UINT32_MAX);
283
+ len_val_len = GRPC_CHTTP2_VARINT_LENGTH((uint32_t)len_val, 1);
285
284
  GRPC_CHTTP2_WRITE_VARINT(key_index, 2, 0x40,
286
285
  add_tiny_header_data(st, len_pfx), len_pfx);
287
- GRPC_CHTTP2_WRITE_VARINT((gpr_uint32)len_val, 1, 0x00,
286
+ GRPC_CHTTP2_WRITE_VARINT((uint32_t)len_val, 1, huffman_prefix,
288
287
  add_tiny_header_data(st, len_val_len), len_val_len);
289
288
  add_header_data(st, gpr_slice_ref(value_slice));
290
289
  }
291
290
 
292
291
  static void emit_lithdr_noidx(grpc_chttp2_hpack_compressor *c,
293
- gpr_uint32 key_index, grpc_mdelem *elem,
292
+ uint32_t key_index, grpc_mdelem *elem,
294
293
  framer_state *st) {
295
- gpr_uint32 len_pfx = GRPC_CHTTP2_VARINT_LENGTH(key_index, 4);
296
- gpr_uint8 huffman_prefix;
294
+ uint32_t len_pfx = GRPC_CHTTP2_VARINT_LENGTH(key_index, 4);
295
+ uint8_t huffman_prefix;
297
296
  gpr_slice value_slice = get_wire_value(elem, &huffman_prefix);
298
297
  size_t len_val = GPR_SLICE_LENGTH(value_slice);
299
- gpr_uint32 len_val_len;
300
- GPR_ASSERT(len_val <= GPR_UINT32_MAX);
301
- len_val_len = GRPC_CHTTP2_VARINT_LENGTH((gpr_uint32)len_val, 1);
298
+ uint32_t len_val_len;
299
+ GPR_ASSERT(len_val <= UINT32_MAX);
300
+ len_val_len = GRPC_CHTTP2_VARINT_LENGTH((uint32_t)len_val, 1);
302
301
  GRPC_CHTTP2_WRITE_VARINT(key_index, 4, 0x00,
303
302
  add_tiny_header_data(st, len_pfx), len_pfx);
304
- GRPC_CHTTP2_WRITE_VARINT((gpr_uint32)len_val, 1, 0x00,
303
+ GRPC_CHTTP2_WRITE_VARINT((uint32_t)len_val, 1, huffman_prefix,
305
304
  add_tiny_header_data(st, len_val_len), len_val_len);
306
305
  add_header_data(st, gpr_slice_ref(value_slice));
307
306
  }
308
307
 
309
308
  static void emit_lithdr_incidx_v(grpc_chttp2_hpack_compressor *c,
310
309
  grpc_mdelem *elem, framer_state *st) {
311
- gpr_uint32 len_key = (gpr_uint32)GPR_SLICE_LENGTH(elem->key->slice);
312
- gpr_uint8 huffman_prefix;
310
+ uint32_t len_key = (uint32_t)GPR_SLICE_LENGTH(elem->key->slice);
311
+ uint8_t huffman_prefix;
313
312
  gpr_slice value_slice = get_wire_value(elem, &huffman_prefix);
314
- gpr_uint32 len_val = (gpr_uint32)GPR_SLICE_LENGTH(value_slice);
315
- gpr_uint32 len_key_len = GRPC_CHTTP2_VARINT_LENGTH(len_key, 1);
316
- gpr_uint32 len_val_len = GRPC_CHTTP2_VARINT_LENGTH(len_val, 1);
317
- GPR_ASSERT(len_key <= GPR_UINT32_MAX);
318
- GPR_ASSERT(GPR_SLICE_LENGTH(value_slice) <= GPR_UINT32_MAX);
313
+ uint32_t len_val = (uint32_t)GPR_SLICE_LENGTH(value_slice);
314
+ uint32_t len_key_len = GRPC_CHTTP2_VARINT_LENGTH(len_key, 1);
315
+ uint32_t len_val_len = GRPC_CHTTP2_VARINT_LENGTH(len_val, 1);
316
+ GPR_ASSERT(len_key <= UINT32_MAX);
317
+ GPR_ASSERT(GPR_SLICE_LENGTH(value_slice) <= UINT32_MAX);
319
318
  *add_tiny_header_data(st, 1) = 0x40;
320
319
  GRPC_CHTTP2_WRITE_VARINT(len_key, 1, 0x00,
321
320
  add_tiny_header_data(st, len_key_len), len_key_len);
@@ -327,14 +326,14 @@ static void emit_lithdr_incidx_v(grpc_chttp2_hpack_compressor *c,
327
326
 
328
327
  static void emit_lithdr_noidx_v(grpc_chttp2_hpack_compressor *c,
329
328
  grpc_mdelem *elem, framer_state *st) {
330
- gpr_uint32 len_key = (gpr_uint32)GPR_SLICE_LENGTH(elem->key->slice);
331
- gpr_uint8 huffman_prefix;
329
+ uint32_t len_key = (uint32_t)GPR_SLICE_LENGTH(elem->key->slice);
330
+ uint8_t huffman_prefix;
332
331
  gpr_slice value_slice = get_wire_value(elem, &huffman_prefix);
333
- gpr_uint32 len_val = (gpr_uint32)GPR_SLICE_LENGTH(value_slice);
334
- gpr_uint32 len_key_len = GRPC_CHTTP2_VARINT_LENGTH(len_key, 1);
335
- gpr_uint32 len_val_len = GRPC_CHTTP2_VARINT_LENGTH(len_val, 1);
336
- GPR_ASSERT(len_key <= GPR_UINT32_MAX);
337
- GPR_ASSERT(GPR_SLICE_LENGTH(value_slice) <= GPR_UINT32_MAX);
332
+ uint32_t len_val = (uint32_t)GPR_SLICE_LENGTH(value_slice);
333
+ uint32_t len_key_len = GRPC_CHTTP2_VARINT_LENGTH(len_key, 1);
334
+ uint32_t len_val_len = GRPC_CHTTP2_VARINT_LENGTH(len_val, 1);
335
+ GPR_ASSERT(len_key <= UINT32_MAX);
336
+ GPR_ASSERT(GPR_SLICE_LENGTH(value_slice) <= UINT32_MAX);
338
337
  *add_tiny_header_data(st, 1) = 0x00;
339
338
  GRPC_CHTTP2_WRITE_VARINT(len_key, 1, 0x00,
340
339
  add_tiny_header_data(st, len_key_len), len_key_len);
@@ -346,14 +345,13 @@ static void emit_lithdr_noidx_v(grpc_chttp2_hpack_compressor *c,
346
345
 
347
346
  static void emit_advertise_table_size_change(grpc_chttp2_hpack_compressor *c,
348
347
  framer_state *st) {
349
- gpr_uint32 len = GRPC_CHTTP2_VARINT_LENGTH(c->max_table_size, 3);
348
+ uint32_t len = GRPC_CHTTP2_VARINT_LENGTH(c->max_table_size, 3);
350
349
  GRPC_CHTTP2_WRITE_VARINT(c->max_table_size, 3, 0x20,
351
350
  add_tiny_header_data(st, len), len);
352
351
  c->advertise_table_size_change = 0;
353
352
  }
354
353
 
355
- static gpr_uint32 dynidx(grpc_chttp2_hpack_compressor *c,
356
- gpr_uint32 elem_index) {
354
+ static uint32_t dynidx(grpc_chttp2_hpack_compressor *c, uint32_t elem_index) {
357
355
  return 1 + GRPC_CHTTP2_LAST_STATIC_ENTRY + c->tail_remote_index +
358
356
  c->table_elems - elem_index;
359
357
  }
@@ -361,10 +359,10 @@ static gpr_uint32 dynidx(grpc_chttp2_hpack_compressor *c,
361
359
  /* encode an mdelem */
362
360
  static void hpack_enc(grpc_chttp2_hpack_compressor *c, grpc_mdelem *elem,
363
361
  framer_state *st) {
364
- gpr_uint32 key_hash = elem->key->hash;
365
- gpr_uint32 elem_hash = GRPC_MDSTR_KV_HASH(key_hash, elem->value->hash);
362
+ uint32_t key_hash = elem->key->hash;
363
+ uint32_t elem_hash = GRPC_MDSTR_KV_HASH(key_hash, elem->value->hash);
366
364
  size_t decoder_space_usage;
367
- gpr_uint32 indices_key;
365
+ uint32_t indices_key;
368
366
  int should_add_elem;
369
367
 
370
368
  GPR_ASSERT(GPR_SLICE_LENGTH(elem->key->slice) > 0);
@@ -463,9 +461,7 @@ static void deadline_enc(grpc_chttp2_hpack_compressor *c, gpr_timespec deadline,
463
461
  GRPC_MDELEM_UNREF(mdelem);
464
462
  }
465
463
 
466
- static gpr_uint32 elems_for_bytes(gpr_uint32 bytes) {
467
- return (bytes + 31) / 32;
468
- }
464
+ static uint32_t elems_for_bytes(uint32_t bytes) { return (bytes + 31) / 32; }
469
465
 
470
466
  void grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c) {
471
467
  memset(c, 0, sizeof(*c));
@@ -489,21 +485,21 @@ void grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c) {
489
485
  }
490
486
 
491
487
  void grpc_chttp2_hpack_compressor_set_max_usable_size(
492
- grpc_chttp2_hpack_compressor *c, gpr_uint32 max_table_size) {
488
+ grpc_chttp2_hpack_compressor *c, uint32_t max_table_size) {
493
489
  c->max_usable_size = max_table_size;
494
490
  grpc_chttp2_hpack_compressor_set_max_table_size(
495
491
  c, GPR_MIN(c->max_table_size, max_table_size));
496
492
  }
497
493
 
498
- static void rebuild_elems(grpc_chttp2_hpack_compressor *c, gpr_uint32 new_cap) {
499
- gpr_uint16 *table_elem_size = gpr_malloc(sizeof(*table_elem_size) * new_cap);
500
- gpr_uint32 i;
494
+ static void rebuild_elems(grpc_chttp2_hpack_compressor *c, uint32_t new_cap) {
495
+ uint16_t *table_elem_size = gpr_malloc(sizeof(*table_elem_size) * new_cap);
496
+ uint32_t i;
501
497
 
502
498
  memset(table_elem_size, 0, sizeof(*table_elem_size) * new_cap);
503
499
  GPR_ASSERT(c->table_elems <= new_cap);
504
500
 
505
501
  for (i = 0; i < c->table_elems; i++) {
506
- gpr_uint32 ofs = c->tail_remote_index + i + 1;
502
+ uint32_t ofs = c->tail_remote_index + i + 1;
507
503
  table_elem_size[ofs % new_cap] =
508
504
  c->table_elem_size[ofs % c->cap_table_elems];
509
505
  }
@@ -514,7 +510,7 @@ static void rebuild_elems(grpc_chttp2_hpack_compressor *c, gpr_uint32 new_cap) {
514
510
  }
515
511
 
516
512
  void grpc_chttp2_hpack_compressor_set_max_table_size(
517
- grpc_chttp2_hpack_compressor *c, gpr_uint32 max_table_size) {
513
+ grpc_chttp2_hpack_compressor *c, uint32_t max_table_size) {
518
514
  max_table_size = GPR_MIN(max_table_size, c->max_usable_size);
519
515
  if (max_table_size == c->max_table_size) {
520
516
  return;
@@ -527,7 +523,7 @@ void grpc_chttp2_hpack_compressor_set_max_table_size(
527
523
  if (c->max_table_elems > c->cap_table_elems) {
528
524
  rebuild_elems(c, GPR_MAX(c->max_table_elems, 2 * c->cap_table_elems));
529
525
  } else if (c->max_table_elems < c->cap_table_elems / 3) {
530
- gpr_uint32 new_cap = GPR_MAX(c->max_table_elems, 16);
526
+ uint32_t new_cap = GPR_MAX(c->max_table_elems, 16);
531
527
  if (new_cap != c->cap_table_elems) {
532
528
  rebuild_elems(c, new_cap);
533
529
  }
@@ -537,7 +533,7 @@ void grpc_chttp2_hpack_compressor_set_max_table_size(
537
533
  }
538
534
 
539
535
  void grpc_chttp2_encode_header(grpc_chttp2_hpack_compressor *c,
540
- gpr_uint32 stream_id,
536
+ uint32_t stream_id,
541
537
  grpc_metadata_batch *metadata, int is_eof,
542
538
  gpr_slice_buffer *outbuf) {
543
539
  framer_state st;
@@ -49,46 +49,46 @@
49
49
  #define GRPC_CHTTP2_HPACKC_MAX_TABLE_SIZE (1024 * 1024)
50
50
 
51
51
  typedef struct {
52
- gpr_uint32 filter_elems_sum;
53
- gpr_uint32 max_table_size;
54
- gpr_uint32 max_table_elems;
55
- gpr_uint32 cap_table_elems;
52
+ uint32_t filter_elems_sum;
53
+ uint32_t max_table_size;
54
+ uint32_t max_table_elems;
55
+ uint32_t cap_table_elems;
56
56
  /** if non-zero, advertise to the decoder that we'll start using a table
57
57
  of this size */
58
- gpr_uint8 advertise_table_size_change;
58
+ uint8_t advertise_table_size_change;
59
59
  /** maximum number of bytes we'll use for the decode table (to guard against
60
60
  peers ooming us by setting decode table size high) */
61
- gpr_uint32 max_usable_size;
61
+ uint32_t max_usable_size;
62
62
  /* one before the lowest usable table index */
63
- gpr_uint32 tail_remote_index;
64
- gpr_uint32 table_size;
65
- gpr_uint32 table_elems;
63
+ uint32_t tail_remote_index;
64
+ uint32_t table_size;
65
+ uint32_t table_elems;
66
66
 
67
67
  /* filter tables for elems: this tables provides an approximate
68
68
  popularity count for particular hashes, and are used to determine whether
69
69
  a new literal should be added to the compression table or not.
70
70
  They track a single integer that counts how often a particular value has
71
71
  been seen. When that count reaches max (255), all values are halved. */
72
- gpr_uint8 filter_elems[GRPC_CHTTP2_HPACKC_NUM_FILTERS];
72
+ uint8_t filter_elems[GRPC_CHTTP2_HPACKC_NUM_FILTERS];
73
73
 
74
74
  /* entry tables for keys & elems: these tables track values that have been
75
75
  seen and *may* be in the decompressor table */
76
76
  grpc_mdstr *entries_keys[GRPC_CHTTP2_HPACKC_NUM_VALUES];
77
77
  grpc_mdelem *entries_elems[GRPC_CHTTP2_HPACKC_NUM_VALUES];
78
- gpr_uint32 indices_keys[GRPC_CHTTP2_HPACKC_NUM_VALUES];
79
- gpr_uint32 indices_elems[GRPC_CHTTP2_HPACKC_NUM_VALUES];
78
+ uint32_t indices_keys[GRPC_CHTTP2_HPACKC_NUM_VALUES];
79
+ uint32_t indices_elems[GRPC_CHTTP2_HPACKC_NUM_VALUES];
80
80
 
81
- gpr_uint16 *table_elem_size;
81
+ uint16_t *table_elem_size;
82
82
  } grpc_chttp2_hpack_compressor;
83
83
 
84
84
  void grpc_chttp2_hpack_compressor_init(grpc_chttp2_hpack_compressor *c);
85
85
  void grpc_chttp2_hpack_compressor_destroy(grpc_chttp2_hpack_compressor *c);
86
86
  void grpc_chttp2_hpack_compressor_set_max_table_size(
87
- grpc_chttp2_hpack_compressor *c, gpr_uint32 max_table_size);
87
+ grpc_chttp2_hpack_compressor *c, uint32_t max_table_size);
88
88
  void grpc_chttp2_hpack_compressor_set_max_usable_size(
89
- grpc_chttp2_hpack_compressor *c, gpr_uint32 max_table_size);
89
+ grpc_chttp2_hpack_compressor *c, uint32_t max_table_size);
90
90
 
91
- void grpc_chttp2_encode_header(grpc_chttp2_hpack_compressor *c, gpr_uint32 id,
91
+ void grpc_chttp2_encode_header(grpc_chttp2_hpack_compressor *c, uint32_t id,
92
92
  grpc_metadata_batch *metadata, int is_eof,
93
93
  gpr_slice_buffer *outbuf);
94
94
 
@@ -75,63 +75,63 @@ typedef enum {
75
75
  a set of indirect jumps, and so not waste stack space. */
76
76
 
77
77
  /* forward declarations for parsing states */
78
- static int parse_begin(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
79
- const gpr_uint8 *end);
80
- static int parse_error(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
81
- const gpr_uint8 *end);
82
- static int parse_illegal_op(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
83
- const gpr_uint8 *end);
84
-
85
- static int parse_string_prefix(grpc_chttp2_hpack_parser *p,
86
- const gpr_uint8 *cur, const gpr_uint8 *end);
87
- static int parse_key_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
88
- const gpr_uint8 *end);
78
+ static int parse_begin(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
79
+ const uint8_t *end);
80
+ static int parse_error(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
81
+ const uint8_t *end);
82
+ static int parse_illegal_op(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
83
+ const uint8_t *end);
84
+
85
+ static int parse_string_prefix(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
86
+ const uint8_t *end);
87
+ static int parse_key_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
88
+ const uint8_t *end);
89
89
  static int parse_value_string_with_indexed_key(grpc_chttp2_hpack_parser *p,
90
- const gpr_uint8 *cur,
91
- const gpr_uint8 *end);
90
+ const uint8_t *cur,
91
+ const uint8_t *end);
92
92
  static int parse_value_string_with_literal_key(grpc_chttp2_hpack_parser *p,
93
- const gpr_uint8 *cur,
94
- const gpr_uint8 *end);
95
-
96
- static int parse_value0(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
97
- const gpr_uint8 *end);
98
- static int parse_value1(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
99
- const gpr_uint8 *end);
100
- static int parse_value2(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
101
- const gpr_uint8 *end);
102
- static int parse_value3(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
103
- const gpr_uint8 *end);
104
- static int parse_value4(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
105
- const gpr_uint8 *end);
106
- static int parse_value5up(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
107
- const gpr_uint8 *end);
108
-
109
- static int parse_indexed_field(grpc_chttp2_hpack_parser *p,
110
- const gpr_uint8 *cur, const gpr_uint8 *end);
93
+ const uint8_t *cur,
94
+ const uint8_t *end);
95
+
96
+ static int parse_value0(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
97
+ const uint8_t *end);
98
+ static int parse_value1(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
99
+ const uint8_t *end);
100
+ static int parse_value2(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
101
+ const uint8_t *end);
102
+ static int parse_value3(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
103
+ const uint8_t *end);
104
+ static int parse_value4(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
105
+ const uint8_t *end);
106
+ static int parse_value5up(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
107
+ const uint8_t *end);
108
+
109
+ static int parse_indexed_field(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
110
+ const uint8_t *end);
111
111
  static int parse_indexed_field_x(grpc_chttp2_hpack_parser *p,
112
- const gpr_uint8 *cur, const gpr_uint8 *end);
113
- static int parse_lithdr_incidx(grpc_chttp2_hpack_parser *p,
114
- const gpr_uint8 *cur, const gpr_uint8 *end);
112
+ const uint8_t *cur, const uint8_t *end);
113
+ static int parse_lithdr_incidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
114
+ const uint8_t *end);
115
115
  static int parse_lithdr_incidx_x(grpc_chttp2_hpack_parser *p,
116
- const gpr_uint8 *cur, const gpr_uint8 *end);
116
+ const uint8_t *cur, const uint8_t *end);
117
117
  static int parse_lithdr_incidx_v(grpc_chttp2_hpack_parser *p,
118
- const gpr_uint8 *cur, const gpr_uint8 *end);
119
- static int parse_lithdr_notidx(grpc_chttp2_hpack_parser *p,
120
- const gpr_uint8 *cur, const gpr_uint8 *end);
118
+ const uint8_t *cur, const uint8_t *end);
119
+ static int parse_lithdr_notidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
120
+ const uint8_t *end);
121
121
  static int parse_lithdr_notidx_x(grpc_chttp2_hpack_parser *p,
122
- const gpr_uint8 *cur, const gpr_uint8 *end);
122
+ const uint8_t *cur, const uint8_t *end);
123
123
  static int parse_lithdr_notidx_v(grpc_chttp2_hpack_parser *p,
124
- const gpr_uint8 *cur, const gpr_uint8 *end);
125
- static int parse_lithdr_nvridx(grpc_chttp2_hpack_parser *p,
126
- const gpr_uint8 *cur, const gpr_uint8 *end);
124
+ const uint8_t *cur, const uint8_t *end);
125
+ static int parse_lithdr_nvridx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
126
+ const uint8_t *end);
127
127
  static int parse_lithdr_nvridx_x(grpc_chttp2_hpack_parser *p,
128
- const gpr_uint8 *cur, const gpr_uint8 *end);
128
+ const uint8_t *cur, const uint8_t *end);
129
129
  static int parse_lithdr_nvridx_v(grpc_chttp2_hpack_parser *p,
130
- const gpr_uint8 *cur, const gpr_uint8 *end);
131
- static int parse_max_tbl_size(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
132
- const gpr_uint8 *end);
133
- static int parse_max_tbl_size_x(grpc_chttp2_hpack_parser *p,
134
- const gpr_uint8 *cur, const gpr_uint8 *end);
130
+ const uint8_t *cur, const uint8_t *end);
131
+ static int parse_max_tbl_size(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
132
+ const uint8_t *end);
133
+ static int parse_max_tbl_size_x(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
134
+ const uint8_t *end);
135
135
 
136
136
  /* we translate the first byte of a hpack field into one of these decoding
137
137
  cases, then use a lookup table to jump directly to the appropriate parser.
@@ -167,7 +167,7 @@ static const grpc_chttp2_hpack_parser_state first_byte_action[] = {
167
167
 
168
168
  /* indexes the first byte to a parse state function - generated by
169
169
  gen_hpack_tables.c */
170
- static const gpr_uint8 first_byte_lut[256] = {
170
+ static const uint8_t first_byte_lut[256] = {
171
171
  LITHDR_NOTIDX_V, LITHDR_NOTIDX, LITHDR_NOTIDX, LITHDR_NOTIDX,
172
172
  LITHDR_NOTIDX, LITHDR_NOTIDX, LITHDR_NOTIDX, LITHDR_NOTIDX,
173
173
  LITHDR_NOTIDX, LITHDR_NOTIDX, LITHDR_NOTIDX, LITHDR_NOTIDX,
@@ -239,7 +239,7 @@ static const gpr_uint8 first_byte_lut[256] = {
239
239
  considered returns the next state.
240
240
 
241
241
  generated by gen_hpack_tables.c */
242
- static const gpr_uint8 next_tbl[256] = {
242
+ static const uint8_t next_tbl[256] = {
243
243
  0, 1, 2, 3, 4, 1, 2, 5, 6, 1, 7, 8, 1, 3, 3, 9, 10, 11, 1, 1,
244
244
  1, 12, 1, 2, 13, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
245
245
  14, 1, 15, 16, 1, 17, 1, 15, 2, 7, 3, 18, 19, 1, 1, 1, 1, 20, 1, 1,
@@ -257,7 +257,7 @@ static const gpr_uint8 next_tbl[256] = {
257
257
 
258
258
  /* next state, based upon current state and the current nibble: see above.
259
259
  generated by gen_hpack_tables.c */
260
- static const gpr_int16 next_sub_tbl[48 * 16] = {
260
+ static const int16_t next_sub_tbl[48 * 16] = {
261
261
  1, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
262
262
  218, 2, 6, 10, 13, 14, 15, 16, 17, 2, 6, 10, 13, 14, 15,
263
263
  16, 17, 3, 7, 11, 24, 3, 7, 11, 24, 3, 7, 11, 24, 3,
@@ -316,7 +316,7 @@ static const gpr_int16 next_sub_tbl[48 * 16] = {
316
316
  emitted, or -1 for no byte, or 256 for end of stream
317
317
 
318
318
  generated by gen_hpack_tables.c */
319
- static const gpr_uint16 emit_tbl[256] = {
319
+ static const uint16_t emit_tbl[256] = {
320
320
  0, 1, 2, 3, 4, 5, 6, 7, 0, 8, 9, 10, 11, 12, 13,
321
321
  14, 15, 16, 17, 18, 19, 20, 21, 22, 0, 23, 24, 25, 26, 27,
322
322
  28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
@@ -338,7 +338,7 @@ static const gpr_uint16 emit_tbl[256] = {
338
338
  };
339
339
 
340
340
  /* generated by gen_hpack_tables.c */
341
- static const gpr_int16 emit_sub_tbl[249 * 16] = {
341
+ static const int16_t emit_sub_tbl[249 * 16] = {
342
342
  -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
343
343
  -1, 48, 48, 48, 48, 48, 48, 48, 48, 49, 49, 49, 49, 49, 49,
344
344
  49, 49, 48, 48, 48, 48, 49, 49, 49, 49, 50, 50, 50, 50, 97,
@@ -607,7 +607,7 @@ static const gpr_int16 emit_sub_tbl[249 * 16] = {
607
607
  13, 22, 22, 22, 22, 256, 256, 256, 256,
608
608
  };
609
609
 
610
- static const gpr_uint8 inverse_base64[256] = {
610
+ static const uint8_t inverse_base64[256] = {
611
611
  255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
612
612
  255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
613
613
  255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 62, 255,
@@ -642,22 +642,22 @@ static int on_hdr(grpc_chttp2_hpack_parser *p, grpc_mdelem *md,
642
642
 
643
643
  static grpc_mdstr *take_string(grpc_chttp2_hpack_parser *p,
644
644
  grpc_chttp2_hpack_parser_string *str) {
645
- grpc_mdstr *s = grpc_mdstr_from_buffer((gpr_uint8 *)str->str, str->length);
645
+ grpc_mdstr *s = grpc_mdstr_from_buffer((uint8_t *)str->str, str->length);
646
646
  str->length = 0;
647
647
  return s;
648
648
  }
649
649
 
650
650
  /* jump to the next state */
651
- static int parse_next(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
652
- const gpr_uint8 *end) {
651
+ static int parse_next(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
652
+ const uint8_t *end) {
653
653
  p->state = *p->next_state++;
654
654
  return p->state(p, cur, end);
655
655
  }
656
656
 
657
657
  /* begin parsing a header: all functionality is encoded into lookup tables
658
658
  above */
659
- static int parse_begin(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
660
- const gpr_uint8 *end) {
659
+ static int parse_begin(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
660
+ const uint8_t *end) {
661
661
  if (cur == end) {
662
662
  p->state = parse_begin;
663
663
  return 1;
@@ -667,8 +667,8 @@ static int parse_begin(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
667
667
  }
668
668
 
669
669
  /* stream dependency and prioritization data: we just skip it */
670
- static int parse_stream_weight(grpc_chttp2_hpack_parser *p,
671
- const gpr_uint8 *cur, const gpr_uint8 *end) {
670
+ static int parse_stream_weight(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
671
+ const uint8_t *end) {
672
672
  if (cur == end) {
673
673
  p->state = parse_stream_weight;
674
674
  return 1;
@@ -677,8 +677,8 @@ static int parse_stream_weight(grpc_chttp2_hpack_parser *p,
677
677
  return p->after_prioritization(p, cur + 1, end);
678
678
  }
679
679
 
680
- static int parse_stream_dep3(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
681
- const gpr_uint8 *end) {
680
+ static int parse_stream_dep3(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
681
+ const uint8_t *end) {
682
682
  if (cur == end) {
683
683
  p->state = parse_stream_dep3;
684
684
  return 1;
@@ -687,8 +687,8 @@ static int parse_stream_dep3(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
687
687
  return parse_stream_weight(p, cur + 1, end);
688
688
  }
689
689
 
690
- static int parse_stream_dep2(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
691
- const gpr_uint8 *end) {
690
+ static int parse_stream_dep2(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
691
+ const uint8_t *end) {
692
692
  if (cur == end) {
693
693
  p->state = parse_stream_dep2;
694
694
  return 1;
@@ -697,8 +697,8 @@ static int parse_stream_dep2(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
697
697
  return parse_stream_dep3(p, cur + 1, end);
698
698
  }
699
699
 
700
- static int parse_stream_dep1(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
701
- const gpr_uint8 *end) {
700
+ static int parse_stream_dep1(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
701
+ const uint8_t *end) {
702
702
  if (cur == end) {
703
703
  p->state = parse_stream_dep1;
704
704
  return 1;
@@ -707,8 +707,8 @@ static int parse_stream_dep1(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
707
707
  return parse_stream_dep2(p, cur + 1, end);
708
708
  }
709
709
 
710
- static int parse_stream_dep0(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
711
- const gpr_uint8 *end) {
710
+ static int parse_stream_dep0(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
711
+ const uint8_t *end) {
712
712
  if (cur == end) {
713
713
  p->state = parse_stream_dep0;
714
714
  return 1;
@@ -719,8 +719,8 @@ static int parse_stream_dep0(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
719
719
 
720
720
  /* emit an indexed field; for now just logs it to console; jumps to
721
721
  begin the next field on completion */
722
- static int finish_indexed_field(grpc_chttp2_hpack_parser *p,
723
- const gpr_uint8 *cur, const gpr_uint8 *end) {
722
+ static int finish_indexed_field(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
723
+ const uint8_t *end) {
724
724
  grpc_mdelem *md = grpc_chttp2_hptbl_lookup(&p->table, p->index);
725
725
  if (md == NULL) {
726
726
  gpr_log(GPR_ERROR, "Invalid HPACK index received: %d", p->index);
@@ -731,8 +731,8 @@ static int finish_indexed_field(grpc_chttp2_hpack_parser *p,
731
731
  }
732
732
 
733
733
  /* parse an indexed field with index < 127 */
734
- static int parse_indexed_field(grpc_chttp2_hpack_parser *p,
735
- const gpr_uint8 *cur, const gpr_uint8 *end) {
734
+ static int parse_indexed_field(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
735
+ const uint8_t *end) {
736
736
  p->dynamic_table_update_allowed = 0;
737
737
  p->index = (*cur) & 0x7f;
738
738
  return finish_indexed_field(p, cur + 1, end);
@@ -740,7 +740,7 @@ static int parse_indexed_field(grpc_chttp2_hpack_parser *p,
740
740
 
741
741
  /* parse an indexed field with index >= 127 */
742
742
  static int parse_indexed_field_x(grpc_chttp2_hpack_parser *p,
743
- const gpr_uint8 *cur, const gpr_uint8 *end) {
743
+ const uint8_t *cur, const uint8_t *end) {
744
744
  static const grpc_chttp2_hpack_parser_state and_then[] = {
745
745
  finish_indexed_field};
746
746
  p->dynamic_table_update_allowed = 0;
@@ -752,8 +752,8 @@ static int parse_indexed_field_x(grpc_chttp2_hpack_parser *p,
752
752
 
753
753
  /* finish a literal header with incremental indexing: just log, and jump to '
754
754
  begin */
755
- static int finish_lithdr_incidx(grpc_chttp2_hpack_parser *p,
756
- const gpr_uint8 *cur, const gpr_uint8 *end) {
755
+ static int finish_lithdr_incidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
756
+ const uint8_t *end) {
757
757
  grpc_mdelem *md = grpc_chttp2_hptbl_lookup(&p->table, p->index);
758
758
  GPR_ASSERT(md != NULL); /* handled in string parsing */
759
759
  return on_hdr(p, grpc_mdelem_from_metadata_strings(GRPC_MDSTR_REF(md->key),
@@ -764,7 +764,7 @@ static int finish_lithdr_incidx(grpc_chttp2_hpack_parser *p,
764
764
 
765
765
  /* finish a literal header with incremental indexing with no index */
766
766
  static int finish_lithdr_incidx_v(grpc_chttp2_hpack_parser *p,
767
- const gpr_uint8 *cur, const gpr_uint8 *end) {
767
+ const uint8_t *cur, const uint8_t *end) {
768
768
  return on_hdr(p, grpc_mdelem_from_metadata_strings(take_string(p, &p->key),
769
769
  take_string(p, &p->value)),
770
770
  1) &&
@@ -772,8 +772,8 @@ static int finish_lithdr_incidx_v(grpc_chttp2_hpack_parser *p,
772
772
  }
773
773
 
774
774
  /* parse a literal header with incremental indexing; index < 63 */
775
- static int parse_lithdr_incidx(grpc_chttp2_hpack_parser *p,
776
- const gpr_uint8 *cur, const gpr_uint8 *end) {
775
+ static int parse_lithdr_incidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
776
+ const uint8_t *end) {
777
777
  static const grpc_chttp2_hpack_parser_state and_then[] = {
778
778
  parse_value_string_with_indexed_key, finish_lithdr_incidx};
779
779
  p->dynamic_table_update_allowed = 0;
@@ -784,7 +784,7 @@ static int parse_lithdr_incidx(grpc_chttp2_hpack_parser *p,
784
784
 
785
785
  /* parse a literal header with incremental indexing; index >= 63 */
786
786
  static int parse_lithdr_incidx_x(grpc_chttp2_hpack_parser *p,
787
- const gpr_uint8 *cur, const gpr_uint8 *end) {
787
+ const uint8_t *cur, const uint8_t *end) {
788
788
  static const grpc_chttp2_hpack_parser_state and_then[] = {
789
789
  parse_string_prefix, parse_value_string_with_indexed_key,
790
790
  finish_lithdr_incidx};
@@ -797,7 +797,7 @@ static int parse_lithdr_incidx_x(grpc_chttp2_hpack_parser *p,
797
797
 
798
798
  /* parse a literal header with incremental indexing; index = 0 */
799
799
  static int parse_lithdr_incidx_v(grpc_chttp2_hpack_parser *p,
800
- const gpr_uint8 *cur, const gpr_uint8 *end) {
800
+ const uint8_t *cur, const uint8_t *end) {
801
801
  static const grpc_chttp2_hpack_parser_state and_then[] = {
802
802
  parse_key_string, parse_string_prefix,
803
803
  parse_value_string_with_literal_key, finish_lithdr_incidx_v};
@@ -807,8 +807,8 @@ static int parse_lithdr_incidx_v(grpc_chttp2_hpack_parser *p,
807
807
  }
808
808
 
809
809
  /* finish a literal header without incremental indexing */
810
- static int finish_lithdr_notidx(grpc_chttp2_hpack_parser *p,
811
- const gpr_uint8 *cur, const gpr_uint8 *end) {
810
+ static int finish_lithdr_notidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
811
+ const uint8_t *end) {
812
812
  grpc_mdelem *md = grpc_chttp2_hptbl_lookup(&p->table, p->index);
813
813
  GPR_ASSERT(md != NULL); /* handled in string parsing */
814
814
  return on_hdr(p, grpc_mdelem_from_metadata_strings(GRPC_MDSTR_REF(md->key),
@@ -819,7 +819,7 @@ static int finish_lithdr_notidx(grpc_chttp2_hpack_parser *p,
819
819
 
820
820
  /* finish a literal header without incremental indexing with index = 0 */
821
821
  static int finish_lithdr_notidx_v(grpc_chttp2_hpack_parser *p,
822
- const gpr_uint8 *cur, const gpr_uint8 *end) {
822
+ const uint8_t *cur, const uint8_t *end) {
823
823
  return on_hdr(p, grpc_mdelem_from_metadata_strings(take_string(p, &p->key),
824
824
  take_string(p, &p->value)),
825
825
  0) &&
@@ -827,8 +827,8 @@ static int finish_lithdr_notidx_v(grpc_chttp2_hpack_parser *p,
827
827
  }
828
828
 
829
829
  /* parse a literal header without incremental indexing; index < 15 */
830
- static int parse_lithdr_notidx(grpc_chttp2_hpack_parser *p,
831
- const gpr_uint8 *cur, const gpr_uint8 *end) {
830
+ static int parse_lithdr_notidx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
831
+ const uint8_t *end) {
832
832
  static const grpc_chttp2_hpack_parser_state and_then[] = {
833
833
  parse_value_string_with_indexed_key, finish_lithdr_notidx};
834
834
  p->dynamic_table_update_allowed = 0;
@@ -839,7 +839,7 @@ static int parse_lithdr_notidx(grpc_chttp2_hpack_parser *p,
839
839
 
840
840
  /* parse a literal header without incremental indexing; index >= 15 */
841
841
  static int parse_lithdr_notidx_x(grpc_chttp2_hpack_parser *p,
842
- const gpr_uint8 *cur, const gpr_uint8 *end) {
842
+ const uint8_t *cur, const uint8_t *end) {
843
843
  static const grpc_chttp2_hpack_parser_state and_then[] = {
844
844
  parse_string_prefix, parse_value_string_with_indexed_key,
845
845
  finish_lithdr_notidx};
@@ -852,7 +852,7 @@ static int parse_lithdr_notidx_x(grpc_chttp2_hpack_parser *p,
852
852
 
853
853
  /* parse a literal header without incremental indexing; index == 0 */
854
854
  static int parse_lithdr_notidx_v(grpc_chttp2_hpack_parser *p,
855
- const gpr_uint8 *cur, const gpr_uint8 *end) {
855
+ const uint8_t *cur, const uint8_t *end) {
856
856
  static const grpc_chttp2_hpack_parser_state and_then[] = {
857
857
  parse_key_string, parse_string_prefix,
858
858
  parse_value_string_with_literal_key, finish_lithdr_notidx_v};
@@ -862,8 +862,8 @@ static int parse_lithdr_notidx_v(grpc_chttp2_hpack_parser *p,
862
862
  }
863
863
 
864
864
  /* finish a literal header that is never indexed */
865
- static int finish_lithdr_nvridx(grpc_chttp2_hpack_parser *p,
866
- const gpr_uint8 *cur, const gpr_uint8 *end) {
865
+ static int finish_lithdr_nvridx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
866
+ const uint8_t *end) {
867
867
  grpc_mdelem *md = grpc_chttp2_hptbl_lookup(&p->table, p->index);
868
868
  GPR_ASSERT(md != NULL); /* handled in string parsing */
869
869
  return on_hdr(p, grpc_mdelem_from_metadata_strings(GRPC_MDSTR_REF(md->key),
@@ -874,7 +874,7 @@ static int finish_lithdr_nvridx(grpc_chttp2_hpack_parser *p,
874
874
 
875
875
  /* finish a literal header that is never indexed with an extra value */
876
876
  static int finish_lithdr_nvridx_v(grpc_chttp2_hpack_parser *p,
877
- const gpr_uint8 *cur, const gpr_uint8 *end) {
877
+ const uint8_t *cur, const uint8_t *end) {
878
878
  return on_hdr(p, grpc_mdelem_from_metadata_strings(take_string(p, &p->key),
879
879
  take_string(p, &p->value)),
880
880
  0) &&
@@ -882,8 +882,8 @@ static int finish_lithdr_nvridx_v(grpc_chttp2_hpack_parser *p,
882
882
  }
883
883
 
884
884
  /* parse a literal header that is never indexed; index < 15 */
885
- static int parse_lithdr_nvridx(grpc_chttp2_hpack_parser *p,
886
- const gpr_uint8 *cur, const gpr_uint8 *end) {
885
+ static int parse_lithdr_nvridx(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
886
+ const uint8_t *end) {
887
887
  static const grpc_chttp2_hpack_parser_state and_then[] = {
888
888
  parse_value_string_with_indexed_key, finish_lithdr_nvridx};
889
889
  p->dynamic_table_update_allowed = 0;
@@ -894,7 +894,7 @@ static int parse_lithdr_nvridx(grpc_chttp2_hpack_parser *p,
894
894
 
895
895
  /* parse a literal header that is never indexed; index >= 15 */
896
896
  static int parse_lithdr_nvridx_x(grpc_chttp2_hpack_parser *p,
897
- const gpr_uint8 *cur, const gpr_uint8 *end) {
897
+ const uint8_t *cur, const uint8_t *end) {
898
898
  static const grpc_chttp2_hpack_parser_state and_then[] = {
899
899
  parse_string_prefix, parse_value_string_with_indexed_key,
900
900
  finish_lithdr_nvridx};
@@ -907,7 +907,7 @@ static int parse_lithdr_nvridx_x(grpc_chttp2_hpack_parser *p,
907
907
 
908
908
  /* parse a literal header that is never indexed; index == 0 */
909
909
  static int parse_lithdr_nvridx_v(grpc_chttp2_hpack_parser *p,
910
- const gpr_uint8 *cur, const gpr_uint8 *end) {
910
+ const uint8_t *cur, const uint8_t *end) {
911
911
  static const grpc_chttp2_hpack_parser_state and_then[] = {
912
912
  parse_key_string, parse_string_prefix,
913
913
  parse_value_string_with_literal_key, finish_lithdr_nvridx_v};
@@ -917,16 +917,16 @@ static int parse_lithdr_nvridx_v(grpc_chttp2_hpack_parser *p,
917
917
  }
918
918
 
919
919
  /* finish parsing a max table size change */
920
- static int finish_max_tbl_size(grpc_chttp2_hpack_parser *p,
921
- const gpr_uint8 *cur, const gpr_uint8 *end) {
920
+ static int finish_max_tbl_size(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
921
+ const uint8_t *end) {
922
922
  gpr_log(GPR_INFO, "MAX TABLE SIZE: %d", p->index);
923
923
  return grpc_chttp2_hptbl_set_current_table_size(&p->table, p->index) &&
924
924
  parse_begin(p, cur, end);
925
925
  }
926
926
 
927
927
  /* parse a max table size change, max size < 15 */
928
- static int parse_max_tbl_size(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
929
- const gpr_uint8 *end) {
928
+ static int parse_max_tbl_size(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
929
+ const uint8_t *end) {
930
930
  if (p->dynamic_table_update_allowed == 0) {
931
931
  return 0;
932
932
  }
@@ -936,8 +936,8 @@ static int parse_max_tbl_size(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
936
936
  }
937
937
 
938
938
  /* parse a max table size change, max size >= 15 */
939
- static int parse_max_tbl_size_x(grpc_chttp2_hpack_parser *p,
940
- const gpr_uint8 *cur, const gpr_uint8 *end) {
939
+ static int parse_max_tbl_size_x(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
940
+ const uint8_t *end) {
941
941
  static const grpc_chttp2_hpack_parser_state and_then[] = {
942
942
  finish_max_tbl_size};
943
943
  if (p->dynamic_table_update_allowed == 0) {
@@ -951,14 +951,14 @@ static int parse_max_tbl_size_x(grpc_chttp2_hpack_parser *p,
951
951
  }
952
952
 
953
953
  /* a parse error: jam the parse state into parse_error, and return error */
954
- static int parse_error(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
955
- const gpr_uint8 *end) {
954
+ static int parse_error(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
955
+ const uint8_t *end) {
956
956
  p->state = parse_error;
957
957
  return 0;
958
958
  }
959
959
 
960
- static int parse_illegal_op(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
961
- const gpr_uint8 *end) {
960
+ static int parse_illegal_op(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
961
+ const uint8_t *end) {
962
962
  GPR_ASSERT(cur != end);
963
963
  gpr_log(GPR_DEBUG, "Illegal hpack op code %d", *cur);
964
964
  return parse_error(p, cur, end);
@@ -966,8 +966,8 @@ static int parse_illegal_op(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
966
966
 
967
967
  /* parse the 1st byte of a varint into p->parsing.value
968
968
  no overflow is possible */
969
- static int parse_value0(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
970
- const gpr_uint8 *end) {
969
+ static int parse_value0(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
970
+ const uint8_t *end) {
971
971
  if (cur == end) {
972
972
  p->state = parse_value0;
973
973
  return 1;
@@ -984,14 +984,14 @@ static int parse_value0(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
984
984
 
985
985
  /* parse the 2nd byte of a varint into p->parsing.value
986
986
  no overflow is possible */
987
- static int parse_value1(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
988
- const gpr_uint8 *end) {
987
+ static int parse_value1(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
988
+ const uint8_t *end) {
989
989
  if (cur == end) {
990
990
  p->state = parse_value1;
991
991
  return 1;
992
992
  }
993
993
 
994
- *p->parsing.value += (((gpr_uint32)*cur) & 0x7f) << 7;
994
+ *p->parsing.value += (((uint32_t)*cur) & 0x7f) << 7;
995
995
 
996
996
  if ((*cur) & 0x80) {
997
997
  return parse_value2(p, cur + 1, end);
@@ -1002,14 +1002,14 @@ static int parse_value1(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1002
1002
 
1003
1003
  /* parse the 3rd byte of a varint into p->parsing.value
1004
1004
  no overflow is possible */
1005
- static int parse_value2(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1006
- const gpr_uint8 *end) {
1005
+ static int parse_value2(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1006
+ const uint8_t *end) {
1007
1007
  if (cur == end) {
1008
1008
  p->state = parse_value2;
1009
1009
  return 1;
1010
1010
  }
1011
1011
 
1012
- *p->parsing.value += (((gpr_uint32)*cur) & 0x7f) << 14;
1012
+ *p->parsing.value += (((uint32_t)*cur) & 0x7f) << 14;
1013
1013
 
1014
1014
  if ((*cur) & 0x80) {
1015
1015
  return parse_value3(p, cur + 1, end);
@@ -1020,14 +1020,14 @@ static int parse_value2(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1020
1020
 
1021
1021
  /* parse the 4th byte of a varint into p->parsing.value
1022
1022
  no overflow is possible */
1023
- static int parse_value3(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1024
- const gpr_uint8 *end) {
1023
+ static int parse_value3(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1024
+ const uint8_t *end) {
1025
1025
  if (cur == end) {
1026
1026
  p->state = parse_value3;
1027
1027
  return 1;
1028
1028
  }
1029
1029
 
1030
- *p->parsing.value += (((gpr_uint32)*cur) & 0x7f) << 21;
1030
+ *p->parsing.value += (((uint32_t)*cur) & 0x7f) << 21;
1031
1031
 
1032
1032
  if ((*cur) & 0x80) {
1033
1033
  return parse_value4(p, cur + 1, end);
@@ -1038,11 +1038,11 @@ static int parse_value3(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1038
1038
 
1039
1039
  /* parse the 5th byte of a varint into p->parsing.value
1040
1040
  depending on the byte, we may overflow, and care must be taken */
1041
- static int parse_value4(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1042
- const gpr_uint8 *end) {
1043
- gpr_uint8 c;
1044
- gpr_uint32 cur_value;
1045
- gpr_uint32 add_value;
1041
+ static int parse_value4(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1042
+ const uint8_t *end) {
1043
+ uint8_t c;
1044
+ uint32_t cur_value;
1045
+ uint32_t add_value;
1046
1046
 
1047
1047
  if (cur == end) {
1048
1048
  p->state = parse_value4;
@@ -1055,7 +1055,7 @@ static int parse_value4(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1055
1055
  }
1056
1056
 
1057
1057
  cur_value = *p->parsing.value;
1058
- add_value = ((gpr_uint32)c) << 28;
1058
+ add_value = ((uint32_t)c) << 28;
1059
1059
  if (add_value > 0xffffffffu - cur_value) {
1060
1060
  goto error;
1061
1061
  }
@@ -1079,8 +1079,8 @@ error:
1079
1079
  /* parse any trailing bytes in a varint: it's possible to append an arbitrary
1080
1080
  number of 0x80's and not affect the value - a zero will terminate - and
1081
1081
  anything else will overflow */
1082
- static int parse_value5up(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1083
- const gpr_uint8 *end) {
1082
+ static int parse_value5up(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1083
+ const uint8_t *end) {
1084
1084
  while (cur != end && *cur == 0x80) {
1085
1085
  ++cur;
1086
1086
  }
@@ -1102,8 +1102,8 @@ static int parse_value5up(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1102
1102
  }
1103
1103
 
1104
1104
  /* parse a string prefix */
1105
- static int parse_string_prefix(grpc_chttp2_hpack_parser *p,
1106
- const gpr_uint8 *cur, const gpr_uint8 *end) {
1105
+ static int parse_string_prefix(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1106
+ const uint8_t *end) {
1107
1107
  if (cur == end) {
1108
1108
  p->state = parse_string_prefix;
1109
1109
  return 1;
@@ -1121,22 +1121,22 @@ static int parse_string_prefix(grpc_chttp2_hpack_parser *p,
1121
1121
 
1122
1122
  /* append some bytes to a string */
1123
1123
  static void append_bytes(grpc_chttp2_hpack_parser_string *str,
1124
- const gpr_uint8 *data, size_t length) {
1124
+ const uint8_t *data, size_t length) {
1125
1125
  if (length + str->length > str->capacity) {
1126
- GPR_ASSERT(str->length + length <= GPR_UINT32_MAX);
1127
- str->capacity = (gpr_uint32)(str->length + length);
1126
+ GPR_ASSERT(str->length + length <= UINT32_MAX);
1127
+ str->capacity = (uint32_t)(str->length + length);
1128
1128
  str->str = gpr_realloc(str->str, str->capacity);
1129
1129
  }
1130
1130
  memcpy(str->str + str->length, data, length);
1131
- GPR_ASSERT(length <= GPR_UINT32_MAX - str->length);
1132
- str->length += (gpr_uint32)length;
1131
+ GPR_ASSERT(length <= UINT32_MAX - str->length);
1132
+ str->length += (uint32_t)length;
1133
1133
  }
1134
1134
 
1135
- static int append_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1136
- const gpr_uint8 *end) {
1135
+ static int append_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1136
+ const uint8_t *end) {
1137
1137
  grpc_chttp2_hpack_parser_string *str = p->parsing.str;
1138
- gpr_uint32 bits;
1139
- gpr_uint8 decoded[3];
1138
+ uint32_t bits;
1139
+ uint8_t decoded[3];
1140
1140
  switch ((binary_state)p->binary) {
1141
1141
  case NOT_BINARY:
1142
1142
  append_bytes(str, cur, (size_t)(end - cur));
@@ -1197,9 +1197,9 @@ static int append_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1197
1197
  goto b64_byte3;
1198
1198
  p->base64_buffer |= bits;
1199
1199
  bits = p->base64_buffer;
1200
- decoded[0] = (gpr_uint8)(bits >> 16);
1201
- decoded[1] = (gpr_uint8)(bits >> 8);
1202
- decoded[2] = (gpr_uint8)(bits);
1200
+ decoded[0] = (uint8_t)(bits >> 16);
1201
+ decoded[1] = (uint8_t)(bits >> 8);
1202
+ decoded[2] = (uint8_t)(bits);
1203
1203
  append_bytes(str, decoded, 3);
1204
1204
  goto b64_byte0;
1205
1205
  }
@@ -1208,9 +1208,9 @@ static int append_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1208
1208
 
1209
1209
  /* append a null terminator to a string */
1210
1210
  static int finish_str(grpc_chttp2_hpack_parser *p) {
1211
- gpr_uint8 terminator = 0;
1212
- gpr_uint8 decoded[2];
1213
- gpr_uint32 bits;
1211
+ uint8_t terminator = 0;
1212
+ uint8_t decoded[2];
1213
+ uint32_t bits;
1214
1214
  grpc_chttp2_hpack_parser_string *str = p->parsing.str;
1215
1215
  switch ((binary_state)p->binary) {
1216
1216
  case NOT_BINARY:
@@ -1227,7 +1227,7 @@ static int finish_str(grpc_chttp2_hpack_parser *p) {
1227
1227
  bits & 0xffff);
1228
1228
  return 0;
1229
1229
  }
1230
- decoded[0] = (gpr_uint8)(bits >> 16);
1230
+ decoded[0] = (uint8_t)(bits >> 16);
1231
1231
  append_bytes(str, decoded, 1);
1232
1232
  break;
1233
1233
  case B64_BYTE3:
@@ -1237,8 +1237,8 @@ static int finish_str(grpc_chttp2_hpack_parser *p) {
1237
1237
  bits & 0xff);
1238
1238
  return 0;
1239
1239
  }
1240
- decoded[0] = (gpr_uint8)(bits >> 16);
1241
- decoded[1] = (gpr_uint8)(bits >> 8);
1240
+ decoded[0] = (uint8_t)(bits >> 16);
1241
+ decoded[1] = (uint8_t)(bits >> 8);
1242
1242
  append_bytes(str, decoded, 2);
1243
1243
  break;
1244
1244
  }
@@ -1248,12 +1248,12 @@ static int finish_str(grpc_chttp2_hpack_parser *p) {
1248
1248
  }
1249
1249
 
1250
1250
  /* decode a nibble from a huffman encoded stream */
1251
- static int huff_nibble(grpc_chttp2_hpack_parser *p, gpr_uint8 nibble) {
1252
- gpr_int16 emit = emit_sub_tbl[16 * emit_tbl[p->huff_state] + nibble];
1253
- gpr_int16 next = next_sub_tbl[16 * next_tbl[p->huff_state] + nibble];
1251
+ static int huff_nibble(grpc_chttp2_hpack_parser *p, uint8_t nibble) {
1252
+ int16_t emit = emit_sub_tbl[16 * emit_tbl[p->huff_state] + nibble];
1253
+ int16_t next = next_sub_tbl[16 * next_tbl[p->huff_state] + nibble];
1254
1254
  if (emit != -1) {
1255
1255
  if (emit >= 0 && emit < 256) {
1256
- gpr_uint8 c = (gpr_uint8)emit;
1256
+ uint8_t c = (uint8_t)emit;
1257
1257
  if (!append_string(p, &c, (&c) + 1)) return 0;
1258
1258
  } else {
1259
1259
  assert(emit == 256);
@@ -1264,8 +1264,8 @@ static int huff_nibble(grpc_chttp2_hpack_parser *p, gpr_uint8 nibble) {
1264
1264
  }
1265
1265
 
1266
1266
  /* decode full bytes from a huffman encoded stream */
1267
- static int add_huff_bytes(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1268
- const gpr_uint8 *end) {
1267
+ static int add_huff_bytes(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1268
+ const uint8_t *end) {
1269
1269
  for (; cur != end; ++cur) {
1270
1270
  if (!huff_nibble(p, *cur >> 4) || !huff_nibble(p, *cur & 0xf)) return 0;
1271
1271
  }
@@ -1274,8 +1274,8 @@ static int add_huff_bytes(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1274
1274
 
1275
1275
  /* decode some string bytes based on the current decoding mode
1276
1276
  (huffman or not) */
1277
- static int add_str_bytes(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1278
- const gpr_uint8 *end) {
1277
+ static int add_str_bytes(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1278
+ const uint8_t *end) {
1279
1279
  if (p->huff) {
1280
1280
  return add_huff_bytes(p, cur, end);
1281
1281
  } else {
@@ -1284,8 +1284,8 @@ static int add_str_bytes(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1284
1284
  }
1285
1285
 
1286
1286
  /* parse a string - tries to do large chunks at a time */
1287
- static int parse_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1288
- const gpr_uint8 *end) {
1287
+ static int parse_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1288
+ const uint8_t *end) {
1289
1289
  size_t remaining = p->strlen - p->strgot;
1290
1290
  size_t given = (size_t)(end - cur);
1291
1291
  if (remaining <= given) {
@@ -1293,16 +1293,16 @@ static int parse_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1293
1293
  parse_next(p, cur + remaining, end);
1294
1294
  } else {
1295
1295
  if (!add_str_bytes(p, cur, cur + given)) return 0;
1296
- GPR_ASSERT(given <= GPR_UINT32_MAX - p->strgot);
1297
- p->strgot += (gpr_uint32)given;
1296
+ GPR_ASSERT(given <= UINT32_MAX - p->strgot);
1297
+ p->strgot += (uint32_t)given;
1298
1298
  p->state = parse_string;
1299
1299
  return 1;
1300
1300
  }
1301
1301
  }
1302
1302
 
1303
1303
  /* begin parsing a string - performs setup, calls parse_string */
1304
- static int begin_parse_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1305
- const gpr_uint8 *end, gpr_uint8 binary,
1304
+ static int begin_parse_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1305
+ const uint8_t *end, uint8_t binary,
1306
1306
  grpc_chttp2_hpack_parser_string *str) {
1307
1307
  p->strgot = 0;
1308
1308
  str->length = 0;
@@ -1313,8 +1313,8 @@ static int begin_parse_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1313
1313
  }
1314
1314
 
1315
1315
  /* parse the key string */
1316
- static int parse_key_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1317
- const gpr_uint8 *end) {
1316
+ static int parse_key_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1317
+ const uint8_t *end) {
1318
1318
  return begin_parse_string(p, cur, end, NOT_BINARY, &p->key);
1319
1319
  }
1320
1320
 
@@ -1340,8 +1340,8 @@ static is_binary_header is_binary_indexed_header(grpc_chttp2_hpack_parser *p) {
1340
1340
  }
1341
1341
 
1342
1342
  /* parse the value string */
1343
- static int parse_value_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1344
- const gpr_uint8 *end, is_binary_header type) {
1343
+ static int parse_value_string(grpc_chttp2_hpack_parser *p, const uint8_t *cur,
1344
+ const uint8_t *end, is_binary_header type) {
1345
1345
  switch (type) {
1346
1346
  case BINARY_HEADER:
1347
1347
  return begin_parse_string(p, cur, end, B64_BYTE0, &p->value);
@@ -1355,14 +1355,14 @@ static int parse_value_string(grpc_chttp2_hpack_parser *p, const gpr_uint8 *cur,
1355
1355
  }
1356
1356
 
1357
1357
  static int parse_value_string_with_indexed_key(grpc_chttp2_hpack_parser *p,
1358
- const gpr_uint8 *cur,
1359
- const gpr_uint8 *end) {
1358
+ const uint8_t *cur,
1359
+ const uint8_t *end) {
1360
1360
  return parse_value_string(p, cur, end, is_binary_indexed_header(p));
1361
1361
  }
1362
1362
 
1363
1363
  static int parse_value_string_with_literal_key(grpc_chttp2_hpack_parser *p,
1364
- const gpr_uint8 *cur,
1365
- const gpr_uint8 *end) {
1364
+ const uint8_t *cur,
1365
+ const uint8_t *end) {
1366
1366
  return parse_value_string(p, cur, end, is_binary_literal_header(p));
1367
1367
  }
1368
1368
 
@@ -1398,7 +1398,7 @@ void grpc_chttp2_hpack_parser_destroy(grpc_chttp2_hpack_parser *p) {
1398
1398
  }
1399
1399
 
1400
1400
  int grpc_chttp2_hpack_parser_parse(grpc_chttp2_hpack_parser *p,
1401
- const gpr_uint8 *beg, const gpr_uint8 *end) {
1401
+ const uint8_t *beg, const uint8_t *end) {
1402
1402
  /* TODO(ctiller): limit the distance of end from beg, and perform multiple
1403
1403
  steps in the event of a large chunk of data to limit
1404
1404
  stack space usage when no tail call optimization is