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
|
@@ -42,13 +42,15 @@
|
|
42
42
|
#include <stdlib.h>
|
43
43
|
#include <string.h>
|
44
44
|
|
45
|
-
#include "src/core/iomgr/fd_posix.h"
|
46
|
-
#include "src/core/iomgr/iomgr_internal.h"
|
47
|
-
#include "src/core/support/block_annotate.h"
|
48
45
|
#include <grpc/support/alloc.h>
|
49
46
|
#include <grpc/support/log.h>
|
50
47
|
#include <grpc/support/useful.h>
|
51
48
|
|
49
|
+
#include "src/core/iomgr/fd_posix.h"
|
50
|
+
#include "src/core/iomgr/iomgr_internal.h"
|
51
|
+
#include "src/core/iomgr/pollset_posix.h"
|
52
|
+
#include "src/core/support/block_annotate.h"
|
53
|
+
|
52
54
|
typedef struct {
|
53
55
|
/* all polled fds */
|
54
56
|
size_t fd_count;
|
@@ -144,7 +146,9 @@ static void multipoll_with_poll_pollset_maybe_work_and_unlock(
|
|
144
146
|
GRPC_SCHEDULING_END_BLOCKING_REGION;
|
145
147
|
|
146
148
|
if (r < 0) {
|
147
|
-
|
149
|
+
if (errno != EINTR) {
|
150
|
+
gpr_log(GPR_ERROR, "poll() failed: %s", strerror(errno));
|
151
|
+
}
|
148
152
|
for (i = 2; i < pfd_count; i++) {
|
149
153
|
grpc_fd_end_poll(exec_ctx, &watchers[i], 0, 0);
|
150
154
|
}
|
@@ -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
|
@@ -42,17 +42,16 @@
|
|
42
42
|
#include <string.h>
|
43
43
|
#include <unistd.h>
|
44
44
|
|
45
|
-
#include "src/core/iomgr/timer_internal.h"
|
46
|
-
#include "src/core/iomgr/fd_posix.h"
|
47
|
-
#include "src/core/iomgr/iomgr_internal.h"
|
48
|
-
#include "src/core/iomgr/socket_utils_posix.h"
|
49
|
-
#include "src/core/profiling/timers.h"
|
50
|
-
#include "src/core/support/block_annotate.h"
|
51
45
|
#include <grpc/support/alloc.h>
|
52
46
|
#include <grpc/support/log.h>
|
53
47
|
#include <grpc/support/thd.h>
|
54
48
|
#include <grpc/support/tls.h>
|
55
49
|
#include <grpc/support/useful.h>
|
50
|
+
#include "src/core/iomgr/fd_posix.h"
|
51
|
+
#include "src/core/iomgr/iomgr_internal.h"
|
52
|
+
#include "src/core/iomgr/socket_utils_posix.h"
|
53
|
+
#include "src/core/profiling/timers.h"
|
54
|
+
#include "src/core/support/block_annotate.h"
|
56
55
|
|
57
56
|
GPR_TLS_DECL(g_current_thread_poller);
|
58
57
|
GPR_TLS_DECL(g_current_thread_worker);
|
@@ -98,9 +97,11 @@ static void push_front_worker(grpc_pollset *p, grpc_pollset_worker *worker) {
|
|
98
97
|
worker->prev->next = worker->next->prev = worker;
|
99
98
|
}
|
100
99
|
|
100
|
+
size_t grpc_pollset_size(void) { return sizeof(grpc_pollset); }
|
101
|
+
|
101
102
|
void grpc_pollset_kick_ext(grpc_pollset *p,
|
102
103
|
grpc_pollset_worker *specific_worker,
|
103
|
-
|
104
|
+
uint32_t flags) {
|
104
105
|
GPR_TIMER_BEGIN("grpc_pollset_kick_ext", 0);
|
105
106
|
|
106
107
|
/* pollset->mu already held */
|
@@ -116,7 +117,7 @@ void grpc_pollset_kick_ext(grpc_pollset *p,
|
|
116
117
|
p->kicked_without_pollers = 1;
|
117
118
|
GPR_TIMER_END("grpc_pollset_kick_ext.broadcast", 0);
|
118
119
|
} else if (gpr_tls_get(&g_current_thread_worker) !=
|
119
|
-
(
|
120
|
+
(intptr_t)specific_worker) {
|
120
121
|
GPR_TIMER_MARK("different_thread_worker", 0);
|
121
122
|
if ((flags & GRPC_POLLSET_REEVALUATE_POLLING_ON_WAKEUP) != 0) {
|
122
123
|
specific_worker->reevaluate_polling_on_wakeup = 1;
|
@@ -131,19 +132,18 @@ void grpc_pollset_kick_ext(grpc_pollset *p,
|
|
131
132
|
specific_worker->kicked_specifically = 1;
|
132
133
|
grpc_wakeup_fd_wakeup(&specific_worker->wakeup_fd->fd);
|
133
134
|
}
|
134
|
-
} else if (gpr_tls_get(&g_current_thread_poller) != (
|
135
|
+
} else if (gpr_tls_get(&g_current_thread_poller) != (intptr_t)p) {
|
135
136
|
GPR_ASSERT((flags & GRPC_POLLSET_REEVALUATE_POLLING_ON_WAKEUP) == 0);
|
136
137
|
GPR_TIMER_MARK("kick_anonymous", 0);
|
137
138
|
specific_worker = pop_front_worker(p);
|
138
139
|
if (specific_worker != NULL) {
|
139
|
-
if (gpr_tls_get(&g_current_thread_worker) ==
|
140
|
-
(gpr_intptr)specific_worker) {
|
140
|
+
if (gpr_tls_get(&g_current_thread_worker) == (intptr_t)specific_worker) {
|
141
141
|
GPR_TIMER_MARK("kick_anonymous_not_self", 0);
|
142
142
|
push_back_worker(p, specific_worker);
|
143
143
|
specific_worker = pop_front_worker(p);
|
144
144
|
if ((flags & GRPC_POLLSET_CAN_KICK_SELF) == 0 &&
|
145
145
|
gpr_tls_get(&g_current_thread_worker) ==
|
146
|
-
(
|
146
|
+
(intptr_t)specific_worker) {
|
147
147
|
push_back_worker(p, specific_worker);
|
148
148
|
specific_worker = NULL;
|
149
149
|
}
|
@@ -188,8 +188,9 @@ void grpc_kick_poller(void) { grpc_wakeup_fd_wakeup(&grpc_global_wakeup_fd); }
|
|
188
188
|
|
189
189
|
static void become_basic_pollset(grpc_pollset *pollset, grpc_fd *fd_or_null);
|
190
190
|
|
191
|
-
void grpc_pollset_init(grpc_pollset *pollset) {
|
191
|
+
void grpc_pollset_init(grpc_pollset *pollset, gpr_mu **mu) {
|
192
192
|
gpr_mu_init(&pollset->mu);
|
193
|
+
*mu = &pollset->mu;
|
193
194
|
pollset->root_worker.next = pollset->root_worker.prev = &pollset->root_worker;
|
194
195
|
pollset->in_flight_cbs = 0;
|
195
196
|
pollset->shutting_down = 0;
|
@@ -206,7 +207,6 @@ void grpc_pollset_destroy(grpc_pollset *pollset) {
|
|
206
207
|
GPR_ASSERT(!grpc_pollset_has_workers(pollset));
|
207
208
|
GPR_ASSERT(pollset->idle_jobs.head == pollset->idle_jobs.tail);
|
208
209
|
pollset->vtable->destroy(pollset);
|
209
|
-
gpr_mu_destroy(&pollset->mu);
|
210
210
|
while (pollset->local_wakeup_cache) {
|
211
211
|
grpc_cached_wakeup_fd *next = pollset->local_wakeup_cache->next;
|
212
212
|
grpc_wakeup_fd_destroy(&pollset->local_wakeup_cache->fd);
|
@@ -244,12 +244,15 @@ void grpc_pollset_add_fd(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
244
244
|
static void finish_shutdown(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset) {
|
245
245
|
GPR_ASSERT(grpc_closure_list_empty(pollset->idle_jobs));
|
246
246
|
pollset->vtable->finish_shutdown(pollset);
|
247
|
-
grpc_exec_ctx_enqueue(exec_ctx, pollset->shutdown_done,
|
247
|
+
grpc_exec_ctx_enqueue(exec_ctx, pollset->shutdown_done, true, NULL);
|
248
248
|
}
|
249
249
|
|
250
250
|
void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
251
|
-
grpc_pollset_worker
|
251
|
+
grpc_pollset_worker **worker_hdl, gpr_timespec now,
|
252
252
|
gpr_timespec deadline) {
|
253
|
+
grpc_pollset_worker worker;
|
254
|
+
*worker_hdl = &worker;
|
255
|
+
|
253
256
|
/* pollset->mu already held */
|
254
257
|
int added_worker = 0;
|
255
258
|
int locked = 1;
|
@@ -257,32 +260,22 @@ void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
257
260
|
int keep_polling = 0;
|
258
261
|
GPR_TIMER_BEGIN("grpc_pollset_work", 0);
|
259
262
|
/* this must happen before we (potentially) drop pollset->mu */
|
260
|
-
worker
|
261
|
-
worker
|
263
|
+
worker.next = worker.prev = NULL;
|
264
|
+
worker.reevaluate_polling_on_wakeup = 0;
|
262
265
|
if (pollset->local_wakeup_cache != NULL) {
|
263
|
-
worker
|
264
|
-
pollset->local_wakeup_cache = worker
|
266
|
+
worker.wakeup_fd = pollset->local_wakeup_cache;
|
267
|
+
pollset->local_wakeup_cache = worker.wakeup_fd->next;
|
265
268
|
} else {
|
266
|
-
worker
|
267
|
-
grpc_wakeup_fd_init(&worker
|
269
|
+
worker.wakeup_fd = gpr_malloc(sizeof(*worker.wakeup_fd));
|
270
|
+
grpc_wakeup_fd_init(&worker.wakeup_fd->fd);
|
268
271
|
}
|
269
|
-
worker
|
272
|
+
worker.kicked_specifically = 0;
|
270
273
|
/* If there's work waiting for the pollset to be idle, and the
|
271
274
|
pollset is idle, then do that work */
|
272
275
|
if (!grpc_pollset_has_workers(pollset) &&
|
273
276
|
!grpc_closure_list_empty(pollset->idle_jobs)) {
|
274
277
|
GPR_TIMER_MARK("grpc_pollset_work.idle_jobs", 0);
|
275
|
-
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs);
|
276
|
-
goto done;
|
277
|
-
}
|
278
|
-
/* Check alarms - these are a global resource so we just ping
|
279
|
-
each time through on every pollset.
|
280
|
-
May update deadline to ensure timely wakeups.
|
281
|
-
TODO(ctiller): can this work be localized? */
|
282
|
-
if (grpc_timer_check(exec_ctx, now, &deadline)) {
|
283
|
-
GPR_TIMER_MARK("grpc_pollset_work.alarm_triggered", 0);
|
284
|
-
gpr_mu_unlock(&pollset->mu);
|
285
|
-
locked = 0;
|
278
|
+
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs, NULL);
|
286
279
|
goto done;
|
287
280
|
}
|
288
281
|
/* If we're shutting down then we don't execute any extended work */
|
@@ -305,13 +298,13 @@ void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
305
298
|
keep_polling = 0;
|
306
299
|
if (!pollset->kicked_without_pollers) {
|
307
300
|
if (!added_worker) {
|
308
|
-
push_front_worker(pollset, worker);
|
301
|
+
push_front_worker(pollset, &worker);
|
309
302
|
added_worker = 1;
|
310
|
-
gpr_tls_set(&g_current_thread_worker, (
|
303
|
+
gpr_tls_set(&g_current_thread_worker, (intptr_t)&worker);
|
311
304
|
}
|
312
|
-
gpr_tls_set(&g_current_thread_poller, (
|
305
|
+
gpr_tls_set(&g_current_thread_poller, (intptr_t)pollset);
|
313
306
|
GPR_TIMER_BEGIN("maybe_work_and_unlock", 0);
|
314
|
-
pollset->vtable->maybe_work_and_unlock(exec_ctx, pollset, worker,
|
307
|
+
pollset->vtable->maybe_work_and_unlock(exec_ctx, pollset, &worker,
|
315
308
|
deadline, now);
|
316
309
|
GPR_TIMER_END("maybe_work_and_unlock", 0);
|
317
310
|
locked = 0;
|
@@ -333,10 +326,10 @@ void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
333
326
|
/* If we're forced to re-evaluate polling (via grpc_pollset_kick with
|
334
327
|
GRPC_POLLSET_REEVALUATE_POLLING_ON_WAKEUP) then we land here and force
|
335
328
|
a loop */
|
336
|
-
if (worker
|
337
|
-
worker
|
329
|
+
if (worker.reevaluate_polling_on_wakeup) {
|
330
|
+
worker.reevaluate_polling_on_wakeup = 0;
|
338
331
|
pollset->kicked_without_pollers = 0;
|
339
|
-
if (queued_work || worker
|
332
|
+
if (queued_work || worker.kicked_specifically) {
|
340
333
|
/* If there's queued work on the list, then set the deadline to be
|
341
334
|
immediate so we get back out of the polling loop quickly */
|
342
335
|
deadline = gpr_inf_past(GPR_CLOCK_MONOTONIC);
|
@@ -345,12 +338,12 @@ void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
345
338
|
}
|
346
339
|
}
|
347
340
|
if (added_worker) {
|
348
|
-
remove_worker(pollset, worker);
|
341
|
+
remove_worker(pollset, &worker);
|
349
342
|
gpr_tls_set(&g_current_thread_worker, 0);
|
350
343
|
}
|
351
344
|
/* release wakeup fd to the local pool */
|
352
|
-
worker
|
353
|
-
pollset->local_wakeup_cache = worker
|
345
|
+
worker.wakeup_fd->next = pollset->local_wakeup_cache;
|
346
|
+
pollset->local_wakeup_cache = worker.wakeup_fd;
|
354
347
|
/* check shutdown conditions */
|
355
348
|
if (pollset->shutting_down) {
|
356
349
|
if (grpc_pollset_has_workers(pollset)) {
|
@@ -366,12 +359,13 @@ void grpc_pollset_work(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
366
359
|
* TODO(dklempner): Can we refactor the shutdown logic to avoid this? */
|
367
360
|
gpr_mu_lock(&pollset->mu);
|
368
361
|
} else if (!grpc_closure_list_empty(pollset->idle_jobs)) {
|
369
|
-
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs);
|
362
|
+
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs, NULL);
|
370
363
|
gpr_mu_unlock(&pollset->mu);
|
371
364
|
grpc_exec_ctx_flush(exec_ctx);
|
372
365
|
gpr_mu_lock(&pollset->mu);
|
373
366
|
}
|
374
367
|
}
|
368
|
+
*worker_hdl = NULL;
|
375
369
|
GPR_TIMER_END("grpc_pollset_work", 0);
|
376
370
|
}
|
377
371
|
|
@@ -382,7 +376,7 @@ void grpc_pollset_shutdown(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
382
376
|
pollset->shutdown_done = closure;
|
383
377
|
grpc_pollset_kick(pollset, GRPC_POLLSET_KICK_BROADCAST);
|
384
378
|
if (!grpc_pollset_has_workers(pollset)) {
|
385
|
-
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs);
|
379
|
+
grpc_exec_ctx_enqueue_list(exec_ctx, &pollset->idle_jobs, NULL);
|
386
380
|
}
|
387
381
|
if (!pollset->called_shutdown && pollset->in_flight_cbs == 0 &&
|
388
382
|
!grpc_pollset_has_workers(pollset)) {
|
@@ -394,7 +388,7 @@ void grpc_pollset_shutdown(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
|
394
388
|
int grpc_poll_deadline_to_millis_timeout(gpr_timespec deadline,
|
395
389
|
gpr_timespec now) {
|
396
390
|
gpr_timespec timeout;
|
397
|
-
static const
|
391
|
+
static const int64_t max_spin_polling_us = 10;
|
398
392
|
if (gpr_time_cmp(deadline, gpr_inf_future(deadline.clock_type)) == 0) {
|
399
393
|
return -1;
|
400
394
|
}
|
@@ -420,7 +414,8 @@ typedef struct grpc_unary_promote_args {
|
|
420
414
|
grpc_closure promotion_closure;
|
421
415
|
} grpc_unary_promote_args;
|
422
416
|
|
423
|
-
static void basic_do_promote(grpc_exec_ctx *exec_ctx, void *args,
|
417
|
+
static void basic_do_promote(grpc_exec_ctx *exec_ctx, void *args,
|
418
|
+
bool success) {
|
424
419
|
grpc_unary_promote_args *up_args = args;
|
425
420
|
const grpc_pollset_vtable *original_vtable = up_args->original_vtable;
|
426
421
|
grpc_pollset *pollset = up_args->pollset;
|
@@ -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
|
@@ -37,8 +37,10 @@
|
|
37
37
|
#include <poll.h>
|
38
38
|
|
39
39
|
#include <grpc/support/sync.h>
|
40
|
+
|
40
41
|
#include "src/core/iomgr/exec_ctx.h"
|
41
42
|
#include "src/core/iomgr/iomgr.h"
|
43
|
+
#include "src/core/iomgr/pollset.h"
|
42
44
|
#include "src/core/iomgr/wakeup_fd_posix.h"
|
43
45
|
|
44
46
|
typedef struct grpc_pollset_vtable grpc_pollset_vtable;
|
@@ -53,15 +55,15 @@ typedef struct grpc_cached_wakeup_fd {
|
|
53
55
|
struct grpc_cached_wakeup_fd *next;
|
54
56
|
} grpc_cached_wakeup_fd;
|
55
57
|
|
56
|
-
|
58
|
+
struct grpc_pollset_worker {
|
57
59
|
grpc_cached_wakeup_fd *wakeup_fd;
|
58
60
|
int reevaluate_polling_on_wakeup;
|
59
61
|
int kicked_specifically;
|
60
62
|
struct grpc_pollset_worker *next;
|
61
63
|
struct grpc_pollset_worker *prev;
|
62
|
-
}
|
64
|
+
};
|
63
65
|
|
64
|
-
|
66
|
+
struct grpc_pollset {
|
65
67
|
/* pollsets under posix can mutate representation as fds are added and
|
66
68
|
removed.
|
67
69
|
For example, we may choose a poll() based implementation on linux for
|
@@ -81,7 +83,7 @@ typedef struct grpc_pollset {
|
|
81
83
|
} data;
|
82
84
|
/* Local cache of eventfds for workers */
|
83
85
|
grpc_cached_wakeup_fd *local_wakeup_cache;
|
84
|
-
}
|
86
|
+
};
|
85
87
|
|
86
88
|
struct grpc_pollset_vtable {
|
87
89
|
void (*add_fd)(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
@@ -93,8 +95,6 @@ struct grpc_pollset_vtable {
|
|
93
95
|
void (*destroy)(grpc_pollset *pollset);
|
94
96
|
};
|
95
97
|
|
96
|
-
#define GRPC_POLLSET_MU(pollset) (&(pollset)->mu)
|
97
|
-
|
98
98
|
/* Add an fd to a pollset */
|
99
99
|
void grpc_pollset_add_fd(grpc_exec_ctx *exec_ctx, grpc_pollset *pollset,
|
100
100
|
struct grpc_fd *fd);
|
@@ -122,7 +122,7 @@ int grpc_poll_deadline_to_millis_timeout(gpr_timespec deadline,
|
|
122
122
|
-- mostly for fd_posix's use. */
|
123
123
|
void grpc_pollset_kick_ext(grpc_pollset *p,
|
124
124
|
grpc_pollset_worker *specific_worker,
|
125
|
-
|
125
|
+
uint32_t flags);
|
126
126
|
|
127
127
|
/* turn a pollset into a multipoller: platform specific */
|
128
128
|
typedef void (*grpc_platform_become_multipoller_type)(grpc_exec_ctx *exec_ctx,
|
@@ -139,7 +139,13 @@ void grpc_poll_become_multipoller(grpc_exec_ctx *exec_ctx,
|
|
139
139
|
* be locked) */
|
140
140
|
int grpc_pollset_has_workers(grpc_pollset *pollset);
|
141
141
|
|
142
|
+
void grpc_remove_fd_from_all_epoll_sets(int fd);
|
143
|
+
|
142
144
|
/* override to allow tests to hook poll() usage */
|
145
|
+
/* NOTE: Any changes to grpc_poll_function must take place when the gRPC
|
146
|
+
is certainly not doing any polling anywhere.
|
147
|
+
Otherwise, there might be a race between changing the variable and actually
|
148
|
+
doing a polling operation */
|
143
149
|
typedef int (*grpc_poll_function_type)(struct pollfd *, nfds_t, int);
|
144
150
|
extern grpc_poll_function_type grpc_poll_function;
|
145
151
|
extern grpc_wakeup_fd grpc_global_wakeup_fd;
|
@@ -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,15 +41,9 @@
|
|
41
41
|
fd's (etc) that have been registered with the set_set to that pollset.
|
42
42
|
Registering fd's automatically adds them to all current pollsets. */
|
43
43
|
|
44
|
-
|
45
|
-
#include "src/core/iomgr/pollset_set_posix.h"
|
46
|
-
#endif
|
44
|
+
typedef struct grpc_pollset_set grpc_pollset_set;
|
47
45
|
|
48
|
-
|
49
|
-
#include "src/core/iomgr/pollset_set_windows.h"
|
50
|
-
#endif
|
51
|
-
|
52
|
-
void grpc_pollset_set_init(grpc_pollset_set *pollset_set);
|
46
|
+
grpc_pollset_set *grpc_pollset_set_create(void);
|
53
47
|
void grpc_pollset_set_destroy(grpc_pollset_set *pollset_set);
|
54
48
|
void grpc_pollset_set_add_pollset(grpc_exec_ctx *exec_ctx,
|
55
49
|
grpc_pollset_set *pollset_set,
|
@@ -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,11 +41,30 @@
|
|
41
41
|
#include <grpc/support/alloc.h>
|
42
42
|
#include <grpc/support/useful.h>
|
43
43
|
|
44
|
-
#include "src/core/iomgr/
|
44
|
+
#include "src/core/iomgr/pollset_posix.h"
|
45
|
+
#include "src/core/iomgr/pollset_set_posix.h"
|
45
46
|
|
46
|
-
|
47
|
+
struct grpc_pollset_set {
|
48
|
+
gpr_mu mu;
|
49
|
+
|
50
|
+
size_t pollset_count;
|
51
|
+
size_t pollset_capacity;
|
52
|
+
grpc_pollset **pollsets;
|
53
|
+
|
54
|
+
size_t pollset_set_count;
|
55
|
+
size_t pollset_set_capacity;
|
56
|
+
struct grpc_pollset_set **pollset_sets;
|
57
|
+
|
58
|
+
size_t fd_count;
|
59
|
+
size_t fd_capacity;
|
60
|
+
grpc_fd **fds;
|
61
|
+
};
|
62
|
+
|
63
|
+
grpc_pollset_set *grpc_pollset_set_create(void) {
|
64
|
+
grpc_pollset_set *pollset_set = gpr_malloc(sizeof(*pollset_set));
|
47
65
|
memset(pollset_set, 0, sizeof(*pollset_set));
|
48
66
|
gpr_mu_init(&pollset_set->mu);
|
67
|
+
return pollset_set;
|
49
68
|
}
|
50
69
|
|
51
70
|
void grpc_pollset_set_destroy(grpc_pollset_set *pollset_set) {
|
@@ -57,6 +76,7 @@ void grpc_pollset_set_destroy(grpc_pollset_set *pollset_set) {
|
|
57
76
|
gpr_free(pollset_set->pollsets);
|
58
77
|
gpr_free(pollset_set->pollset_sets);
|
59
78
|
gpr_free(pollset_set->fds);
|
79
|
+
gpr_free(pollset_set);
|
60
80
|
}
|
61
81
|
|
62
82
|
void grpc_pollset_set_add_pollset(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
|
@@ -35,23 +35,7 @@
|
|
35
35
|
#define GRPC_INTERNAL_CORE_IOMGR_POLLSET_SET_POSIX_H
|
36
36
|
|
37
37
|
#include "src/core/iomgr/fd_posix.h"
|
38
|
-
#include "src/core/iomgr/
|
39
|
-
|
40
|
-
typedef struct grpc_pollset_set {
|
41
|
-
gpr_mu mu;
|
42
|
-
|
43
|
-
size_t pollset_count;
|
44
|
-
size_t pollset_capacity;
|
45
|
-
grpc_pollset **pollsets;
|
46
|
-
|
47
|
-
size_t pollset_set_count;
|
48
|
-
size_t pollset_set_capacity;
|
49
|
-
struct grpc_pollset_set **pollset_sets;
|
50
|
-
|
51
|
-
size_t fd_count;
|
52
|
-
size_t fd_capacity;
|
53
|
-
grpc_fd **fds;
|
54
|
-
} grpc_pollset_set;
|
38
|
+
#include "src/core/iomgr/pollset_set.h"
|
55
39
|
|
56
40
|
void grpc_pollset_set_add_fd(grpc_exec_ctx *exec_ctx,
|
57
41
|
grpc_pollset_set *pollset_set, grpc_fd *fd);
|