awesome-grpc-that-works 0.12.2 → 0.14.0.dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.yardopts +1 -0
- data/Makefile +5783 -22121
- data/include/grpc/byte_buffer.h +2 -83
- data/include/grpc/census.h +173 -121
- data/include/grpc/compression.h +14 -38
- data/include/grpc/grpc.h +85 -434
- data/include/grpc/grpc_security.h +76 -46
- data/include/grpc/grpc_zookeeper.h +1 -1
- data/include/grpc/impl/codegen/alloc.h +74 -0
- data/include/grpc/impl/codegen/atm.h +92 -0
- data/include/grpc/impl/codegen/atm_gcc_atomic.h +72 -0
- data/include/grpc/impl/codegen/atm_gcc_sync.h +87 -0
- data/include/grpc/impl/codegen/atm_win32.h +125 -0
- data/include/grpc/impl/codegen/byte_buffer.h +121 -0
- data/include/grpc/impl/codegen/compression_types.h +73 -0
- data/include/grpc/impl/codegen/connectivity_state.h +59 -0
- data/include/grpc/impl/codegen/grpc_types.h +378 -0
- data/include/grpc/impl/codegen/log.h +110 -0
- data/include/grpc/impl/codegen/port_platform.h +370 -0
- data/include/grpc/impl/codegen/propagation_bits.h +67 -0
- data/include/grpc/impl/codegen/slice.h +182 -0
- data/include/grpc/impl/codegen/slice_buffer.h +105 -0
- data/include/grpc/impl/codegen/status.h +163 -0
- data/include/grpc/impl/codegen/sync.h +316 -0
- data/include/grpc/impl/codegen/sync_generic.h +55 -0
- data/{src/core/census/context.h → include/grpc/impl/codegen/sync_posix.h} +11 -11
- data/include/grpc/impl/codegen/sync_win32.h +49 -0
- data/include/grpc/impl/codegen/time.h +130 -0
- data/include/grpc/status.h +2 -126
- data/include/grpc/support/alloc.h +2 -35
- data/include/grpc/support/atm.h +2 -55
- data/include/grpc/support/atm_gcc_atomic.h +5 -38
- data/include/grpc/support/atm_gcc_sync.h +2 -50
- data/include/grpc/support/atm_win32.h +2 -88
- data/include/grpc/support/avl.h +10 -9
- data/include/grpc/support/cmdline.h +15 -13
- data/include/grpc/support/cpu.h +5 -3
- data/include/grpc/support/histogram.h +23 -20
- data/include/grpc/support/host_port.h +5 -3
- data/include/grpc/support/log.h +2 -71
- data/include/grpc/support/log_win32.h +2 -2
- data/include/grpc/support/port_platform.h +2 -319
- data/include/grpc/support/slice.h +2 -145
- data/include/grpc/support/slice_buffer.h +2 -65
- data/include/grpc/support/string_util.h +3 -3
- data/include/grpc/support/subprocess.h +8 -6
- data/include/grpc/support/sync.h +2 -278
- data/include/grpc/support/sync_generic.h +2 -18
- data/include/grpc/support/sync_posix.h +2 -10
- data/include/grpc/support/sync_win32.h +2 -12
- data/include/grpc/support/thd.h +11 -11
- data/include/grpc/support/time.h +2 -91
- data/include/grpc/support/tls.h +1 -1
- data/include/grpc/support/tls_gcc.h +1 -1
- data/include/grpc/support/tls_msvc.h +1 -1
- data/include/grpc/support/tls_pthread.h +2 -2
- data/include/grpc/support/useful.h +3 -1
- data/src/boringssl/err_data.c +1252 -0
- data/src/core/census/context.c +471 -8
- data/src/core/census/grpc_filter.c +5 -5
- data/src/core/census/initialize.c +4 -7
- data/src/core/census/mlog.c +600 -0
- data/src/core/census/mlog.h +95 -0
- data/src/core/census/operation.c +2 -2
- data/src/core/census/placeholders.c +109 -0
- data/src/core/census/rpc_metric_id.h +6 -6
- data/src/core/census/tracing.c +1 -1
- data/src/core/channel/channel_args.c +71 -9
- data/src/core/channel/channel_args.h +7 -1
- data/src/core/channel/channel_stack.c +1 -1
- data/src/core/channel/client_channel.c +33 -30
- data/src/core/channel/client_uchannel.c +3 -3
- data/src/core/channel/compress_filter.c +8 -8
- data/src/core/channel/http_client_filter.c +4 -4
- data/src/core/channel/http_server_filter.c +11 -11
- data/src/core/channel/subchannel_call_holder.c +11 -11
- data/src/core/client_config/connector.c +3 -2
- data/src/core/client_config/connector.h +2 -2
- data/src/core/client_config/lb_policies/load_balancer_api.c +163 -0
- data/src/core/client_config/lb_policies/load_balancer_api.h +85 -0
- data/src/core/client_config/lb_policies/pick_first.c +57 -40
- data/src/core/client_config/lb_policies/round_robin.c +14 -15
- data/src/core/client_config/lb_policy.c +3 -3
- data/src/core/client_config/lb_policy.h +3 -2
- data/src/core/client_config/resolvers/dns_resolver.c +3 -3
- data/src/core/client_config/resolvers/sockaddr_resolver.c +5 -5
- data/src/core/client_config/subchannel.c +84 -39
- data/src/core/client_config/subchannel.h +15 -6
- data/src/core/client_config/subchannel_index.c +261 -0
- data/src/core/client_config/subchannel_index.h +77 -0
- data/src/core/compression/{algorithm.c → compression_algorithm.c} +3 -3
- data/src/core/httpcli/format_request.c +1 -1
- data/src/core/httpcli/httpcli.c +18 -16
- data/src/core/httpcli/httpcli.h +3 -2
- data/src/core/httpcli/httpcli_security_connector.c +9 -10
- data/src/core/httpcli/parser.c +7 -7
- data/src/core/httpcli/parser.h +1 -1
- data/src/core/iomgr/closure.c +7 -7
- data/src/core/iomgr/closure.h +6 -5
- data/src/core/iomgr/exec_ctx.c +12 -8
- data/src/core/iomgr/exec_ctx.h +12 -5
- data/src/core/iomgr/executor.c +4 -4
- data/src/core/iomgr/executor.h +2 -2
- data/src/core/iomgr/fd_posix.c +32 -19
- data/src/core/iomgr/fd_posix.h +7 -4
- data/src/core/iomgr/iocp_windows.c +7 -9
- data/src/core/iomgr/iomgr.c +2 -2
- data/src/core/iomgr/pollset.h +9 -10
- data/src/core/iomgr/pollset_multipoller_with_epoll.c +71 -5
- data/src/core/iomgr/pollset_multipoller_with_poll_posix.c +9 -5
- data/src/core/iomgr/pollset_posix.c +44 -49
- data/src/core/iomgr/pollset_posix.h +14 -8
- data/src/core/iomgr/pollset_set.h +3 -9
- data/src/core/iomgr/pollset_set_posix.c +23 -3
- data/src/core/iomgr/pollset_set_posix.h +2 -18
- data/src/core/iomgr/pollset_set_windows.c +3 -3
- data/src/core/iomgr/pollset_set_windows.h +2 -2
- data/src/core/iomgr/pollset_windows.c +29 -37
- data/src/core/iomgr/pollset_windows.h +1 -5
- data/src/core/iomgr/resolve_address_posix.c +2 -2
- data/src/core/iomgr/resolve_address_windows.c +2 -2
- data/src/core/iomgr/sockaddr_utils.c +6 -6
- data/src/core/iomgr/sockaddr_win32.h +1 -6
- data/src/core/iomgr/tcp_client_posix.c +14 -12
- data/src/core/iomgr/tcp_client_windows.c +4 -4
- data/src/core/iomgr/tcp_posix.c +18 -10
- data/src/core/iomgr/tcp_posix.h +7 -1
- data/src/core/iomgr/tcp_server.h +40 -20
- data/src/core/iomgr/tcp_server_posix.c +106 -49
- data/src/core/iomgr/tcp_server_windows.c +98 -49
- data/src/core/iomgr/tcp_windows.c +11 -15
- data/src/core/iomgr/timer.c +10 -11
- data/src/core/iomgr/timer.h +22 -2
- data/src/core/iomgr/timer_heap.c +10 -10
- data/src/core/iomgr/timer_heap.h +2 -2
- data/src/core/iomgr/udp_server.c +7 -16
- data/src/core/iomgr/udp_server.h +2 -9
- data/src/core/iomgr/workqueue.h +2 -4
- data/src/core/iomgr/workqueue_posix.c +4 -3
- data/src/core/iomgr/workqueue_posix.h +3 -1
- data/src/core/json/json_reader.c +11 -12
- data/src/core/json/json_reader.h +4 -4
- data/src/core/json/json_string.c +19 -19
- data/src/core/json/json_writer.c +7 -9
- data/src/core/profiling/basic_timers.c +1 -1
- data/src/core/proto/grpc/lb/v0/load_balancer.pb.c +119 -0
- data/src/core/proto/grpc/lb/v0/load_balancer.pb.h +182 -0
- data/src/core/security/{base64.c → b64.c} +10 -10
- data/src/core/security/{base64.h → b64.h} +1 -1
- data/src/core/security/client_auth_filter.c +4 -5
- data/src/core/security/credentials.c +17 -10
- data/src/core/security/credentials.h +3 -3
- data/src/core/security/google_default_credentials.c +27 -22
- data/src/core/security/handshake.c +21 -12
- data/src/core/security/handshake.h +2 -1
- data/src/core/security/json_token.c +14 -8
- data/src/core/security/jwt_verifier.c +4 -3
- data/src/core/security/secure_endpoint.c +16 -16
- data/src/core/security/security_connector.c +131 -81
- data/src/core/security/security_connector.h +47 -27
- data/src/core/security/security_context.c +8 -3
- data/src/core/security/server_auth_filter.c +5 -5
- data/src/core/security/server_secure_chttp2.c +36 -37
- data/src/core/statistics/census_interface.h +2 -2
- data/src/core/statistics/census_rpc_stats.h +3 -3
- data/src/core/support/alloc.c +1 -1
- data/src/core/support/avl.c +2 -2
- data/src/core/support/cpu_posix.c +2 -2
- data/src/core/support/env_linux.c +28 -1
- data/src/core/support/env_win32.c +15 -7
- data/src/core/support/histogram.c +5 -5
- data/src/core/support/{file.c → load_file.c} +2 -2
- data/src/core/support/{file.h → load_file.h} +4 -12
- data/src/core/support/log_posix.c +1 -1
- data/src/core/support/log_win32.c +4 -3
- data/src/core/support/murmur_hash.c +11 -11
- data/src/core/support/murmur_hash.h +1 -1
- data/src/core/support/slice.c +11 -11
- data/src/core/support/slice_buffer.c +6 -6
- data/src/core/support/stack_lockfree.c +20 -10
- data/src/core/support/string.c +15 -15
- data/src/core/support/string.h +5 -5
- data/src/core/support/string_win32.c +5 -5
- data/src/core/support/subprocess_windows.c +141 -0
- data/src/core/support/sync.c +4 -4
- data/src/core/support/sync_posix.c +2 -2
- data/src/core/support/sync_win32.c +10 -5
- data/src/core/support/time.c +29 -29
- data/src/core/support/time_posix.c +15 -6
- data/src/core/support/time_precise.c +2 -2
- data/src/core/support/time_win32.c +18 -9
- data/src/core/support/tls_pthread.c +1 -1
- data/src/core/support/tmpfile.h +55 -0
- data/src/core/support/{file_posix.c → tmpfile_posix.c} +2 -2
- data/src/core/support/{file_win32.c → tmpfile_win32.c} +2 -2
- data/src/core/support/wrap_memcpy.c +53 -0
- data/src/core/surface/alarm.c +84 -0
- data/src/core/surface/byte_buffer_reader.c +1 -1
- data/src/core/surface/call.c +175 -116
- data/src/core/surface/call.h +2 -2
- data/src/core/surface/call_test_only.h +2 -2
- data/src/core/surface/channel.c +9 -9
- data/src/core/surface/channel.h +1 -1
- data/src/core/surface/channel_connectivity.c +3 -3
- data/src/core/surface/channel_create.c +4 -4
- data/src/core/surface/channel_ping.c +2 -2
- data/src/core/surface/completion_queue.c +84 -53
- data/src/core/surface/completion_queue.h +1 -1
- data/src/core/surface/init.c +11 -5
- data/src/core/surface/lame_client.c +2 -3
- data/src/core/surface/secure_channel_create.c +9 -10
- data/src/core/surface/server.c +30 -30
- data/src/core/surface/server_chttp2.c +8 -8
- data/src/core/surface/server_create.c +1 -4
- data/src/core/surface/validate_metadata.c +4 -4
- data/src/core/surface/version.c +2 -2
- data/src/core/transport/byte_stream.c +8 -6
- data/src/core/transport/byte_stream.h +6 -5
- data/src/core/transport/chttp2/bin_encoder.c +29 -29
- data/src/core/transport/chttp2/frame_data.c +29 -26
- data/src/core/transport/chttp2/frame_data.h +6 -6
- data/src/core/transport/chttp2/frame_goaway.c +30 -30
- data/src/core/transport/chttp2/frame_goaway.h +6 -6
- data/src/core/transport/chttp2/frame_ping.c +6 -6
- data/src/core/transport/chttp2/frame_ping.h +5 -5
- data/src/core/transport/chttp2/frame_rst_stream.c +18 -19
- data/src/core/transport/chttp2/frame_rst_stream.h +4 -4
- data/src/core/transport/chttp2/frame_settings.c +30 -30
- data/src/core/transport/chttp2/frame_settings.h +13 -13
- data/src/core/transport/chttp2/frame_window_update.c +17 -18
- data/src/core/transport/chttp2/frame_window_update.h +5 -7
- data/src/core/transport/chttp2/hpack_encoder.c +69 -73
- data/src/core/transport/chttp2/hpack_encoder.h +16 -16
- data/src/core/transport/chttp2/hpack_parser.c +167 -167
- data/src/core/transport/chttp2/hpack_parser.h +16 -16
- data/src/core/transport/chttp2/hpack_table.c +13 -13
- data/src/core/transport/chttp2/hpack_table.h +11 -11
- data/src/core/transport/chttp2/internal.h +103 -87
- data/src/core/transport/chttp2/parsing.c +25 -25
- data/src/core/transport/chttp2/stream_lists.c +38 -1
- data/src/core/transport/chttp2/stream_map.c +13 -14
- data/src/core/transport/chttp2/stream_map.h +6 -7
- data/src/core/transport/chttp2/timeout_encoding.c +19 -16
- data/src/core/transport/chttp2/varint.c +8 -9
- data/src/core/transport/chttp2/varint.h +7 -8
- data/src/core/transport/chttp2/writing.c +25 -22
- data/src/core/transport/chttp2_transport.c +147 -100
- data/src/core/transport/connectivity_state.c +6 -6
- data/src/core/transport/metadata.c +18 -18
- data/src/core/transport/metadata.h +5 -5
- data/src/core/transport/static_metadata.c +32 -33
- data/src/core/transport/static_metadata.h +8 -8
- data/src/core/transport/transport.c +6 -5
- data/src/core/transport/transport.h +17 -1
- data/src/core/tsi/fake_transport_security.c +7 -7
- data/src/core/tsi/ssl_transport_security.c +6 -4
- data/src/core/{iomgr/timer_internal.h → tsi/ssl_types.h} +19 -25
- data/src/ruby/ext/grpc/extconf.rb +52 -14
- data/src/ruby/ext/grpc/rb_byte_buffer.c +3 -1
- data/src/ruby/ext/grpc/rb_call.c +7 -3
- data/src/ruby/ext/grpc/rb_call_credentials.c +4 -0
- data/src/ruby/ext/grpc/rb_channel.c +4 -2
- data/src/ruby/ext/grpc/rb_channel_args.c +3 -1
- data/src/ruby/ext/grpc/rb_channel_credentials.c +3 -1
- data/src/ruby/ext/grpc/rb_completion_queue.c +3 -1
- data/src/ruby/ext/grpc/rb_event_thread.c +5 -0
- data/src/ruby/ext/grpc/rb_grpc.c +28 -19
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +562 -0
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +846 -0
- data/src/ruby/ext/grpc/rb_loader.c +72 -0
- data/src/ruby/ext/grpc/rb_loader.h +40 -0
- data/src/ruby/ext/grpc/rb_server.c +3 -1
- data/src/ruby/ext/grpc/rb_server_credentials.c +4 -2
- data/src/ruby/lib/grpc/core/time_consts.rb +2 -2
- data/src/ruby/lib/grpc/errors.rb +2 -2
- data/src/ruby/lib/grpc/generic/bidi_call.rb +1 -1
- data/src/ruby/lib/grpc/generic/rpc_desc.rb +1 -1
- data/src/ruby/lib/grpc/generic/rpc_server.rb +1 -1
- data/src/ruby/lib/grpc/grpc.rb +34 -0
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/README.md +2 -2
- data/src/ruby/pb/generate_proto_ruby.sh +2 -2
- data/src/ruby/pb/grpc/health/checker.rb +11 -11
- data/src/ruby/pb/grpc/health/v1/health.rb +28 -0
- data/src/ruby/pb/grpc/health/{v1alpha → v1}/health_services.rb +4 -4
- data/src/ruby/spec/client_server_spec.rb +2 -1
- data/src/ruby/spec/pb/health/checker_spec.rb +23 -37
- data/third_party/boringssl/crypto/aes/aes.c +1142 -0
- data/third_party/boringssl/crypto/aes/internal.h +87 -0
- data/third_party/boringssl/crypto/aes/mode_wrappers.c +108 -0
- data/third_party/boringssl/crypto/asn1/a_bitstr.c +255 -0
- data/third_party/boringssl/crypto/asn1/a_bool.c +112 -0
- data/third_party/boringssl/crypto/asn1/a_bytes.c +317 -0
- data/third_party/boringssl/crypto/asn1/a_d2i_fp.c +286 -0
- data/third_party/boringssl/crypto/asn1/a_dup.c +103 -0
- data/third_party/boringssl/crypto/asn1/a_enum.c +183 -0
- data/third_party/boringssl/crypto/asn1/a_gentm.c +255 -0
- data/third_party/boringssl/crypto/asn1/a_i2d_fp.c +154 -0
- data/third_party/boringssl/crypto/asn1/a_int.c +456 -0
- data/third_party/boringssl/crypto/asn1/a_mbstr.c +390 -0
- data/third_party/boringssl/crypto/asn1/a_object.c +412 -0
- data/third_party/boringssl/crypto/asn1/a_octet.c +70 -0
- data/third_party/boringssl/crypto/asn1/a_print.c +119 -0
- data/third_party/boringssl/crypto/asn1/a_strnid.c +286 -0
- data/third_party/boringssl/crypto/asn1/a_time.c +221 -0
- data/third_party/boringssl/crypto/asn1/a_type.c +160 -0
- data/third_party/boringssl/crypto/asn1/a_utctm.c +342 -0
- data/third_party/boringssl/crypto/asn1/a_utf8.c +210 -0
- data/third_party/boringssl/crypto/asn1/asn1_lib.c +510 -0
- data/third_party/boringssl/crypto/asn1/asn1_locl.h +73 -0
- data/third_party/boringssl/crypto/asn1/asn1_par.c +444 -0
- data/third_party/boringssl/crypto/asn1/asn_pack.c +104 -0
- data/third_party/boringssl/crypto/asn1/bio_asn1.c +496 -0
- data/third_party/boringssl/crypto/asn1/bio_ndef.c +254 -0
- data/third_party/boringssl/crypto/asn1/f_enum.c +206 -0
- data/third_party/boringssl/crypto/asn1/f_int.c +210 -0
- data/third_party/boringssl/crypto/asn1/f_string.c +204 -0
- data/third_party/boringssl/crypto/asn1/t_bitst.c +102 -0
- data/third_party/boringssl/crypto/asn1/t_pkey.c +112 -0
- data/third_party/boringssl/crypto/asn1/tasn_dec.c +1342 -0
- data/third_party/boringssl/crypto/asn1/tasn_enc.c +695 -0
- data/third_party/boringssl/crypto/asn1/tasn_fre.c +264 -0
- data/third_party/boringssl/crypto/asn1/tasn_new.c +398 -0
- data/third_party/boringssl/crypto/asn1/tasn_prn.c +642 -0
- data/third_party/boringssl/crypto/asn1/tasn_typ.c +137 -0
- data/third_party/boringssl/crypto/asn1/tasn_utl.c +266 -0
- data/third_party/boringssl/crypto/asn1/x_bignum.c +143 -0
- data/third_party/boringssl/crypto/asn1/x_long.c +182 -0
- data/third_party/boringssl/crypto/base64/base64.c +478 -0
- data/third_party/boringssl/crypto/bio/bio.c +608 -0
- data/third_party/boringssl/crypto/bio/bio_mem.c +327 -0
- data/third_party/boringssl/crypto/bio/buffer.c +496 -0
- data/third_party/boringssl/crypto/bio/connect.c +544 -0
- data/third_party/boringssl/crypto/bio/fd.c +270 -0
- data/third_party/boringssl/crypto/bio/file.c +349 -0
- data/third_party/boringssl/crypto/bio/hexdump.c +192 -0
- data/third_party/boringssl/crypto/bio/internal.h +108 -0
- data/third_party/boringssl/crypto/bio/pair.c +803 -0
- data/third_party/boringssl/crypto/bio/printf.c +119 -0
- data/third_party/boringssl/crypto/bio/socket.c +195 -0
- data/third_party/boringssl/crypto/bio/socket_helper.c +113 -0
- data/third_party/boringssl/crypto/bn/add.c +377 -0
- data/third_party/boringssl/crypto/bn/asm/x86_64-gcc.c +599 -0
- data/third_party/boringssl/crypto/bn/bn.c +341 -0
- data/third_party/boringssl/crypto/bn/bn_asn1.c +93 -0
- data/third_party/boringssl/crypto/bn/cmp.c +200 -0
- data/third_party/boringssl/crypto/bn/convert.c +597 -0
- data/third_party/boringssl/crypto/bn/ctx.c +311 -0
- data/third_party/boringssl/crypto/bn/div.c +625 -0
- data/third_party/boringssl/crypto/bn/exponentiation.c +1544 -0
- data/third_party/boringssl/crypto/bn/gcd.c +711 -0
- data/third_party/boringssl/crypto/bn/generic.c +1019 -0
- data/third_party/boringssl/crypto/bn/internal.h +294 -0
- data/third_party/boringssl/crypto/bn/kronecker.c +175 -0
- data/third_party/boringssl/crypto/bn/montgomery.c +561 -0
- data/third_party/boringssl/crypto/bn/mul.c +888 -0
- data/third_party/boringssl/crypto/bn/prime.c +845 -0
- data/third_party/boringssl/crypto/bn/random.c +326 -0
- data/third_party/boringssl/crypto/bn/rsaz_exp.c +326 -0
- data/third_party/boringssl/crypto/bn/rsaz_exp.h +56 -0
- data/third_party/boringssl/crypto/bn/shift.c +299 -0
- data/third_party/boringssl/crypto/bn/sqrt.c +505 -0
- data/third_party/boringssl/crypto/buf/buf.c +235 -0
- data/third_party/boringssl/crypto/bytestring/ber.c +221 -0
- data/third_party/boringssl/crypto/bytestring/cbb.c +411 -0
- data/third_party/boringssl/crypto/bytestring/cbs.c +415 -0
- data/third_party/boringssl/crypto/bytestring/internal.h +46 -0
- data/third_party/boringssl/crypto/chacha/chacha_generic.c +140 -0
- data/third_party/boringssl/crypto/chacha/chacha_vec.c +323 -0
- data/third_party/boringssl/crypto/cipher/aead.c +167 -0
- data/third_party/boringssl/crypto/cipher/cipher.c +652 -0
- data/third_party/boringssl/crypto/cipher/derive_key.c +154 -0
- data/third_party/boringssl/crypto/cipher/e_aes.c +1767 -0
- data/third_party/boringssl/crypto/cipher/e_chacha20poly1305.c +311 -0
- data/third_party/boringssl/crypto/cipher/e_des.c +207 -0
- data/third_party/boringssl/crypto/cipher/e_null.c +85 -0
- data/third_party/boringssl/crypto/cipher/e_rc2.c +443 -0
- data/third_party/boringssl/crypto/cipher/e_rc4.c +87 -0
- data/third_party/boringssl/crypto/cipher/e_ssl3.c +463 -0
- data/third_party/boringssl/crypto/cipher/e_tls.c +673 -0
- data/third_party/boringssl/crypto/cipher/internal.h +164 -0
- data/third_party/boringssl/crypto/cipher/tls_cbc.c +495 -0
- data/third_party/boringssl/crypto/cmac/cmac.c +239 -0
- data/third_party/boringssl/crypto/conf/conf.c +778 -0
- data/third_party/boringssl/crypto/conf/conf_def.h +127 -0
- data/third_party/boringssl/crypto/conf/internal.h +31 -0
- data/third_party/boringssl/crypto/cpu-arm.c +199 -0
- data/third_party/boringssl/crypto/cpu-intel.c +261 -0
- data/third_party/boringssl/crypto/crypto.c +140 -0
- data/third_party/boringssl/crypto/curve25519/curve25519.c +4897 -0
- data/third_party/boringssl/crypto/des/des.c +771 -0
- data/third_party/boringssl/crypto/des/internal.h +212 -0
- data/third_party/boringssl/crypto/dh/check.c +180 -0
- data/third_party/boringssl/crypto/dh/dh.c +463 -0
- data/third_party/boringssl/crypto/dh/dh_asn1.c +84 -0
- data/third_party/boringssl/crypto/dh/internal.h +80 -0
- data/third_party/boringssl/crypto/dh/params.c +301 -0
- data/third_party/boringssl/crypto/digest/digest.c +248 -0
- data/third_party/boringssl/crypto/digest/digests.c +321 -0
- data/third_party/boringssl/crypto/digest/internal.h +112 -0
- data/third_party/boringssl/crypto/digest/md32_common.h +322 -0
- data/third_party/boringssl/crypto/directory.h +66 -0
- data/third_party/boringssl/crypto/directory_posix.c +108 -0
- data/third_party/boringssl/crypto/directory_win.c +144 -0
- data/third_party/boringssl/crypto/dsa/dsa.c +908 -0
- data/third_party/boringssl/crypto/dsa/dsa_asn1.c +150 -0
- data/third_party/boringssl/crypto/dsa/internal.h +78 -0
- data/third_party/boringssl/crypto/ec/ec.c +889 -0
- data/third_party/boringssl/crypto/ec/ec_asn1.c +586 -0
- data/third_party/boringssl/crypto/ec/ec_key.c +482 -0
- data/third_party/boringssl/crypto/ec/ec_montgomery.c +280 -0
- data/third_party/boringssl/crypto/ec/internal.h +318 -0
- data/third_party/boringssl/crypto/ec/oct.c +416 -0
- data/third_party/boringssl/crypto/ec/p224-64.c +1305 -0
- data/third_party/boringssl/crypto/ec/p256-64.c +1878 -0
- data/third_party/boringssl/crypto/ec/p256-x86_64-table.h +9548 -0
- data/third_party/boringssl/crypto/ec/p256-x86_64.c +596 -0
- data/third_party/boringssl/crypto/ec/simple.c +1313 -0
- data/third_party/boringssl/crypto/ec/util-64.c +183 -0
- data/third_party/boringssl/crypto/ec/wnaf.c +449 -0
- data/third_party/boringssl/crypto/ecdh/ecdh.c +153 -0
- data/third_party/boringssl/crypto/ecdsa/ecdsa.c +496 -0
- data/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.c +240 -0
- data/third_party/boringssl/crypto/engine/engine.c +96 -0
- data/third_party/boringssl/crypto/err/err.c +756 -0
- data/third_party/boringssl/crypto/evp/algorithm.c +153 -0
- data/third_party/boringssl/crypto/evp/digestsign.c +159 -0
- data/third_party/boringssl/crypto/evp/evp.c +411 -0
- data/third_party/boringssl/crypto/evp/evp_asn1.c +179 -0
- data/third_party/boringssl/crypto/evp/evp_ctx.c +477 -0
- data/third_party/boringssl/crypto/evp/internal.h +278 -0
- data/third_party/boringssl/crypto/evp/p_dsa_asn1.c +588 -0
- data/third_party/boringssl/crypto/evp/p_ec.c +283 -0
- data/third_party/boringssl/crypto/evp/p_ec_asn1.c +562 -0
- data/third_party/boringssl/crypto/evp/p_rsa.c +596 -0
- data/third_party/boringssl/crypto/evp/p_rsa_asn1.c +737 -0
- data/third_party/boringssl/crypto/evp/pbkdf.c +151 -0
- data/third_party/boringssl/crypto/evp/sign.c +151 -0
- data/third_party/boringssl/crypto/ex_data.c +294 -0
- data/third_party/boringssl/crypto/hkdf/hkdf.c +89 -0
- data/third_party/boringssl/crypto/hmac/hmac.c +213 -0
- data/third_party/boringssl/crypto/internal.h +532 -0
- data/third_party/boringssl/crypto/lhash/lhash.c +346 -0
- data/third_party/boringssl/crypto/md4/md4.c +225 -0
- data/third_party/boringssl/crypto/md5/md5.c +275 -0
- data/third_party/boringssl/crypto/mem.c +200 -0
- data/third_party/boringssl/crypto/modes/cbc.c +216 -0
- data/third_party/boringssl/crypto/modes/cfb.c +231 -0
- data/third_party/boringssl/crypto/modes/ctr.c +226 -0
- data/third_party/boringssl/crypto/modes/gcm.c +1252 -0
- data/third_party/boringssl/crypto/modes/internal.h +370 -0
- data/third_party/boringssl/crypto/modes/ofb.c +108 -0
- data/third_party/boringssl/crypto/obj/obj.c +664 -0
- data/third_party/boringssl/crypto/obj/obj_dat.h +5257 -0
- data/third_party/boringssl/crypto/obj/obj_xref.c +124 -0
- data/third_party/boringssl/crypto/obj/obj_xref.h +96 -0
- data/third_party/boringssl/crypto/pem/pem_all.c +281 -0
- data/third_party/boringssl/crypto/pem/pem_info.c +404 -0
- data/third_party/boringssl/crypto/pem/pem_lib.c +835 -0
- data/third_party/boringssl/crypto/pem/pem_oth.c +89 -0
- data/third_party/boringssl/crypto/pem/pem_pk8.c +244 -0
- data/third_party/boringssl/crypto/pem/pem_pkey.c +312 -0
- data/third_party/boringssl/crypto/pem/pem_x509.c +65 -0
- data/third_party/boringssl/crypto/pem/pem_xaux.c +66 -0
- data/third_party/boringssl/crypto/pkcs8/internal.h +83 -0
- data/third_party/boringssl/crypto/pkcs8/p5_pbe.c +150 -0
- data/third_party/boringssl/crypto/pkcs8/p5_pbev2.c +440 -0
- data/third_party/boringssl/crypto/pkcs8/p8_pkey.c +85 -0
- data/third_party/boringssl/crypto/pkcs8/pkcs8.c +1217 -0
- data/third_party/boringssl/crypto/poly1305/poly1305.c +331 -0
- data/third_party/boringssl/crypto/poly1305/poly1305_arm.c +301 -0
- data/third_party/boringssl/crypto/poly1305/poly1305_vec.c +892 -0
- data/third_party/boringssl/crypto/rand/internal.h +32 -0
- data/third_party/boringssl/crypto/rand/rand.c +239 -0
- data/third_party/boringssl/crypto/rand/urandom.c +223 -0
- data/third_party/boringssl/crypto/rand/windows.c +56 -0
- data/third_party/boringssl/crypto/rc4/rc4.c +283 -0
- data/third_party/boringssl/crypto/refcount_c11.c +67 -0
- data/third_party/boringssl/crypto/refcount_lock.c +53 -0
- data/third_party/boringssl/crypto/rsa/blinding.c +462 -0
- data/third_party/boringssl/crypto/rsa/internal.h +164 -0
- data/third_party/boringssl/crypto/rsa/padding.c +711 -0
- data/third_party/boringssl/crypto/rsa/rsa.c +808 -0
- data/third_party/boringssl/crypto/rsa/rsa_asn1.c +473 -0
- data/third_party/boringssl/crypto/rsa/rsa_impl.c +1138 -0
- data/third_party/boringssl/crypto/sha/sha1.c +337 -0
- data/third_party/boringssl/crypto/sha/sha256.c +327 -0
- data/third_party/boringssl/crypto/sha/sha512.c +607 -0
- data/third_party/boringssl/crypto/stack/stack.c +386 -0
- data/third_party/boringssl/crypto/test/scoped_types.h +137 -0
- data/third_party/boringssl/crypto/test/test_util.h +35 -0
- data/third_party/boringssl/crypto/thread.c +101 -0
- data/third_party/boringssl/crypto/thread_none.c +55 -0
- data/third_party/boringssl/crypto/thread_pthread.c +167 -0
- data/third_party/boringssl/crypto/thread_win.c +282 -0
- data/third_party/boringssl/crypto/time_support.c +212 -0
- data/third_party/boringssl/crypto/x509/a_digest.c +97 -0
- data/third_party/boringssl/crypto/x509/a_sign.c +136 -0
- data/third_party/boringssl/crypto/x509/a_strex.c +564 -0
- data/third_party/boringssl/crypto/x509/a_verify.c +133 -0
- data/third_party/boringssl/crypto/x509/asn1_gen.c +873 -0
- data/third_party/boringssl/crypto/x509/by_dir.c +491 -0
- data/third_party/boringssl/crypto/x509/by_file.c +295 -0
- data/third_party/boringssl/crypto/x509/charmap.h +15 -0
- data/third_party/boringssl/crypto/x509/i2d_pr.c +84 -0
- data/third_party/boringssl/crypto/x509/pkcs7.c +353 -0
- data/third_party/boringssl/crypto/x509/t_crl.c +129 -0
- data/third_party/boringssl/crypto/x509/t_req.c +246 -0
- data/third_party/boringssl/crypto/x509/t_x509.c +500 -0
- data/third_party/boringssl/crypto/x509/t_x509a.c +109 -0
- data/third_party/boringssl/crypto/x509/vpm_int.h +70 -0
- data/third_party/boringssl/crypto/x509/x509.c +152 -0
- data/third_party/boringssl/crypto/x509/x509_att.c +353 -0
- data/third_party/boringssl/crypto/x509/x509_cmp.c +490 -0
- data/third_party/boringssl/crypto/x509/x509_d2.c +105 -0
- data/third_party/boringssl/crypto/x509/x509_def.c +88 -0
- data/third_party/boringssl/crypto/x509/x509_ext.c +206 -0
- data/third_party/boringssl/crypto/x509/x509_lu.c +738 -0
- data/third_party/boringssl/crypto/x509/x509_obj.c +191 -0
- data/third_party/boringssl/crypto/x509/x509_r2x.c +113 -0
- data/third_party/boringssl/crypto/x509/x509_req.c +315 -0
- data/third_party/boringssl/crypto/x509/x509_set.c +154 -0
- data/third_party/boringssl/crypto/x509/x509_trs.c +304 -0
- data/third_party/boringssl/crypto/x509/x509_txt.c +209 -0
- data/third_party/boringssl/crypto/x509/x509_v3.c +271 -0
- data/third_party/boringssl/crypto/x509/x509_vfy.c +2456 -0
- data/third_party/boringssl/crypto/x509/x509_vpm.c +672 -0
- data/third_party/boringssl/crypto/x509/x509cset.c +172 -0
- data/third_party/boringssl/crypto/x509/x509name.c +381 -0
- data/third_party/boringssl/crypto/x509/x509rset.c +80 -0
- data/third_party/boringssl/crypto/x509/x509spki.c +135 -0
- data/third_party/boringssl/crypto/x509/x509type.c +128 -0
- data/third_party/boringssl/crypto/x509/x_algor.c +154 -0
- data/third_party/boringssl/crypto/x509/x_all.c +547 -0
- data/third_party/boringssl/crypto/x509/x_attrib.c +117 -0
- data/third_party/boringssl/crypto/x509/x_crl.c +560 -0
- data/third_party/boringssl/crypto/x509/x_exten.c +75 -0
- data/third_party/boringssl/crypto/x509/x_info.c +95 -0
- data/third_party/boringssl/crypto/x509/x_name.c +538 -0
- data/third_party/boringssl/crypto/x509/x_pkey.c +100 -0
- data/third_party/boringssl/crypto/x509/x_pubkey.c +384 -0
- data/third_party/boringssl/crypto/x509/x_req.c +112 -0
- data/third_party/boringssl/crypto/x509/x_sig.c +69 -0
- data/third_party/boringssl/crypto/x509/x_spki.c +78 -0
- data/third_party/boringssl/crypto/x509/x_val.c +69 -0
- data/third_party/boringssl/crypto/x509/x_x509.c +227 -0
- data/third_party/boringssl/crypto/x509/x_x509a.c +197 -0
- data/third_party/boringssl/crypto/x509v3/ext_dat.h +129 -0
- data/third_party/boringssl/crypto/x509v3/pcy_cache.c +299 -0
- data/third_party/boringssl/crypto/x509v3/pcy_data.c +137 -0
- data/third_party/boringssl/crypto/x509v3/pcy_int.h +212 -0
- data/third_party/boringssl/crypto/x509v3/pcy_lib.c +165 -0
- data/third_party/boringssl/crypto/x509v3/pcy_map.c +133 -0
- data/third_party/boringssl/crypto/x509v3/pcy_node.c +197 -0
- data/third_party/boringssl/crypto/x509v3/pcy_tree.c +876 -0
- data/third_party/boringssl/crypto/x509v3/v3_akey.c +212 -0
- data/third_party/boringssl/crypto/x509v3/v3_akeya.c +71 -0
- data/third_party/boringssl/crypto/x509v3/v3_alt.c +622 -0
- data/third_party/boringssl/crypto/x509v3/v3_bcons.c +126 -0
- data/third_party/boringssl/crypto/x509v3/v3_bitst.c +141 -0
- data/third_party/boringssl/crypto/x509v3/v3_conf.c +459 -0
- data/third_party/boringssl/crypto/x509v3/v3_cpols.c +475 -0
- data/third_party/boringssl/crypto/x509v3/v3_crld.c +616 -0
- data/third_party/boringssl/crypto/x509v3/v3_enum.c +98 -0
- data/third_party/boringssl/crypto/x509v3/v3_extku.c +145 -0
- data/third_party/boringssl/crypto/x509v3/v3_genn.c +252 -0
- data/third_party/boringssl/crypto/x509v3/v3_ia5.c +117 -0
- data/third_party/boringssl/crypto/x509v3/v3_info.c +200 -0
- data/third_party/boringssl/crypto/x509v3/v3_int.c +87 -0
- data/third_party/boringssl/crypto/x509v3/v3_lib.c +335 -0
- data/third_party/boringssl/crypto/x509v3/v3_ncons.c +510 -0
- data/third_party/boringssl/crypto/x509v3/v3_pci.c +335 -0
- data/third_party/boringssl/crypto/x509v3/v3_pcia.c +56 -0
- data/third_party/boringssl/crypto/x509v3/v3_pcons.c +142 -0
- data/third_party/boringssl/crypto/x509v3/v3_pku.c +109 -0
- data/third_party/boringssl/crypto/x509v3/v3_pmaps.c +156 -0
- data/third_party/boringssl/crypto/x509v3/v3_prn.c +207 -0
- data/third_party/boringssl/crypto/x509v3/v3_purp.c +805 -0
- data/third_party/boringssl/crypto/x509v3/v3_skey.c +148 -0
- data/third_party/boringssl/crypto/x509v3/v3_sxnet.c +266 -0
- data/third_party/boringssl/crypto/x509v3/v3_utl.c +1322 -0
- data/third_party/boringssl/include/openssl/aead.h +346 -0
- data/third_party/boringssl/include/openssl/aes.h +158 -0
- data/third_party/boringssl/include/openssl/arm_arch.h +127 -0
- data/third_party/boringssl/include/openssl/asn1.h +1168 -0
- data/third_party/boringssl/include/openssl/asn1_mac.h +75 -0
- data/third_party/boringssl/include/openssl/asn1t.h +906 -0
- data/third_party/boringssl/include/openssl/base.h +261 -0
- data/third_party/boringssl/include/openssl/base64.h +184 -0
- data/third_party/boringssl/include/openssl/bio.h +902 -0
- data/third_party/boringssl/include/openssl/blowfish.h +93 -0
- data/third_party/boringssl/include/openssl/bn.h +885 -0
- data/third_party/boringssl/include/openssl/buf.h +118 -0
- data/third_party/boringssl/include/openssl/buffer.h +18 -0
- data/third_party/boringssl/include/openssl/bytestring.h +360 -0
- data/third_party/boringssl/include/openssl/cast.h +96 -0
- data/third_party/boringssl/include/openssl/chacha.h +37 -0
- data/third_party/boringssl/include/openssl/cipher.h +571 -0
- data/third_party/boringssl/include/openssl/cmac.h +76 -0
- data/third_party/boringssl/include/openssl/conf.h +145 -0
- data/third_party/boringssl/include/openssl/cpu.h +184 -0
- data/third_party/boringssl/include/openssl/crypto.h +68 -0
- data/third_party/boringssl/include/openssl/curve25519.h +88 -0
- data/third_party/boringssl/include/openssl/des.h +177 -0
- data/third_party/boringssl/include/openssl/dh.h +238 -0
- data/third_party/boringssl/include/openssl/digest.h +258 -0
- data/third_party/boringssl/include/openssl/dsa.h +343 -0
- data/third_party/boringssl/include/openssl/dtls1.h +16 -0
- data/third_party/boringssl/include/openssl/ec.h +355 -0
- data/third_party/boringssl/include/openssl/ec_key.h +280 -0
- data/third_party/boringssl/include/openssl/ecdh.h +102 -0
- data/third_party/boringssl/include/openssl/ecdsa.h +206 -0
- data/third_party/boringssl/include/openssl/engine.h +98 -0
- data/third_party/boringssl/include/openssl/err.h +487 -0
- data/third_party/boringssl/include/openssl/evp.h +750 -0
- data/third_party/boringssl/include/openssl/ex_data.h +213 -0
- data/third_party/boringssl/include/openssl/hkdf.h +44 -0
- data/third_party/boringssl/include/openssl/hmac.h +160 -0
- data/third_party/boringssl/include/openssl/lhash.h +192 -0
- data/third_party/boringssl/include/openssl/lhash_macros.h +132 -0
- data/third_party/boringssl/include/openssl/md4.h +102 -0
- data/third_party/boringssl/include/openssl/md5.h +107 -0
- data/third_party/boringssl/include/openssl/mem.h +140 -0
- data/third_party/boringssl/include/openssl/obj.h +198 -0
- data/third_party/boringssl/include/openssl/obj_mac.h +4140 -0
- data/third_party/boringssl/include/openssl/objects.h +18 -0
- data/third_party/boringssl/include/openssl/opensslfeatures.h +60 -0
- data/third_party/boringssl/include/openssl/opensslv.h +18 -0
- data/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
- data/third_party/boringssl/include/openssl/pem.h +521 -0
- data/third_party/boringssl/include/openssl/pkcs12.h +18 -0
- data/third_party/boringssl/include/openssl/pkcs7.h +16 -0
- data/third_party/boringssl/include/openssl/pkcs8.h +220 -0
- data/third_party/boringssl/include/openssl/poly1305.h +51 -0
- data/third_party/boringssl/include/openssl/pqueue.h +146 -0
- data/third_party/boringssl/include/openssl/rand.h +113 -0
- data/third_party/boringssl/include/openssl/rc4.h +90 -0
- data/third_party/boringssl/include/openssl/rsa.h +637 -0
- data/third_party/boringssl/include/openssl/safestack.h +16 -0
- data/third_party/boringssl/include/openssl/sha.h +256 -0
- data/third_party/boringssl/include/openssl/srtp.h +18 -0
- data/third_party/boringssl/include/openssl/ssl.h +4466 -0
- data/third_party/boringssl/include/openssl/ssl3.h +441 -0
- data/third_party/boringssl/include/openssl/stack.h +298 -0
- data/third_party/boringssl/include/openssl/stack_macros.h +4190 -0
- data/third_party/boringssl/include/openssl/thread.h +173 -0
- data/third_party/boringssl/include/openssl/time_support.h +90 -0
- data/third_party/boringssl/include/openssl/tls1.h +653 -0
- data/third_party/boringssl/include/openssl/type_check.h +91 -0
- data/third_party/boringssl/include/openssl/x509.h +1258 -0
- data/third_party/boringssl/include/openssl/x509_vfy.h +611 -0
- data/third_party/boringssl/include/openssl/x509v3.h +798 -0
- data/third_party/boringssl/ssl/custom_extensions.c +257 -0
- data/third_party/boringssl/ssl/d1_both.c +880 -0
- data/third_party/boringssl/ssl/d1_clnt.c +566 -0
- data/third_party/boringssl/ssl/d1_lib.c +340 -0
- data/third_party/boringssl/ssl/d1_meth.c +130 -0
- data/third_party/boringssl/ssl/d1_pkt.c +578 -0
- data/third_party/boringssl/ssl/d1_srtp.c +234 -0
- data/third_party/boringssl/ssl/d1_srvr.c +485 -0
- data/third_party/boringssl/ssl/dtls_record.c +308 -0
- data/third_party/boringssl/ssl/internal.h +1276 -0
- data/third_party/boringssl/ssl/pqueue/pqueue.c +197 -0
- data/third_party/boringssl/ssl/s3_both.c +571 -0
- data/third_party/boringssl/ssl/s3_clnt.c +2241 -0
- data/third_party/boringssl/ssl/s3_enc.c +494 -0
- data/third_party/boringssl/ssl/s3_lib.c +587 -0
- data/third_party/boringssl/ssl/s3_meth.c +166 -0
- data/third_party/boringssl/ssl/s3_pkt.c +732 -0
- data/third_party/boringssl/ssl/s3_srvr.c +2536 -0
- data/third_party/boringssl/ssl/ssl_aead_ctx.c +300 -0
- data/third_party/boringssl/ssl/ssl_asn1.c +718 -0
- data/third_party/boringssl/ssl/ssl_buffer.c +319 -0
- data/third_party/boringssl/ssl/ssl_cert.c +539 -0
- data/third_party/boringssl/ssl/ssl_cipher.c +2003 -0
- data/third_party/boringssl/ssl/ssl_file.c +633 -0
- data/third_party/boringssl/ssl/ssl_lib.c +2653 -0
- data/third_party/boringssl/ssl/ssl_rsa.c +423 -0
- data/third_party/boringssl/ssl/ssl_session.c +764 -0
- data/third_party/boringssl/ssl/ssl_stat.c +591 -0
- data/third_party/boringssl/ssl/t1_enc.c +708 -0
- data/third_party/boringssl/ssl/t1_lib.c +2905 -0
- data/third_party/boringssl/ssl/test/async_bio.h +45 -0
- data/third_party/boringssl/ssl/test/packeted_bio.h +44 -0
- data/third_party/boringssl/ssl/test/scoped_types.h +28 -0
- data/third_party/boringssl/ssl/test/test_config.h +108 -0
- data/third_party/boringssl/ssl/tls_record.c +342 -0
- data/third_party/nanopb/pb.h +547 -0
- data/third_party/nanopb/pb_common.c +97 -0
- data/third_party/nanopb/pb_common.h +42 -0
- data/third_party/nanopb/pb_decode.c +1319 -0
- data/third_party/nanopb/pb_decode.h +149 -0
- data/third_party/nanopb/pb_encode.c +690 -0
- data/third_party/nanopb/pb_encode.h +154 -0
- data/third_party/zlib/adler32.c +179 -0
- data/third_party/zlib/compress.c +80 -0
- data/third_party/zlib/crc32.c +425 -0
- data/third_party/zlib/crc32.h +441 -0
- data/third_party/zlib/deflate.c +1967 -0
- data/third_party/zlib/deflate.h +346 -0
- data/third_party/zlib/gzclose.c +25 -0
- data/third_party/zlib/gzguts.h +209 -0
- data/third_party/zlib/gzlib.c +634 -0
- data/third_party/zlib/gzread.c +594 -0
- data/third_party/zlib/gzwrite.c +577 -0
- data/third_party/zlib/infback.c +640 -0
- data/third_party/zlib/inffast.c +340 -0
- data/third_party/zlib/inffast.h +11 -0
- data/third_party/zlib/inffixed.h +94 -0
- data/third_party/zlib/inflate.c +1512 -0
- data/third_party/zlib/inflate.h +122 -0
- data/third_party/zlib/inftrees.c +306 -0
- data/third_party/zlib/inftrees.h +62 -0
- data/third_party/zlib/trees.c +1226 -0
- data/third_party/zlib/trees.h +128 -0
- data/third_party/zlib/uncompr.c +59 -0
- data/third_party/zlib/zconf.h +511 -0
- data/third_party/zlib/zlib.h +1768 -0
- data/third_party/zlib/zutil.c +324 -0
- data/third_party/zlib/zutil.h +253 -0
- metadata +504 -20
- data/Rakefile +0 -63
- data/src/ruby/pb/grpc/health/v1alpha/health.rb +0 -29
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -138,15 +138,12 @@ static void tcp_ref(grpc_tcp *tcp) { gpr_ref(&tcp->refcount); }
|
|
138
138
|
#endif
|
139
139
|
|
140
140
|
/* Asynchronous callback from the IOCP, or the background thread. */
|
141
|
-
static void on_read(grpc_exec_ctx *exec_ctx, void *tcpp,
|
141
|
+
static void on_read(grpc_exec_ctx *exec_ctx, void *tcpp, bool success) {
|
142
142
|
grpc_tcp *tcp = tcpp;
|
143
143
|
grpc_closure *cb = tcp->read_cb;
|
144
144
|
grpc_winsocket *socket = tcp->socket;
|
145
145
|
gpr_slice sub;
|
146
|
-
gpr_slice *slice = NULL;
|
147
|
-
size_t nslices = 0;
|
148
146
|
grpc_winsocket_callback_info *info = &socket->read_info;
|
149
|
-
int do_abort = 0;
|
150
147
|
|
151
148
|
if (success) {
|
152
149
|
if (socket->read_info.wsa_error != 0 && !tcp->shutting_down) {
|
@@ -187,7 +184,7 @@ static void win_read(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
187
184
|
WSABUF buffer;
|
188
185
|
|
189
186
|
if (tcp->shutting_down) {
|
190
|
-
grpc_exec_ctx_enqueue(exec_ctx, cb,
|
187
|
+
grpc_exec_ctx_enqueue(exec_ctx, cb, false, NULL);
|
191
188
|
return;
|
192
189
|
}
|
193
190
|
|
@@ -211,7 +208,7 @@ static void win_read(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
211
208
|
/* Did we get data immediately ? Yay. */
|
212
209
|
if (info->wsa_error != WSAEWOULDBLOCK) {
|
213
210
|
info->bytes_transfered = bytes_read;
|
214
|
-
grpc_exec_ctx_enqueue(exec_ctx, &tcp->on_read,
|
211
|
+
grpc_exec_ctx_enqueue(exec_ctx, &tcp->on_read, true, NULL);
|
215
212
|
return;
|
216
213
|
}
|
217
214
|
|
@@ -224,7 +221,7 @@ static void win_read(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
224
221
|
int wsa_error = WSAGetLastError();
|
225
222
|
if (wsa_error != WSA_IO_PENDING) {
|
226
223
|
info->wsa_error = wsa_error;
|
227
|
-
grpc_exec_ctx_enqueue(exec_ctx, &tcp->on_read,
|
224
|
+
grpc_exec_ctx_enqueue(exec_ctx, &tcp->on_read, false, NULL);
|
228
225
|
return;
|
229
226
|
}
|
230
227
|
}
|
@@ -233,12 +230,11 @@ static void win_read(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
233
230
|
}
|
234
231
|
|
235
232
|
/* Asynchronous callback from the IOCP, or the background thread. */
|
236
|
-
static void on_write(grpc_exec_ctx *exec_ctx, void *tcpp,
|
233
|
+
static void on_write(grpc_exec_ctx *exec_ctx, void *tcpp, bool success) {
|
237
234
|
grpc_tcp *tcp = (grpc_tcp *)tcpp;
|
238
235
|
grpc_winsocket *handle = tcp->socket;
|
239
236
|
grpc_winsocket_callback_info *info = &handle->write_info;
|
240
237
|
grpc_closure *cb;
|
241
|
-
int do_abort = 0;
|
242
238
|
|
243
239
|
gpr_mu_lock(&tcp->mu);
|
244
240
|
cb = tcp->write_cb;
|
@@ -277,7 +273,7 @@ static void win_write(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
277
273
|
size_t len;
|
278
274
|
|
279
275
|
if (tcp->shutting_down) {
|
280
|
-
grpc_exec_ctx_enqueue(exec_ctx, cb,
|
276
|
+
grpc_exec_ctx_enqueue(exec_ctx, cb, false, NULL);
|
281
277
|
return;
|
282
278
|
}
|
283
279
|
|
@@ -305,9 +301,9 @@ static void win_write(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
305
301
|
connection that has its send queue filled up. But if we don't, then we can
|
306
302
|
avoid doing an async write operation at all. */
|
307
303
|
if (info->wsa_error != WSAEWOULDBLOCK) {
|
308
|
-
|
304
|
+
bool ok = false;
|
309
305
|
if (status == 0) {
|
310
|
-
ok =
|
306
|
+
ok = true;
|
311
307
|
GPR_ASSERT(bytes_sent == tcp->write_slices->length);
|
312
308
|
} else {
|
313
309
|
if (socket->read_info.wsa_error != WSAECONNRESET) {
|
@@ -317,7 +313,7 @@ static void win_write(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
317
313
|
}
|
318
314
|
}
|
319
315
|
if (allocated) gpr_free(allocated);
|
320
|
-
grpc_exec_ctx_enqueue(exec_ctx, cb, ok);
|
316
|
+
grpc_exec_ctx_enqueue(exec_ctx, cb, ok, NULL);
|
321
317
|
return;
|
322
318
|
}
|
323
319
|
|
@@ -334,7 +330,7 @@ static void win_write(grpc_exec_ctx *exec_ctx, grpc_endpoint *ep,
|
|
334
330
|
int wsa_error = WSAGetLastError();
|
335
331
|
if (wsa_error != WSA_IO_PENDING) {
|
336
332
|
TCP_UNREF(tcp, "write");
|
337
|
-
grpc_exec_ctx_enqueue(exec_ctx, cb,
|
333
|
+
grpc_exec_ctx_enqueue(exec_ctx, cb, false, NULL);
|
338
334
|
return;
|
339
335
|
}
|
340
336
|
}
|
data/src/core/iomgr/timer.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -34,7 +34,6 @@
|
|
34
34
|
#include "src/core/iomgr/timer.h"
|
35
35
|
|
36
36
|
#include "src/core/iomgr/timer_heap.h"
|
37
|
-
#include "src/core/iomgr/timer_internal.h"
|
38
37
|
#include "src/core/iomgr/time_averaged_stats.h"
|
39
38
|
#include <grpc/support/log.h>
|
40
39
|
#include <grpc/support/sync.h>
|
@@ -55,7 +54,7 @@ typedef struct {
|
|
55
54
|
gpr_timespec queue_deadline_cap;
|
56
55
|
gpr_timespec min_deadline;
|
57
56
|
/* Index in the g_shard_queue */
|
58
|
-
|
57
|
+
uint32_t shard_queue_index;
|
59
58
|
/* This holds all timers with deadlines < queue_deadline_cap. Timers in this
|
60
59
|
list have the top bit of their deadline set to 0. */
|
61
60
|
grpc_timer_heap heap;
|
@@ -82,7 +81,7 @@ static gpr_timespec compute_min_deadline(shard_type *shard) {
|
|
82
81
|
}
|
83
82
|
|
84
83
|
void grpc_timer_list_init(gpr_timespec now) {
|
85
|
-
|
84
|
+
uint32_t i;
|
86
85
|
|
87
86
|
gpr_mu_init(&g_mu);
|
88
87
|
gpr_mu_init(&g_checker_mu);
|
@@ -126,8 +125,8 @@ static double ts_to_dbl(gpr_timespec ts) {
|
|
126
125
|
|
127
126
|
static gpr_timespec dbl_to_ts(double d) {
|
128
127
|
gpr_timespec ts;
|
129
|
-
ts.tv_sec = (
|
130
|
-
ts.tv_nsec = (
|
128
|
+
ts.tv_sec = (int64_t)d;
|
129
|
+
ts.tv_nsec = (int32_t)(1e9 * (d - (double)ts.tv_sec));
|
131
130
|
ts.clock_type = GPR_TIMESPAN;
|
132
131
|
return ts;
|
133
132
|
}
|
@@ -143,7 +142,7 @@ static void list_remove(grpc_timer *timer) {
|
|
143
142
|
timer->prev->next = timer->next;
|
144
143
|
}
|
145
144
|
|
146
|
-
static void swap_adjacent_shards_in_queue(
|
145
|
+
static void swap_adjacent_shards_in_queue(uint32_t first_shard_queue_index) {
|
147
146
|
shard_type *temp;
|
148
147
|
temp = g_shard_queue[first_shard_queue_index];
|
149
148
|
g_shard_queue[first_shard_queue_index] =
|
@@ -224,7 +223,7 @@ void grpc_timer_cancel(grpc_exec_ctx *exec_ctx, grpc_timer *timer) {
|
|
224
223
|
shard_type *shard = &g_shards[shard_idx(timer)];
|
225
224
|
gpr_mu_lock(&shard->mu);
|
226
225
|
if (!timer->triggered) {
|
227
|
-
grpc_exec_ctx_enqueue(exec_ctx, &timer->closure,
|
226
|
+
grpc_exec_ctx_enqueue(exec_ctx, &timer->closure, false, NULL);
|
228
227
|
timer->triggered = 1;
|
229
228
|
if (timer->heap_index == INVALID_HEAP_INDEX) {
|
230
229
|
list_remove(timer);
|
@@ -290,7 +289,7 @@ static size_t pop_timers(grpc_exec_ctx *exec_ctx, shard_type *shard,
|
|
290
289
|
grpc_timer *timer;
|
291
290
|
gpr_mu_lock(&shard->mu);
|
292
291
|
while ((timer = pop_one(shard, now))) {
|
293
|
-
grpc_exec_ctx_enqueue(exec_ctx, &timer->closure, success);
|
292
|
+
grpc_exec_ctx_enqueue(exec_ctx, &timer->closure, success, NULL);
|
294
293
|
n++;
|
295
294
|
}
|
296
295
|
*new_min_deadline = compute_min_deadline(shard);
|
@@ -336,8 +335,8 @@ static int run_some_expired_timers(grpc_exec_ctx *exec_ctx, gpr_timespec now,
|
|
336
335
|
return (int)n;
|
337
336
|
}
|
338
337
|
|
339
|
-
|
340
|
-
|
338
|
+
bool grpc_timer_check(grpc_exec_ctx *exec_ctx, gpr_timespec now,
|
339
|
+
gpr_timespec *next) {
|
341
340
|
GPR_ASSERT(now.clock_type == g_clock_type);
|
342
341
|
return run_some_expired_timers(
|
343
342
|
exec_ctx, now, next,
|
data/src/core/iomgr/timer.h
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -41,7 +41,7 @@
|
|
41
41
|
|
42
42
|
typedef struct grpc_timer {
|
43
43
|
gpr_timespec deadline;
|
44
|
-
|
44
|
+
uint32_t heap_index; /* INVALID_HEAP_INDEX if not in heap */
|
45
45
|
int triggered;
|
46
46
|
struct grpc_timer *next;
|
47
47
|
struct grpc_timer *prev;
|
@@ -86,4 +86,24 @@ void grpc_timer_init(grpc_exec_ctx *exec_ctx, grpc_timer *timer,
|
|
86
86
|
Requires: cancel() must happen after add() on a given timer */
|
87
87
|
void grpc_timer_cancel(grpc_exec_ctx *exec_ctx, grpc_timer *timer);
|
88
88
|
|
89
|
+
/* iomgr internal api for dealing with timers */
|
90
|
+
|
91
|
+
/* Check for timers to be run, and run them.
|
92
|
+
Return true if timer callbacks were executed.
|
93
|
+
Drops drop_mu if it is non-null before executing callbacks.
|
94
|
+
If next is non-null, TRY to update *next with the next running timer
|
95
|
+
IF that timer occurs before *next current value.
|
96
|
+
*next is never guaranteed to be updated on any given execution; however,
|
97
|
+
with high probability at least one thread in the system will see an update
|
98
|
+
at any time slice. */
|
99
|
+
|
100
|
+
bool grpc_timer_check(grpc_exec_ctx *exec_ctx, gpr_timespec now,
|
101
|
+
gpr_timespec *next);
|
102
|
+
void grpc_timer_list_init(gpr_timespec now);
|
103
|
+
void grpc_timer_list_shutdown(grpc_exec_ctx *exec_ctx);
|
104
|
+
|
105
|
+
/* the following must be implemented by each iomgr implementation */
|
106
|
+
|
107
|
+
void grpc_kick_poller(void);
|
108
|
+
|
89
109
|
#endif /* GRPC_INTERNAL_CORE_IOMGR_TIMER_H */
|
data/src/core/iomgr/timer_heap.c
CHANGED
@@ -43,9 +43,9 @@
|
|
43
43
|
position. This functor is called each time immediately after modifying a
|
44
44
|
value in the underlying container, with the offset of the modified element as
|
45
45
|
its argument. */
|
46
|
-
static void adjust_upwards(grpc_timer **first,
|
46
|
+
static void adjust_upwards(grpc_timer **first, uint32_t i, grpc_timer *t) {
|
47
47
|
while (i > 0) {
|
48
|
-
|
48
|
+
uint32_t parent = (uint32_t)(((int)i - 1) / 2);
|
49
49
|
if (gpr_time_cmp(first[parent]->deadline, t->deadline) >= 0) break;
|
50
50
|
first[i] = first[parent];
|
51
51
|
first[i]->heap_index = i;
|
@@ -58,12 +58,12 @@ static void adjust_upwards(grpc_timer **first, gpr_uint32 i, grpc_timer *t) {
|
|
58
58
|
/* Adjusts a heap so as to move a hole at position i farther away from the root,
|
59
59
|
until a suitable position is found for element t. Then, copies t into that
|
60
60
|
position. */
|
61
|
-
static void adjust_downwards(grpc_timer **first,
|
62
|
-
|
61
|
+
static void adjust_downwards(grpc_timer **first, uint32_t i, uint32_t length,
|
62
|
+
grpc_timer *t) {
|
63
63
|
for (;;) {
|
64
|
-
|
65
|
-
|
66
|
-
|
64
|
+
uint32_t left_child = 1u + 2u * i;
|
65
|
+
uint32_t right_child;
|
66
|
+
uint32_t next_i;
|
67
67
|
if (left_child >= length) break;
|
68
68
|
right_child = left_child + 1;
|
69
69
|
next_i = right_child < length &&
|
@@ -93,8 +93,8 @@ static void maybe_shrink(grpc_timer_heap *heap) {
|
|
93
93
|
}
|
94
94
|
|
95
95
|
static void note_changed_priority(grpc_timer_heap *heap, grpc_timer *timer) {
|
96
|
-
|
97
|
-
|
96
|
+
uint32_t i = timer->heap_index;
|
97
|
+
uint32_t parent = (uint32_t)(((int)i - 1) / 2);
|
98
98
|
if (gpr_time_cmp(heap->timers[parent]->deadline, timer->deadline) < 0) {
|
99
99
|
adjust_upwards(heap->timers, i, timer);
|
100
100
|
} else {
|
@@ -122,7 +122,7 @@ int grpc_timer_heap_add(grpc_timer_heap *heap, grpc_timer *timer) {
|
|
122
122
|
}
|
123
123
|
|
124
124
|
void grpc_timer_heap_remove(grpc_timer_heap *heap, grpc_timer *timer) {
|
125
|
-
|
125
|
+
uint32_t i = timer->heap_index;
|
126
126
|
if (i == heap->timer_count - 1) {
|
127
127
|
heap->timer_count--;
|
128
128
|
maybe_shrink(heap);
|
data/src/core/iomgr/timer_heap.h
CHANGED
data/src/core/iomgr/udp_server.c
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -75,7 +75,7 @@ typedef struct {
|
|
75
75
|
grpc_fd *emfd;
|
76
76
|
grpc_udp_server *server;
|
77
77
|
union {
|
78
|
-
|
78
|
+
uint8_t untyped[GRPC_MAX_SOCKADDR_SIZE];
|
79
79
|
struct sockaddr sockaddr;
|
80
80
|
struct sockaddr_un un;
|
81
81
|
} addr;
|
@@ -137,7 +137,7 @@ grpc_udp_server *grpc_udp_server_create(void) {
|
|
137
137
|
}
|
138
138
|
|
139
139
|
static void finish_shutdown(grpc_exec_ctx *exec_ctx, grpc_udp_server *s) {
|
140
|
-
grpc_exec_ctx_enqueue(exec_ctx, s->shutdown_complete, 1);
|
140
|
+
grpc_exec_ctx_enqueue(exec_ctx, s->shutdown_complete, 1, NULL);
|
141
141
|
|
142
142
|
gpr_mu_destroy(&s->mu);
|
143
143
|
gpr_cv_destroy(&s->cv);
|
@@ -146,7 +146,8 @@ static void finish_shutdown(grpc_exec_ctx *exec_ctx, grpc_udp_server *s) {
|
|
146
146
|
gpr_free(s);
|
147
147
|
}
|
148
148
|
|
149
|
-
static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server,
|
149
|
+
static void destroyed_port(grpc_exec_ctx *exec_ctx, void *server,
|
150
|
+
bool success) {
|
150
151
|
grpc_udp_server *s = server;
|
151
152
|
gpr_mu_lock(&s->mu);
|
152
153
|
s->destroyed_ports++;
|
@@ -263,10 +264,10 @@ error:
|
|
263
264
|
}
|
264
265
|
|
265
266
|
/* event manager callback when reads are ready */
|
266
|
-
static void on_read(grpc_exec_ctx *exec_ctx, void *arg,
|
267
|
+
static void on_read(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
|
267
268
|
server_port *sp = arg;
|
268
269
|
|
269
|
-
if (success
|
270
|
+
if (!success) {
|
270
271
|
gpr_mu_lock(&sp->server->mu);
|
271
272
|
if (0 == --sp->server->active_ports) {
|
272
273
|
gpr_mu_unlock(&sp->server->mu);
|
@@ -425,15 +426,5 @@ void grpc_udp_server_start(grpc_exec_ctx *exec_ctx, grpc_udp_server *s,
|
|
425
426
|
gpr_mu_unlock(&s->mu);
|
426
427
|
}
|
427
428
|
|
428
|
-
/* TODO(rjshade): Add a test for this method. */
|
429
|
-
void grpc_udp_server_write(server_port *sp, const char *buffer, size_t buf_len,
|
430
|
-
const struct sockaddr *peer_address) {
|
431
|
-
ssize_t rc;
|
432
|
-
rc = sendto(sp->fd, buffer, buf_len, 0, peer_address, sizeof(peer_address));
|
433
|
-
if (rc < 0) {
|
434
|
-
gpr_log(GPR_ERROR, "Unable to send data: %s", strerror(errno));
|
435
|
-
}
|
436
|
-
}
|
437
|
-
|
438
429
|
#endif
|
439
430
|
#endif
|
data/src/core/iomgr/udp_server.h
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -35,6 +35,7 @@
|
|
35
35
|
#define GRPC_INTERNAL_CORE_IOMGR_UDP_SERVER_H
|
36
36
|
|
37
37
|
#include "src/core/iomgr/endpoint.h"
|
38
|
+
#include "src/core/iomgr/fd_posix.h"
|
38
39
|
|
39
40
|
/* Forward decl of grpc_server */
|
40
41
|
typedef struct grpc_server grpc_server;
|
@@ -72,12 +73,4 @@ int grpc_udp_server_add_port(grpc_udp_server *s, const void *addr,
|
|
72
73
|
void grpc_udp_server_destroy(grpc_exec_ctx *exec_ctx, grpc_udp_server *server,
|
73
74
|
grpc_closure *on_done);
|
74
75
|
|
75
|
-
/* Write the contents of buffer to the underlying UDP socket. */
|
76
|
-
/*
|
77
|
-
void grpc_udp_server_write(grpc_udp_server *s,
|
78
|
-
const char *buffer,
|
79
|
-
int buf_len,
|
80
|
-
const struct sockaddr* to);
|
81
|
-
*/
|
82
|
-
|
83
76
|
#endif /* GRPC_INTERNAL_CORE_IOMGR_UDP_SERVER_H */
|
data/src/core/iomgr/workqueue.h
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -47,9 +47,7 @@
|
|
47
47
|
#include "src/core/iomgr/workqueue_windows.h"
|
48
48
|
#endif
|
49
49
|
|
50
|
-
|
51
|
-
struct grpc_workqueue;
|
52
|
-
typedef struct grpc_workqueue grpc_workqueue;
|
50
|
+
/* grpc_workqueue is forward declared in exec_ctx.h */
|
53
51
|
|
54
52
|
/** Create a work queue */
|
55
53
|
grpc_workqueue *grpc_workqueue_create(grpc_exec_ctx *exec_ctx);
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -44,8 +44,9 @@
|
|
44
44
|
#include <grpc/support/useful.h>
|
45
45
|
|
46
46
|
#include "src/core/iomgr/fd_posix.h"
|
47
|
+
#include "src/core/iomgr/pollset_posix.h"
|
47
48
|
|
48
|
-
static void on_readable(grpc_exec_ctx *exec_ctx, void *arg,
|
49
|
+
static void on_readable(grpc_exec_ctx *exec_ctx, void *arg, bool success);
|
49
50
|
|
50
51
|
grpc_workqueue *grpc_workqueue_create(grpc_exec_ctx *exec_ctx) {
|
51
52
|
char name[32];
|
@@ -110,7 +111,7 @@ void grpc_workqueue_flush(grpc_exec_ctx *exec_ctx, grpc_workqueue *workqueue) {
|
|
110
111
|
gpr_mu_unlock(&workqueue->mu);
|
111
112
|
}
|
112
113
|
|
113
|
-
static void on_readable(grpc_exec_ctx *exec_ctx, void *arg,
|
114
|
+
static void on_readable(grpc_exec_ctx *exec_ctx, void *arg, bool success) {
|
114
115
|
grpc_workqueue *workqueue = arg;
|
115
116
|
|
116
117
|
if (!success) {
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/*
|
2
2
|
*
|
3
|
-
* Copyright 2015, Google Inc.
|
3
|
+
* Copyright 2015-2016, Google Inc.
|
4
4
|
* All rights reserved.
|
5
5
|
*
|
6
6
|
* Redistribution and use in source and binary forms, with or without
|
@@ -34,6 +34,8 @@
|
|
34
34
|
#ifndef GRPC_INTERNAL_CORE_IOMGR_WORKQUEUE_POSIX_H
|
35
35
|
#define GRPC_INTERNAL_CORE_IOMGR_WORKQUEUE_POSIX_H
|
36
36
|
|
37
|
+
#include "src/core/iomgr/wakeup_fd_posix.h"
|
38
|
+
|
37
39
|
struct grpc_fd;
|
38
40
|
|
39
41
|
struct grpc_workqueue {
|
data/src/core/json/json_reader.c
CHANGED
@@ -43,17 +43,16 @@ static void json_reader_string_clear(grpc_json_reader *reader) {
|
|
43
43
|
reader->vtable->string_clear(reader->userdata);
|
44
44
|
}
|
45
45
|
|
46
|
-
static void json_reader_string_add_char(grpc_json_reader *reader,
|
47
|
-
gpr_uint32 c) {
|
46
|
+
static void json_reader_string_add_char(grpc_json_reader *reader, uint32_t c) {
|
48
47
|
reader->vtable->string_add_char(reader->userdata, c);
|
49
48
|
}
|
50
49
|
|
51
50
|
static void json_reader_string_add_utf32(grpc_json_reader *reader,
|
52
|
-
|
51
|
+
uint32_t utf32) {
|
53
52
|
reader->vtable->string_add_utf32(reader->userdata, utf32);
|
54
53
|
}
|
55
54
|
|
56
|
-
static
|
55
|
+
static uint32_t grpc_json_reader_read_char(grpc_json_reader *reader) {
|
57
56
|
return reader->vtable->read_char(reader->userdata);
|
58
57
|
}
|
59
58
|
|
@@ -108,7 +107,7 @@ int grpc_json_reader_is_complete(grpc_json_reader *reader) {
|
|
108
107
|
}
|
109
108
|
|
110
109
|
grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader) {
|
111
|
-
|
110
|
+
uint32_t c, success;
|
112
111
|
|
113
112
|
/* This state-machine is a strict implementation of ECMA-404 */
|
114
113
|
for (;;) {
|
@@ -154,7 +153,7 @@ grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader) {
|
|
154
153
|
case GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL:
|
155
154
|
case GRPC_JSON_STATE_VALUE_NUMBER_ZERO:
|
156
155
|
case GRPC_JSON_STATE_VALUE_NUMBER_EPM:
|
157
|
-
success = (
|
156
|
+
success = (uint32_t)json_reader_set_number(reader);
|
158
157
|
if (!success) return GRPC_JSON_PARSE_ERROR;
|
159
158
|
json_reader_string_clear(reader);
|
160
159
|
reader->state = GRPC_JSON_STATE_VALUE_END;
|
@@ -181,7 +180,7 @@ grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader) {
|
|
181
180
|
case GRPC_JSON_STATE_VALUE_NUMBER_WITH_DECIMAL:
|
182
181
|
case GRPC_JSON_STATE_VALUE_NUMBER_ZERO:
|
183
182
|
case GRPC_JSON_STATE_VALUE_NUMBER_EPM:
|
184
|
-
success = (
|
183
|
+
success = (uint32_t)json_reader_set_number(reader);
|
185
184
|
if (!success) return GRPC_JSON_PARSE_ERROR;
|
186
185
|
json_reader_string_clear(reader);
|
187
186
|
reader->state = GRPC_JSON_STATE_VALUE_END;
|
@@ -416,8 +415,8 @@ grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader) {
|
|
416
415
|
} else {
|
417
416
|
return GRPC_JSON_PARSE_ERROR;
|
418
417
|
}
|
419
|
-
reader->unicode_char = (
|
420
|
-
reader->unicode_char = (
|
418
|
+
reader->unicode_char = (uint16_t)(reader->unicode_char << 4);
|
419
|
+
reader->unicode_char = (uint16_t)(reader->unicode_char | c);
|
421
420
|
|
422
421
|
switch (reader->state) {
|
423
422
|
case GRPC_JSON_STATE_STRING_ESCAPE_U1:
|
@@ -440,13 +439,13 @@ grpc_json_reader_status grpc_json_reader_run(grpc_json_reader *reader) {
|
|
440
439
|
reader->unicode_high_surrogate = reader->unicode_char;
|
441
440
|
} else if ((reader->unicode_char & 0xfc00) == 0xdc00) {
|
442
441
|
/* low surrogate utf-16 */
|
443
|
-
|
442
|
+
uint32_t utf32;
|
444
443
|
if (reader->unicode_high_surrogate == 0)
|
445
444
|
return GRPC_JSON_PARSE_ERROR;
|
446
445
|
utf32 = 0x10000;
|
447
|
-
utf32 += (
|
446
|
+
utf32 += (uint32_t)(
|
448
447
|
(reader->unicode_high_surrogate - 0xd800) * 0x400);
|
449
|
-
utf32 += (
|
448
|
+
utf32 += (uint32_t)(reader->unicode_char - 0xdc00);
|
450
449
|
json_reader_string_add_utf32(reader, utf32);
|
451
450
|
reader->unicode_high_surrogate = 0;
|
452
451
|
} else {
|