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
data/include/grpc/byte_buffer.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
|
@@ -34,87 +34,6 @@
|
|
34
34
|
#ifndef GRPC_BYTE_BUFFER_H
|
35
35
|
#define GRPC_BYTE_BUFFER_H
|
36
36
|
|
37
|
-
#include <grpc/
|
38
|
-
#include <grpc/support/slice_buffer.h>
|
39
|
-
|
40
|
-
#ifdef __cplusplus
|
41
|
-
extern "C" {
|
42
|
-
#endif
|
43
|
-
|
44
|
-
typedef enum {
|
45
|
-
GRPC_BB_RAW
|
46
|
-
/* Future types may include GRPC_BB_PROTOBUF, etc. */
|
47
|
-
} grpc_byte_buffer_type;
|
48
|
-
|
49
|
-
struct grpc_byte_buffer {
|
50
|
-
void *reserved;
|
51
|
-
grpc_byte_buffer_type type;
|
52
|
-
union {
|
53
|
-
struct {
|
54
|
-
void *reserved[8];
|
55
|
-
} reserved;
|
56
|
-
struct {
|
57
|
-
grpc_compression_algorithm compression;
|
58
|
-
gpr_slice_buffer slice_buffer;
|
59
|
-
} raw;
|
60
|
-
} data;
|
61
|
-
};
|
62
|
-
typedef struct grpc_byte_buffer grpc_byte_buffer;
|
63
|
-
|
64
|
-
/** Returns a RAW byte buffer instance over the given slices (up to \a nslices).
|
65
|
-
*
|
66
|
-
* Increases the reference count for all \a slices processed. The user is
|
67
|
-
* responsible for invoking grpc_byte_buffer_destroy on the returned instance.*/
|
68
|
-
grpc_byte_buffer *grpc_raw_byte_buffer_create(gpr_slice *slices,
|
69
|
-
size_t nslices);
|
70
|
-
|
71
|
-
/** Returns a *compressed* RAW byte buffer instance over the given slices (up to
|
72
|
-
* \a nslices). The \a compression argument defines the compression algorithm
|
73
|
-
* used to generate the data in \a slices.
|
74
|
-
*
|
75
|
-
* Increases the reference count for all \a slices processed. The user is
|
76
|
-
* responsible for invoking grpc_byte_buffer_destroy on the returned instance.*/
|
77
|
-
grpc_byte_buffer *grpc_raw_compressed_byte_buffer_create(
|
78
|
-
gpr_slice *slices, size_t nslices, grpc_compression_algorithm compression);
|
79
|
-
|
80
|
-
/** Copies input byte buffer \a bb.
|
81
|
-
*
|
82
|
-
* Increases the reference count of all the source slices. The user is
|
83
|
-
* responsible for calling grpc_byte_buffer_destroy over the returned copy. */
|
84
|
-
grpc_byte_buffer *grpc_byte_buffer_copy(grpc_byte_buffer *bb);
|
85
|
-
|
86
|
-
/** Returns the size of the given byte buffer, in bytes. */
|
87
|
-
size_t grpc_byte_buffer_length(grpc_byte_buffer *bb);
|
88
|
-
|
89
|
-
/** Destroys \a byte_buffer deallocating all its memory. */
|
90
|
-
void grpc_byte_buffer_destroy(grpc_byte_buffer *byte_buffer);
|
91
|
-
|
92
|
-
/** Reader for byte buffers. Iterates over slices in the byte buffer */
|
93
|
-
struct grpc_byte_buffer_reader;
|
94
|
-
typedef struct grpc_byte_buffer_reader grpc_byte_buffer_reader;
|
95
|
-
|
96
|
-
/** Initialize \a reader to read over \a buffer */
|
97
|
-
void grpc_byte_buffer_reader_init(grpc_byte_buffer_reader *reader,
|
98
|
-
grpc_byte_buffer *buffer);
|
99
|
-
|
100
|
-
/** Cleanup and destroy \a reader */
|
101
|
-
void grpc_byte_buffer_reader_destroy(grpc_byte_buffer_reader *reader);
|
102
|
-
|
103
|
-
/** Updates \a slice with the next piece of data from from \a reader and returns
|
104
|
-
* 1. Returns 0 at the end of the stream. Caller is responsible for calling
|
105
|
-
* gpr_slice_unref on the result. */
|
106
|
-
int grpc_byte_buffer_reader_next(grpc_byte_buffer_reader *reader,
|
107
|
-
gpr_slice *slice);
|
108
|
-
|
109
|
-
/** Merge all data from \a reader into single slice */
|
110
|
-
gpr_slice grpc_byte_buffer_reader_readall(grpc_byte_buffer_reader *reader);
|
111
|
-
|
112
|
-
/** Returns a RAW byte buffer instance from the output of \a reader. */
|
113
|
-
grpc_byte_buffer *grpc_raw_byte_buffer_from_reader(
|
114
|
-
grpc_byte_buffer_reader *reader);
|
115
|
-
|
116
|
-
#ifdef __cplusplus
|
117
|
-
}
|
118
|
-
#endif
|
37
|
+
#include <grpc/impl/codegen/byte_buffer.h>
|
119
38
|
|
120
39
|
#endif /* GRPC_BYTE_BUFFER_H */
|
data/include/grpc/census.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
|
@@ -59,39 +59,142 @@ enum census_features {
|
|
59
59
|
* census_initialize() will return a non-zero value. It is an error to call
|
60
60
|
* census_initialize() more than once (without an intervening
|
61
61
|
* census_shutdown()). */
|
62
|
-
int census_initialize(int features);
|
63
|
-
void census_shutdown(void);
|
62
|
+
CENSUSAPI int census_initialize(int features);
|
63
|
+
CENSUSAPI void census_shutdown(void);
|
64
64
|
|
65
65
|
/** Return the features supported by the current census implementation (not all
|
66
66
|
* features will be available on all platforms). */
|
67
|
-
int census_supported(void);
|
67
|
+
CENSUSAPI int census_supported(void);
|
68
68
|
|
69
69
|
/** Return the census features currently enabled. */
|
70
|
-
int census_enabled(void);
|
70
|
+
CENSUSAPI int census_enabled(void);
|
71
71
|
|
72
72
|
/**
|
73
|
-
Context is a handle used by
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
should be thought of as specific to single RPC/thread. The
|
78
|
-
|
79
|
-
|
73
|
+
A Census Context is a handle used by Census to represent the current tracing
|
74
|
+
and stats collection information. Contexts should be propagated across RPC's
|
75
|
+
(this is the responsibility of the local RPC system). A context is typically
|
76
|
+
used as the first argument to most census functions. Conceptually, they
|
77
|
+
should be thought of as specific to a single RPC/thread. The user visible
|
78
|
+
context representation is that of a collection of key:value string pairs,
|
79
|
+
each of which is termed a 'tag'; these form the basis against which Census
|
80
|
+
metrics will be recorded. Keys are unique within a context. */
|
80
81
|
typedef struct census_context census_context;
|
81
82
|
|
82
|
-
/*
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
*
|
93
|
-
|
94
|
-
|
83
|
+
/* A tag is a key:value pair. Both keys and values are nil-terminated strings,
|
84
|
+
containing printable ASCII characters (decimal 32-126). Keys must be at
|
85
|
+
least one character in length. Both keys and values can have at most
|
86
|
+
CENSUS_MAX_TAG_KB_LEN characters (including the terminating nil). The
|
87
|
+
maximum number of tags that can be propagated is
|
88
|
+
CENSUS_MAX_PROPAGATED_TAGS. Users should also remember that some systems
|
89
|
+
may have limits on, e.g., the number of bytes that can be transmitted as
|
90
|
+
metadata, and that larger tags means more memory consumed and time in
|
91
|
+
processing. */
|
92
|
+
typedef struct {
|
93
|
+
const char *key;
|
94
|
+
const char *value;
|
95
|
+
uint8_t flags;
|
96
|
+
} census_tag;
|
97
|
+
|
98
|
+
/* Maximum length of a tag's key or value. */
|
99
|
+
#define CENSUS_MAX_TAG_KV_LEN 255
|
100
|
+
/* Maximum number of propagatable tags. */
|
101
|
+
#define CENSUS_MAX_PROPAGATED_TAGS 255
|
102
|
+
|
103
|
+
/* Tag flags. */
|
104
|
+
#define CENSUS_TAG_PROPAGATE 1 /* Tag should be propagated over RPC */
|
105
|
+
#define CENSUS_TAG_STATS 2 /* Tag will be used for statistics aggregation */
|
106
|
+
#define CENSUS_TAG_RESERVED 4 /* Reserved for internal use. */
|
107
|
+
/* Flag values 4,8,16,32,64,128 are reserved for future/internal use. Clients
|
108
|
+
should not use or rely on their values. */
|
109
|
+
|
110
|
+
#define CENSUS_TAG_IS_PROPAGATED(flags) (flags & CENSUS_TAG_PROPAGATE)
|
111
|
+
#define CENSUS_TAG_IS_STATS(flags) (flags & CENSUS_TAG_STATS)
|
112
|
+
|
113
|
+
/* An instance of this structure is kept by every context, and records the
|
114
|
+
basic information associated with the creation of that context. */
|
115
|
+
typedef struct {
|
116
|
+
int n_propagated_tags; /* number of propagated tags */
|
117
|
+
int n_local_tags; /* number of non-propagated (local) tags */
|
118
|
+
int n_deleted_tags; /* number of tags that were deleted */
|
119
|
+
int n_added_tags; /* number of tags that were added */
|
120
|
+
int n_modified_tags; /* number of tags that were modified */
|
121
|
+
int n_invalid_tags; /* number of tags with bad keys or values (e.g.
|
122
|
+
longer than CENSUS_MAX_TAG_KV_LEN) */
|
123
|
+
int n_ignored_tags; /* number of tags ignored because of
|
124
|
+
CENSUS_MAX_PROPAGATED_TAGS limit. */
|
125
|
+
} census_context_status;
|
126
|
+
|
127
|
+
/* Create a new context, adding and removing tags from an existing context.
|
128
|
+
This will copy all tags from the 'tags' input, so it is recommended
|
129
|
+
to add as many tags in a single operation as is practical for the client.
|
130
|
+
@param base Base context to build upon. Can be NULL.
|
131
|
+
@param tags A set of tags to be added/changed/deleted. Tags with keys that
|
132
|
+
are in 'tags', but not 'base', are added to the context. Keys that are in
|
133
|
+
both 'tags' and 'base' will have their value/flags modified. Tags with keys
|
134
|
+
in both, but with NULL values, will be deleted from the context. Tags with
|
135
|
+
invalid (too long or short) keys or values will be ignored.
|
136
|
+
If adding a tag will result in more than CENSUS_MAX_PROPAGATED_TAGS in either
|
137
|
+
binary or non-binary tags, they will be ignored, as will deletions of
|
138
|
+
tags that don't exist.
|
139
|
+
@param ntags number of tags in 'tags'
|
140
|
+
@param status If not NULL, will return a pointer to a census_context_status
|
141
|
+
structure containing information about the new context and status of the
|
142
|
+
tags used in its creation.
|
143
|
+
@return A new, valid census_context.
|
144
|
+
*/
|
145
|
+
CENSUSAPI census_context *census_context_create(
|
146
|
+
const census_context *base, const census_tag *tags, int ntags,
|
147
|
+
census_context_status const **status);
|
148
|
+
|
149
|
+
/* Destroy a context. Once this function has been called, the context cannot
|
150
|
+
be reused. */
|
151
|
+
CENSUSAPI void census_context_destroy(census_context *context);
|
152
|
+
|
153
|
+
/* Get a pointer to the original status from the context creation. */
|
154
|
+
CENSUSAPI const census_context_status *census_context_get_status(
|
155
|
+
const census_context *context);
|
156
|
+
|
157
|
+
/* Structure used for iterating over the tegs in a context. API clients should
|
158
|
+
not use or reference internal fields - neither their contents or
|
159
|
+
presence/absence are guaranteed. */
|
160
|
+
typedef struct {
|
161
|
+
const census_context *context;
|
162
|
+
int base;
|
163
|
+
int index;
|
164
|
+
char *kvm;
|
165
|
+
} census_context_iterator;
|
166
|
+
|
167
|
+
/* Initialize a census_tag_iterator. Must be called before first use. */
|
168
|
+
CENSUSAPI void census_context_initialize_iterator(
|
169
|
+
const census_context *context, census_context_iterator *iterator);
|
170
|
+
|
171
|
+
/* Get the contents of the "next" tag in the context. If there are no more
|
172
|
+
tags, returns 0 (and 'tag' contents will be unchanged), otherwise returns 1.
|
173
|
+
*/
|
174
|
+
CENSUSAPI int census_context_next_tag(census_context_iterator *iterator,
|
175
|
+
census_tag *tag);
|
176
|
+
|
177
|
+
/* Get a context tag by key. Returns 0 if the key is not present. */
|
178
|
+
CENSUSAPI int census_context_get_tag(const census_context *context,
|
179
|
+
const char *key, census_tag *tag);
|
180
|
+
|
181
|
+
/* Tag set encode/decode functionality. These functionas are intended
|
182
|
+
for use by RPC systems only, for purposes of transmitting/receiving contexts.
|
183
|
+
*/
|
184
|
+
|
185
|
+
/* Encode a context into a buffer.
|
186
|
+
@param context context to be encoded
|
187
|
+
@param buffer buffer into which the context will be encoded.
|
188
|
+
@param buf_size number of available bytes in buffer.
|
189
|
+
@return The number of buffer bytes consumed for the encoded context, or
|
190
|
+
zero if the buffer was of insufficient size. */
|
191
|
+
CENSUSAPI size_t census_context_encode(const census_context *context,
|
192
|
+
char *buffer, size_t buf_size);
|
193
|
+
|
194
|
+
/* Decode context buffer encoded with census_context_encode(). Returns NULL
|
195
|
+
if there is an error in parsing either buffer. */
|
196
|
+
CENSUSAPI census_context *census_context_decode(const char *buffer,
|
197
|
+
size_t size);
|
95
198
|
|
96
199
|
/* Distributed traces can have a number of options. */
|
97
200
|
enum census_trace_mask_values {
|
@@ -101,10 +204,10 @@ enum census_trace_mask_values {
|
|
101
204
|
|
102
205
|
/** Get the current trace mask associated with this context. The value returned
|
103
206
|
will be the logical or of census_trace_mask_values values. */
|
104
|
-
int census_trace_mask(const census_context *context);
|
207
|
+
CENSUSAPI int census_trace_mask(const census_context *context);
|
105
208
|
|
106
209
|
/** Set the trace mask associated with a context. */
|
107
|
-
void census_set_trace_mask(int trace_mask);
|
210
|
+
CENSUSAPI void census_set_trace_mask(int trace_mask);
|
108
211
|
|
109
212
|
/* The concept of "operation" is a fundamental concept for Census. In an RPC
|
110
213
|
system, and operation typcially represents a single RPC, or a significant
|
@@ -152,7 +255,7 @@ typedef struct {
|
|
152
255
|
|
153
256
|
@return A timestamp representing the operation start time.
|
154
257
|
*/
|
155
|
-
census_timestamp census_start_rpc_op_timestamp(void);
|
258
|
+
CENSUSAPI census_timestamp census_start_rpc_op_timestamp(void);
|
156
259
|
|
157
260
|
/**
|
158
261
|
Represent functions to map RPC name ID to service/method names. Census
|
@@ -166,8 +269,8 @@ census_timestamp census_start_rpc_op_timestamp(void);
|
|
166
269
|
functions, maybe it should be set once at census initialization.
|
167
270
|
*/
|
168
271
|
typedef struct {
|
169
|
-
const char *(*get_rpc_service_name)(
|
170
|
-
const char *(*get_rpc_method_name)(
|
272
|
+
const char *(*get_rpc_service_name)(int64_t id);
|
273
|
+
const char *(*get_rpc_method_name)(int64_t id);
|
171
274
|
} census_rpc_name_info;
|
172
275
|
|
173
276
|
/**
|
@@ -204,15 +307,16 @@ typedef struct {
|
|
204
307
|
|
205
308
|
@return A new census context.
|
206
309
|
*/
|
207
|
-
census_context *census_start_client_rpc_op(
|
208
|
-
const census_context *context,
|
310
|
+
CENSUSAPI census_context *census_start_client_rpc_op(
|
311
|
+
const census_context *context, int64_t rpc_name_id,
|
209
312
|
const census_rpc_name_info *rpc_name_info, const char *peer, int trace_mask,
|
210
313
|
const census_timestamp *start_time);
|
211
314
|
|
212
315
|
/**
|
213
316
|
Add peer information to a context representing a client RPC operation.
|
214
317
|
*/
|
215
|
-
void census_set_rpc_client_peer(census_context *context,
|
318
|
+
CENSUSAPI void census_set_rpc_client_peer(census_context *context,
|
319
|
+
const char *peer);
|
216
320
|
|
217
321
|
/**
|
218
322
|
Start a server RPC operation. Returns a new context to be used in future
|
@@ -232,8 +336,8 @@ void census_set_rpc_client_peer(census_context *context, const char *peer);
|
|
232
336
|
|
233
337
|
@return A new census context.
|
234
338
|
*/
|
235
|
-
census_context *census_start_server_rpc_op(
|
236
|
-
const char *buffer,
|
339
|
+
CENSUSAPI census_context *census_start_server_rpc_op(
|
340
|
+
const char *buffer, int64_t rpc_name_id,
|
237
341
|
const census_rpc_name_info *rpc_name_info, const char *peer, int trace_mask,
|
238
342
|
census_timestamp *start_time);
|
239
343
|
|
@@ -262,8 +366,9 @@ census_context *census_start_server_rpc_op(
|
|
262
366
|
|
263
367
|
@return A new census context.
|
264
368
|
*/
|
265
|
-
census_context *census_start_op(census_context *context,
|
266
|
-
|
369
|
+
CENSUSAPI census_context *census_start_op(census_context *context,
|
370
|
+
const char *family, const char *name,
|
371
|
+
int trace_mask);
|
267
372
|
|
268
373
|
/**
|
269
374
|
End an operation started by any of the census_start_*_op*() calls. The
|
@@ -274,10 +379,10 @@ census_context *census_start_op(census_context *context, const char *family,
|
|
274
379
|
@param status status associated with the operation. Not interpreted by
|
275
380
|
census.
|
276
381
|
*/
|
277
|
-
void census_end_op(census_context *context, int status);
|
382
|
+
CENSUSAPI void census_end_op(census_context *context, int status);
|
278
383
|
|
279
|
-
#define CENSUS_TRACE_RECORD_START_OP ((
|
280
|
-
#define CENSUS_TRACE_RECORD_END_OP ((
|
384
|
+
#define CENSUS_TRACE_RECORD_START_OP ((uint32_t)0)
|
385
|
+
#define CENSUS_TRACE_RECORD_END_OP ((uint32_t)1)
|
281
386
|
|
282
387
|
/** Insert a trace record into the trace stream. The record consists of an
|
283
388
|
arbitrary size buffer, the size of which is provided in 'n'.
|
@@ -286,15 +391,15 @@ void census_end_op(census_context *context, int status);
|
|
286
391
|
@param buffer Pointer to buffer to use
|
287
392
|
@param n Number of bytes in buffer
|
288
393
|
*/
|
289
|
-
void census_trace_print(census_context *context,
|
290
|
-
|
394
|
+
CENSUSAPI void census_trace_print(census_context *context, uint32_t type,
|
395
|
+
const char *buffer, size_t n);
|
291
396
|
|
292
397
|
/** Trace record. */
|
293
398
|
typedef struct {
|
294
399
|
census_timestamp timestamp; /* Time of record creation */
|
295
|
-
|
296
|
-
|
297
|
-
|
400
|
+
uint64_t trace_id; /* Trace ID associated with record */
|
401
|
+
uint64_t op_id; /* Operation ID associated with record */
|
402
|
+
uint32_t type; /* Type (as used in census_trace_print() */
|
298
403
|
const char *buffer; /* Buffer (from census_trace_print() */
|
299
404
|
size_t buf_size; /* Number of bytes inside buffer */
|
300
405
|
} census_trace_record;
|
@@ -308,7 +413,7 @@ typedef struct {
|
|
308
413
|
while scanning is ongoing.
|
309
414
|
@returns 0 on success, non-zero on failure (e.g. if a scan is already ongoing)
|
310
415
|
*/
|
311
|
-
int census_trace_scan_start(int consume);
|
416
|
+
CENSUSAPI int census_trace_scan_start(int consume);
|
312
417
|
|
313
418
|
/** Get a trace record. The data pointed to by the trace buffer is guaranteed
|
314
419
|
stable until the next census_get_trace_record() call (if the consume
|
@@ -319,65 +424,10 @@ int census_trace_scan_start(int consume);
|
|
319
424
|
census_trace_scan_start()), 0 if there is no more trace data (and
|
320
425
|
trace_record will not be modified) or 1 otherwise.
|
321
426
|
*/
|
322
|
-
int census_get_trace_record(census_trace_record *trace_record);
|
427
|
+
CENSUSAPI int census_get_trace_record(census_trace_record *trace_record);
|
323
428
|
|
324
429
|
/** End a scan previously started by census_trace_scan_start() */
|
325
|
-
void census_trace_scan_end();
|
326
|
-
|
327
|
-
/* Max number of characters in tag key */
|
328
|
-
#define CENSUS_MAX_TAG_KEY_LENGTH 20
|
329
|
-
/* Max number of tag value characters */
|
330
|
-
#define CENSUS_MAX_TAG_VALUE_LENGTH 50
|
331
|
-
|
332
|
-
/* A Census tag set is a collection of key:value string pairs; these form the
|
333
|
-
basis against which Census metrics will be recorded. Keys are unique within
|
334
|
-
a tag set. All contexts have an associated tag set. */
|
335
|
-
typedef struct census_tag_set census_tag_set;
|
336
|
-
|
337
|
-
/* Returns a pointer to a newly created, empty tag set. If size_hint > 0,
|
338
|
-
indicates that the tag set is intended to hold approximately that number
|
339
|
-
of tags. */
|
340
|
-
census_tag_set *census_tag_set_create(size_t size_hint);
|
341
|
-
|
342
|
-
/* Add a new tag key/value to an existing tag set; if the tag key already exists
|
343
|
-
in the tag set, then its value is overwritten with the new one. Can also be
|
344
|
-
used to delete a tag, by specifying a NULL value. If key is NULL, returns
|
345
|
-
the number of tags in the tag set.
|
346
|
-
Return values:
|
347
|
-
-1: invalid length key or value
|
348
|
-
non-negative value: the number of tags in the tag set. */
|
349
|
-
int census_tag_set_add(census_tag_set *tags, const char *key,
|
350
|
-
const char *value);
|
351
|
-
|
352
|
-
/* Destroys a tag set. This function must be called to prevent memory leaks.
|
353
|
-
Once called, the tag set cannot be used again. */
|
354
|
-
void census_tag_set_destroy(census_tag_set *tags);
|
355
|
-
|
356
|
-
/* Get a contexts tag set. */
|
357
|
-
census_tag_set *census_context_tag_set(census_context *context);
|
358
|
-
|
359
|
-
/* A read-only representation of a tag for use by census clients. */
|
360
|
-
typedef struct {
|
361
|
-
size_t key_len; /* Number of bytes in tag key. */
|
362
|
-
const char *key; /* A pointer to the tag key. May not be null-terminated. */
|
363
|
-
size_t value_len; /* Number of bytes in tag value. */
|
364
|
-
const char *value; /* Pointer to the tag value. May not be null-terminated. */
|
365
|
-
} census_tag_const;
|
366
|
-
|
367
|
-
/* Used to iterate through a tag sets contents. */
|
368
|
-
typedef struct census_tag_set_iterator census_tag_set_iterator;
|
369
|
-
|
370
|
-
/* Open a tag set for iteration. The tag set must not be modified while
|
371
|
-
iteration is ongoing. Returns an iterator for use in following functions. */
|
372
|
-
census_tag_set_iterator *census_tag_set_open(census_tag_set *tags);
|
373
|
-
|
374
|
-
/* Get the next tag in the tag set, by writing into the 'tag' argument. Returns
|
375
|
-
1 if there is a "next" tag, 0 if there are no more tags. */
|
376
|
-
int census_tag_set_next(census_tag_set_iterator *it, census_tag_const *tag);
|
377
|
-
|
378
|
-
/* Close an iterator opened by census_tag_set_open(). The iterator will be
|
379
|
-
invalidated, and should not be used once close is called. */
|
380
|
-
void census_tag_set_close(census_tag_set_iterator *it);
|
430
|
+
CENSUSAPI void census_trace_scan_end();
|
381
431
|
|
382
432
|
/* Core stats collection API's. The following concepts are used:
|
383
433
|
* Aggregation: A collection of values. Census supports the following
|
@@ -403,13 +453,13 @@ void census_tag_set_close(census_tag_set_iterator *it);
|
|
403
453
|
/* A single value to be recorded comprises two parts: an ID for the particular
|
404
454
|
* metric and the value to be recorded against it. */
|
405
455
|
typedef struct {
|
406
|
-
|
456
|
+
uint32_t metric_id;
|
407
457
|
double value;
|
408
458
|
} census_value;
|
409
459
|
|
410
460
|
/* Record new usage values against the given context. */
|
411
|
-
void census_record_values(census_context *context,
|
412
|
-
|
461
|
+
CENSUSAPI void census_record_values(census_context *context,
|
462
|
+
census_value *values, size_t nvalues);
|
413
463
|
|
414
464
|
/** Type representing a particular aggregation */
|
415
465
|
typedef struct census_aggregation_ops census_aggregation_ops;
|
@@ -424,8 +474,7 @@ extern census_aggregation_ops census_agg_window;
|
|
424
474
|
construction via census_define_view(). */
|
425
475
|
typedef struct {
|
426
476
|
const census_aggregation_ops *ops;
|
427
|
-
const void *
|
428
|
-
create_arg; /* Argument to be used for aggregation initialization. */
|
477
|
+
const void *create_arg; /* Aaggregation initialization argument. */
|
429
478
|
} census_aggregation;
|
430
479
|
|
431
480
|
/** A census view type. Opaque. */
|
@@ -433,36 +482,39 @@ typedef struct census_view census_view;
|
|
433
482
|
|
434
483
|
/** Create a new view.
|
435
484
|
@param metric_id Metric with which this view is associated.
|
436
|
-
@param tags tags that define the view
|
485
|
+
@param tags tags that define the view.
|
437
486
|
@param aggregations aggregations to associate with the view
|
438
487
|
@param naggregations number of aggregations
|
439
488
|
|
440
489
|
@return A new census view
|
441
490
|
*/
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
491
|
+
|
492
|
+
/* TODO(aveitch): consider if context is the right argument type to pass in
|
493
|
+
tags. */
|
494
|
+
CENSUSAPI census_view *census_view_create(
|
495
|
+
uint32_t metric_id, const census_context *tags,
|
496
|
+
const census_aggregation *aggregations, size_t naggregations);
|
446
497
|
|
447
498
|
/** Destroy a previously created view. */
|
448
|
-
void census_view_delete(census_view *view);
|
499
|
+
CENSUSAPI void census_view_delete(census_view *view);
|
449
500
|
|
450
501
|
/** Metric ID associated with a view */
|
451
|
-
size_t census_view_metric(const census_view *view);
|
502
|
+
CENSUSAPI size_t census_view_metric(const census_view *view);
|
452
503
|
|
453
504
|
/** Number of aggregations associated with view. */
|
454
|
-
size_t census_view_naggregations(const census_view *view);
|
505
|
+
CENSUSAPI size_t census_view_naggregations(const census_view *view);
|
455
506
|
|
456
507
|
/** Get tags associated with view. */
|
457
|
-
const
|
508
|
+
CENSUSAPI const census_context *census_view_tags(const census_view *view);
|
458
509
|
|
459
510
|
/** Get aggregation descriptors associated with a view. */
|
460
|
-
const census_aggregation *census_view_aggregrations(
|
511
|
+
CENSUSAPI const census_aggregation *census_view_aggregrations(
|
512
|
+
const census_view *view);
|
461
513
|
|
462
514
|
/** Holds all the aggregation data for a particular view instantiation. Forms
|
463
515
|
part of the data returned by census_view_data(). */
|
464
516
|
typedef struct {
|
465
|
-
const
|
517
|
+
const census_context *tags; /* Tags for this set of aggregations. */
|
466
518
|
const void **data; /* One data set for every aggregation in the view. */
|
467
519
|
} census_view_aggregation_data;
|
468
520
|
|
@@ -476,10 +528,10 @@ typedef struct {
|
|
476
528
|
@param view View from which to get data.
|
477
529
|
@return Full set of data for all aggregations for the view.
|
478
530
|
*/
|
479
|
-
const census_view_data *census_view_get_data(const census_view *view);
|
531
|
+
CENSUSAPI const census_view_data *census_view_get_data(const census_view *view);
|
480
532
|
|
481
533
|
/** Reset all view data to zero for the specified view */
|
482
|
-
void census_view_reset(census_view *view);
|
534
|
+
CENSUSAPI void census_view_reset(census_view *view);
|
483
535
|
|
484
536
|
#ifdef __cplusplus
|
485
537
|
}
|