grpc 1.32.0 → 1.52.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of grpc might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Makefile +1741 -3302
- data/etc/roots.pem +592 -899
- data/include/grpc/byte_buffer.h +76 -1
- data/include/grpc/byte_buffer_reader.h +19 -1
- data/include/grpc/compression.h +3 -3
- data/include/grpc/event_engine/README.md +38 -0
- data/include/grpc/event_engine/endpoint_config.h +49 -0
- data/include/grpc/event_engine/event_engine.h +467 -0
- data/include/grpc/event_engine/internal/memory_allocator_impl.h +68 -0
- data/include/grpc/event_engine/internal/slice_cast.h +67 -0
- data/include/grpc/event_engine/memory_allocator.h +211 -0
- data/include/grpc/event_engine/memory_request.h +57 -0
- data/include/grpc/event_engine/port.h +39 -0
- data/include/grpc/event_engine/slice.h +306 -0
- data/include/grpc/event_engine/slice_buffer.h +147 -0
- data/include/grpc/fork.h +25 -1
- data/include/grpc/grpc.h +93 -38
- data/include/grpc/grpc_posix.h +22 -18
- data/include/grpc/grpc_security.h +536 -302
- data/include/grpc/grpc_security_constants.h +17 -14
- data/include/grpc/impl/codegen/atm.h +4 -70
- data/include/grpc/impl/codegen/atm_gcc_atomic.h +4 -66
- data/include/grpc/impl/codegen/atm_gcc_sync.h +4 -60
- data/include/grpc/impl/codegen/atm_windows.h +4 -103
- data/include/grpc/impl/codegen/byte_buffer.h +4 -76
- data/include/grpc/impl/codegen/byte_buffer_reader.h +4 -17
- data/include/grpc/impl/codegen/compression_types.h +5 -83
- data/include/grpc/impl/codegen/connectivity_state.h +5 -19
- data/include/grpc/impl/codegen/fork.h +4 -23
- data/include/grpc/impl/codegen/gpr_types.h +5 -34
- data/include/grpc/impl/codegen/grpc_types.h +5 -762
- data/include/grpc/impl/codegen/log.h +4 -87
- data/include/grpc/impl/codegen/port_platform.h +3 -669
- data/include/grpc/impl/codegen/propagation_bits.h +4 -27
- data/include/grpc/impl/codegen/slice.h +4 -102
- data/include/grpc/impl/codegen/status.h +4 -129
- data/include/grpc/impl/codegen/sync.h +4 -40
- data/include/grpc/impl/codegen/sync_abseil.h +4 -11
- data/include/grpc/impl/codegen/sync_custom.h +4 -13
- data/include/grpc/impl/codegen/sync_generic.h +4 -23
- data/include/grpc/impl/codegen/sync_posix.h +4 -27
- data/include/grpc/impl/codegen/sync_windows.h +4 -11
- data/include/grpc/impl/compression_types.h +109 -0
- data/include/grpc/impl/connectivity_state.h +47 -0
- data/include/grpc/impl/grpc_types.h +824 -0
- data/include/grpc/impl/propagation_bits.h +54 -0
- data/include/grpc/impl/slice_type.h +112 -0
- data/include/grpc/load_reporting.h +1 -1
- data/include/grpc/module.modulemap +19 -15
- data/include/grpc/slice.h +1 -12
- data/include/grpc/slice_buffer.h +3 -3
- data/include/grpc/status.h +131 -1
- data/include/grpc/support/atm.h +70 -1
- data/include/grpc/support/atm_gcc_atomic.h +59 -1
- data/include/grpc/support/atm_gcc_sync.h +58 -1
- data/include/grpc/support/atm_windows.h +105 -1
- data/include/grpc/support/log.h +87 -1
- data/include/grpc/support/log_windows.h +1 -1
- data/include/grpc/support/port_platform.h +767 -1
- data/include/grpc/support/string_util.h +1 -1
- data/include/grpc/support/sync.h +38 -5
- data/include/grpc/support/sync_abseil.h +11 -1
- data/include/grpc/support/sync_custom.h +13 -1
- data/include/grpc/support/sync_generic.h +24 -1
- data/include/grpc/support/sync_posix.h +27 -1
- data/include/grpc/support/sync_windows.h +15 -1
- data/include/grpc/support/time.h +32 -9
- data/src/core/ext/filters/census/grpc_context.cc +20 -17
- data/src/core/ext/filters/channel_idle/channel_idle_filter.cc +315 -0
- data/src/core/ext/filters/channel_idle/channel_idle_filter.h +142 -0
- data/src/core/ext/filters/channel_idle/idle_filter_state.cc +96 -0
- data/src/core/ext/filters/channel_idle/idle_filter_state.h +68 -0
- data/src/core/ext/filters/client_channel/backend_metric.cc +36 -34
- data/src/core/ext/filters/client_channel/backend_metric.h +19 -8
- data/src/core/ext/filters/client_channel/backup_poller.cc +49 -44
- data/src/core/ext/filters/client_channel/backup_poller.h +23 -24
- data/src/core/ext/filters/client_channel/channel_connectivity.cc +205 -204
- data/src/core/ext/filters/client_channel/client_channel.cc +2262 -3309
- data/src/core/ext/filters/client_channel/client_channel.h +605 -60
- data/src/core/ext/filters/client_channel/client_channel_channelz.cc +21 -24
- data/src/core/ext/filters/client_channel/client_channel_channelz.h +32 -22
- data/src/core/ext/filters/client_channel/client_channel_factory.cc +19 -42
- data/src/core/ext/filters/client_channel/client_channel_factory.h +25 -26
- data/src/core/ext/filters/client_channel/client_channel_plugin.cc +33 -61
- data/src/core/ext/filters/client_channel/client_channel_service_config.cc +153 -0
- data/src/core/ext/filters/client_channel/client_channel_service_config.h +111 -0
- data/src/core/ext/filters/client_channel/config_selector.cc +2 -4
- data/src/core/ext/filters/client_channel/config_selector.h +81 -23
- data/src/core/ext/filters/client_channel/connector.h +32 -27
- data/src/core/ext/filters/client_channel/dynamic_filters.cc +175 -0
- data/src/core/ext/filters/client_channel/dynamic_filters.h +108 -0
- data/src/core/ext/filters/client_channel/global_subchannel_pool.cc +27 -163
- data/src/core/ext/filters/client_channel/global_subchannel_pool.h +37 -42
- data/src/core/ext/filters/client_channel/health/health_check_client.cc +140 -578
- data/src/core/ext/filters/client_channel/health/health_check_client.h +26 -158
- data/src/core/ext/filters/client_channel/http_proxy.cc +152 -170
- data/src/core/ext/filters/client_channel/http_proxy.h +43 -19
- data/src/core/ext/filters/client_channel/lb_call_state_internal.h +39 -0
- data/src/core/ext/filters/client_channel/lb_policy/address_filtering.cc +56 -39
- data/src/core/ext/filters/client_channel/lb_policy/address_filtering.h +13 -9
- data/src/core/ext/filters/client_channel/lb_policy/backend_metric_data.h +49 -0
- data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.cc +45 -19
- data/src/core/ext/filters/client_channel/lb_policy/child_policy_handler.h +16 -11
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.cc +64 -143
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.h +38 -21
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.cc +732 -590
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.h +27 -31
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.cc +16 -4
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_balancer_addresses.h +8 -6
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.cc +19 -20
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.h +29 -23
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.cc +47 -39
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.h +28 -27
- data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.cc +415 -0
- data/src/core/ext/filters/client_channel/lb_policy/oob_backend_metric.h +57 -0
- data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.cc +1129 -0
- data/src/core/ext/filters/client_channel/lb_policy/outlier_detection/outlier_detection.h +94 -0
- data/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc +249 -230
- data/src/core/ext/filters/client_channel/lb_policy/priority/priority.cc +520 -484
- data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.cc +890 -0
- data/src/core/ext/filters/client_channel/lb_policy/ring_hash/ring_hash.h +47 -0
- data/src/core/ext/filters/client_channel/lb_policy/rls/rls.cc +2526 -0
- data/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.cc +285 -259
- data/src/core/ext/filters/client_channel/lb_policy/subchannel_list.h +181 -174
- data/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc +297 -262
- data/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc +558 -213
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.cc +42 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_attributes.h +64 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_args.h +29 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc +794 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc +699 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_resolver.cc +1224 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.cc +651 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_override_host.h +60 -0
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_wrr_locality.cc +364 -0
- data/src/core/ext/filters/client_channel/local_subchannel_pool.cc +31 -67
- data/src/core/ext/filters/client_channel/local_subchannel_pool.h +29 -27
- data/src/core/ext/filters/client_channel/resolver/binder/binder_resolver.cc +148 -0
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc +691 -361
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.h +64 -78
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.cc +57 -51
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.cc +130 -146
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc +715 -314
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h +102 -63
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.cc +18 -18
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.cc +22 -21
- data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.cc +2 -0
- data/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.h +20 -20
- data/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.cc +129 -250
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.cc +75 -90
- data/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.h +26 -9
- data/src/core/ext/filters/client_channel/resolver/google_c2p/google_c2p_resolver.cc +471 -0
- data/src/core/ext/filters/client_channel/resolver/polling_resolver.cc +269 -0
- data/src/core/ext/filters/client_channel/resolver/polling_resolver.h +121 -0
- data/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.cc +87 -85
- data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.cc +1004 -407
- data/src/core/ext/filters/client_channel/resolver/xds/xds_resolver.h +30 -0
- data/src/core/ext/filters/client_channel/retry_filter.cc +2661 -0
- data/src/core/ext/filters/client_channel/retry_filter.h +31 -0
- data/src/core/ext/filters/client_channel/retry_service_config.cc +282 -0
- data/src/core/ext/filters/client_channel/retry_service_config.h +105 -0
- data/src/core/ext/filters/client_channel/retry_throttle.cc +42 -94
- data/src/core/ext/filters/client_channel/retry_throttle.h +47 -32
- data/src/core/ext/filters/client_channel/service_config_channel_arg_filter.cc +78 -46
- data/src/core/ext/filters/client_channel/subchannel.cc +443 -653
- data/src/core/ext/filters/client_channel/subchannel.h +191 -218
- data/src/core/ext/filters/client_channel/subchannel_interface_internal.h +38 -0
- data/src/core/ext/filters/client_channel/subchannel_pool_interface.cc +28 -59
- data/src/core/ext/filters/client_channel/subchannel_pool_interface.h +57 -48
- data/src/core/ext/filters/client_channel/subchannel_stream_client.cc +470 -0
- data/src/core/ext/filters/client_channel/subchannel_stream_client.h +222 -0
- data/src/core/ext/filters/deadline/deadline_filter.cc +165 -133
- data/src/core/ext/filters/deadline/deadline_filter.h +18 -15
- data/src/core/ext/filters/fault_injection/fault_injection_filter.cc +280 -0
- data/src/core/ext/filters/fault_injection/fault_injection_filter.h +71 -0
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.cc +118 -0
- data/src/core/ext/filters/fault_injection/fault_injection_service_config_parser.h +112 -0
- data/src/core/ext/filters/http/client/http_client_filter.cc +126 -564
- data/src/core/ext/filters/http/client/http_client_filter.h +52 -22
- data/src/core/ext/filters/http/client_authority_filter.cc +70 -139
- data/src/core/ext/filters/http/client_authority_filter.h +46 -24
- data/src/core/ext/filters/http/http_filters_plugin.cc +65 -89
- data/src/core/ext/filters/http/message_compress/compression_filter.cc +315 -0
- data/src/core/ext/filters/http/message_compress/compression_filter.h +132 -0
- data/src/core/ext/filters/http/server/http_server_filter.cc +121 -488
- data/src/core/ext/filters/http/server/http_server_filter.h +55 -21
- data/src/core/ext/filters/message_size/message_size_filter.cc +162 -188
- data/src/core/ext/filters/message_size/message_size_filter.h +42 -17
- data/src/core/ext/filters/rbac/rbac_filter.cc +174 -0
- data/src/core/ext/filters/rbac/rbac_filter.h +84 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.cc +819 -0
- data/src/core/ext/filters/rbac/rbac_service_config_parser.h +86 -0
- data/src/core/ext/filters/server_config_selector/server_config_selector.h +83 -0
- data/src/core/ext/filters/server_config_selector/server_config_selector_filter.cc +159 -0
- data/src/core/ext/filters/server_config_selector/server_config_selector_filter.h +33 -0
- data/src/core/ext/filters/stateful_session/stateful_session_filter.cc +229 -0
- data/src/core/ext/filters/stateful_session/stateful_session_filter.h +66 -0
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.cc +82 -0
- data/src/core/ext/filters/stateful_session/stateful_session_service_config_parser.h +93 -0
- data/src/core/ext/transport/chttp2/alpn/alpn.cc +20 -19
- data/src/core/ext/transport/chttp2/alpn/alpn.h +22 -22
- data/src/core/ext/transport/chttp2/client/chttp2_connector.cc +326 -144
- data/src/core/ext/transport/chttp2/client/chttp2_connector.h +42 -34
- data/src/core/ext/transport/chttp2/server/chttp2_server.cc +892 -280
- data/src/core/ext/transport/chttp2/server/chttp2_server.h +30 -21
- data/src/core/ext/transport/chttp2/transport/bin_decoder.cc +35 -33
- data/src/core/ext/transport/chttp2/transport/bin_decoder.h +33 -31
- data/src/core/ext/transport/chttp2/transport/bin_encoder.cc +32 -30
- data/src/core/ext/transport/chttp2/transport/bin_encoder.h +27 -27
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.cc +1021 -1350
- data/src/core/ext/transport/chttp2/transport/chttp2_transport.h +49 -25
- data/src/core/ext/transport/chttp2/transport/context_list.cc +27 -25
- data/src/core/ext/transport/chttp2/transport/context_list.h +32 -31
- data/src/core/ext/transport/chttp2/transport/decode_huff.cc +251 -0
- data/src/core/ext/transport/chttp2/transport/decode_huff.h +971 -0
- data/src/core/ext/transport/chttp2/transport/flow_control.cc +361 -285
- data/src/core/ext/transport/chttp2/transport/flow_control.h +259 -320
- data/src/core/ext/transport/chttp2/transport/frame.h +19 -23
- data/src/core/ext/transport/chttp2/transport/frame_data.cc +91 -239
- data/src/core/ext/transport/chttp2/transport/frame_data.h +41 -63
- data/src/core/ext/transport/chttp2/transport/frame_goaway.cc +61 -56
- data/src/core/ext/transport/chttp2/transport/frame_goaway.h +28 -25
- data/src/core/ext/transport/chttp2/transport/frame_ping.cc +44 -39
- data/src/core/ext/transport/chttp2/transport/frame_ping.h +30 -25
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.cc +48 -39
- data/src/core/ext/transport/chttp2/transport/frame_rst_stream.h +28 -24
- data/src/core/ext/transport/chttp2/transport/frame_settings.cc +60 -60
- data/src/core/ext/transport/chttp2/transport/frame_settings.h +33 -27
- data/src/core/ext/transport/chttp2/transport/frame_window_update.cc +46 -44
- data/src/core/ext/transport/chttp2/transport/frame_window_update.h +26 -24
- data/src/core/ext/transport/chttp2/transport/hpack_constants.h +47 -0
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.cc +520 -800
- data/src/core/ext/transport/chttp2/transport/hpack_encoder.h +204 -94
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.cc +89 -0
- data/src/core/ext/transport/chttp2/transport/hpack_encoder_table.h +80 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser.cc +859 -1276
- data/src/core/ext/transport/chttp2/transport/hpack_parser.h +129 -104
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.cc +246 -0
- data/src/core/ext/transport/chttp2/transport/hpack_parser_table.h +137 -0
- data/src/core/ext/transport/chttp2/transport/http2_settings.cc +21 -19
- data/src/core/ext/transport/chttp2/transport/http2_settings.h +36 -35
- data/src/core/ext/transport/chttp2/transport/http_trace.cc +19 -0
- data/src/core/ext/transport/chttp2/transport/http_trace.h +24 -0
- data/src/core/ext/transport/chttp2/transport/huffsyms.cc +20 -20
- data/src/core/ext/transport/chttp2/transport/huffsyms.h +19 -19
- data/src/core/ext/transport/chttp2/transport/internal.h +270 -341
- data/src/core/ext/transport/chttp2/transport/parsing.cc +416 -384
- data/src/core/ext/transport/chttp2/transport/stream_lists.cc +32 -32
- data/src/core/ext/transport/chttp2/transport/stream_map.cc +24 -24
- data/src/core/ext/transport/chttp2/transport/stream_map.h +32 -31
- data/src/core/ext/transport/chttp2/transport/varint.cc +29 -24
- data/src/core/ext/transport/chttp2/transport/varint.h +70 -54
- data/src/core/ext/transport/chttp2/transport/writing.cc +235 -250
- data/src/core/ext/transport/inproc/inproc_plugin.cc +17 -22
- data/src/core/ext/transport/inproc/inproc_transport.cc +371 -413
- data/src/core/ext/transport/inproc/inproc_transport.h +22 -23
- data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.c +117 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/certs.upb.h +502 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.c +121 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/clusters.upb.h +569 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.c +125 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump.upb.h +516 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.c +352 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/config_dump_shared.upb.h +1768 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.c +56 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/init_dump.upb.h +159 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.c +64 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/listeners.upb.h +189 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.c +46 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/memory.upb.h +128 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.c +43 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/metrics.upb.h +106 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.c +43 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/mutex_stats.upb.h +101 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.c +106 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/server_info.upb.h +613 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.c +48 -0
- data/src/core/ext/upb-generated/envoy/admin/v3/tap.upb.h +107 -0
- data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c +44 -1
- data/src/core/ext/upb-generated/envoy/annotations/deprecation.upb.h +53 -1
- data/src/core/ext/upb-generated/envoy/annotations/resource.upb.c +31 -5
- data/src/core/ext/upb-generated/envoy/annotations/resource.upb.h +63 -13
- data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.c +154 -108
- data/src/core/ext/upb-generated/envoy/config/accesslog/v3/accesslog.upb.h +891 -291
- data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.c +413 -0
- data/src/core/ext/upb-generated/envoy/config/bootstrap/v3/bootstrap.upb.h +2251 -0
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.c +50 -29
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/circuit_breaker.upb.h +250 -82
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.c +374 -210
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/cluster.upb.h +2308 -620
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.c +21 -8
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/filter.upb.h +58 -20
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.c +61 -27
- data/src/core/ext/upb-generated/envoy/config/cluster/v3/outlier_detection.upb.h +317 -91
- data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.c +299 -0
- data/src/core/ext/upb-generated/envoy/config/common/matcher/v3/matcher.upb.h +1437 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.c +81 -48
- data/src/core/ext/upb-generated/envoy/config/core/v3/address.upb.h +470 -140
- data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.c +22 -8
- data/src/core/ext/upb-generated/envoy/config/core/v3/backoff.upb.h +63 -22
- data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.c +255 -143
- data/src/core/ext/upb-generated/envoy/config/core/v3/base.upb.h +1431 -409
- data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.c +110 -43
- data/src/core/ext/upb-generated/envoy/config/core/v3/config_source.upb.h +611 -133
- data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.c +20 -7
- data/src/core/ext/upb-generated/envoy/config/core/v3/event_service_config.upb.h +52 -19
- data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.c +47 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/extension.upb.h +107 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.c +58 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_method_list.upb.h +159 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.c +169 -95
- data/src/core/ext/upb-generated/envoy/config/core/v3/grpc_service.upb.h +986 -291
- data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.c +142 -92
- data/src/core/ext/upb-generated/envoy/config/core/v3/health_check.upb.h +866 -295
- data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.c +22 -9
- data/src/core/ext/upb-generated/envoy/config/core/v3/http_uri.upb.h +72 -26
- data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.c +245 -74
- data/src/core/ext/upb-generated/envoy/config/core/v3/protocol.upb.h +1438 -215
- data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.c +18 -6
- data/src/core/ext/upb-generated/envoy/config/core/v3/proxy_protocol.upb.h +42 -12
- data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.c +60 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/resolver.upb.h +177 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.c +23 -10
- data/src/core/ext/upb-generated/envoy/config/core/v3/socket_option.upb.h +89 -29
- data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.c +56 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/substitution_format_string.upb.h +182 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.c +48 -0
- data/src/core/ext/upb-generated/envoy/config/core/v3/udp_socket_config.upb.h +122 -0
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.c +52 -37
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint.upb.h +234 -94
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.c +92 -39
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/endpoint_components.upb.h +486 -112
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.c +71 -54
- data/src/core/ext/upb-generated/envoy/config/endpoint/v3/load_report.upb.h +419 -163
- data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.c +20 -7
- data/src/core/ext/upb-generated/envoy/config/listener/v3/api_listener.upb.h +50 -17
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.c +138 -57
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener.upb.h +812 -172
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.c +115 -67
- data/src/core/ext/upb-generated/envoy/config/listener/v3/listener_components.upb.h +704 -225
- data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.c +63 -0
- data/src/core/ext/upb-generated/envoy/config/listener/v3/quic_config.upb.h +238 -0
- data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.c +30 -12
- data/src/core/ext/upb-generated/envoy/config/listener/v3/udp_listener_config.upb.h +131 -39
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.c +53 -0
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/metrics_service.upb.h +140 -0
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.c +165 -0
- data/src/core/ext/upb-generated/envoy/config/metrics/v3/stats.upb.h +748 -0
- data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.c +174 -0
- data/src/core/ext/upb-generated/envoy/config/overload/v3/overload.upb.h +757 -0
- data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.c +145 -98
- data/src/core/ext/upb-generated/envoy/config/rbac/v3/rbac.upb.h +736 -241
- data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.c +48 -25
- data/src/core/ext/upb-generated/envoy/config/route/v3/route.upb.h +304 -106
- data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.c +781 -458
- data/src/core/ext/upb-generated/envoy/config/route/v3/route_components.upb.h +4982 -1397
- data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.c +39 -19
- data/src/core/ext/upb-generated/envoy/config/route/v3/scoped_route.upb.h +189 -57
- data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.c +241 -0
- data/src/core/ext/upb-generated/envoy/config/tap/v3/common.upb.h +1191 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.c +44 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/datadog.upb.h +92 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.c +49 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/dynamic_ot.upb.h +107 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.c +28 -15
- data/src/core/ext/upb-generated/envoy/config/trace/v3/http_tracer.upb.h +104 -37
- data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.c +52 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/lightstep.upb.h +138 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.c +63 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opencensus.upb.h +254 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.c +46 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/opentelemetry.upb.h +98 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.c +47 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/service.upb.h +98 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.c +69 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/skywalking.upb.h +221 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.c +33 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/trace.upb.h +43 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.c +71 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/xray.upb.h +226 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.c +54 -0
- data/src/core/ext/upb-generated/envoy/config/trace/v3/zipkin.upb.h +150 -0
- data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.c +42 -0
- data/src/core/ext/upb-generated/envoy/extensions/clusters/aggregate/v3/cluster.upb.h +89 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.c +96 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/common/fault/v3/fault.upb.h +395 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.c +94 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/fault/v3/fault.upb.h +445 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.c +71 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/rbac/v3/rbac.upb.h +237 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.c +55 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/router/v3/router.upb.h +172 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.c +62 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upb.h +179 -0
- data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.c +331 -172
- data/src/core/ext/upb-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upb.h +2090 -484
- data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.c +46 -0
- data/src/core/ext/upb-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upb.h +98 -0
- data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.c +52 -0
- data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/ring_hash/v3/ring_hash.upb.h +168 -0
- data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.c +46 -0
- data/src/core/ext/upb-generated/envoy/extensions/load_balancing_policies/wrr_locality/v3/wrr_locality.upb.h +98 -0
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.c +10 -2
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/cert.upb.h +8 -4
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.c +116 -50
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/common.upb.h +718 -187
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.c +43 -27
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/secret.upb.h +196 -74
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.c +137 -51
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls.upb.h +833 -158
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.c +62 -0
- data/src/core/ext/upb-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upb.h +168 -0
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.c +16 -3
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/ads.upb.h +35 -10
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.c +214 -63
- data/src/core/ext/upb-generated/envoy/service/discovery/v3/discovery.upb.h +1189 -200
- data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.c +32 -19
- data/src/core/ext/upb-generated/envoy/service/load_stats/v3/lrs.upb.h +138 -56
- data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.c +138 -0
- data/src/core/ext/upb-generated/envoy/service/status/v3/csds.upb.h +651 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.c +48 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/cookie.upb.h +116 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.c +76 -0
- data/src/core/ext/upb-generated/envoy/type/http/v3/path_transformation.upb.h +265 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.c +74 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/http_inputs.upb.h +230 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.c +29 -14
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/metadata.upb.h +127 -45
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.c +49 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/node.upb.h +121 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.c +21 -8
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/number.upb.h +62 -22
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.c +20 -7
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/path.upb.h +52 -19
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.c +37 -21
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/regex.upb.h +156 -55
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.c +32 -18
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/string.upb.h +150 -51
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.c +60 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/struct.upb.h +178 -0
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.c +38 -23
- data/src/core/ext/upb-generated/envoy/type/matcher/v3/value.upb.h +186 -68
- data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.c +51 -32
- data/src/core/ext/upb-generated/envoy/type/metadata/v3/metadata.upb.h +309 -110
- data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.c +54 -37
- data/src/core/ext/upb-generated/envoy/type/tracing/v3/custom_tag.upb.h +295 -106
- data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.c +66 -0
- data/src/core/ext/upb-generated/envoy/type/v3/hash_policy.upb.h +213 -0
- data/src/core/ext/upb-generated/envoy/type/v3/http.upb.c +10 -1
- data/src/core/ext/upb-generated/envoy/type/v3/http.upb.h +5 -1
- data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.c +42 -0
- data/src/core/ext/upb-generated/envoy/type/v3/http_status.upb.h +143 -0
- data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.c +24 -10
- data/src/core/ext/upb-generated/envoy/type/v3/percent.upb.h +87 -26
- data/src/core/ext/upb-generated/envoy/type/v3/range.upb.c +31 -16
- data/src/core/ext/upb-generated/envoy/type/v3/range.upb.h +134 -37
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.c +63 -0
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_strategy.upb.h +202 -0
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.c +26 -0
- data/src/core/ext/upb-generated/envoy/type/v3/ratelimit_unit.upb.h +41 -0
- data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.c +20 -7
- data/src/core/ext/upb-generated/envoy/type/v3/semantic_version.upb.h +54 -14
- data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.c +51 -0
- data/src/core/ext/upb-generated/envoy/type/v3/token_bucket.upb.h +131 -0
- data/src/core/ext/upb-generated/google/api/annotations.upb.c +23 -1
- data/src/core/ext/upb-generated/google/api/annotations.upb.h +25 -1
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.c +271 -0
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/checked.upb.h +1280 -0
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.c +167 -118
- data/src/core/ext/upb-generated/google/api/expr/v1alpha1/syntax.upb.h +965 -338
- data/src/core/ext/upb-generated/google/api/http.upb.c +44 -29
- data/src/core/ext/upb-generated/google/api/http.upb.h +252 -100
- data/src/core/ext/upb-generated/google/api/httpbody.upb.c +46 -0
- data/src/core/ext/upb-generated/google/api/httpbody.upb.h +115 -0
- data/src/core/ext/upb-generated/google/protobuf/any.upb.c +19 -6
- data/src/core/ext/upb-generated/google/protobuf/any.upb.h +52 -17
- data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.c +375 -283
- data/src/core/ext/upb-generated/google/protobuf/descriptor.upb.h +2467 -972
- data/src/core/ext/upb-generated/google/protobuf/duration.upb.c +19 -6
- data/src/core/ext/upb-generated/google/protobuf/duration.upb.h +50 -15
- data/src/core/ext/upb-generated/google/protobuf/empty.upb.c +16 -3
- data/src/core/ext/upb-generated/google/protobuf/empty.upb.h +35 -10
- data/src/core/ext/upb-generated/google/protobuf/struct.upb.c +48 -32
- data/src/core/ext/upb-generated/google/protobuf/struct.upb.h +213 -78
- data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.c +19 -6
- data/src/core/ext/upb-generated/google/protobuf/timestamp.upb.h +50 -15
- data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.c +58 -37
- data/src/core/ext/upb-generated/google/protobuf/wrappers.upb.h +356 -118
- data/src/core/ext/upb-generated/google/rpc/status.upb.c +22 -9
- data/src/core/ext/upb-generated/google/rpc/status.upb.h +66 -25
- data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.c +84 -0
- data/src/core/ext/upb-generated/opencensus/proto/trace/v1/trace_config.upb.h +335 -0
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.c +33 -19
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/altscontext.upb.h +119 -44
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.c +136 -108
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/handshaker.upb.h +817 -316
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.c +28 -13
- data/src/core/ext/upb-generated/src/proto/grpc/gcp/transport_security_common.upb.h +105 -33
- data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.c +23 -9
- data/src/core/ext/upb-generated/src/proto/grpc/health/v1/health.upb.h +81 -25
- data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.c +82 -62
- data/src/core/ext/upb-generated/src/proto/grpc/lb/v1/load_balancer.upb.h +495 -186
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.c +70 -0
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls.upb.h +216 -0
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.c +175 -0
- data/src/core/ext/upb-generated/src/proto/grpc/lookup/v1/rls_config.upb.h +792 -0
- data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.c +76 -14
- data/src/core/ext/upb-generated/udpa/annotations/migrate.upb.h +229 -42
- data/src/core/ext/upb-generated/udpa/annotations/security.upb.c +55 -0
- data/src/core/ext/upb-generated/udpa/annotations/security.upb.h +112 -0
- data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.c +22 -1
- data/src/core/ext/upb-generated/udpa/annotations/sensitive.upb.h +18 -1
- data/src/core/ext/upb-generated/udpa/annotations/status.upb.c +32 -6
- data/src/core/ext/upb-generated/udpa/annotations/status.upb.h +70 -15
- data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.c +31 -5
- data/src/core/ext/upb-generated/udpa/annotations/versioning.upb.h +63 -13
- data/src/core/ext/upb-generated/validate/validate.upb.c +407 -295
- data/src/core/ext/upb-generated/validate/validate.upb.h +3054 -1023
- data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.c +110 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/migrate.upb.h +290 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.c +55 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/security.upb.h +112 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.c +38 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/sensitive.upb.h +46 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.c +105 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/status.upb.h +306 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.c +53 -0
- data/src/core/ext/upb-generated/xds/annotations/v3/versioning.upb.h +103 -0
- data/src/core/ext/upb-generated/xds/core/v3/authority.upb.c +41 -0
- data/src/core/ext/upb-generated/xds/core/v3/authority.upb.h +83 -0
- data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.c +47 -0
- data/src/core/ext/upb-generated/xds/core/v3/cidr.upb.h +107 -0
- data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.c +66 -0
- data/src/core/ext/upb-generated/xds/core/v3/collection_entry.upb.h +208 -0
- data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.c +56 -0
- data/src/core/ext/upb-generated/xds/core/v3/context_params.upb.h +119 -0
- data/src/core/ext/upb-generated/xds/core/v3/extension.upb.c +46 -0
- data/src/core/ext/upb-generated/xds/core/v3/extension.upb.h +107 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource.upb.c +49 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource.upb.h +131 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.c +68 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource_locator.upb.h +248 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.c +49 -0
- data/src/core/ext/upb-generated/xds/core/v3/resource_name.upb.h +125 -0
- data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.c +74 -0
- data/src/core/ext/upb-generated/xds/data/orca/v3/orca_load_report.upb.h +200 -0
- data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.c +46 -0
- data/src/core/ext/upb-generated/xds/service/orca/v3/orca.upb.h +113 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.c +46 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/cel.upb.h +98 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.c +62 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/domain.upb.h +174 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.c +36 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/http_inputs.upb.h +74 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.c +65 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/ip.upb.h +191 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.c +207 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/matcher.upb.h +914 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.c +127 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/range.upb.h +474 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.c +52 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/regex.upb.h +151 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.c +65 -0
- data/src/core/ext/upb-generated/xds/type/matcher/v3/string.upb.h +226 -0
- data/src/core/ext/upb-generated/xds/type/v3/cel.upb.c +67 -0
- data/src/core/ext/upb-generated/xds/type/v3/cel.upb.h +214 -0
- data/src/core/ext/upb-generated/xds/type/v3/range.upb.c +64 -0
- data/src/core/ext/upb-generated/xds/type/v3/range.upb.h +208 -0
- data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.c +45 -0
- data/src/core/ext/upb-generated/xds/type/v3/typed_struct.upb.h +107 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.c +84 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/certs.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.c +127 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/clusters.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.c +102 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.c +256 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/config_dump_shared.upbdefs.h +115 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.c +43 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/init_dump.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.c +56 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/listeners.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.c +49 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/memory.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/metrics.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/mutex_stats.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.c +142 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/server_info.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.c +51 -0
- data/src/core/ext/upbdefs-generated/envoy/admin/v3/tap.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.c +48 -0
- data/src/core/ext/upbdefs-generated/envoy/annotations/deprecation.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.c +38 -0
- data/src/core/ext/upbdefs-generated/envoy/annotations/resource.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.c +222 -0
- data/src/core/ext/upbdefs-generated/envoy/config/accesslog/v3/accesslog.upbdefs.h +105 -0
- data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.c +397 -0
- data/src/core/ext/upbdefs-generated/envoy/config/bootstrap/v3/bootstrap.upbdefs.h +120 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.c +98 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/circuit_breaker.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.c +559 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/cluster.upbdefs.h +155 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.c +51 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/filter.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.c +138 -0
- data/src/core/ext/upbdefs-generated/envoy/config/cluster/v3/outlier_detection.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.c +206 -0
- data/src/core/ext/upbdefs-generated/envoy/config/common/matcher/v3/matcher.upbdefs.h +105 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.c +112 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/address.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/backoff.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.c +270 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/base.upbdefs.h +150 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.c +168 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/config_source.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/event_service_config.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.c +47 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/extension.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_method_list.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.c +235 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/grpc_service.upbdefs.h +100 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.c +228 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/health_check.upbdefs.h +75 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/http_uri.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.c +300 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/protocol.upbdefs.h +110 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.c +41 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/proxy_protocol.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.c +55 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/resolver.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/socket_option.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.c +70 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/substitution_format_string.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.c +49 -0
- data/src/core/ext/upbdefs-generated/envoy/config/core/v3/udp_socket_config.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.c +99 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.c +128 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/endpoint_components.upbdefs.h +60 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.c +136 -0
- data/src/core/ext/upbdefs-generated/envoy/config/endpoint/v3/load_report.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.c +48 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/api_listener.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.c +220 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.c +190 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/listener_components.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.c +88 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/quic_config.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.c +71 -0
- data/src/core/ext/upbdefs-generated/envoy/config/listener/v3/udp_listener_config.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.c +69 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/metrics_service.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.c +125 -0
- data/src/core/ext/upbdefs-generated/envoy/config/metrics/v3/stats.upbdefs.h +70 -0
- data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.c +134 -0
- data/src/core/ext/upbdefs-generated/envoy/config/overload/v3/overload.upbdefs.h +75 -0
- data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.c +194 -0
- data/src/core/ext/upbdefs-generated/envoy/config/rbac/v3/rbac.upbdefs.h +75 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.c +112 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.c +939 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/route_components.upbdefs.h +305 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.c +77 -0
- data/src/core/ext/upbdefs-generated/envoy/config/route/v3/scoped_route.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.c +199 -0
- data/src/core/ext/upbdefs-generated/envoy/config/tap/v3/common.upbdefs.h +90 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/datadog.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/dynamic_ot.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/http_tracer.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.c +72 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/lightstep.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.c +99 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opencensus.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.c +47 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/opentelemetry.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/service.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.c +71 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/skywalking.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.c +61 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/trace.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.c +75 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/xray.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.c +77 -0
- data/src/core/ext/upbdefs-generated/envoy/config/trace/v3/zipkin.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.c +50 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/clusters/aggregate/v3/cluster.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.c +92 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/common/fault/v3/fault.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.c +117 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/fault/v3/fault.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.c +80 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/rbac/v3/rbac.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.c +78 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/router/v3/router.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.c +60 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/http/stateful_session/v3/stateful_session.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.c +562 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/filters/network/http_connection_manager/v3/http_connection_manager.upbdefs.h +130 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.c +50 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/http/stateful_session/cookie/v3/cookie.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.c +48 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/cert.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.c +213 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/common.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.c +91 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/secret.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.c +254 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.c +58 -0
- data/src/core/ext/upbdefs-generated/envoy/extensions/transport_sockets/tls/v3/tls_spiffe_validator_config.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.c +58 -0
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/ads.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.c +197 -0
- data/src/core/ext/upbdefs-generated/envoy/service/discovery/v3/discovery.upbdefs.h +100 -0
- data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.c +76 -0
- data/src/core/ext/upbdefs-generated/envoy/service/load_stats/v3/lrs.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.c +153 -0
- data/src/core/ext/upbdefs-generated/envoy/service/status/v3/csds.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/cookie.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.c +56 -0
- data/src/core/ext/upbdefs-generated/envoy/type/http/v3/path_transformation.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/http_inputs.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.c +61 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/metadata.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/node.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/number.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.c +51 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/path.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.c +71 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/regex.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.c +65 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/string.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.c +58 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/struct.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.c +75 -0
- data/src/core/ext/upbdefs-generated/envoy/type/matcher/v3/value.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.c +78 -0
- data/src/core/ext/upbdefs-generated/envoy/type/metadata/v3/metadata.upbdefs.h +65 -0
- data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.c +85 -0
- data/src/core/ext/upbdefs-generated/envoy/type/tracing/v3/custom_tag.upbdefs.h +55 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.c +53 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/hash_policy.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.c +36 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.c +94 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/http_status.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/percent.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.c +48 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/range.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.c +69 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_strategy.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.c +38 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/ratelimit_unit.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.c +44 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/semantic_version.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.c +57 -0
- data/src/core/ext/upbdefs-generated/envoy/type/v3/token_bucket.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.c +40 -0
- data/src/core/ext/upbdefs-generated/google/api/annotations.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.c +154 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/checked.upbdefs.h +95 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.c +153 -0
- data/src/core/ext/upbdefs-generated/google/api/expr/v1alpha1/syntax.upbdefs.h +100 -0
- data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/google/api/http.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.c +39 -0
- data/src/core/ext/upbdefs-generated/google/api/httpbody.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.c +34 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/any.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.c +331 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/descriptor.upbdefs.h +165 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.c +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/duration.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.c +32 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/empty.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.c +54 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/struct.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.c +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/timestamp.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.c +45 -0
- data/src/core/ext/upbdefs-generated/google/protobuf/wrappers.upbdefs.h +75 -0
- data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.c +37 -0
- data/src/core/ext/upbdefs-generated/google/rpc/status.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.c +67 -0
- data/src/core/ext/upbdefs-generated/opencensus/proto/trace/v1/trace_config.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.c +99 -0
- data/src/core/ext/upbdefs-generated/src/proto/grpc/lookup/v1/rls_config.upbdefs.h +75 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.c +62 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/migrate.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.c +47 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/security.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.c +34 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/sensitive.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/status.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.c +39 -0
- data/src/core/ext/upbdefs-generated/udpa/annotations/versioning.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.c +283 -0
- data/src/core/ext/upbdefs-generated/validate/validate.upbdefs.h +145 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.c +63 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/migrate.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.c +47 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/security.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.c +35 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/sensitive.upbdefs.h +30 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.c +64 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/status.upbdefs.h +50 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.c +40 -0
- data/src/core/ext/upbdefs-generated/xds/annotations/v3/versioning.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.c +38 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/authority.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.c +45 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/cidr.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.c +56 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/collection_entry.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.c +39 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/context_params.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.c +41 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/extension.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.c +45 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.c +61 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_locator.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.c +46 -0
- data/src/core/ext/upbdefs-generated/xds/core/v3/resource_name.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.c +43 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/cel.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.c +51 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/domain.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.c +36 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/http_inputs.upbdefs.h +35 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.c +55 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/ip.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.c +126 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/matcher.upbdefs.h +80 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.c +71 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/range.upbdefs.h +60 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.c +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/regex.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.c +52 -0
- data/src/core/ext/upbdefs-generated/xds/type/matcher/v3/string.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.c +60 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/cel.upbdefs.h +40 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.c +36 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/range.upbdefs.h +45 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.c +37 -0
- data/src/core/ext/upbdefs-generated/xds/type/v3/typed_struct.upbdefs.h +35 -0
- data/src/core/ext/xds/certificate_provider_store.cc +159 -0
- data/src/core/ext/xds/certificate_provider_store.h +138 -0
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.cc +150 -0
- data/src/core/ext/xds/file_watcher_certificate_provider_factory.h +77 -0
- data/src/core/ext/xds/upb_utils.h +45 -0
- data/src/core/ext/xds/xds_api.cc +314 -2078
- data/src/core/ext/xds/xds_api.h +141 -308
- data/src/core/ext/xds/xds_bootstrap.cc +10 -345
- data/src/core/ext/xds/xds_bootstrap.h +43 -48
- data/src/core/ext/xds/xds_bootstrap_grpc.cc +361 -0
- data/src/core/ext/xds/xds_bootstrap_grpc.h +184 -0
- data/src/core/ext/xds/xds_certificate_provider.cc +416 -0
- data/src/core/ext/xds/xds_certificate_provider.h +183 -0
- data/src/core/ext/xds/xds_channel_args.h +11 -5
- data/src/core/ext/xds/xds_channel_stack_modifier.cc +119 -0
- data/src/core/ext/xds/xds_channel_stack_modifier.h +65 -0
- data/src/core/ext/xds/xds_client.cc +1442 -1516
- data/src/core/ext/xds/xds_client.h +212 -144
- data/src/core/ext/xds/xds_client_grpc.cc +236 -0
- data/src/core/ext/xds/xds_client_grpc.h +79 -0
- data/src/core/ext/xds/xds_client_stats.cc +103 -59
- data/src/core/ext/xds/xds_client_stats.h +71 -40
- data/src/core/ext/xds/xds_cluster.cc +707 -0
- data/src/core/ext/xds/xds_cluster.h +137 -0
- data/src/core/ext/xds/xds_cluster_specifier_plugin.cc +132 -0
- data/src/core/ext/xds/xds_cluster_specifier_plugin.h +97 -0
- data/src/core/ext/xds/xds_common_types.cc +502 -0
- data/src/core/ext/xds/xds_common_types.h +108 -0
- data/src/core/ext/xds/xds_endpoint.cc +474 -0
- data/src/core/ext/xds/xds_endpoint.h +139 -0
- data/src/core/ext/xds/xds_health_status.cc +80 -0
- data/src/core/ext/xds/xds_health_status.h +82 -0
- data/src/core/ext/xds/xds_http_fault_filter.cc +236 -0
- data/src/core/ext/xds/xds_http_fault_filter.h +58 -0
- data/src/core/ext/xds/xds_http_filters.cc +121 -0
- data/src/core/ext/xds/xds_http_filters.h +181 -0
- data/src/core/ext/xds/xds_http_rbac_filter.cc +506 -0
- data/src/core/ext/xds/xds_http_rbac_filter.h +58 -0
- data/src/core/ext/xds/xds_http_stateful_session_filter.cc +218 -0
- data/src/core/ext/xds/xds_http_stateful_session_filter.h +58 -0
- data/src/core/ext/xds/xds_lb_policy_registry.cc +239 -0
- data/src/core/ext/xds/xds_lb_policy_registry.h +71 -0
- data/src/core/ext/xds/xds_listener.cc +1130 -0
- data/src/core/ext/xds/xds_listener.h +226 -0
- data/src/core/ext/xds/xds_resource_type.h +104 -0
- data/src/core/ext/xds/xds_resource_type_impl.h +88 -0
- data/src/core/ext/xds/xds_route_config.cc +1138 -0
- data/src/core/ext/xds/xds_route_config.h +252 -0
- data/src/core/ext/xds/xds_routing.cc +264 -0
- data/src/core/ext/xds/xds_routing.h +106 -0
- data/src/core/ext/xds/xds_server_config_fetcher.cc +1363 -0
- data/src/core/ext/xds/xds_transport.h +86 -0
- data/src/core/ext/xds/xds_transport_grpc.cc +356 -0
- data/src/core/ext/xds/xds_transport_grpc.h +135 -0
- data/src/core/lib/address_utils/parse_address.cc +340 -0
- data/src/core/lib/address_utils/parse_address.h +86 -0
- data/src/core/lib/address_utils/sockaddr_utils.cc +444 -0
- data/src/core/lib/address_utils/sockaddr_utils.h +100 -0
- data/src/core/lib/avl/avl.h +476 -88
- data/src/core/lib/backoff/backoff.cc +26 -57
- data/src/core/lib/backoff/backoff.h +30 -30
- data/src/core/lib/channel/call_finalization.h +88 -0
- data/src/core/lib/channel/call_tracer.h +103 -0
- data/src/core/lib/channel/channel_args.cc +309 -64
- data/src/core/lib/channel/channel_args.h +454 -44
- data/src/core/lib/channel/channel_args_preconditioning.cc +43 -0
- data/src/core/lib/channel/channel_args_preconditioning.h +62 -0
- data/src/core/lib/channel/channel_fwd.h +26 -0
- data/src/core/lib/channel/channel_stack.cc +125 -62
- data/src/core/lib/channel/channel_stack.h +226 -136
- data/src/core/lib/channel/channel_stack_builder.cc +35 -307
- data/src/core/lib/channel/channel_stack_builder.h +112 -158
- data/src/core/lib/channel/channel_stack_builder_impl.cc +113 -0
- data/src/core/lib/channel/channel_stack_builder_impl.h +48 -0
- data/src/core/lib/channel/channel_trace.cc +36 -43
- data/src/core/lib/channel/channel_trace.h +27 -23
- data/src/core/lib/channel/channelz.cc +201 -151
- data/src/core/lib/channel/channelz.h +121 -81
- data/src/core/lib/channel/channelz_registry.cc +59 -51
- data/src/core/lib/channel/channelz_registry.h +31 -28
- data/src/core/lib/channel/connected_channel.cc +745 -81
- data/src/core/lib/channel/connected_channel.h +21 -23
- data/src/core/lib/channel/context.h +32 -18
- data/src/core/lib/channel/promise_based_filter.cc +2249 -0
- data/src/core/lib/channel/promise_based_filter.h +857 -0
- data/src/core/lib/channel/status_util.cc +76 -19
- data/src/core/lib/channel/status_util.h +45 -22
- data/src/core/lib/compression/compression.cc +46 -129
- data/src/core/lib/compression/compression_internal.cc +191 -229
- data/src/core/lib/compression/compression_internal.h +87 -90
- data/src/core/lib/compression/message_compress.cc +41 -39
- data/src/core/lib/compression/message_compress.h +28 -29
- data/src/core/lib/config/core_configuration.cc +111 -0
- data/src/core/lib/config/core_configuration.h +243 -0
- data/src/core/lib/debug/event_log.cc +88 -0
- data/src/core/lib/debug/event_log.h +81 -0
- data/src/core/lib/debug/histogram_view.cc +69 -0
- data/src/core/lib/debug/histogram_view.h +37 -0
- data/src/core/lib/debug/stats.cc +48 -152
- data/src/core/lib/debug/stats.h +49 -55
- data/src/core/lib/debug/stats_data.cc +291 -637
- data/src/core/lib/debug/stats_data.h +264 -527
- data/src/core/lib/debug/trace.cc +19 -20
- data/src/core/lib/debug/trace.h +34 -32
- data/src/core/lib/event_engine/channel_args_endpoint_config.cc +40 -0
- data/src/core/lib/event_engine/channel_args_endpoint_config.h +49 -0
- data/src/core/lib/event_engine/common_closures.h +71 -0
- data/src/core/lib/event_engine/default_event_engine.cc +94 -0
- data/src/core/lib/event_engine/default_event_engine.h +49 -0
- data/src/core/lib/event_engine/default_event_engine_factory.cc +48 -0
- data/src/core/lib/event_engine/default_event_engine_factory.h +33 -0
- data/src/core/lib/event_engine/executor/executor.h +38 -0
- data/src/core/lib/event_engine/forkable.cc +101 -0
- data/src/core/lib/event_engine/forkable.h +61 -0
- data/src/core/lib/event_engine/handle_containers.h +67 -0
- data/src/core/lib/event_engine/memory_allocator.cc +74 -0
- data/src/core/lib/event_engine/poller.h +62 -0
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.cc +614 -0
- data/src/core/lib/event_engine/posix_engine/ev_epoll1_linux.h +129 -0
- data/src/core/lib/event_engine/posix_engine/ev_poll_posix.cc +900 -0
- data/src/core/lib/event_engine/posix_engine/ev_poll_posix.h +97 -0
- data/src/core/lib/event_engine/posix_engine/event_poller.h +111 -0
- data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.cc +74 -0
- data/src/core/lib/event_engine/posix_engine/event_poller_posix_default.h +33 -0
- data/src/core/lib/event_engine/posix_engine/internal_errqueue.cc +77 -0
- data/src/core/lib/event_engine/posix_engine/internal_errqueue.h +179 -0
- data/src/core/lib/event_engine/posix_engine/lockfree_event.cc +265 -0
- data/src/core/lib/event_engine/posix_engine/lockfree_event.h +73 -0
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.cc +1308 -0
- data/src/core/lib/event_engine/posix_engine/posix_endpoint.h +684 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine.cc +570 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine.h +245 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_closure.h +80 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.cc +236 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener.h +228 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.cc +380 -0
- data/src/core/lib/event_engine/posix_engine/posix_engine_listener_utils.h +91 -0
- data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.cc +853 -0
- data/src/core/lib/event_engine/posix_engine/tcp_socket_utils.h +316 -0
- data/src/core/lib/event_engine/posix_engine/timer.cc +311 -0
- data/src/core/lib/event_engine/posix_engine/timer.h +194 -0
- data/src/core/lib/event_engine/posix_engine/timer_heap.cc +107 -0
- data/src/core/lib/event_engine/posix_engine/timer_heap.h +56 -0
- data/src/core/lib/event_engine/posix_engine/timer_manager.cc +173 -0
- data/src/core/lib/event_engine/posix_engine/timer_manager.h +114 -0
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.cc +332 -0
- data/src/core/lib/event_engine/posix_engine/traced_buffer_list.h +185 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.cc +127 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_eventfd.h +45 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.cc +150 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_pipe.h +45 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix.h +76 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.cc +67 -0
- data/src/core/lib/event_engine/posix_engine/wakeup_fd_posix_default.h +37 -0
- data/src/core/lib/event_engine/resolved_address.cc +41 -0
- data/src/core/lib/event_engine/slice.cc +103 -0
- data/src/core/lib/event_engine/slice_buffer.cc +50 -0
- data/src/core/lib/event_engine/socket_notifier.h +55 -0
- data/src/core/lib/event_engine/tcp_socket_utils.cc +373 -0
- data/src/core/lib/event_engine/tcp_socket_utils.h +85 -0
- data/src/core/lib/event_engine/thread_pool.cc +277 -0
- data/src/core/lib/event_engine/thread_pool.h +137 -0
- data/src/core/lib/event_engine/time_util.cc +30 -0
- data/src/core/lib/event_engine/time_util.h +32 -0
- data/src/core/lib/event_engine/trace.cc +18 -0
- data/src/core/lib/event_engine/trace.h +30 -0
- data/src/core/lib/event_engine/utils.cc +44 -0
- data/src/core/lib/event_engine/utils.h +36 -0
- data/src/core/lib/event_engine/windows/iocp.cc +156 -0
- data/src/core/lib/event_engine/windows/iocp.h +69 -0
- data/src/core/lib/event_engine/windows/win_socket.cc +196 -0
- data/src/core/lib/event_engine/windows/win_socket.h +120 -0
- data/src/core/lib/event_engine/windows/windows_engine.cc +165 -0
- data/src/core/lib/event_engine/windows/windows_engine.h +124 -0
- data/src/core/lib/experiments/config.cc +146 -0
- data/src/core/lib/experiments/config.h +43 -0
- data/src/core/lib/experiments/experiments.cc +75 -0
- data/src/core/lib/experiments/experiments.h +58 -0
- data/src/core/lib/gpr/alloc.cc +26 -30
- data/src/core/lib/gpr/alloc.h +18 -18
- data/src/core/lib/gpr/atm.cc +18 -18
- data/src/core/lib/gpr/cpu_iphone.cc +34 -26
- data/src/core/lib/gpr/cpu_linux.cc +28 -23
- data/src/core/lib/gpr/cpu_posix.cc +24 -23
- data/src/core/lib/gpr/cpu_windows.cc +20 -18
- data/src/core/lib/gpr/log.cc +91 -36
- data/src/core/lib/gpr/log_android.cc +25 -22
- data/src/core/lib/gpr/log_linux.cc +46 -27
- data/src/core/lib/gpr/log_posix.cc +41 -23
- data/src/core/lib/gpr/log_windows.cc +43 -29
- data/src/core/lib/gpr/spinlock.h +28 -20
- data/src/core/lib/gpr/string.cc +48 -46
- data/src/core/lib/gpr/string.h +62 -63
- data/src/core/lib/gpr/string_posix.cc +24 -24
- data/src/core/lib/gpr/string_util_windows.cc +25 -52
- data/src/core/lib/gpr/string_windows.cc +24 -24
- data/src/core/lib/gpr/sync.cc +31 -31
- data/src/core/lib/gpr/sync_abseil.cc +29 -43
- data/src/core/lib/gpr/sync_posix.cc +26 -37
- data/src/core/lib/gpr/sync_windows.cc +31 -29
- data/src/core/lib/gpr/time.cc +51 -45
- data/src/core/lib/gpr/time_posix.cc +41 -45
- data/src/core/lib/gpr/time_precise.cc +26 -23
- data/src/core/lib/gpr/time_precise.h +25 -22
- data/src/core/lib/gpr/time_windows.cc +38 -31
- data/src/core/lib/gpr/tmpfile.h +22 -22
- data/src/core/lib/gpr/tmpfile_msys.cc +21 -20
- data/src/core/lib/gpr/tmpfile_posix.cc +23 -22
- data/src/core/lib/gpr/tmpfile_windows.cc +28 -29
- data/src/core/lib/gpr/useful.h +169 -50
- data/src/core/lib/gpr/wrap_memcpy.cc +25 -24
- data/src/core/lib/gprpp/atomic_utils.h +47 -0
- data/src/core/lib/gprpp/bitset.h +225 -0
- data/src/core/lib/gprpp/chunked_vector.h +257 -0
- data/src/core/lib/gprpp/construct_destruct.h +40 -0
- data/src/core/lib/gprpp/cpp_impl_of.h +49 -0
- data/src/core/lib/gprpp/crash.cc +33 -0
- data/src/core/lib/gprpp/crash.h +34 -0
- data/src/core/lib/gprpp/debug_location.h +59 -25
- data/src/core/lib/gprpp/dual_ref_counted.h +327 -0
- data/src/core/lib/gprpp/env.h +53 -0
- data/src/core/lib/gprpp/env_linux.cc +80 -0
- data/src/core/lib/gprpp/env_posix.cc +47 -0
- data/src/core/lib/gprpp/env_windows.cc +56 -0
- data/src/core/lib/gprpp/examine_stack.cc +43 -0
- data/src/core/lib/gprpp/examine_stack.h +45 -0
- data/src/core/lib/gprpp/fork.cc +50 -60
- data/src/core/lib/gprpp/fork.h +26 -34
- data/src/core/lib/gprpp/global_config.h +20 -23
- data/src/core/lib/gprpp/global_config_custom.h +18 -18
- data/src/core/lib/gprpp/global_config_env.cc +38 -36
- data/src/core/lib/gprpp/global_config_env.h +28 -26
- data/src/core/lib/gprpp/global_config_generic.h +18 -22
- data/src/core/lib/gprpp/host_port.cc +28 -26
- data/src/core/lib/gprpp/host_port.h +29 -28
- data/src/core/lib/gprpp/load_file.cc +75 -0
- data/src/core/lib/gprpp/load_file.h +33 -0
- data/src/core/lib/gprpp/manual_constructor.h +25 -91
- data/src/core/lib/gprpp/match.h +75 -0
- data/src/core/lib/gprpp/memory.h +26 -24
- data/src/core/lib/gprpp/mpscq.cc +26 -26
- data/src/core/lib/gprpp/mpscq.h +24 -23
- data/src/core/lib/gprpp/no_destruct.h +95 -0
- data/src/core/lib/gprpp/notification.h +67 -0
- data/src/core/lib/gprpp/orphanable.h +27 -34
- data/src/core/lib/gprpp/overload.h +59 -0
- data/src/core/lib/gprpp/packed_table.h +40 -0
- data/src/core/lib/gprpp/per_cpu.h +46 -0
- data/src/core/lib/gprpp/ref_counted.h +142 -105
- data/src/core/lib/gprpp/ref_counted_ptr.h +187 -41
- data/src/core/lib/gprpp/single_set_ptr.h +87 -0
- data/src/core/lib/gprpp/sorted_pack.h +98 -0
- data/src/core/lib/gprpp/stat.h +36 -0
- data/src/core/lib/gprpp/stat_posix.cc +55 -0
- data/src/core/lib/gprpp/stat_windows.cc +50 -0
- data/src/core/lib/gprpp/status_helper.cc +455 -0
- data/src/core/lib/gprpp/status_helper.h +189 -0
- data/src/core/lib/gprpp/strerror.cc +41 -0
- data/src/core/lib/gprpp/strerror.h +29 -0
- data/src/core/lib/gprpp/sync.h +129 -64
- data/src/core/lib/gprpp/table.h +452 -0
- data/src/core/lib/gprpp/tchar.cc +49 -0
- data/src/core/lib/gprpp/tchar.h +33 -0
- data/src/core/lib/gprpp/thd.h +24 -27
- data/src/core/lib/gprpp/thd_posix.cc +76 -70
- data/src/core/lib/gprpp/thd_windows.cc +32 -35
- data/src/core/lib/gprpp/time.cc +240 -0
- data/src/core/lib/gprpp/time.h +366 -0
- data/src/core/lib/gprpp/time_averaged_stats.cc +60 -0
- data/src/core/lib/gprpp/time_averaged_stats.h +79 -0
- data/src/core/lib/gprpp/time_util.cc +81 -0
- data/src/core/lib/gprpp/time_util.h +42 -0
- data/src/core/lib/gprpp/unique_type_name.h +104 -0
- data/src/core/lib/gprpp/validation_errors.cc +61 -0
- data/src/core/lib/gprpp/validation_errors.h +127 -0
- data/src/core/lib/gprpp/work_serializer.cc +247 -0
- data/src/core/lib/gprpp/work_serializer.h +86 -0
- data/src/core/lib/handshaker/proxy_mapper.h +53 -0
- data/src/core/lib/handshaker/proxy_mapper_registry.cc +71 -0
- data/src/core/lib/handshaker/proxy_mapper_registry.h +75 -0
- data/src/core/lib/http/format_request.cc +81 -47
- data/src/core/lib/http/format_request.h +29 -25
- data/src/core/lib/http/httpcli.cc +321 -234
- data/src/core/lib/http/httpcli.h +254 -109
- data/src/core/lib/http/httpcli_security_connector.cc +104 -106
- data/src/core/lib/http/httpcli_ssl_credentials.h +39 -0
- data/src/core/lib/http/parser.cc +208 -129
- data/src/core/lib/http/parser.h +53 -36
- data/src/core/lib/iomgr/block_annotate.h +21 -21
- data/src/core/lib/iomgr/buffer_list.cc +165 -146
- data/src/core/lib/iomgr/buffer_list.h +128 -108
- data/src/core/lib/iomgr/call_combiner.cc +61 -58
- data/src/core/lib/iomgr/call_combiner.h +31 -34
- data/src/core/lib/iomgr/cfstream_handle.cc +38 -41
- data/src/core/lib/iomgr/cfstream_handle.h +23 -23
- data/src/core/lib/iomgr/closure.h +110 -54
- data/src/core/lib/iomgr/combiner.cc +51 -59
- data/src/core/lib/iomgr/combiner.h +21 -20
- data/src/core/lib/iomgr/dualstack_socket_posix.cc +22 -21
- data/src/core/lib/iomgr/dynamic_annotations.h +20 -20
- data/src/core/lib/iomgr/endpoint.cc +22 -26
- data/src/core/lib/iomgr/endpoint.h +53 -54
- data/src/core/lib/iomgr/endpoint_cfstream.cc +78 -99
- data/src/core/lib/iomgr/endpoint_cfstream.h +31 -31
- data/src/core/lib/iomgr/endpoint_pair.h +19 -18
- data/src/core/lib/iomgr/endpoint_pair_posix.cc +39 -30
- data/src/core/lib/iomgr/endpoint_pair_windows.cc +25 -25
- data/src/core/lib/iomgr/error.cc +145 -752
- data/src/core/lib/iomgr/error.h +119 -227
- data/src/core/lib/iomgr/error_cfstream.cc +25 -24
- data/src/core/lib/iomgr/error_cfstream.h +21 -21
- data/src/core/lib/iomgr/ev_apple.cc +40 -36
- data/src/core/lib/iomgr/ev_apple.h +18 -18
- data/src/core/lib/iomgr/ev_epoll1_linux.cc +313 -297
- data/src/core/lib/iomgr/ev_epoll1_linux.h +19 -19
- data/src/core/lib/iomgr/ev_poll_posix.cc +359 -332
- data/src/core/lib/iomgr/ev_poll_posix.h +20 -20
- data/src/core/lib/iomgr/ev_posix.cc +100 -134
- data/src/core/lib/iomgr/ev_posix.h +100 -94
- data/src/core/lib/iomgr/ev_windows.cc +18 -18
- data/src/core/lib/iomgr/exec_ctx.cc +48 -139
- data/src/core/lib/iomgr/exec_ctx.h +175 -221
- data/src/core/lib/iomgr/executor.cc +50 -68
- data/src/core/lib/iomgr/executor.h +28 -31
- data/src/core/lib/iomgr/fork_posix.cc +25 -22
- data/src/core/lib/iomgr/fork_windows.cc +21 -21
- data/src/core/lib/iomgr/gethostname.h +18 -18
- data/src/core/lib/iomgr/gethostname_fallback.cc +17 -17
- data/src/core/lib/iomgr/gethostname_host_name_max.cc +17 -17
- data/src/core/lib/iomgr/gethostname_sysconf.cc +17 -17
- data/src/core/lib/iomgr/grpc_if_nametoindex.h +20 -20
- data/src/core/lib/iomgr/grpc_if_nametoindex_posix.cc +22 -21
- data/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.cc +22 -21
- data/src/core/lib/iomgr/internal_errqueue.cc +44 -50
- data/src/core/lib/iomgr/internal_errqueue.h +81 -86
- data/src/core/lib/iomgr/iocp_windows.cc +32 -31
- data/src/core/lib/iomgr/iocp_windows.h +19 -19
- data/src/core/lib/iomgr/iomgr.cc +31 -24
- data/src/core/lib/iomgr/iomgr.h +35 -35
- data/src/core/lib/iomgr/iomgr_fwd.h +26 -0
- data/src/core/lib/iomgr/iomgr_internal.cc +25 -29
- data/src/core/lib/iomgr/iomgr_internal.h +31 -30
- data/src/core/lib/iomgr/iomgr_posix.cc +25 -23
- data/src/core/lib/iomgr/iomgr_posix_cfstream.cc +64 -33
- data/src/core/lib/iomgr/iomgr_windows.cc +27 -26
- data/src/core/lib/iomgr/load_file.cc +26 -29
- data/src/core/lib/iomgr/load_file.h +22 -22
- data/src/core/lib/iomgr/lockfree_event.cc +131 -125
- data/src/core/lib/iomgr/lockfree_event.h +21 -21
- data/src/core/lib/iomgr/nameser.h +84 -84
- data/src/core/lib/iomgr/polling_entity.cc +26 -22
- data/src/core/lib/iomgr/polling_entity.h +33 -27
- data/src/core/lib/iomgr/pollset.cc +22 -22
- data/src/core/lib/iomgr/pollset.h +62 -62
- data/src/core/lib/iomgr/pollset_set.cc +17 -17
- data/src/core/lib/iomgr/pollset_set.h +23 -25
- data/src/core/lib/iomgr/pollset_set_windows.cc +19 -18
- data/src/core/lib/iomgr/pollset_set_windows.h +18 -18
- data/src/core/lib/iomgr/pollset_windows.cc +36 -35
- data/src/core/lib/iomgr/pollset_windows.h +22 -22
- data/src/core/lib/iomgr/port.h +58 -44
- data/src/core/lib/iomgr/python_util.h +26 -25
- data/src/core/lib/iomgr/resolve_address.cc +39 -39
- data/src/core/lib/iomgr/resolve_address.h +100 -65
- data/src/core/lib/iomgr/resolve_address_impl.h +59 -0
- data/src/core/lib/iomgr/resolve_address_posix.cc +136 -109
- data/src/core/lib/iomgr/resolve_address_posix.h +63 -0
- data/src/core/lib/iomgr/resolve_address_windows.cc +133 -90
- data/src/core/lib/iomgr/resolve_address_windows.h +63 -0
- data/src/core/lib/iomgr/resolved_address.h +39 -0
- data/src/core/lib/iomgr/sockaddr.h +24 -24
- data/src/core/lib/iomgr/sockaddr_posix.h +20 -18
- data/src/core/lib/iomgr/sockaddr_utils_posix.cc +64 -0
- data/src/core/lib/iomgr/sockaddr_windows.h +20 -18
- data/src/core/lib/iomgr/socket_factory_posix.cc +25 -24
- data/src/core/lib/iomgr/socket_factory_posix.h +31 -30
- data/src/core/lib/iomgr/socket_mutator.cc +39 -24
- data/src/core/lib/iomgr/socket_mutator.h +54 -30
- data/src/core/lib/iomgr/socket_utils.h +24 -24
- data/src/core/lib/iomgr/socket_utils_common_posix.cc +108 -142
- data/src/core/lib/iomgr/socket_utils_linux.cc +22 -21
- data/src/core/lib/iomgr/socket_utils_posix.cc +105 -21
- data/src/core/lib/iomgr/socket_utils_posix.h +198 -106
- data/src/core/lib/iomgr/socket_utils_windows.cc +22 -21
- data/src/core/lib/iomgr/socket_windows.cc +37 -36
- data/src/core/lib/iomgr/socket_windows.h +56 -58
- data/src/core/lib/iomgr/systemd_utils.cc +116 -0
- data/src/core/lib/iomgr/systemd_utils.h +33 -0
- data/src/core/lib/iomgr/tcp_client.cc +28 -24
- data/src/core/lib/iomgr/tcp_client.h +48 -34
- data/src/core/lib/iomgr/tcp_client_cfstream.cc +53 -58
- data/src/core/lib/iomgr/tcp_client_posix.cc +249 -130
- data/src/core/lib/iomgr/tcp_client_posix.h +55 -51
- data/src/core/lib/iomgr/tcp_client_windows.cc +70 -62
- data/src/core/lib/iomgr/tcp_posix.cc +685 -497
- data/src/core/lib/iomgr/tcp_posix.h +46 -39
- data/src/core/lib/iomgr/tcp_server.cc +36 -27
- data/src/core/lib/iomgr/tcp_server.h +84 -73
- data/src/core/lib/iomgr/tcp_server_posix.cc +216 -164
- data/src/core/lib/iomgr/tcp_server_utils_posix.h +88 -80
- data/src/core/lib/iomgr/tcp_server_utils_posix_common.cc +140 -99
- data/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.cc +55 -52
- data/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.cc +23 -23
- data/src/core/lib/iomgr/tcp_server_windows.cc +129 -132
- data/src/core/lib/iomgr/tcp_windows.cc +136 -135
- data/src/core/lib/iomgr/tcp_windows.h +32 -33
- data/src/core/lib/iomgr/timer.cc +20 -19
- data/src/core/lib/iomgr/timer.h +81 -72
- data/src/core/lib/iomgr/timer_generic.cc +237 -257
- data/src/core/lib/iomgr/timer_generic.h +20 -19
- data/src/core/lib/iomgr/timer_heap.cc +27 -28
- data/src/core/lib/iomgr/timer_heap.h +19 -19
- data/src/core/lib/iomgr/timer_manager.cc +48 -47
- data/src/core/lib/iomgr/timer_manager.h +25 -25
- data/src/core/lib/iomgr/unix_sockets_posix.cc +48 -52
- data/src/core/lib/iomgr/unix_sockets_posix.h +25 -24
- data/src/core/lib/iomgr/unix_sockets_posix_noop.cc +32 -29
- data/src/core/lib/iomgr/wakeup_fd_eventfd.cc +26 -26
- data/src/core/lib/iomgr/wakeup_fd_nospecial.cc +24 -23
- data/src/core/lib/iomgr/wakeup_fd_pipe.cc +37 -35
- data/src/core/lib/iomgr/wakeup_fd_pipe.h +18 -18
- data/src/core/lib/iomgr/wakeup_fd_posix.cc +37 -33
- data/src/core/lib/iomgr/wakeup_fd_posix.h +58 -58
- data/src/core/lib/json/json.h +32 -26
- data/src/core/lib/json/json_args.h +34 -0
- data/src/core/lib/json/json_channel_args.h +42 -0
- data/src/core/lib/json/json_object_loader.cc +217 -0
- data/src/core/lib/json/json_object_loader.h +634 -0
- data/src/core/lib/json/json_reader.cc +193 -118
- data/src/core/lib/json/json_util.cc +106 -0
- data/src/core/lib/json/json_util.h +163 -0
- data/src/core/lib/json/json_writer.cc +64 -61
- data/src/core/lib/load_balancing/lb_policy.cc +93 -0
- data/src/core/lib/load_balancing/lb_policy.h +438 -0
- data/src/core/lib/load_balancing/lb_policy_factory.h +49 -0
- data/src/core/lib/load_balancing/lb_policy_registry.cc +141 -0
- data/src/core/lib/load_balancing/lb_policy_registry.h +82 -0
- data/src/core/lib/load_balancing/subchannel_interface.h +133 -0
- data/src/core/lib/matchers/matchers.cc +331 -0
- data/src/core/lib/matchers/matchers.h +162 -0
- data/src/core/lib/promise/activity.cc +134 -0
- data/src/core/lib/promise/activity.h +612 -0
- data/src/core/lib/promise/arena_promise.h +231 -0
- data/src/core/lib/promise/context.h +93 -0
- data/src/core/lib/promise/detail/basic_seq.h +497 -0
- data/src/core/lib/promise/detail/promise_factory.h +236 -0
- data/src/core/lib/promise/detail/promise_like.h +85 -0
- data/src/core/lib/promise/detail/status.h +78 -0
- data/src/core/lib/promise/detail/switch.h +1455 -0
- data/src/core/lib/promise/exec_ctx_wakeup_scheduler.h +56 -0
- data/src/core/lib/promise/for_each.h +155 -0
- data/src/core/lib/promise/intra_activity_waiter.h +49 -0
- data/src/core/lib/promise/latch.h +97 -0
- data/src/core/lib/promise/loop.h +138 -0
- data/src/core/lib/promise/map.h +88 -0
- data/src/core/lib/promise/map_pipe.h +88 -0
- data/src/core/lib/promise/pipe.cc +19 -0
- data/src/core/lib/promise/pipe.h +505 -0
- data/src/core/lib/promise/poll.h +85 -0
- data/src/core/lib/promise/promise.h +96 -0
- data/src/core/lib/promise/race.h +83 -0
- data/src/core/lib/promise/seq.h +107 -0
- data/src/core/lib/promise/sleep.cc +90 -0
- data/src/core/lib/promise/sleep.h +84 -0
- data/src/core/lib/promise/try_concurrently.h +342 -0
- data/src/core/lib/promise/try_seq.h +175 -0
- data/src/core/lib/resolver/resolver.cc +37 -0
- data/src/core/lib/resolver/resolver.h +138 -0
- data/src/core/lib/resolver/resolver_factory.h +77 -0
- data/src/core/lib/resolver/resolver_registry.cc +149 -0
- data/src/core/lib/resolver/resolver_registry.h +123 -0
- data/src/core/lib/resolver/server_address.cc +181 -0
- data/src/core/lib/resolver/server_address.h +145 -0
- data/src/core/lib/resource_quota/api.cc +104 -0
- data/src/core/lib/resource_quota/api.h +49 -0
- data/src/core/lib/resource_quota/arena.cc +138 -0
- data/src/core/lib/resource_quota/arena.h +252 -0
- data/src/core/lib/resource_quota/memory_quota.cc +699 -0
- data/src/core/lib/resource_quota/memory_quota.h +592 -0
- data/src/core/lib/resource_quota/periodic_update.cc +78 -0
- data/src/core/lib/resource_quota/periodic_update.h +71 -0
- data/src/core/lib/resource_quota/resource_quota.cc +33 -0
- data/src/core/lib/resource_quota/resource_quota.h +74 -0
- data/src/core/lib/resource_quota/thread_quota.cc +45 -0
- data/src/core/lib/resource_quota/thread_quota.h +61 -0
- data/src/core/lib/resource_quota/trace.cc +19 -0
- data/src/core/lib/resource_quota/trace.h +24 -0
- data/src/core/lib/security/authorization/authorization_engine.h +13 -53
- data/src/core/lib/security/authorization/authorization_policy_provider.h +47 -0
- data/src/core/lib/security/authorization/authorization_policy_provider_vtable.cc +49 -0
- data/src/core/lib/security/authorization/evaluate_args.cc +152 -84
- data/src/core/lib/security/authorization/evaluate_args.h +55 -19
- data/src/core/lib/security/authorization/grpc_authorization_engine.cc +64 -0
- data/src/core/lib/security/authorization/grpc_authorization_engine.h +69 -0
- data/src/core/lib/security/authorization/grpc_server_authz_filter.cc +122 -0
- data/src/core/lib/security/authorization/grpc_server_authz_filter.h +61 -0
- data/src/core/lib/security/authorization/matchers.cc +241 -0
- data/src/core/lib/security/authorization/matchers.h +218 -0
- data/src/core/lib/security/authorization/rbac_policy.cc +445 -0
- data/src/core/lib/security/authorization/rbac_policy.h +178 -0
- data/src/core/lib/security/certificate_provider/certificate_provider_factory.h +66 -0
- data/src/core/lib/security/certificate_provider/certificate_provider_registry.cc +60 -0
- data/src/core/lib/security/certificate_provider/certificate_provider_registry.h +70 -0
- data/src/core/lib/security/context/security_context.cc +45 -37
- data/src/core/lib/security/context/security_context.h +65 -34
- data/src/core/lib/security/credentials/alts/alts_credentials.cc +36 -27
- data/src/core/lib/security/credentials/alts/alts_credentials.h +68 -54
- data/src/core/lib/security/credentials/alts/check_gcp_environment.cc +20 -20
- data/src/core/lib/security/credentials/alts/check_gcp_environment.h +41 -41
- data/src/core/lib/security/credentials/alts/check_gcp_environment_linux.cc +19 -19
- data/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.cc +20 -19
- data/src/core/lib/security/credentials/alts/check_gcp_environment_windows.cc +20 -19
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.cc +20 -22
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.cc +18 -18
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.h +36 -37
- data/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.cc +19 -22
- data/src/core/lib/security/credentials/call_creds_util.cc +97 -0
- data/src/core/lib/security/credentials/call_creds_util.h +43 -0
- data/src/core/lib/security/credentials/channel_creds_registry.h +103 -0
- data/src/core/lib/security/credentials/channel_creds_registry_init.cc +80 -0
- data/src/core/lib/security/credentials/composite/composite_credentials.cc +56 -114
- data/src/core/lib/security/credentials/composite/composite_credentials.h +62 -37
- data/src/core/lib/security/credentials/credentials.cc +37 -39
- data/src/core/lib/security/credentials/credentials.h +148 -134
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.cc +546 -0
- data/src/core/lib/security/credentials/external/aws_external_account_credentials.h +100 -0
- data/src/core/lib/security/credentials/external/aws_request_signer.cc +224 -0
- data/src/core/lib/security/credentials/external/aws_request_signer.h +72 -0
- data/src/core/lib/security/credentials/external/external_account_credentials.cc +561 -0
- data/src/core/lib/security/credentials/external/external_account_credentials.h +129 -0
- data/src/core/lib/security/credentials/external/file_external_account_credentials.cc +138 -0
- data/src/core/lib/security/credentials/external/file_external_account_credentials.h +55 -0
- data/src/core/lib/security/credentials/external/url_external_account_credentials.cc +242 -0
- data/src/core/lib/security/credentials/external/url_external_account_credentials.h +71 -0
- data/src/core/lib/security/credentials/fake/fake_credentials.cc +64 -63
- data/src/core/lib/security/credentials/fake/fake_credentials.h +68 -60
- data/src/core/lib/security/credentials/google_default/credentials_generic.cc +24 -27
- data/src/core/lib/security/credentials/google_default/google_default_credentials.cc +240 -142
- data/src/core/lib/security/credentials/google_default/google_default_credentials.h +38 -26
- data/src/core/lib/security/credentials/iam/iam_credentials.cc +51 -48
- data/src/core/lib/security/credentials/iam/iam_credentials.h +43 -27
- data/src/core/lib/security/credentials/insecure/insecure_credentials.cc +73 -0
- data/src/core/lib/security/credentials/insecure/insecure_credentials.h +61 -0
- data/src/core/lib/security/credentials/jwt/json_token.cc +48 -39
- data/src/core/lib/security/credentials/jwt/json_token.h +34 -33
- data/src/core/lib/security/credentials/jwt/jwt_credentials.cc +83 -75
- data/src/core/lib/security/credentials/jwt/jwt_credentials.h +62 -36
- data/src/core/lib/security/credentials/jwt/jwt_verifier.cc +179 -147
- data/src/core/lib/security/credentials/jwt/jwt_verifier.h +49 -47
- data/src/core/lib/security/credentials/local/local_credentials.cc +37 -30
- data/src/core/lib/security/credentials/local/local_credentials.h +39 -23
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.cc +269 -287
- data/src/core/lib/security/credentials/oauth2/oauth2_credentials.h +105 -56
- data/src/core/lib/security/credentials/plugin/plugin_credentials.cc +123 -177
- data/src/core/lib/security/credentials/plugin/plugin_credentials.h +98 -45
- data/src/core/lib/security/credentials/ssl/ssl_credentials.cc +55 -59
- data/src/core/lib/security/credentials/ssl/ssl_credentials.h +48 -26
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.cc +340 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_distributor.h +216 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.cc +471 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_provider.h +206 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.cc +241 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_certificate_verifier.h +168 -0
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.cc +83 -206
- data/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.h +93 -299
- data/src/core/lib/security/credentials/tls/tls_credentials.cc +79 -58
- data/src/core/lib/security/credentials/tls/tls_credentials.h +33 -24
- data/src/core/lib/security/credentials/tls/tls_utils.cc +127 -0
- data/src/core/lib/security/credentials/tls/tls_utils.h +51 -0
- data/src/core/lib/security/credentials/xds/xds_credentials.cc +235 -0
- data/src/core/lib/security/credentials/xds/xds_credentials.h +114 -0
- data/src/core/lib/security/security_connector/alts/alts_security_connector.cc +77 -67
- data/src/core/lib/security/security_connector/alts/alts_security_connector.h +50 -48
- data/src/core/lib/security/security_connector/fake/fake_security_connector.cc +94 -104
- data/src/core/lib/security/security_connector/fake/fake_security_connector.h +23 -26
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.cc +120 -0
- data/src/core/lib/security/security_connector/insecure/insecure_security_connector.h +103 -0
- data/src/core/lib/security/security_connector/load_system_roots.h +22 -18
- data/src/core/lib/security/security_connector/load_system_roots_fallback.cc +23 -20
- data/src/core/lib/security/security_connector/load_system_roots_supported.cc +175 -0
- data/src/core/lib/security/security_connector/load_system_roots_supported.h +45 -0
- data/src/core/lib/security/security_connector/local/local_security_connector.cc +90 -65
- data/src/core/lib/security/security_connector/local/local_security_connector.h +47 -44
- data/src/core/lib/security/security_connector/security_connector.cc +48 -52
- data/src/core/lib/security/security_connector/security_connector.h +90 -66
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.cc +78 -66
- data/src/core/lib/security/security_connector/ssl/ssl_security_connector.h +43 -43
- data/src/core/lib/security/security_connector/ssl_utils.cc +124 -83
- data/src/core/lib/security/security_connector/ssl_utils.h +74 -75
- data/src/core/lib/security/security_connector/ssl_utils_config.cc +22 -22
- data/src/core/lib/security/security_connector/ssl_utils_config.h +19 -20
- data/src/core/lib/security/security_connector/tls/tls_security_connector.cc +672 -450
- data/src/core/lib/security/security_connector/tls/tls_security_connector.h +231 -128
- data/src/core/lib/security/transport/auth_filters.h +64 -23
- data/src/core/lib/security/transport/client_auth_filter.cc +143 -383
- data/src/core/lib/security/transport/secure_endpoint.cc +314 -200
- data/src/core/lib/security/transport/secure_endpoint.h +27 -25
- data/src/core/lib/security/transport/security_handshaker.cc +267 -168
- data/src/core/lib/security/transport/security_handshaker.h +27 -21
- data/src/core/lib/security/transport/server_auth_filter.cc +122 -89
- data/src/core/lib/security/transport/tsi_error.cc +24 -22
- data/src/core/lib/security/transport/tsi_error.h +20 -19
- data/src/core/lib/security/util/json_util.cc +29 -31
- data/src/core/lib/security/util/json_util.h +20 -21
- data/src/core/lib/service_config/service_config.h +89 -0
- data/src/core/lib/service_config/service_config_call_data.h +82 -0
- data/src/core/lib/service_config/service_config_impl.cc +191 -0
- data/src/core/lib/service_config/service_config_impl.h +125 -0
- data/src/core/lib/service_config/service_config_parser.cc +81 -0
- data/src/core/lib/service_config/service_config_parser.h +105 -0
- data/src/core/lib/slice/b64.cc +26 -26
- data/src/core/lib/slice/b64.h +31 -29
- data/src/core/lib/slice/percent_encoding.cc +95 -114
- data/src/core/lib/slice/percent_encoding.h +43 -54
- data/src/core/lib/slice/slice.cc +140 -234
- data/src/core/lib/slice/slice.h +435 -0
- data/src/core/lib/slice/slice_buffer.cc +145 -81
- data/src/core/lib/slice/slice_buffer.h +162 -0
- data/src/core/lib/slice/slice_internal.h +37 -305
- data/src/core/lib/slice/slice_refcount.h +60 -0
- data/src/core/lib/slice/slice_string_helpers.cc +17 -116
- data/src/core/lib/slice/slice_string_helpers.h +20 -38
- data/src/core/lib/surface/api_trace.cc +19 -18
- data/src/core/lib/surface/api_trace.h +23 -22
- data/src/core/lib/surface/builtins.cc +54 -0
- data/src/core/lib/surface/builtins.h +26 -0
- data/src/core/lib/surface/byte_buffer.cc +26 -21
- data/src/core/lib/surface/byte_buffer_reader.cc +25 -25
- data/src/core/lib/surface/call.cc +2509 -1450
- data/src/core/lib/surface/call.h +114 -58
- data/src/core/lib/surface/call_details.cc +28 -29
- data/src/core/lib/surface/call_log_batch.cc +26 -20
- data/src/core/lib/surface/call_test_only.h +31 -28
- data/src/core/lib/surface/call_trace.cc +113 -0
- data/src/core/lib/surface/call_trace.h +30 -0
- data/src/core/lib/surface/channel.cc +251 -365
- data/src/core/lib/surface/channel.h +148 -102
- data/src/core/lib/surface/channel_init.cc +39 -93
- data/src/core/lib/surface/channel_init.h +63 -57
- data/src/core/lib/surface/channel_ping.cc +28 -23
- data/src/core/lib/surface/channel_stack_type.cc +21 -18
- data/src/core/lib/surface/channel_stack_type.h +20 -20
- data/src/core/lib/surface/completion_queue.cc +337 -363
- data/src/core/lib/surface/completion_queue.h +56 -53
- data/src/core/lib/surface/completion_queue_factory.cc +37 -31
- data/src/core/lib/surface/completion_queue_factory.h +19 -20
- data/src/core/lib/surface/event_string.cc +18 -23
- data/src/core/lib/surface/event_string.h +19 -19
- data/src/core/lib/surface/init.cc +143 -162
- data/src/core/lib/surface/init.h +20 -22
- data/src/core/lib/surface/init_internally.cc +25 -0
- data/src/core/lib/surface/init_internally.h +37 -0
- data/src/core/lib/surface/lame_client.cc +101 -138
- data/src/core/lib/surface/lame_client.h +63 -20
- data/src/core/lib/surface/metadata_array.cc +20 -19
- data/src/core/lib/surface/server.cc +304 -304
- data/src/core/lib/surface/server.h +189 -62
- data/src/core/lib/surface/validate_metadata.cc +74 -57
- data/src/core/lib/surface/validate_metadata.h +27 -20
- data/src/core/lib/surface/version.cc +21 -21
- data/src/core/lib/transport/bdp_estimator.cc +29 -30
- data/src/core/lib/transport/bdp_estimator.h +23 -24
- data/src/core/lib/transport/connectivity_state.cc +33 -29
- data/src/core/lib/transport/connectivity_state.h +34 -33
- data/src/core/lib/transport/error_utils.cc +90 -73
- data/src/core/lib/transport/error_utils.h +39 -28
- data/src/core/lib/transport/handshaker.cc +228 -0
- data/src/core/lib/transport/handshaker.h +172 -0
- data/src/core/lib/transport/handshaker_factory.h +74 -0
- data/src/core/lib/transport/handshaker_registry.cc +61 -0
- data/src/core/lib/transport/handshaker_registry.h +69 -0
- data/src/core/lib/transport/http2_errors.h +20 -20
- data/src/core/lib/transport/http_connect_handshaker.cc +400 -0
- data/src/core/lib/transport/http_connect_handshaker.h +42 -0
- data/src/core/lib/transport/metadata_batch.cc +218 -316
- data/src/core/lib/transport/metadata_batch.h +1322 -177
- data/src/core/lib/transport/parsed_metadata.cc +35 -0
- data/src/core/lib/transport/parsed_metadata.h +410 -0
- data/src/core/lib/transport/pid_controller.cc +24 -24
- data/src/core/lib/transport/pid_controller.h +24 -24
- data/src/core/lib/transport/status_conversion.cc +25 -25
- data/src/core/lib/transport/status_conversion.h +23 -23
- data/src/core/lib/transport/tcp_connect_handshaker.cc +246 -0
- data/src/core/lib/transport/tcp_connect_handshaker.h +39 -0
- data/src/core/lib/transport/timeout_encoding.cc +229 -96
- data/src/core/lib/transport/timeout_encoding.h +62 -28
- data/src/core/lib/transport/transport.cc +118 -91
- data/src/core/lib/transport/transport.h +276 -153
- data/src/core/lib/transport/transport_fwd.h +20 -0
- data/src/core/lib/transport/transport_impl.h +56 -32
- data/src/core/lib/transport/transport_op_string.cc +46 -68
- data/src/core/lib/uri/uri_parser.cc +312 -248
- data/src/core/lib/uri/uri_parser.h +90 -40
- data/src/core/plugin_registry/grpc_plugin_registry.cc +108 -118
- data/src/core/plugin_registry/grpc_plugin_registry_extra.cc +66 -0
- data/src/core/tsi/alts/crypt/aes_gcm.cc +26 -23
- data/src/core/tsi/alts/crypt/gsec.cc +31 -30
- data/src/core/tsi/alts/crypt/gsec.h +339 -334
- data/src/core/tsi/alts/frame_protector/alts_counter.cc +23 -23
- data/src/core/tsi/alts/frame_protector/alts_counter.h +66 -66
- data/src/core/tsi/alts/frame_protector/alts_crypter.cc +19 -19
- data/src/core/tsi/alts/frame_protector/alts_crypter.h +206 -206
- data/src/core/tsi/alts/frame_protector/alts_frame_protector.cc +85 -83
- data/src/core/tsi/alts/frame_protector/alts_frame_protector.h +38 -38
- data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.cc +18 -18
- data/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.h +80 -81
- data/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.cc +22 -22
- data/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.cc +22 -22
- data/src/core/tsi/alts/frame_protector/frame_handler.cc +44 -42
- data/src/core/tsi/alts/frame_protector/frame_handler.h +166 -166
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.cc +167 -148
- data/src/core/tsi/alts/handshaker/alts_handshaker_client.h +103 -104
- data/src/core/tsi/alts/handshaker/alts_shared_resource.cc +27 -18
- data/src/core/tsi/alts/handshaker/alts_shared_resource.h +41 -42
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.cc +131 -108
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker.h +59 -59
- data/src/core/tsi/alts/handshaker/alts_tsi_handshaker_private.h +23 -22
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.cc +23 -22
- data/src/core/tsi/alts/handshaker/alts_tsi_utils.h +37 -37
- data/src/core/tsi/alts/handshaker/transport_security_common_api.cc +22 -24
- data/src/core/tsi/alts/handshaker/transport_security_common_api.h +104 -103
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.cc +47 -46
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.h +38 -39
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.cc +38 -36
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.h +33 -34
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol.h +65 -66
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.cc +33 -32
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.h +53 -54
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.cc +62 -59
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.h +138 -139
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.cc +73 -64
- data/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.h +41 -42
- data/src/core/tsi/fake_transport_security.cc +177 -121
- data/src/core/tsi/fake_transport_security.h +33 -27
- data/src/core/tsi/local_transport_security.cc +84 -120
- data/src/core/tsi/local_transport_security.h +33 -37
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.cc +146 -0
- data/src/core/tsi/ssl/key_logging/ssl_key_logging.h +81 -0
- data/src/core/tsi/ssl/session_cache/ssl_session.h +21 -21
- data/src/core/tsi/ssl/session_cache/ssl_session_boringssl.cc +22 -20
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.cc +38 -72
- data/src/core/tsi/ssl/session_cache/ssl_session_cache.h +37 -28
- data/src/core/tsi/ssl/session_cache/ssl_session_openssl.cc +29 -22
- data/src/core/tsi/ssl_transport_security.cc +495 -453
- data/src/core/tsi/ssl_transport_security.h +239 -198
- data/src/core/tsi/ssl_transport_security_utils.cc +250 -0
- data/src/core/tsi/ssl_transport_security_utils.h +147 -0
- data/src/core/tsi/ssl_types.h +25 -25
- data/src/core/tsi/transport_security.cc +69 -43
- data/src/core/tsi/transport_security.h +50 -34
- data/src/core/tsi/transport_security_grpc.cc +23 -22
- data/src/core/tsi/transport_security_grpc.h +43 -39
- data/src/core/tsi/transport_security_interface.h +368 -328
- data/src/ruby/bin/math_services_pb.rb +1 -1
- data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.clang +2 -0
- data/src/ruby/ext/grpc/ext-export-truffleruby-with-ruby-abi-version.gcc +7 -0
- data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.clang +2 -0
- data/src/ruby/ext/grpc/ext-export-with-ruby-abi-version.gcc +7 -0
- data/src/ruby/ext/grpc/ext-export.gcc +1 -1
- data/src/ruby/ext/grpc/extconf.rb +122 -24
- data/src/ruby/ext/grpc/rb_byte_buffer.c +2 -1
- data/src/ruby/ext/grpc/rb_call.c +6 -5
- data/src/ruby/ext/grpc/rb_call_credentials.c +5 -5
- data/src/ruby/ext/grpc/rb_channel.c +25 -10
- data/src/ruby/ext/grpc/rb_channel_args.c +3 -2
- data/src/ruby/ext/grpc/rb_channel_credentials.c +15 -5
- data/src/ruby/ext/grpc/rb_channel_credentials.h +5 -0
- data/src/ruby/ext/grpc/rb_completion_queue.c +3 -2
- data/src/ruby/ext/grpc/rb_compression_options.c +7 -6
- data/src/ruby/ext/grpc/rb_enable_cpp.cc +1 -1
- data/src/ruby/ext/grpc/rb_event_thread.c +4 -2
- data/src/ruby/ext/grpc/rb_grpc.c +10 -4
- data/src/ruby/ext/grpc/rb_grpc.h +1 -0
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.c +108 -84
- data/src/ruby/ext/grpc/rb_grpc_imports.generated.h +178 -142
- data/src/ruby/ext/grpc/rb_loader.c +6 -2
- data/src/ruby/ext/grpc/rb_server.c +26 -10
- data/src/ruby/ext/grpc/rb_server_credentials.c +22 -6
- data/src/ruby/ext/grpc/rb_server_credentials.h +5 -0
- data/src/ruby/ext/grpc/rb_xds_channel_credentials.c +218 -0
- data/src/ruby/ext/grpc/rb_xds_channel_credentials.h +37 -0
- data/src/ruby/ext/grpc/rb_xds_server_credentials.c +170 -0
- data/src/ruby/ext/grpc/rb_xds_server_credentials.h +37 -0
- data/src/ruby/lib/grpc/errors.rb +1 -1
- data/src/ruby/lib/grpc/generic/active_call.rb +7 -1
- data/src/ruby/lib/grpc/generic/bidi_call.rb +2 -0
- data/src/ruby/lib/grpc/generic/client_stub.rb +4 -2
- data/src/ruby/lib/grpc/grpc.rb +1 -1
- data/src/ruby/lib/grpc/version.rb +1 -1
- data/src/ruby/pb/generate_proto_ruby.sh +1 -0
- data/src/ruby/pb/grpc/health/v1/health_services_pb.rb +1 -1
- data/src/ruby/pb/src/proto/grpc/testing/messages_pb.rb +39 -0
- data/src/ruby/pb/src/proto/grpc/testing/test_pb.rb +1 -0
- data/src/ruby/pb/src/proto/grpc/testing/test_services_pb.rb +23 -5
- data/src/ruby/pb/test/client.rb +769 -0
- data/src/ruby/pb/test/server.rb +252 -0
- data/src/ruby/pb/test/xds_client.rb +415 -0
- data/src/ruby/spec/call_spec.rb +1 -1
- data/src/ruby/spec/channel_credentials_spec.rb +32 -0
- data/src/ruby/spec/channel_spec.rb +21 -48
- data/src/ruby/spec/client_auth_spec.rb +27 -1
- data/src/ruby/spec/client_server_spec.rb +21 -9
- data/src/ruby/spec/errors_spec.rb +1 -1
- data/src/ruby/spec/generic/active_call_spec.rb +14 -5
- data/src/ruby/spec/generic/client_stub_spec.rb +27 -27
- data/src/ruby/spec/generic/rpc_server_spec.rb +1 -1
- data/src/ruby/spec/generic/server_interceptors_spec.rb +1 -1
- data/src/ruby/spec/pb/codegen/package_option_spec.rb +2 -6
- data/src/ruby/spec/server_credentials_spec.rb +25 -0
- data/src/ruby/spec/server_spec.rb +22 -0
- data/src/ruby/spec/user_agent_spec.rb +1 -1
- data/third_party/abseil-cpp/absl/algorithm/container.h +164 -117
- data/third_party/abseil-cpp/absl/base/attributes.h +211 -70
- data/third_party/abseil-cpp/absl/base/call_once.h +3 -10
- data/third_party/abseil-cpp/absl/base/casts.h +61 -65
- data/third_party/abseil-cpp/absl/base/config.h +320 -78
- data/third_party/abseil-cpp/absl/base/dynamic_annotations.h +417 -335
- data/third_party/abseil-cpp/absl/base/internal/cycleclock.cc +12 -42
- data/third_party/abseil-cpp/absl/base/internal/cycleclock.h +67 -2
- data/third_party/abseil-cpp/absl/base/internal/direct_mmap.h +12 -4
- data/third_party/abseil-cpp/absl/base/internal/dynamic_annotations.h +398 -0
- data/third_party/abseil-cpp/absl/base/internal/endian.h +78 -62
- data/third_party/abseil-cpp/absl/base/internal/fast_type_id.h +50 -0
- data/third_party/abseil-cpp/absl/base/internal/invoke.h +58 -4
- data/third_party/abseil-cpp/absl/base/internal/low_level_alloc.cc +1 -1
- data/third_party/abseil-cpp/absl/base/internal/low_level_scheduling.h +31 -4
- data/third_party/abseil-cpp/absl/base/internal/prefetch.h +138 -0
- data/third_party/abseil-cpp/absl/base/internal/raw_logging.cc +56 -47
- data/third_party/abseil-cpp/absl/base/internal/raw_logging.h +29 -16
- data/third_party/abseil-cpp/absl/base/internal/spinlock.cc +39 -40
- data/third_party/abseil-cpp/absl/base/internal/spinlock.h +44 -31
- data/third_party/abseil-cpp/absl/base/internal/spinlock_akaros.inc +2 -2
- data/third_party/abseil-cpp/absl/base/internal/spinlock_linux.inc +13 -8
- data/third_party/abseil-cpp/absl/base/internal/spinlock_posix.inc +2 -2
- data/third_party/abseil-cpp/absl/base/internal/spinlock_wait.h +13 -11
- data/third_party/abseil-cpp/absl/base/internal/spinlock_win32.inc +5 -5
- data/third_party/abseil-cpp/absl/base/internal/strerror.cc +88 -0
- data/third_party/abseil-cpp/absl/base/internal/strerror.h +39 -0
- data/third_party/abseil-cpp/absl/base/internal/sysinfo.cc +96 -5
- data/third_party/abseil-cpp/absl/base/internal/sysinfo.h +8 -0
- data/third_party/abseil-cpp/absl/base/internal/thread_identity.cc +11 -7
- data/third_party/abseil-cpp/absl/base/internal/thread_identity.h +58 -52
- data/third_party/abseil-cpp/absl/base/internal/throw_delegate.cc +111 -7
- data/third_party/abseil-cpp/absl/base/internal/tsan_mutex_interface.h +3 -1
- data/third_party/abseil-cpp/absl/base/internal/unaligned_access.h +0 -76
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.cc +23 -10
- data/third_party/abseil-cpp/absl/base/internal/unscaledcycleclock.h +18 -9
- data/third_party/abseil-cpp/absl/base/log_severity.cc +28 -0
- data/third_party/abseil-cpp/absl/base/log_severity.h +55 -4
- data/third_party/abseil-cpp/absl/base/macros.h +47 -109
- data/third_party/abseil-cpp/absl/base/optimization.h +77 -6
- data/third_party/abseil-cpp/absl/base/options.h +31 -4
- data/third_party/abseil-cpp/absl/base/policy_checks.h +1 -1
- data/third_party/abseil-cpp/absl/base/port.h +0 -1
- data/third_party/abseil-cpp/absl/base/thread_annotations.h +97 -42
- data/third_party/abseil-cpp/absl/cleanup/cleanup.h +140 -0
- data/third_party/abseil-cpp/absl/cleanup/internal/cleanup.h +100 -0
- data/third_party/abseil-cpp/absl/container/fixed_array.h +46 -32
- data/third_party/abseil-cpp/absl/container/flat_hash_map.h +613 -0
- data/third_party/abseil-cpp/absl/container/flat_hash_set.h +18 -11
- data/third_party/abseil-cpp/absl/container/inlined_vector.h +155 -137
- data/third_party/abseil-cpp/absl/container/internal/common.h +12 -7
- data/third_party/abseil-cpp/absl/container/internal/compressed_tuple.h +34 -9
- data/third_party/abseil-cpp/absl/container/internal/container_memory.h +59 -57
- data/third_party/abseil-cpp/absl/container/internal/hash_function_defaults.h +23 -6
- data/third_party/abseil-cpp/absl/container/internal/hash_policy_traits.h +24 -7
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.cc +83 -114
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler.h +99 -97
- data/third_party/abseil-cpp/absl/container/internal/hashtablez_sampler_force_weak_definition.cc +2 -1
- data/third_party/abseil-cpp/absl/container/internal/inlined_vector.h +495 -434
- data/third_party/abseil-cpp/absl/container/internal/layout.h +11 -9
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_map.h +198 -0
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.cc +25 -2
- data/third_party/abseil-cpp/absl/container/internal/raw_hash_set.h +852 -369
- data/third_party/abseil-cpp/absl/debugging/internal/address_is_readable.cc +45 -87
- data/third_party/abseil-cpp/absl/debugging/internal/demangle.cc +93 -29
- data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.cc +16 -11
- data/third_party/abseil-cpp/absl/debugging/internal/elf_mem_image.h +7 -2
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_aarch64-inl.inc +17 -5
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_arm-inl.inc +21 -7
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_config.h +42 -24
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_emscripten-inl.inc +110 -0
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_generic-inl.inc +12 -3
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_powerpc-inl.inc +14 -4
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_riscv-inl.inc +236 -0
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_win32-inl.inc +10 -2
- data/third_party/abseil-cpp/absl/debugging/internal/stacktrace_x86-inl.inc +33 -10
- data/third_party/abseil-cpp/absl/debugging/internal/symbolize.h +33 -8
- data/third_party/abseil-cpp/absl/debugging/internal/vdso_support.cc +35 -25
- data/third_party/abseil-cpp/absl/debugging/stacktrace.cc +2 -0
- data/third_party/abseil-cpp/absl/debugging/symbolize.cc +19 -1
- data/third_party/abseil-cpp/absl/debugging/symbolize_darwin.inc +101 -0
- data/third_party/abseil-cpp/absl/debugging/symbolize_elf.inc +160 -27
- data/third_party/abseil-cpp/absl/debugging/symbolize_emscripten.inc +72 -0
- data/third_party/abseil-cpp/absl/functional/any_invocable.h +313 -0
- data/third_party/abseil-cpp/absl/functional/bind_front.h +193 -0
- data/third_party/abseil-cpp/absl/functional/function_ref.h +7 -3
- data/third_party/abseil-cpp/absl/functional/internal/any_invocable.h +857 -0
- data/third_party/abseil-cpp/absl/functional/internal/front_binder.h +95 -0
- data/third_party/abseil-cpp/absl/functional/internal/function_ref.h +2 -2
- data/third_party/abseil-cpp/absl/hash/hash.h +110 -13
- data/third_party/abseil-cpp/absl/hash/internal/city.cc +15 -12
- data/third_party/abseil-cpp/absl/hash/internal/city.h +1 -19
- data/third_party/abseil-cpp/absl/hash/internal/hash.cc +27 -13
- data/third_party/abseil-cpp/absl/hash/internal/hash.h +426 -123
- data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.cc +123 -0
- data/third_party/abseil-cpp/absl/hash/internal/low_level_hash.h +50 -0
- data/third_party/abseil-cpp/absl/memory/memory.h +4 -0
- data/third_party/abseil-cpp/absl/meta/type_traits.h +49 -11
- data/third_party/abseil-cpp/absl/numeric/bits.h +178 -0
- data/third_party/abseil-cpp/absl/numeric/int128.cc +18 -37
- data/third_party/abseil-cpp/absl/numeric/int128.h +161 -87
- data/third_party/abseil-cpp/absl/numeric/int128_have_intrinsic.inc +19 -25
- data/third_party/abseil-cpp/absl/numeric/int128_no_intrinsic.inc +73 -70
- data/third_party/abseil-cpp/absl/numeric/internal/bits.h +358 -0
- data/third_party/abseil-cpp/absl/numeric/internal/representation.h +55 -0
- data/third_party/abseil-cpp/absl/profiling/internal/exponential_biased.cc +93 -0
- data/third_party/abseil-cpp/absl/profiling/internal/exponential_biased.h +130 -0
- data/third_party/abseil-cpp/absl/profiling/internal/sample_recorder.h +245 -0
- data/third_party/abseil-cpp/absl/random/bernoulli_distribution.h +200 -0
- data/third_party/abseil-cpp/absl/random/beta_distribution.h +427 -0
- data/third_party/abseil-cpp/absl/random/discrete_distribution.cc +98 -0
- data/third_party/abseil-cpp/absl/random/discrete_distribution.h +247 -0
- data/third_party/abseil-cpp/absl/random/distributions.h +452 -0
- data/third_party/abseil-cpp/absl/random/exponential_distribution.h +165 -0
- data/third_party/abseil-cpp/absl/random/gaussian_distribution.cc +104 -0
- data/third_party/abseil-cpp/absl/random/gaussian_distribution.h +275 -0
- data/third_party/abseil-cpp/absl/random/internal/distribution_caller.h +95 -0
- data/third_party/abseil-cpp/absl/random/internal/fast_uniform_bits.h +269 -0
- data/third_party/abseil-cpp/absl/random/internal/fastmath.h +57 -0
- data/third_party/abseil-cpp/absl/random/internal/generate_real.h +144 -0
- data/third_party/abseil-cpp/absl/random/internal/iostream_state_saver.h +245 -0
- data/third_party/abseil-cpp/absl/random/internal/nonsecure_base.h +161 -0
- data/third_party/abseil-cpp/absl/random/internal/pcg_engine.h +308 -0
- data/third_party/abseil-cpp/absl/random/internal/platform.h +171 -0
- data/third_party/abseil-cpp/absl/random/internal/pool_urbg.cc +253 -0
- data/third_party/abseil-cpp/absl/random/internal/pool_urbg.h +131 -0
- data/third_party/abseil-cpp/absl/random/internal/randen.cc +91 -0
- data/third_party/abseil-cpp/absl/random/internal/randen.h +96 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_detect.cc +225 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_detect.h +33 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_engine.h +264 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.cc +526 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_hwaes.h +50 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_round_keys.cc +462 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_slow.cc +471 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_slow.h +40 -0
- data/third_party/abseil-cpp/absl/random/internal/randen_traits.h +88 -0
- data/third_party/abseil-cpp/absl/random/internal/salted_seed_seq.h +165 -0
- data/third_party/abseil-cpp/absl/random/internal/seed_material.cc +267 -0
- data/third_party/abseil-cpp/absl/random/internal/seed_material.h +104 -0
- data/third_party/abseil-cpp/absl/random/internal/traits.h +149 -0
- data/third_party/abseil-cpp/absl/random/internal/uniform_helper.h +244 -0
- data/third_party/abseil-cpp/absl/random/internal/wide_multiply.h +96 -0
- data/third_party/abseil-cpp/absl/random/log_uniform_int_distribution.h +256 -0
- data/third_party/abseil-cpp/absl/random/poisson_distribution.h +261 -0
- data/third_party/abseil-cpp/absl/random/random.h +189 -0
- data/third_party/abseil-cpp/absl/random/seed_gen_exception.cc +46 -0
- data/third_party/abseil-cpp/absl/random/seed_gen_exception.h +55 -0
- data/third_party/abseil-cpp/absl/random/seed_sequences.cc +29 -0
- data/third_party/abseil-cpp/absl/random/seed_sequences.h +111 -0
- data/third_party/abseil-cpp/absl/random/uniform_int_distribution.h +275 -0
- data/third_party/abseil-cpp/absl/random/uniform_real_distribution.h +202 -0
- data/third_party/abseil-cpp/absl/random/zipf_distribution.h +272 -0
- data/third_party/abseil-cpp/absl/status/internal/status_internal.h +86 -0
- data/third_party/abseil-cpp/absl/status/internal/statusor_internal.h +396 -0
- data/third_party/abseil-cpp/absl/status/status.cc +205 -36
- data/third_party/abseil-cpp/absl/status/status.h +586 -122
- data/third_party/abseil-cpp/absl/status/status_payload_printer.cc +5 -10
- data/third_party/abseil-cpp/absl/status/statusor.cc +103 -0
- data/third_party/abseil-cpp/absl/status/statusor.h +776 -0
- data/third_party/abseil-cpp/absl/strings/ascii.h +4 -4
- data/third_party/abseil-cpp/absl/strings/charconv.cc +10 -10
- data/third_party/abseil-cpp/absl/strings/charconv.h +3 -2
- data/third_party/abseil-cpp/absl/strings/cord.cc +592 -1283
- data/third_party/abseil-cpp/absl/strings/cord.h +840 -319
- data/third_party/abseil-cpp/absl/strings/cord_analysis.cc +188 -0
- data/third_party/abseil-cpp/absl/strings/cord_analysis.h +44 -0
- data/third_party/abseil-cpp/absl/strings/cord_buffer.cc +30 -0
- data/third_party/abseil-cpp/absl/strings/cord_buffer.h +572 -0
- data/third_party/abseil-cpp/absl/strings/escaping.cc +13 -13
- data/third_party/abseil-cpp/absl/strings/internal/char_map.h +1 -1
- data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.cc +1 -1
- data/third_party/abseil-cpp/absl/strings/internal/charconv_bigint.h +2 -2
- data/third_party/abseil-cpp/absl/strings/internal/charconv_parse.cc +9 -9
- data/third_party/abseil-cpp/absl/strings/internal/cord_data_edge.h +63 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_internal.cc +77 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_internal.h +561 -57
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.cc +1228 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree.h +924 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.cc +187 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_navigator.h +267 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.cc +69 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_btree_reader.h +212 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.cc +62 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_consume.h +50 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.cc +54 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_crc.h +102 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_flat.h +187 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.cc +773 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring.h +607 -0
- data/third_party/abseil-cpp/absl/strings/internal/cord_rep_ring_reader.h +118 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.cc +96 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_functions.h +85 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.cc +139 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_handle.h +131 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_info.cc +418 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_info.h +298 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_statistics.h +88 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_update_scope.h +71 -0
- data/third_party/abseil-cpp/absl/strings/internal/cordz_update_tracker.h +123 -0
- data/third_party/abseil-cpp/absl/strings/internal/escaping.cc +6 -5
- data/third_party/abseil-cpp/absl/strings/internal/ostringstream.cc +1 -1
- data/third_party/abseil-cpp/absl/strings/internal/resize_uninitialized.h +48 -2
- data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.cc +236 -136
- data/third_party/abseil-cpp/absl/strings/internal/str_format/arg.h +159 -65
- data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.cc +19 -6
- data/third_party/abseil-cpp/absl/strings/internal/str_format/bind.h +63 -24
- data/third_party/abseil-cpp/absl/strings/internal/str_format/checker.h +28 -16
- data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.cc +36 -13
- data/third_party/abseil-cpp/absl/strings/internal/str_format/extension.h +188 -155
- data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.cc +1017 -87
- data/third_party/abseil-cpp/absl/strings/internal/str_format/float_conversion.h +17 -3
- data/third_party/abseil-cpp/absl/strings/internal/str_format/output.h +6 -13
- data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.cc +82 -77
- data/third_party/abseil-cpp/absl/strings/internal/str_format/parser.h +55 -29
- data/third_party/abseil-cpp/absl/strings/internal/str_join_internal.h +9 -6
- data/third_party/abseil-cpp/absl/strings/internal/str_split_internal.h +49 -74
- data/third_party/abseil-cpp/absl/strings/internal/string_constant.h +72 -0
- data/third_party/abseil-cpp/absl/strings/internal/utf8.cc +9 -9
- data/third_party/abseil-cpp/absl/strings/match.cc +6 -3
- data/third_party/abseil-cpp/absl/strings/match.h +16 -6
- data/third_party/abseil-cpp/absl/strings/numbers.cc +135 -7
- data/third_party/abseil-cpp/absl/strings/numbers.h +69 -32
- data/third_party/abseil-cpp/absl/strings/str_cat.cc +8 -8
- data/third_party/abseil-cpp/absl/strings/str_cat.h +21 -14
- data/third_party/abseil-cpp/absl/strings/str_format.h +290 -15
- data/third_party/abseil-cpp/absl/strings/str_join.h +9 -15
- data/third_party/abseil-cpp/absl/strings/str_split.cc +2 -2
- data/third_party/abseil-cpp/absl/strings/str_split.h +40 -6
- data/third_party/abseil-cpp/absl/strings/string_view.cc +18 -34
- data/third_party/abseil-cpp/absl/strings/string_view.h +146 -57
- data/third_party/abseil-cpp/absl/strings/strip.h +8 -6
- data/third_party/abseil-cpp/absl/strings/substitute.cc +7 -6
- data/third_party/abseil-cpp/absl/strings/substitute.h +119 -83
- data/third_party/abseil-cpp/absl/synchronization/blocking_counter.cc +25 -15
- data/third_party/abseil-cpp/absl/synchronization/blocking_counter.h +5 -3
- data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.cc +12 -9
- data/third_party/abseil-cpp/absl/synchronization/internal/create_thread_identity.h +0 -4
- data/third_party/abseil-cpp/absl/synchronization/internal/futex.h +154 -0
- data/third_party/abseil-cpp/absl/synchronization/internal/graphcycles.cc +4 -3
- data/third_party/abseil-cpp/absl/synchronization/internal/kernel_timeout.h +29 -28
- data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.cc +2 -6
- data/third_party/abseil-cpp/absl/synchronization/internal/per_thread_sem.h +6 -11
- data/third_party/abseil-cpp/absl/synchronization/internal/waiter.cc +2 -83
- data/third_party/abseil-cpp/absl/synchronization/internal/waiter.h +14 -12
- data/third_party/abseil-cpp/absl/synchronization/mutex.cc +209 -151
- data/third_party/abseil-cpp/absl/synchronization/mutex.h +106 -72
- data/third_party/abseil-cpp/absl/synchronization/notification.h +3 -2
- data/third_party/abseil-cpp/absl/time/civil_time.cc +9 -11
- data/third_party/abseil-cpp/absl/time/clock.cc +146 -130
- data/third_party/abseil-cpp/absl/time/clock.h +2 -2
- data/third_party/abseil-cpp/absl/time/duration.cc +98 -65
- data/third_party/abseil-cpp/absl/time/format.cc +43 -36
- data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/civil_time_detail.h +42 -32
- data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/time_zone.h +97 -22
- data/third_party/abseil-cpp/absl/time/internal/cctz/include/cctz/zone_info_source.h +1 -1
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_fixed.cc +1 -1
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_format.cc +136 -29
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_if.h +2 -1
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.cc +13 -21
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_impl.h +1 -1
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.cc +219 -150
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_info.h +4 -5
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_libc.cc +15 -8
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/time_zone_lookup.cc +49 -0
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/tzfile.h +3 -3
- data/third_party/abseil-cpp/absl/time/internal/cctz/src/zone_info_source.cc +1 -1
- data/third_party/abseil-cpp/absl/time/time.cc +4 -3
- data/third_party/abseil-cpp/absl/time/time.h +122 -86
- data/third_party/abseil-cpp/absl/types/bad_optional_access.h +1 -1
- data/third_party/abseil-cpp/absl/types/bad_variant_access.h +2 -2
- data/third_party/abseil-cpp/absl/types/internal/optional.h +8 -0
- data/third_party/abseil-cpp/absl/types/internal/variant.h +8 -8
- data/third_party/abseil-cpp/absl/types/optional.h +26 -23
- data/third_party/abseil-cpp/absl/types/span.h +52 -38
- data/third_party/abseil-cpp/absl/types/variant.h +9 -4
- data/third_party/abseil-cpp/absl/utility/utility.h +2 -2
- data/third_party/address_sorting/address_sorting_posix.c +1 -0
- data/third_party/address_sorting/include/address_sorting/address_sorting.h +2 -0
- data/third_party/boringssl-with-bazel/err_data.c +763 -721
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bitstr.c +70 -57
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_bool.c +22 -23
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_d2i_fp.c +0 -2
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_enum.c +2 -2
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_gentm.c +6 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_int.c +5 -5
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_mbstr.c +16 -23
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_object.c +67 -54
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_octet.c +3 -3
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_print.c +19 -29
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strex.c +650 -0
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_strnid.c +106 -153
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_time.c +4 -4
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_type.c +22 -10
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utctm.c +3 -42
- data/third_party/boringssl-with-bazel/src/crypto/asn1/a_utf8.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_lib.c +74 -68
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_par.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn_pack.c +24 -28
- data/third_party/boringssl-with-bazel/src/crypto/asn1/f_int.c +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/asn1/internal.h +224 -0
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_dec.c +79 -354
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_enc.c +327 -281
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_fre.c +15 -26
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_new.c +20 -75
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_typ.c +8 -8
- data/third_party/boringssl-with-bazel/src/crypto/asn1/tasn_utl.c +3 -2
- data/third_party/boringssl-with-bazel/src/crypto/asn1/time_support.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/base64/base64.c +24 -8
- data/third_party/boringssl-with-bazel/src/crypto/bio/bio.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/bio/bio_mem.c +1 -7
- data/third_party/boringssl-with-bazel/src/crypto/bio/connect.c +1 -5
- data/third_party/boringssl-with-bazel/src/crypto/bio/fd.c +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/bio/file.c +1 -7
- data/third_party/boringssl-with-bazel/src/crypto/bio/pair.c +1 -6
- data/third_party/boringssl-with-bazel/src/crypto/bio/socket.c +3 -17
- data/third_party/boringssl-with-bazel/src/crypto/bio/socket_helper.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/blake2/blake2.c +156 -0
- data/third_party/boringssl-with-bazel/src/crypto/bn_extra/bn_asn1.c +3 -10
- data/third_party/boringssl-with-bazel/src/crypto/bytestring/ber.c +11 -10
- data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbb.c +9 -0
- data/third_party/boringssl-with-bazel/src/crypto/bytestring/cbs.c +68 -45
- data/third_party/boringssl-with-bazel/src/crypto/chacha/chacha.c +38 -47
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/cipher_extra.c +49 -65
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_chacha20poly1305.c +6 -81
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/e_tls.c +1 -88
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/internal.h +101 -3
- data/third_party/boringssl-with-bazel/src/crypto/cipher_extra/tls_cbc.c +119 -273
- data/third_party/boringssl-with-bazel/src/crypto/conf/conf.c +14 -3
- data/third_party/boringssl-with-bazel/src/crypto/cpu-aarch64-win.c +41 -0
- data/third_party/boringssl-with-bazel/src/crypto/cpu-arm-linux.c +11 -2
- data/third_party/boringssl-with-bazel/src/crypto/cpu-arm.c +3 -3
- data/third_party/boringssl-with-bazel/src/crypto/curve25519/curve25519.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/curve25519/internal.h +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/dh_extra/params.c +272 -0
- data/third_party/boringssl-with-bazel/src/crypto/digest_extra/digest_extra.c +31 -3
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa.c +30 -43
- data/third_party/boringssl-with-bazel/src/crypto/dsa/dsa_asn1.c +55 -4
- data/third_party/boringssl-with-bazel/src/crypto/dsa/internal.h +34 -0
- data/third_party/boringssl-with-bazel/src/crypto/ec_extra/ec_asn1.c +2 -17
- data/third_party/boringssl-with-bazel/src/crypto/err/err.c +87 -80
- data/third_party/boringssl-with-bazel/src/crypto/evp/evp.c +13 -0
- data/third_party/boringssl-with-bazel/src/crypto/evp/evp_asn1.c +2 -2
- data/third_party/boringssl-with-bazel/src/crypto/evp/p_dsa_asn1.c +6 -2
- data/third_party/boringssl-with-bazel/src/crypto/evp/scrypt.c +32 -34
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bcm.c +4 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/bn.c +13 -20
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/div.c +28 -12
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/gcd_extra.c +3 -2
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/internal.h +15 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/prime.c +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/bn/sqrt.c +5 -9
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/cipher.c +44 -16
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/cipher/e_aes.c +208 -37
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/des.c +10 -11
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/des/internal.h +1 -3
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/dh/dh.c +456 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digest.c +11 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/digests.c +10 -2
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/digest/md32_common.h +87 -160
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec.c +16 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/ec_key.c +9 -2
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ec/internal.h +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/ecdsa.c +105 -95
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/ecdsa/internal.h +39 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md4/md4.c +56 -72
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/md5/md5.c +56 -73
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cbc.c +33 -22
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/cfb.c +9 -8
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ctr.c +9 -8
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm.c +17 -13
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/gcm_nohw.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/internal.h +1 -22
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/modes/ofb.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/internal.h +30 -9
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/rand.c +123 -44
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rand/urandom.c +30 -20
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/internal.h +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa.c +80 -43
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/rsa/rsa_impl.c +120 -62
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/fips.c +79 -0
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/self_check/self_check.c +176 -18
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha1.c +93 -107
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha256.c +91 -113
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/sha/sha512.c +50 -86
- data/third_party/boringssl-with-bazel/src/crypto/hpke/hpke.c +401 -239
- data/third_party/boringssl-with-bazel/src/crypto/hrss/hrss.c +219 -121
- data/third_party/boringssl-with-bazel/src/crypto/hrss/internal.h +9 -2
- data/third_party/boringssl-with-bazel/src/crypto/internal.h +125 -0
- data/third_party/boringssl-with-bazel/src/crypto/lhash/internal.h +253 -0
- data/third_party/boringssl-with-bazel/src/crypto/lhash/lhash.c +28 -23
- data/third_party/boringssl-with-bazel/src/crypto/mem.c +46 -9
- data/third_party/boringssl-with-bazel/src/crypto/obj/obj.c +10 -6
- data/third_party/boringssl-with-bazel/src/crypto/pem/pem_all.c +0 -9
- data/third_party/boringssl-with-bazel/src/crypto/pem/pem_info.c +0 -2
- data/third_party/boringssl-with-bazel/src/crypto/pem/pem_lib.c +0 -8
- data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pk8.c +0 -2
- data/third_party/boringssl-with-bazel/src/crypto/pem/pem_pkey.c +0 -4
- data/third_party/boringssl-with-bazel/src/crypto/pkcs7/internal.h +16 -7
- data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7.c +38 -4
- data/third_party/boringssl-with-bazel/src/crypto/pkcs7/pkcs7_x509.c +156 -15
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/internal.h +0 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/pkcs8/pkcs8_x509.c +96 -49
- data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305.c +11 -8
- data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_arm.c +13 -11
- data/third_party/boringssl-with-bazel/src/crypto/poly1305/poly1305_vec.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/pool/internal.h +5 -1
- data/third_party/boringssl-with-bazel/src/crypto/pool/pool.c +59 -22
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/deterministic.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/fuchsia.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/passive.c +34 -0
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/rand_extra.c +5 -1
- data/third_party/boringssl-with-bazel/src/crypto/rand_extra/windows.c +4 -0
- data/third_party/boringssl-with-bazel/src/crypto/rsa_extra/rsa_asn1.c +1 -2
- data/third_party/boringssl-with-bazel/src/crypto/siphash/siphash.c +6 -6
- data/third_party/boringssl-with-bazel/src/crypto/stack/stack.c +7 -13
- data/third_party/boringssl-with-bazel/src/crypto/thread_pthread.c +0 -28
- data/third_party/boringssl-with-bazel/src/crypto/trust_token/internal.h +118 -49
- data/third_party/boringssl-with-bazel/src/crypto/trust_token/pmbtoken.c +267 -95
- data/third_party/boringssl-with-bazel/src/crypto/trust_token/trust_token.c +210 -34
- data/third_party/boringssl-with-bazel/src/crypto/trust_token/voprf.c +766 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/a_verify.c +15 -11
- data/third_party/boringssl-with-bazel/src/crypto/x509/algorithm.c +7 -5
- data/third_party/boringssl-with-bazel/src/crypto/x509/asn1_gen.c +2 -18
- data/third_party/boringssl-with-bazel/src/crypto/x509/by_dir.c +1 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/by_file.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/internal.h +351 -13
- data/third_party/boringssl-with-bazel/src/crypto/x509/name_print.c +246 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/rsa_pss.c +20 -5
- data/third_party/boringssl-with-bazel/src/crypto/x509/t_crl.c +13 -8
- data/third_party/boringssl-with-bazel/src/crypto/x509/t_req.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509.c +1 -180
- data/third_party/boringssl-with-bazel/src/crypto/x509/t_x509a.c +7 -2
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_att.c +24 -47
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_cmp.c +11 -33
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_ext.c +29 -23
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_lu.c +1 -5
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_obj.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_req.c +42 -89
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_set.c +41 -27
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_trs.c +5 -3
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_txt.c +67 -67
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_v3.c +29 -26
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vfy.c +54 -104
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_vpm.c +54 -74
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509cset.c +74 -25
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509name.c +11 -12
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509rset.c +3 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_algor.c +21 -19
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_all.c +13 -26
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_attrib.c +21 -34
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_crl.c +17 -15
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_exten.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_name.c +49 -59
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_pkey.c +2 -2
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_pubkey.c +25 -22
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_req.c +5 -8
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_sig.c +5 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_val.c +2 -0
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509.c +49 -11
- data/third_party/boringssl-with-bazel/src/crypto/x509/x_x509a.c +5 -2
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/ext_dat.h +1 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/internal.h +239 -11
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_cache.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_data.c +7 -5
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_lib.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_map.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_node.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_tree.c +5 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_akey.c +27 -8
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_alt.c +43 -32
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_bitst.c +6 -3
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_conf.c +33 -28
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_cpols.c +10 -13
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_crld.c +4 -2
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_enum.c +7 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_genn.c +42 -22
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ia5.c +3 -4
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_info.c +1 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_lib.c +48 -40
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_ncons.c +112 -55
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pci.c +2 -1
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_prn.c +15 -14
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_purp.c +57 -10
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_skey.c +8 -7
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_utl.c +86 -44
- data/third_party/boringssl-with-bazel/src/include/openssl/aead.h +25 -4
- data/third_party/boringssl-with-bazel/src/include/openssl/arm_arch.h +76 -9
- data/third_party/boringssl-with-bazel/src/include/openssl/asn1.h +1794 -666
- data/third_party/boringssl-with-bazel/src/include/openssl/asn1t.h +5 -179
- data/third_party/boringssl-with-bazel/src/include/openssl/base.h +67 -15
- data/third_party/boringssl-with-bazel/src/include/openssl/base64.h +8 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/bio.h +7 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/blake2.h +62 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/bn.h +3 -3
- data/third_party/boringssl-with-bazel/src/include/openssl/bytestring.h +32 -7
- data/third_party/boringssl-with-bazel/src/include/openssl/chacha.h +1 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/cipher.h +42 -7
- data/third_party/boringssl-with-bazel/src/include/openssl/conf.h +8 -5
- data/third_party/boringssl-with-bazel/src/include/openssl/cpu.h +22 -32
- data/third_party/boringssl-with-bazel/src/include/openssl/crypto.h +25 -5
- data/third_party/boringssl-with-bazel/src/include/openssl/des.h +6 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/dh.h +66 -32
- data/third_party/boringssl-with-bazel/src/include/openssl/digest.h +19 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/dsa.h +27 -41
- data/third_party/boringssl-with-bazel/src/include/openssl/ec.h +20 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/ec_key.h +12 -27
- data/third_party/boringssl-with-bazel/src/include/openssl/ecdsa.h +41 -10
- data/third_party/boringssl-with-bazel/src/include/openssl/err.h +3 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/evp.h +70 -106
- data/third_party/boringssl-with-bazel/src/include/openssl/evp_errors.h +99 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/hkdf.h +4 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/hpke.h +350 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/hrss.h +14 -12
- data/third_party/boringssl-with-bazel/src/include/openssl/lhash.h +4 -205
- data/third_party/boringssl-with-bazel/src/include/openssl/mem.h +12 -3
- data/third_party/boringssl-with-bazel/src/include/openssl/obj.h +26 -6
- data/third_party/boringssl-with-bazel/src/include/openssl/opensslconf.h +3 -0
- data/third_party/boringssl-with-bazel/src/include/openssl/pem.h +194 -146
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs7.h +42 -18
- data/third_party/boringssl-with-bazel/src/include/openssl/pkcs8.h +15 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/pool.h +7 -1
- data/third_party/boringssl-with-bazel/src/include/openssl/rand.h +5 -2
- data/third_party/boringssl-with-bazel/src/include/openssl/rsa.h +128 -91
- data/third_party/boringssl-with-bazel/src/include/openssl/span.h +39 -16
- data/third_party/boringssl-with-bazel/src/include/openssl/ssl.h +499 -122
- data/third_party/boringssl-with-bazel/src/include/openssl/tls1.h +52 -36
- data/third_party/boringssl-with-bazel/src/include/openssl/trust_token.h +42 -14
- data/third_party/boringssl-with-bazel/src/include/openssl/x509.h +1554 -427
- data/third_party/boringssl-with-bazel/src/include/openssl/x509_vfy.h +16 -679
- data/third_party/boringssl-with-bazel/src/include/openssl/x509v3.h +642 -452
- data/third_party/boringssl-with-bazel/src/ssl/bio_ssl.cc +18 -5
- data/third_party/boringssl-with-bazel/src/ssl/d1_both.cc +16 -18
- data/third_party/boringssl-with-bazel/src/ssl/d1_srtp.cc +1 -1
- data/third_party/boringssl-with-bazel/src/ssl/encrypted_client_hello.cc +1084 -0
- data/third_party/boringssl-with-bazel/src/ssl/extensions.cc +4325 -0
- data/third_party/boringssl-with-bazel/src/ssl/handoff.cc +333 -22
- data/third_party/boringssl-with-bazel/src/ssl/handshake.cc +99 -51
- data/third_party/boringssl-with-bazel/src/ssl/handshake_client.cc +315 -219
- data/third_party/boringssl-with-bazel/src/ssl/handshake_server.cc +178 -36
- data/third_party/boringssl-with-bazel/src/ssl/internal.h +533 -159
- data/third_party/boringssl-with-bazel/src/ssl/s3_both.cc +9 -3
- data/third_party/boringssl-with-bazel/src/ssl/s3_lib.cc +0 -2
- data/third_party/boringssl-with-bazel/src/ssl/s3_pkt.cc +14 -19
- data/third_party/boringssl-with-bazel/src/ssl/ssl_asn1.cc +49 -9
- data/third_party/boringssl-with-bazel/src/ssl/ssl_cert.cc +4 -6
- data/third_party/boringssl-with-bazel/src/ssl/ssl_cipher.cc +10 -11
- data/third_party/boringssl-with-bazel/src/ssl/ssl_key_share.cc +34 -31
- data/third_party/boringssl-with-bazel/src/ssl/ssl_lib.cc +129 -110
- data/third_party/boringssl-with-bazel/src/ssl/ssl_privkey.cc +2 -0
- data/third_party/boringssl-with-bazel/src/ssl/ssl_session.cc +147 -118
- data/third_party/boringssl-with-bazel/src/ssl/ssl_stat.cc +3 -0
- data/third_party/boringssl-with-bazel/src/ssl/ssl_transcript.cc +12 -17
- data/third_party/boringssl-with-bazel/src/ssl/ssl_versions.cc +11 -3
- data/third_party/boringssl-with-bazel/src/ssl/ssl_x509.cc +28 -23
- data/third_party/boringssl-with-bazel/src/ssl/t1_enc.cc +5 -7
- data/third_party/boringssl-with-bazel/src/ssl/tls13_both.cc +80 -36
- data/third_party/boringssl-with-bazel/src/ssl/tls13_client.cc +285 -190
- data/third_party/boringssl-with-bazel/src/ssl/tls13_enc.cc +160 -91
- data/third_party/boringssl-with-bazel/src/ssl/tls13_server.cc +381 -136
- data/third_party/boringssl-with-bazel/src/ssl/tls_method.cc +4 -2
- data/third_party/cares/cares/include/ares.h +742 -0
- data/third_party/cares/cares/include/ares_dns.h +112 -0
- data/third_party/cares/cares/include/ares_version.h +24 -0
- data/third_party/cares/cares/src/lib/ares__close_sockets.c +61 -0
- data/third_party/cares/cares/src/lib/ares__get_hostent.c +260 -0
- data/third_party/cares/cares/src/lib/ares__parse_into_addrinfo.c +260 -0
- data/third_party/cares/cares/src/lib/ares__readaddrinfo.c +264 -0
- data/third_party/cares/cares/src/lib/ares__sortaddrinfo.c +499 -0
- data/third_party/cares/cares/src/lib/ares_android.c +444 -0
- data/third_party/cares/cares/src/lib/ares_android.h +27 -0
- data/third_party/cares/cares/src/lib/ares_create_query.c +197 -0
- data/third_party/cares/cares/src/lib/ares_data.c +240 -0
- data/third_party/cares/cares/src/lib/ares_data.h +74 -0
- data/third_party/cares/cares/src/lib/ares_expand_name.c +300 -0
- data/third_party/cares/cares/src/lib/ares_expand_string.c +67 -0
- data/third_party/cares/cares/src/lib/ares_free_hostent.c +43 -0
- data/third_party/cares/cares/src/lib/ares_freeaddrinfo.c +59 -0
- data/third_party/cares/cares/src/lib/ares_getaddrinfo.c +772 -0
- data/third_party/cares/cares/src/lib/ares_getenv.c +28 -0
- data/third_party/cares/cares/src/lib/ares_gethostbyaddr.c +287 -0
- data/third_party/cares/cares/src/lib/ares_gethostbyname.c +534 -0
- data/third_party/cares/cares/src/lib/ares_getnameinfo.c +447 -0
- data/third_party/cares/cares/src/lib/ares_init.c +2654 -0
- data/third_party/cares/cares/src/lib/ares_ipv6.h +85 -0
- data/third_party/cares/cares/src/lib/ares_library_init.c +200 -0
- data/third_party/cares/cares/src/lib/ares_library_init.h +43 -0
- data/third_party/cares/cares/src/lib/ares_nameser.h +482 -0
- data/third_party/cares/cares/src/lib/ares_parse_a_reply.c +209 -0
- data/third_party/cares/cares/src/lib/ares_parse_aaaa_reply.c +212 -0
- data/third_party/cares/cares/src/lib/ares_parse_caa_reply.c +199 -0
- data/third_party/cares/cares/src/lib/ares_parse_mx_reply.c +164 -0
- data/third_party/cares/cares/src/lib/ares_parse_naptr_reply.c +183 -0
- data/third_party/cares/cares/src/lib/ares_parse_ns_reply.c +177 -0
- data/third_party/cares/cares/src/lib/ares_parse_ptr_reply.c +228 -0
- data/third_party/cares/cares/src/lib/ares_parse_soa_reply.c +179 -0
- data/third_party/cares/cares/src/lib/ares_parse_srv_reply.c +168 -0
- data/third_party/cares/cares/src/lib/ares_parse_txt_reply.c +214 -0
- data/third_party/cares/cares/src/lib/ares_private.h +423 -0
- data/third_party/cares/cares/src/lib/ares_process.c +1548 -0
- data/third_party/cares/cares/src/lib/ares_query.c +180 -0
- data/third_party/cares/cares/src/lib/ares_search.c +321 -0
- data/third_party/cares/cares/src/lib/ares_send.c +131 -0
- data/third_party/cares/cares/src/lib/ares_setup.h +220 -0
- data/third_party/cares/cares/src/lib/ares_strsplit.c +178 -0
- data/third_party/cares/cares/src/lib/ares_writev.h +36 -0
- data/third_party/cares/cares/src/lib/config-dos.h +115 -0
- data/third_party/cares/cares/src/lib/inet_net_pton.c +444 -0
- data/third_party/cares/cares/src/lib/inet_ntop.c +201 -0
- data/third_party/re2/re2/bitstate.cc +3 -3
- data/third_party/re2/re2/compile.cc +91 -109
- data/third_party/re2/re2/dfa.cc +40 -52
- data/third_party/re2/re2/filtered_re2.cc +18 -2
- data/third_party/re2/re2/filtered_re2.h +10 -5
- data/third_party/re2/re2/nfa.cc +5 -5
- data/third_party/re2/re2/onepass.cc +2 -2
- data/third_party/re2/re2/parse.cc +42 -23
- data/third_party/re2/re2/perl_groups.cc +34 -34
- data/third_party/re2/re2/prefilter.cc +3 -2
- data/third_party/re2/re2/prefilter_tree.cc +27 -59
- data/third_party/re2/re2/prefilter_tree.h +3 -2
- data/third_party/re2/re2/prog.cc +193 -6
- data/third_party/re2/re2/prog.h +45 -14
- data/third_party/re2/re2/re2.cc +93 -129
- data/third_party/re2/re2/re2.h +156 -141
- data/third_party/re2/re2/regexp.cc +13 -7
- data/third_party/re2/re2/regexp.h +8 -2
- data/third_party/re2/re2/set.cc +31 -9
- data/third_party/re2/re2/set.h +9 -4
- data/third_party/re2/re2/simplify.cc +11 -3
- data/third_party/re2/re2/stringpiece.h +10 -7
- data/third_party/re2/re2/tostring.cc +1 -1
- data/third_party/re2/re2/unicode_casefold.cc +25 -11
- data/third_party/re2/re2/unicode_groups.cc +319 -151
- data/third_party/re2/re2/walker-inl.h +4 -3
- data/third_party/re2/util/mutex.h +6 -6
- data/third_party/re2/util/pcre.h +3 -3
- data/third_party/upb/third_party/utf8_range/naive.c +92 -0
- data/third_party/upb/third_party/utf8_range/range2-neon.c +157 -0
- data/third_party/upb/third_party/utf8_range/range2-sse.c +170 -0
- data/third_party/upb/third_party/utf8_range/utf8_range.h +9 -0
- data/third_party/upb/upb/arena.c +277 -0
- data/third_party/upb/upb/arena.h +225 -0
- data/third_party/upb/upb/array.c +114 -0
- data/third_party/upb/upb/array.h +83 -0
- data/third_party/upb/upb/collections.h +36 -0
- data/third_party/upb/upb/decode.c +979 -379
- data/third_party/upb/upb/decode.h +80 -6
- data/third_party/upb/upb/decode_fast.c +1055 -0
- data/third_party/upb/upb/decode_fast.h +153 -0
- data/third_party/upb/upb/def.c +3269 -0
- data/third_party/upb/upb/def.h +416 -0
- data/third_party/upb/upb/def.hpp +441 -0
- data/third_party/upb/upb/encode.c +439 -246
- data/third_party/upb/upb/encode.h +66 -6
- data/third_party/upb/upb/extension_registry.c +93 -0
- data/third_party/upb/upb/extension_registry.h +84 -0
- data/third_party/upb/upb/internal/decode.h +211 -0
- data/third_party/upb/upb/internal/table.h +385 -0
- data/third_party/upb/upb/internal/upb.h +68 -0
- data/third_party/upb/upb/internal/vsnprintf_compat.h +52 -0
- data/third_party/upb/upb/json_decode.c +1512 -0
- data/third_party/upb/upb/json_decode.h +47 -0
- data/third_party/upb/upb/json_encode.c +780 -0
- data/third_party/upb/upb/json_encode.h +65 -0
- data/third_party/upb/upb/map.c +108 -0
- data/third_party/upb/upb/map.h +117 -0
- data/third_party/upb/upb/message_value.h +66 -0
- data/third_party/upb/upb/mini_table.c +1147 -0
- data/third_party/upb/upb/mini_table.h +189 -0
- data/third_party/upb/upb/mini_table.hpp +112 -0
- data/third_party/upb/upb/msg.c +291 -100
- data/third_party/upb/upb/msg.h +48 -450
- data/third_party/upb/upb/msg_internal.h +837 -0
- data/third_party/upb/upb/port_def.inc +166 -83
- data/third_party/upb/upb/port_undef.inc +43 -8
- data/third_party/upb/upb/reflection.c +323 -0
- data/third_party/upb/upb/reflection.h +110 -0
- data/third_party/upb/upb/reflection.hpp +37 -0
- data/third_party/upb/upb/status.c +86 -0
- data/third_party/upb/upb/status.h +66 -0
- data/third_party/upb/upb/table.c +422 -376
- data/third_party/upb/upb/table_internal.h +36 -0
- data/third_party/upb/upb/text_encode.c +473 -0
- data/third_party/upb/upb/text_encode.h +64 -0
- data/third_party/upb/upb/upb.c +56 -267
- data/third_party/upb/upb/upb.h +115 -239
- data/third_party/upb/upb/upb.hpp +51 -24
- data/third_party/xxhash/xxhash.h +5580 -0
- data/third_party/zlib/compress.c +3 -3
- data/third_party/zlib/crc32.c +975 -292
- data/third_party/zlib/crc32.h +9441 -436
- data/third_party/zlib/deflate.c +183 -129
- data/third_party/zlib/deflate.h +12 -15
- data/third_party/zlib/gzguts.h +3 -2
- data/third_party/zlib/gzlib.c +6 -4
- data/third_party/zlib/gzread.c +8 -12
- data/third_party/zlib/gzwrite.c +26 -14
- data/third_party/zlib/infback.c +12 -8
- data/third_party/zlib/inffast.c +14 -14
- data/third_party/zlib/inflate.c +44 -10
- data/third_party/zlib/inflate.h +3 -2
- data/third_party/zlib/inftrees.c +3 -3
- data/third_party/zlib/inftrees.h +1 -1
- data/third_party/zlib/trees.c +85 -107
- data/third_party/zlib/uncompr.c +2 -2
- data/third_party/zlib/zconf.h +16 -3
- data/third_party/zlib/zlib.h +129 -106
- data/third_party/zlib/zutil.c +11 -9
- data/third_party/zlib/zutil.h +13 -9
- metadata +1180 -323
- data/include/grpc/impl/codegen/gpr_slice.h +0 -69
- data/src/core/ext/filters/client_channel/http_connect_handshaker.cc +0 -389
- data/src/core/ext/filters/client_channel/http_connect_handshaker.h +0 -34
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel.h +0 -45
- data/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.cc +0 -85
- data/src/core/ext/filters/client_channel/lb_policy/xds/eds.cc +0 -946
- data/src/core/ext/filters/client_channel/lb_policy/xds/lrs.cc +0 -537
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds.h +0 -32
- data/src/core/ext/filters/client_channel/lb_policy/xds/xds_routing.cc +0 -1141
- data/src/core/ext/filters/client_channel/lb_policy.cc +0 -138
- data/src/core/ext/filters/client_channel/lb_policy.h +0 -425
- data/src/core/ext/filters/client_channel/lb_policy_factory.h +0 -47
- data/src/core/ext/filters/client_channel/lb_policy_registry.cc +0 -181
- data/src/core/ext/filters/client_channel/lb_policy_registry.h +0 -65
- data/src/core/ext/filters/client_channel/proxy_mapper.h +0 -54
- data/src/core/ext/filters/client_channel/proxy_mapper_registry.cc +0 -89
- data/src/core/ext/filters/client_channel/proxy_mapper_registry.h +0 -50
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.cc +0 -485
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.cc +0 -179
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.cc +0 -68
- data/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.cc +0 -38
- data/src/core/ext/filters/client_channel/resolver.cc +0 -85
- data/src/core/ext/filters/client_channel/resolver.h +0 -144
- data/src/core/ext/filters/client_channel/resolver_factory.h +0 -73
- data/src/core/ext/filters/client_channel/resolver_registry.cc +0 -196
- data/src/core/ext/filters/client_channel/resolver_registry.h +0 -89
- data/src/core/ext/filters/client_channel/resolver_result_parsing.cc +0 -442
- data/src/core/ext/filters/client_channel/resolver_result_parsing.h +0 -126
- data/src/core/ext/filters/client_channel/resolving_lb_policy.cc +0 -354
- data/src/core/ext/filters/client_channel/resolving_lb_policy.h +0 -142
- data/src/core/ext/filters/client_channel/server_address.cc +0 -81
- data/src/core/ext/filters/client_channel/server_address.h +0 -128
- data/src/core/ext/filters/client_channel/service_config.cc +0 -221
- data/src/core/ext/filters/client_channel/service_config.h +0 -123
- data/src/core/ext/filters/client_channel/service_config_call_data.h +0 -68
- data/src/core/ext/filters/client_channel/service_config_parser.cc +0 -87
- data/src/core/ext/filters/client_channel/service_config_parser.h +0 -89
- data/src/core/ext/filters/client_channel/subchannel_interface.h +0 -94
- data/src/core/ext/filters/client_idle/client_idle_filter.cc +0 -440
- data/src/core/ext/filters/http/message_compress/message_compress_filter.cc +0 -546
- data/src/core/ext/filters/http/message_compress/message_compress_filter.h +0 -53
- data/src/core/ext/filters/http/message_compress/message_decompress_filter.cc +0 -399
- data/src/core/ext/filters/http/message_compress/message_decompress_filter.h +0 -31
- data/src/core/ext/filters/max_age/max_age_filter.cc +0 -557
- data/src/core/ext/filters/max_age/max_age_filter.h +0 -26
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.cc +0 -210
- data/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.h +0 -27
- data/src/core/ext/filters/workarounds/workaround_utils.cc +0 -53
- data/src/core/ext/filters/workarounds/workaround_utils.h +0 -39
- data/src/core/ext/transport/chttp2/client/authority.cc +0 -42
- data/src/core/ext/transport/chttp2/client/authority.h +0 -36
- data/src/core/ext/transport/chttp2/client/insecure/channel_create.cc +0 -112
- data/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.cc +0 -79
- data/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc +0 -200
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2.cc +0 -45
- data/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.cc +0 -69
- data/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.cc +0 -86
- data/src/core/ext/transport/chttp2/transport/chttp2_plugin.cc +0 -37
- data/src/core/ext/transport/chttp2/transport/hpack_table.cc +0 -242
- data/src/core/ext/transport/chttp2/transport/hpack_table.h +0 -148
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.cc +0 -66
- data/src/core/ext/transport/chttp2/transport/incoming_metadata.h +0 -58
- data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.c +0 -27
- data/src/core/ext/upb-generated/envoy/service/cluster/v3/cds.upb.h +0 -49
- data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.c +0 -30
- data/src/core/ext/upb-generated/envoy/service/endpoint/v3/eds.upb.h +0 -49
- data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.c +0 -30
- data/src/core/ext/upb-generated/envoy/service/listener/v3/lds.upb.h +0 -49
- data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.c +0 -29
- data/src/core/ext/upb-generated/envoy/service/route/v3/rds.upb.h +0 -49
- data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.c +0 -27
- data/src/core/ext/upb-generated/envoy/service/route/v3/srds.upb.h +0 -49
- data/src/core/ext/upb-generated/gogoproto/gogo.upb.c +0 -17
- data/src/core/ext/upb-generated/gogoproto/gogo.upb.h +0 -29
- data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.c +0 -58
- data/src/core/ext/upb-generated/udpa/data/orca/v1/orca_load_report.upb.h +0 -117
- data/src/core/ext/xds/xds_channel.h +0 -46
- data/src/core/ext/xds/xds_channel_secure.cc +0 -103
- data/src/core/lib/avl/avl.cc +0 -306
- data/src/core/lib/channel/handshaker.cc +0 -262
- data/src/core/lib/channel/handshaker.h +0 -179
- data/src/core/lib/channel/handshaker_factory.h +0 -42
- data/src/core/lib/channel/handshaker_registry.cc +0 -105
- data/src/core/lib/channel/handshaker_registry.h +0 -54
- data/src/core/lib/compression/algorithm_metadata.h +0 -61
- data/src/core/lib/compression/compression_args.cc +0 -134
- data/src/core/lib/compression/compression_args.h +0 -56
- data/src/core/lib/compression/stream_compression.cc +0 -80
- data/src/core/lib/compression/stream_compression.h +0 -116
- data/src/core/lib/compression/stream_compression_gzip.cc +0 -230
- data/src/core/lib/compression/stream_compression_gzip.h +0 -28
- data/src/core/lib/compression/stream_compression_identity.cc +0 -92
- data/src/core/lib/compression/stream_compression_identity.h +0 -29
- data/src/core/lib/gpr/arena.h +0 -47
- data/src/core/lib/gpr/env.h +0 -40
- data/src/core/lib/gpr/env_linux.cc +0 -76
- data/src/core/lib/gpr/env_posix.cc +0 -47
- data/src/core/lib/gpr/env_windows.cc +0 -74
- data/src/core/lib/gpr/murmur_hash.cc +0 -80
- data/src/core/lib/gpr/murmur_hash.h +0 -29
- data/src/core/lib/gpr/string_windows.h +0 -32
- data/src/core/lib/gpr/tls.h +0 -68
- data/src/core/lib/gpr/tls_gcc.h +0 -52
- data/src/core/lib/gpr/tls_msvc.h +0 -52
- data/src/core/lib/gpr/tls_pthread.cc +0 -30
- data/src/core/lib/gpr/tls_pthread.h +0 -56
- data/src/core/lib/gprpp/arena.cc +0 -103
- data/src/core/lib/gprpp/arena.h +0 -120
- data/src/core/lib/gprpp/atomic.h +0 -104
- data/src/core/lib/gprpp/map.h +0 -53
- data/src/core/lib/iomgr/endpoint_pair_uv.cc +0 -40
- data/src/core/lib/iomgr/error_internal.h +0 -61
- data/src/core/lib/iomgr/ev_epollex_linux.cc +0 -1650
- data/src/core/lib/iomgr/ev_epollex_linux.h +0 -30
- data/src/core/lib/iomgr/executor/mpmcqueue.cc +0 -183
- data/src/core/lib/iomgr/executor/mpmcqueue.h +0 -175
- data/src/core/lib/iomgr/executor/threadpool.cc +0 -137
- data/src/core/lib/iomgr/executor/threadpool.h +0 -149
- data/src/core/lib/iomgr/iomgr_custom.cc +0 -79
- data/src/core/lib/iomgr/iomgr_custom.h +0 -49
- data/src/core/lib/iomgr/iomgr_posix.h +0 -26
- data/src/core/lib/iomgr/iomgr_uv.cc +0 -43
- data/src/core/lib/iomgr/is_epollexclusive_available.cc +0 -119
- data/src/core/lib/iomgr/is_epollexclusive_available.h +0 -36
- data/src/core/lib/iomgr/parse_address.cc +0 -238
- data/src/core/lib/iomgr/parse_address.h +0 -53
- data/src/core/lib/iomgr/poller/eventmanager_libuv.cc +0 -87
- data/src/core/lib/iomgr/poller/eventmanager_libuv.h +0 -88
- data/src/core/lib/iomgr/pollset_custom.cc +0 -106
- data/src/core/lib/iomgr/pollset_custom.h +0 -35
- data/src/core/lib/iomgr/pollset_set_custom.cc +0 -48
- data/src/core/lib/iomgr/pollset_set_custom.h +0 -26
- data/src/core/lib/iomgr/pollset_uv.cc +0 -93
- data/src/core/lib/iomgr/pollset_uv.h +0 -32
- data/src/core/lib/iomgr/resolve_address_custom.cc +0 -168
- data/src/core/lib/iomgr/resolve_address_custom.h +0 -45
- data/src/core/lib/iomgr/resource_quota.cc +0 -1016
- data/src/core/lib/iomgr/resource_quota.h +0 -177
- data/src/core/lib/iomgr/sockaddr_custom.h +0 -54
- data/src/core/lib/iomgr/sockaddr_utils.cc +0 -296
- data/src/core/lib/iomgr/sockaddr_utils.h +0 -80
- data/src/core/lib/iomgr/socket_utils_uv.cc +0 -49
- data/src/core/lib/iomgr/sys_epoll_wrapper.h +0 -30
- data/src/core/lib/iomgr/tcp_client_custom.cc +0 -160
- data/src/core/lib/iomgr/tcp_custom.cc +0 -386
- data/src/core/lib/iomgr/tcp_custom.h +0 -84
- data/src/core/lib/iomgr/tcp_server_custom.cc +0 -477
- data/src/core/lib/iomgr/tcp_uv.cc +0 -419
- data/src/core/lib/iomgr/time_averaged_stats.cc +0 -64
- data/src/core/lib/iomgr/time_averaged_stats.h +0 -72
- data/src/core/lib/iomgr/timer_custom.cc +0 -95
- data/src/core/lib/iomgr/timer_custom.h +0 -43
- data/src/core/lib/iomgr/timer_uv.cc +0 -66
- data/src/core/lib/iomgr/udp_server.cc +0 -748
- data/src/core/lib/iomgr/udp_server.h +0 -104
- data/src/core/lib/iomgr/work_serializer.cc +0 -155
- data/src/core/lib/iomgr/work_serializer.h +0 -65
- data/src/core/lib/profiling/basic_timers.cc +0 -293
- data/src/core/lib/profiling/stap_timers.cc +0 -50
- data/src/core/lib/profiling/timers.h +0 -94
- data/src/core/lib/security/authorization/authorization_engine.cc +0 -177
- data/src/core/lib/security/authorization/mock_cel/activation.h +0 -57
- data/src/core/lib/security/authorization/mock_cel/cel_expr_builder_factory.h +0 -42
- data/src/core/lib/security/authorization/mock_cel/cel_expression.h +0 -68
- data/src/core/lib/security/authorization/mock_cel/cel_value.h +0 -93
- data/src/core/lib/security/authorization/mock_cel/evaluator_core.h +0 -67
- data/src/core/lib/security/authorization/mock_cel/flat_expr_builder.h +0 -56
- data/src/core/lib/security/authorization/mock_cel/statusor.h +0 -50
- data/src/core/lib/security/credentials/credentials_metadata.cc +0 -62
- data/src/core/lib/security/security_connector/load_system_roots_linux.cc +0 -171
- data/src/core/lib/security/security_connector/load_system_roots_linux.h +0 -44
- data/src/core/lib/slice/slice_intern.cc +0 -375
- data/src/core/lib/slice/slice_utils.h +0 -200
- data/src/core/lib/surface/init_secure.cc +0 -81
- data/src/core/lib/transport/authority_override.cc +0 -38
- data/src/core/lib/transport/authority_override.h +0 -32
- data/src/core/lib/transport/byte_stream.cc +0 -158
- data/src/core/lib/transport/byte_stream.h +0 -165
- data/src/core/lib/transport/metadata.cc +0 -679
- data/src/core/lib/transport/metadata.h +0 -446
- data/src/core/lib/transport/static_metadata.cc +0 -1249
- data/src/core/lib/transport/static_metadata.h +0 -604
- data/src/core/lib/transport/status_metadata.cc +0 -61
- data/src/core/lib/transport/status_metadata.h +0 -48
- data/third_party/abseil-cpp/absl/base/dynamic_annotations.cc +0 -129
- data/third_party/abseil-cpp/absl/base/internal/bits.h +0 -218
- data/third_party/abseil-cpp/absl/base/internal/exponential_biased.cc +0 -93
- data/third_party/abseil-cpp/absl/base/internal/exponential_biased.h +0 -130
- data/third_party/abseil-cpp/absl/container/internal/have_sse.h +0 -49
- data/third_party/abseil-cpp/absl/synchronization/internal/mutex_nonprod.inc +0 -261
- data/third_party/boringssl-with-bazel/src/crypto/asn1/asn1_locl.h +0 -104
- data/third_party/boringssl-with-bazel/src/crypto/asn1/f_enum.c +0 -93
- data/third_party/boringssl-with-bazel/src/crypto/dh/dh.c +0 -533
- data/third_party/boringssl-with-bazel/src/crypto/dh/params.c +0 -93
- data/third_party/boringssl-with-bazel/src/crypto/fipsmodule/is_fips.c +0 -29
- data/third_party/boringssl-with-bazel/src/crypto/hpke/internal.h +0 -192
- data/third_party/boringssl-with-bazel/src/crypto/x509/a_strex.c +0 -653
- data/third_party/boringssl-with-bazel/src/crypto/x509/vpm_int.h +0 -71
- data/third_party/boringssl-with-bazel/src/crypto/x509/x509_r2x.c +0 -116
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/pcy_int.h +0 -217
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_pku.c +0 -110
- data/third_party/boringssl-with-bazel/src/crypto/x509v3/v3_sxnet.c +0 -274
- data/third_party/boringssl-with-bazel/src/ssl/t1_lib.cc +0 -3895
- data/third_party/cares/cares/ares.h +0 -670
- data/third_party/cares/cares/ares__close_sockets.c +0 -61
- data/third_party/cares/cares/ares__get_hostent.c +0 -261
- data/third_party/cares/cares/ares_create_query.c +0 -206
- data/third_party/cares/cares/ares_data.c +0 -222
- data/third_party/cares/cares/ares_data.h +0 -72
- data/third_party/cares/cares/ares_dns.h +0 -103
- data/third_party/cares/cares/ares_expand_name.c +0 -209
- data/third_party/cares/cares/ares_expand_string.c +0 -70
- data/third_party/cares/cares/ares_free_hostent.c +0 -41
- data/third_party/cares/cares/ares_getenv.c +0 -30
- data/third_party/cares/cares/ares_gethostbyaddr.c +0 -294
- data/third_party/cares/cares/ares_gethostbyname.c +0 -529
- data/third_party/cares/cares/ares_getnameinfo.c +0 -453
- data/third_party/cares/cares/ares_getopt.c +0 -122
- data/third_party/cares/cares/ares_getopt.h +0 -53
- data/third_party/cares/cares/ares_init.c +0 -2615
- data/third_party/cares/cares/ares_ipv6.h +0 -78
- data/third_party/cares/cares/ares_library_init.c +0 -195
- data/third_party/cares/cares/ares_library_init.h +0 -43
- data/third_party/cares/cares/ares_parse_a_reply.c +0 -264
- data/third_party/cares/cares/ares_parse_aaaa_reply.c +0 -264
- data/third_party/cares/cares/ares_parse_mx_reply.c +0 -170
- data/third_party/cares/cares/ares_parse_naptr_reply.c +0 -194
- data/third_party/cares/cares/ares_parse_ns_reply.c +0 -183
- data/third_party/cares/cares/ares_parse_ptr_reply.c +0 -221
- data/third_party/cares/cares/ares_parse_soa_reply.c +0 -133
- data/third_party/cares/cares/ares_parse_srv_reply.c +0 -179
- data/third_party/cares/cares/ares_parse_txt_reply.c +0 -220
- data/third_party/cares/cares/ares_private.h +0 -382
- data/third_party/cares/cares/ares_process.c +0 -1473
- data/third_party/cares/cares/ares_query.c +0 -186
- data/third_party/cares/cares/ares_search.c +0 -323
- data/third_party/cares/cares/ares_send.c +0 -137
- data/third_party/cares/cares/ares_setup.h +0 -217
- data/third_party/cares/cares/ares_strsplit.c +0 -174
- data/third_party/cares/cares/ares_version.h +0 -24
- data/third_party/cares/cares/inet_net_pton.c +0 -450
- data/third_party/cares/cares/inet_ntop.c +0 -207
- data/third_party/upb/upb/port.c +0 -26
- data/third_party/upb/upb/table.int.h +0 -466
- /data/third_party/boringssl-with-bazel/src/crypto/{x509 → asn1}/charmap.h +0 -0
- /data/third_party/boringssl-with-bazel/src/crypto/{dh → dh_extra}/dh_asn1.c +0 -0
- /data/third_party/boringssl-with-bazel/src/crypto/{dh → fipsmodule/dh}/check.c +0 -0
- /data/third_party/cares/cares/{ares_rules.h → include/ares_rules.h} +0 -0
- /data/third_party/cares/cares/{ares__read_line.c → src/lib/ares__read_line.c} +0 -0
- /data/third_party/cares/cares/{ares__timeval.c → src/lib/ares__timeval.c} +0 -0
- /data/third_party/cares/cares/{ares_cancel.c → src/lib/ares_cancel.c} +0 -0
- /data/third_party/cares/cares/{ares_destroy.c → src/lib/ares_destroy.c} +0 -0
- /data/third_party/cares/cares/{ares_fds.c → src/lib/ares_fds.c} +0 -0
- /data/third_party/cares/cares/{ares_free_string.c → src/lib/ares_free_string.c} +0 -0
- /data/third_party/cares/cares/{ares_getenv.h → src/lib/ares_getenv.h} +0 -0
- /data/third_party/cares/cares/{ares_getsock.c → src/lib/ares_getsock.c} +0 -0
- /data/third_party/cares/cares/{ares_inet_net_pton.h → src/lib/ares_inet_net_pton.h} +0 -0
- /data/third_party/cares/cares/{ares_iphlpapi.h → src/lib/ares_iphlpapi.h} +0 -0
- /data/third_party/cares/cares/{ares_llist.c → src/lib/ares_llist.c} +0 -0
- /data/third_party/cares/cares/{ares_llist.h → src/lib/ares_llist.h} +0 -0
- /data/third_party/cares/cares/{ares_mkquery.c → src/lib/ares_mkquery.c} +0 -0
- /data/third_party/cares/cares/{ares_nowarn.c → src/lib/ares_nowarn.c} +0 -0
- /data/third_party/cares/cares/{ares_nowarn.h → src/lib/ares_nowarn.h} +0 -0
- /data/third_party/cares/cares/{ares_options.c → src/lib/ares_options.c} +0 -0
- /data/third_party/cares/cares/{ares_platform.c → src/lib/ares_platform.c} +0 -0
- /data/third_party/cares/cares/{ares_platform.h → src/lib/ares_platform.h} +0 -0
- /data/third_party/cares/cares/{ares_strcasecmp.c → src/lib/ares_strcasecmp.c} +0 -0
- /data/third_party/cares/cares/{ares_strcasecmp.h → src/lib/ares_strcasecmp.h} +0 -0
- /data/third_party/cares/cares/{ares_strdup.c → src/lib/ares_strdup.c} +0 -0
- /data/third_party/cares/cares/{ares_strdup.h → src/lib/ares_strdup.h} +0 -0
- /data/third_party/cares/cares/{ares_strerror.c → src/lib/ares_strerror.c} +0 -0
- /data/third_party/cares/cares/{ares_strsplit.h → src/lib/ares_strsplit.h} +0 -0
- /data/third_party/cares/cares/{ares_timeout.c → src/lib/ares_timeout.c} +0 -0
- /data/third_party/cares/cares/{ares_version.c → src/lib/ares_version.c} +0 -0
- /data/third_party/cares/cares/{ares_writev.c → src/lib/ares_writev.c} +0 -0
- /data/third_party/cares/cares/{bitncmp.c → src/lib/bitncmp.c} +0 -0
- /data/third_party/cares/cares/{bitncmp.h → src/lib/bitncmp.h} +0 -0
- /data/third_party/cares/cares/{config-win32.h → src/lib/config-win32.h} +0 -0
- /data/third_party/cares/cares/{setup_once.h → src/lib/setup_once.h} +0 -0
- /data/third_party/cares/cares/{windows_port.c → src/lib/windows_port.c} +0 -0
@@ -82,7 +82,7 @@
|
|
82
82
|
#include <openssl/thread.h>
|
83
83
|
#include <time.h>
|
84
84
|
|
85
|
-
#
|
85
|
+
#if defined(__cplusplus)
|
86
86
|
extern "C" {
|
87
87
|
#endif
|
88
88
|
|
@@ -110,148 +110,36 @@ extern "C" {
|
|
110
110
|
#define X509v3_KU_DECIPHER_ONLY 0x8000
|
111
111
|
#define X509v3_KU_UNDEF 0xffff
|
112
112
|
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
113
|
+
struct X509_algor_st {
|
114
|
+
ASN1_OBJECT *algorithm;
|
115
|
+
ASN1_TYPE *parameter;
|
116
|
+
} /* X509_ALGOR */;
|
117
117
|
|
118
|
-
|
119
|
-
ASN1_TIME *notBefore;
|
120
|
-
ASN1_TIME *notAfter;
|
121
|
-
} /* X509_VAL */;
|
118
|
+
DECLARE_ASN1_FUNCTIONS(X509_ALGOR)
|
122
119
|
|
123
|
-
|
124
|
-
X509_ALGOR *algor;
|
125
|
-
ASN1_BIT_STRING *public_key;
|
126
|
-
EVP_PKEY *pkey;
|
127
|
-
};
|
128
|
-
|
129
|
-
struct X509_sig_st {
|
130
|
-
X509_ALGOR *algor;
|
131
|
-
ASN1_OCTET_STRING *digest;
|
132
|
-
} /* X509_SIG */;
|
120
|
+
DEFINE_STACK_OF(X509_ALGOR)
|
133
121
|
|
134
|
-
|
135
|
-
ASN1_OBJECT *object;
|
136
|
-
ASN1_STRING *value;
|
137
|
-
int set;
|
138
|
-
int size; // temp variable
|
139
|
-
} /* X509_NAME_ENTRY */;
|
122
|
+
typedef STACK_OF(X509_ALGOR) X509_ALGORS;
|
140
123
|
|
141
124
|
DEFINE_STACK_OF(X509_NAME_ENTRY)
|
142
|
-
DECLARE_ASN1_SET_OF(X509_NAME_ENTRY)
|
143
|
-
|
144
|
-
// we always keep X509_NAMEs in 2 forms.
|
145
|
-
struct X509_name_st {
|
146
|
-
STACK_OF(X509_NAME_ENTRY) * entries;
|
147
|
-
int modified; // true if 'bytes' needs to be built
|
148
|
-
BUF_MEM *bytes;
|
149
|
-
// unsigned long hash; Keep the hash around for lookups
|
150
|
-
unsigned char *canon_enc;
|
151
|
-
int canon_enclen;
|
152
|
-
} /* X509_NAME */;
|
153
125
|
|
154
126
|
DEFINE_STACK_OF(X509_NAME)
|
155
127
|
|
156
|
-
struct X509_extension_st {
|
157
|
-
ASN1_OBJECT *object;
|
158
|
-
ASN1_BOOLEAN critical;
|
159
|
-
ASN1_OCTET_STRING *value;
|
160
|
-
} /* X509_EXTENSION */;
|
161
|
-
|
162
128
|
typedef STACK_OF(X509_EXTENSION) X509_EXTENSIONS;
|
163
129
|
|
164
130
|
DEFINE_STACK_OF(X509_EXTENSION)
|
165
|
-
DECLARE_ASN1_SET_OF(X509_EXTENSION)
|
166
|
-
|
167
|
-
// a sequence of these are used
|
168
|
-
struct x509_attributes_st {
|
169
|
-
ASN1_OBJECT *object;
|
170
|
-
int single; // 0 for a set, 1 for a single item (which is wrong)
|
171
|
-
union {
|
172
|
-
char *ptr;
|
173
|
-
/* 0 */ STACK_OF(ASN1_TYPE) * set;
|
174
|
-
/* 1 */ ASN1_TYPE *single;
|
175
|
-
} value;
|
176
|
-
} /* X509_ATTRIBUTE */;
|
177
131
|
|
178
132
|
DEFINE_STACK_OF(X509_ATTRIBUTE)
|
179
|
-
DECLARE_ASN1_SET_OF(X509_ATTRIBUTE)
|
180
|
-
|
181
|
-
|
182
|
-
struct X509_req_info_st {
|
183
|
-
ASN1_ENCODING enc;
|
184
|
-
ASN1_INTEGER *version;
|
185
|
-
X509_NAME *subject;
|
186
|
-
X509_PUBKEY *pubkey;
|
187
|
-
// d=2 hl=2 l= 0 cons: cont: 00
|
188
|
-
STACK_OF(X509_ATTRIBUTE) * attributes; // [ 0 ]
|
189
|
-
} /* X509_REQ_INFO */;
|
190
|
-
|
191
|
-
struct X509_req_st {
|
192
|
-
X509_REQ_INFO *req_info;
|
193
|
-
X509_ALGOR *sig_alg;
|
194
|
-
ASN1_BIT_STRING *signature;
|
195
|
-
CRYPTO_refcount_t references;
|
196
|
-
} /* X509_REQ */;
|
197
|
-
|
198
|
-
struct x509_cinf_st {
|
199
|
-
ASN1_INTEGER *version; // [ 0 ] default of v1
|
200
|
-
ASN1_INTEGER *serialNumber;
|
201
|
-
X509_ALGOR *signature;
|
202
|
-
X509_NAME *issuer;
|
203
|
-
X509_VAL *validity;
|
204
|
-
X509_NAME *subject;
|
205
|
-
X509_PUBKEY *key;
|
206
|
-
ASN1_BIT_STRING *issuerUID; // [ 1 ] optional in v2
|
207
|
-
ASN1_BIT_STRING *subjectUID; // [ 2 ] optional in v2
|
208
|
-
STACK_OF(X509_EXTENSION) * extensions; // [ 3 ] optional in v3
|
209
|
-
ASN1_ENCODING enc;
|
210
|
-
} /* X509_CINF */;
|
211
133
|
|
212
134
|
// This stuff is certificate "auxiliary info"
|
213
135
|
// it contains details which are useful in certificate
|
214
136
|
// stores and databases. When used this is tagged onto
|
215
137
|
// the end of the certificate itself
|
216
138
|
|
217
|
-
struct x509_cert_aux_st {
|
218
|
-
STACK_OF(ASN1_OBJECT) * trust; // trusted uses
|
219
|
-
STACK_OF(ASN1_OBJECT) * reject; // rejected uses
|
220
|
-
ASN1_UTF8STRING *alias; // "friendly name"
|
221
|
-
ASN1_OCTET_STRING *keyid; // key id of private key
|
222
|
-
STACK_OF(X509_ALGOR) * other; // other unspecified info
|
223
|
-
} /* X509_CERT_AUX */;
|
224
|
-
|
225
139
|
DECLARE_STACK_OF(DIST_POINT)
|
226
140
|
DECLARE_STACK_OF(GENERAL_NAME)
|
227
141
|
|
228
|
-
struct x509_st {
|
229
|
-
X509_CINF *cert_info;
|
230
|
-
X509_ALGOR *sig_alg;
|
231
|
-
ASN1_BIT_STRING *signature;
|
232
|
-
CRYPTO_refcount_t references;
|
233
|
-
CRYPTO_EX_DATA ex_data;
|
234
|
-
// These contain copies of various extension values
|
235
|
-
long ex_pathlen;
|
236
|
-
long ex_pcpathlen;
|
237
|
-
unsigned long ex_flags;
|
238
|
-
unsigned long ex_kusage;
|
239
|
-
unsigned long ex_xkusage;
|
240
|
-
unsigned long ex_nscert;
|
241
|
-
ASN1_OCTET_STRING *skid;
|
242
|
-
AUTHORITY_KEYID *akid;
|
243
|
-
X509_POLICY_CACHE *policy_cache;
|
244
|
-
STACK_OF(DIST_POINT) * crldp;
|
245
|
-
STACK_OF(GENERAL_NAME) * altname;
|
246
|
-
NAME_CONSTRAINTS *nc;
|
247
|
-
unsigned char sha1_hash[SHA_DIGEST_LENGTH];
|
248
|
-
X509_CERT_AUX *aux;
|
249
|
-
CRYPTO_BUFFER *buf;
|
250
|
-
CRYPTO_MUTEX lock;
|
251
|
-
} /* X509 */;
|
252
|
-
|
253
142
|
DEFINE_STACK_OF(X509)
|
254
|
-
DECLARE_ASN1_SET_OF(X509)
|
255
143
|
|
256
144
|
// This is used for a table of trust checking functions
|
257
145
|
|
@@ -318,7 +206,7 @@ DEFINE_STACK_OF(X509_TRUST)
|
|
318
206
|
#define XN_FLAG_SEP_MASK (0xf << 16)
|
319
207
|
|
320
208
|
#define XN_FLAG_COMPAT 0 // Traditional SSLeay: use old X509_NAME_print
|
321
|
-
#define XN_FLAG_SEP_COMMA_PLUS (1 << 16) //
|
209
|
+
#define XN_FLAG_SEP_COMMA_PLUS (1 << 16) // RFC 2253 ,+
|
322
210
|
#define XN_FLAG_SEP_CPLUS_SPC (2 << 16) // ,+ spaced: more readable
|
323
211
|
#define XN_FLAG_SEP_SPLUS_SPC (3 << 16) // ;+ spaced
|
324
212
|
#define XN_FLAG_SEP_MULTILINE (4 << 16) // One line per field
|
@@ -337,13 +225,13 @@ DEFINE_STACK_OF(X509_TRUST)
|
|
337
225
|
#define XN_FLAG_SPC_EQ (1 << 23) // Put spaces round '='
|
338
226
|
|
339
227
|
// This determines if we dump fields we don't recognise:
|
340
|
-
//
|
228
|
+
// RFC 2253 requires this.
|
341
229
|
|
342
230
|
#define XN_FLAG_DUMP_UNKNOWN_FIELDS (1 << 24)
|
343
231
|
|
344
232
|
#define XN_FLAG_FN_ALIGN (1 << 25) // Align field names to 20 characters
|
345
233
|
|
346
|
-
// Complete set of
|
234
|
+
// Complete set of RFC 2253 flags
|
347
235
|
|
348
236
|
#define XN_FLAG_RFC2253 \
|
349
237
|
(ASN1_STRFLGS_RFC2253 | XN_FLAG_SEP_COMMA_PLUS | XN_FLAG_DN_REV | \
|
@@ -364,54 +252,19 @@ DEFINE_STACK_OF(X509_TRUST)
|
|
364
252
|
struct x509_revoked_st {
|
365
253
|
ASN1_INTEGER *serialNumber;
|
366
254
|
ASN1_TIME *revocationDate;
|
367
|
-
STACK_OF(X509_EXTENSION) /* optional */ *
|
255
|
+
STACK_OF(X509_EXTENSION) /* optional */ *extensions;
|
368
256
|
// Set up if indirect CRL
|
369
|
-
STACK_OF(GENERAL_NAME) *
|
257
|
+
STACK_OF(GENERAL_NAME) *issuer;
|
370
258
|
// Revocation reason
|
371
259
|
int reason;
|
372
260
|
int sequence; // load sequence
|
373
261
|
};
|
374
262
|
|
375
263
|
DEFINE_STACK_OF(X509_REVOKED)
|
376
|
-
DECLARE_ASN1_SET_OF(X509_REVOKED)
|
377
|
-
|
378
|
-
struct X509_crl_info_st {
|
379
|
-
ASN1_INTEGER *version;
|
380
|
-
X509_ALGOR *sig_alg;
|
381
|
-
X509_NAME *issuer;
|
382
|
-
ASN1_TIME *lastUpdate;
|
383
|
-
ASN1_TIME *nextUpdate;
|
384
|
-
STACK_OF(X509_REVOKED) * revoked;
|
385
|
-
STACK_OF(X509_EXTENSION) /* [0] */ * extensions;
|
386
|
-
ASN1_ENCODING enc;
|
387
|
-
} /* X509_CRL_INFO */;
|
388
264
|
|
389
265
|
DECLARE_STACK_OF(GENERAL_NAMES)
|
390
266
|
|
391
|
-
struct X509_crl_st {
|
392
|
-
// actual signature
|
393
|
-
X509_CRL_INFO *crl;
|
394
|
-
X509_ALGOR *sig_alg;
|
395
|
-
ASN1_BIT_STRING *signature;
|
396
|
-
CRYPTO_refcount_t references;
|
397
|
-
int flags;
|
398
|
-
// Copies of various extensions
|
399
|
-
AUTHORITY_KEYID *akid;
|
400
|
-
ISSUING_DIST_POINT *idp;
|
401
|
-
// Convenient breakdown of IDP
|
402
|
-
int idp_flags;
|
403
|
-
int idp_reasons;
|
404
|
-
// CRL and base CRL numbers for delta processing
|
405
|
-
ASN1_INTEGER *crl_number;
|
406
|
-
ASN1_INTEGER *base_crl_number;
|
407
|
-
unsigned char sha1_hash[SHA_DIGEST_LENGTH];
|
408
|
-
STACK_OF(GENERAL_NAMES) * issuers;
|
409
|
-
const X509_CRL_METHOD *meth;
|
410
|
-
void *meth_data;
|
411
|
-
} /* X509_CRL */;
|
412
|
-
|
413
267
|
DEFINE_STACK_OF(X509_CRL)
|
414
|
-
DECLARE_ASN1_SET_OF(X509_CRL)
|
415
268
|
|
416
269
|
struct private_key_st {
|
417
270
|
int version;
|
@@ -431,7 +284,6 @@ struct private_key_st {
|
|
431
284
|
EVP_CIPHER_INFO cipher;
|
432
285
|
} /* X509_PKEY */;
|
433
286
|
|
434
|
-
#ifndef OPENSSL_NO_EVP
|
435
287
|
struct X509_info_st {
|
436
288
|
X509 *x509;
|
437
289
|
X509_CRL *crl;
|
@@ -444,7 +296,6 @@ struct X509_info_st {
|
|
444
296
|
} /* X509_INFO */;
|
445
297
|
|
446
298
|
DEFINE_STACK_OF(X509_INFO)
|
447
|
-
#endif
|
448
299
|
|
449
300
|
// The next 2 structures and their 8 routines were sent to me by
|
450
301
|
// Pat Richard <patr@x509.com> and are used to manipulate
|
@@ -460,47 +311,108 @@ struct Netscape_spki_st {
|
|
460
311
|
ASN1_BIT_STRING *signature;
|
461
312
|
} /* NETSCAPE_SPKI */;
|
462
313
|
|
463
|
-
|
464
|
-
|
465
|
-
|
314
|
+
// TODO(davidben): Document remaining functions, reorganize them, and define
|
315
|
+
// supported patterns for using |X509| objects in general. In particular, when
|
316
|
+
// it is safe to call mutating functions is a little tricky due to various
|
317
|
+
// internal caches.
|
318
|
+
|
319
|
+
// X509_VERSION_* are X.509 version numbers. Note the numerical values of all
|
320
|
+
// defined X.509 versions are one less than the named version.
|
321
|
+
#define X509_VERSION_1 0
|
322
|
+
#define X509_VERSION_2 1
|
323
|
+
#define X509_VERSION_3 2
|
324
|
+
|
325
|
+
// X509_get_version returns the numerical value of |x509|'s version. Callers may
|
326
|
+
// compare the result to the |X509_VERSION_*| constants. Unknown versions are
|
327
|
+
// rejected by the parser, but a manually-created |X509| object may encode
|
328
|
+
// invalid versions. In that case, the function will return the invalid version,
|
329
|
+
// or -1 on overflow.
|
330
|
+
OPENSSL_EXPORT long X509_get_version(const X509 *x509);
|
466
331
|
|
467
|
-
|
332
|
+
// X509_set_version sets |x509|'s version to |version|, which should be one of
|
333
|
+
// the |X509V_VERSION_*| constants. It returns one on success and zero on error.
|
334
|
+
//
|
335
|
+
// If unsure, use |X509_VERSION_3|.
|
336
|
+
OPENSSL_EXPORT int X509_set_version(X509 *x509, long version);
|
468
337
|
|
469
|
-
|
470
|
-
|
471
|
-
#endif
|
338
|
+
// X509_get0_serialNumber returns |x509|'s serial number.
|
339
|
+
OPENSSL_EXPORT const ASN1_INTEGER *X509_get0_serialNumber(const X509 *x509);
|
472
340
|
|
473
|
-
//
|
474
|
-
//
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
341
|
+
// X509_set_serialNumber sets |x509|'s serial number to |serial|. It returns one
|
342
|
+
// on success and zero on error.
|
343
|
+
OPENSSL_EXPORT int X509_set_serialNumber(X509 *x509,
|
344
|
+
const ASN1_INTEGER *serial);
|
345
|
+
|
346
|
+
// X509_get0_notBefore returns |x509|'s notBefore time.
|
347
|
+
OPENSSL_EXPORT const ASN1_TIME *X509_get0_notBefore(const X509 *x509);
|
348
|
+
|
349
|
+
// X509_get0_notAfter returns |x509|'s notAfter time.
|
350
|
+
OPENSSL_EXPORT const ASN1_TIME *X509_get0_notAfter(const X509 *x509);
|
351
|
+
|
352
|
+
// X509_set1_notBefore sets |x509|'s notBefore time to |tm|. It returns one on
|
353
|
+
// success and zero on error.
|
354
|
+
OPENSSL_EXPORT int X509_set1_notBefore(X509 *x509, const ASN1_TIME *tm);
|
355
|
+
|
356
|
+
// X509_set1_notAfter sets |x509|'s notAfter time to |tm|. it returns one on
|
357
|
+
// success and zero on error.
|
358
|
+
OPENSSL_EXPORT int X509_set1_notAfter(X509 *x509, const ASN1_TIME *tm);
|
359
|
+
|
360
|
+
// X509_getm_notBefore returns a mutable pointer to |x509|'s notBefore time.
|
361
|
+
OPENSSL_EXPORT ASN1_TIME *X509_getm_notBefore(X509 *x509);
|
479
362
|
|
480
|
-
//
|
481
|
-
|
363
|
+
// X509_getm_notAfter returns a mutable pointer to |x509|'s notAfter time.
|
364
|
+
OPENSSL_EXPORT ASN1_TIME *X509_getm_notAfter(X509 *x);
|
365
|
+
|
366
|
+
// X509_get_notBefore returns |x509|'s notBefore time. Note this function is not
|
367
|
+
// const-correct for legacy reasons. Use |X509_get0_notBefore| or
|
482
368
|
// |X509_getm_notBefore| instead.
|
483
369
|
OPENSSL_EXPORT ASN1_TIME *X509_get_notBefore(const X509 *x509);
|
484
370
|
|
485
|
-
// X509_get_notAfter returns |x509|'s notAfter
|
371
|
+
// X509_get_notAfter returns |x509|'s notAfter time. Note this function is not
|
486
372
|
// const-correct for legacy reasons. Use |X509_get0_notAfter| or
|
487
373
|
// |X509_getm_notAfter| instead.
|
488
374
|
OPENSSL_EXPORT ASN1_TIME *X509_get_notAfter(const X509 *x509);
|
489
375
|
|
490
|
-
//
|
491
|
-
//
|
376
|
+
// X509_set_notBefore calls |X509_set1_notBefore|. Use |X509_set1_notBefore|
|
377
|
+
// instead.
|
378
|
+
OPENSSL_EXPORT int X509_set_notBefore(X509 *x509, const ASN1_TIME *tm);
|
379
|
+
|
380
|
+
// X509_set_notAfter calls |X509_set1_notAfter|. Use |X509_set1_notAfter|
|
381
|
+
// instead.
|
382
|
+
OPENSSL_EXPORT int X509_set_notAfter(X509 *x509, const ASN1_TIME *tm);
|
383
|
+
|
384
|
+
// X509_get0_uids sets |*out_issuer_uid| to a non-owning pointer to the
|
385
|
+
// issuerUID field of |x509|, or NULL if |x509| has no issuerUID. It similarly
|
386
|
+
// outputs |x509|'s subjectUID field to |*out_subject_uid|.
|
492
387
|
//
|
493
|
-
//
|
494
|
-
//
|
495
|
-
OPENSSL_EXPORT
|
388
|
+
// Callers may pass NULL to either |out_issuer_uid| or |out_subject_uid| to
|
389
|
+
// ignore the corresponding field.
|
390
|
+
OPENSSL_EXPORT void X509_get0_uids(const X509 *x509,
|
391
|
+
const ASN1_BIT_STRING **out_issuer_uid,
|
392
|
+
const ASN1_BIT_STRING **out_subject_uid);
|
496
393
|
|
497
394
|
// X509_extract_key is a legacy alias to |X509_get_pubkey|. Use
|
498
395
|
// |X509_get_pubkey| instead.
|
499
396
|
#define X509_extract_key(x) X509_get_pubkey(x)
|
500
397
|
|
501
|
-
//
|
502
|
-
//
|
503
|
-
//
|
398
|
+
// X509_get_pathlen returns path length constraint from the basic constraints
|
399
|
+
// extension in |x509|. (See RFC 5280, section 4.2.1.9.) It returns -1 if the
|
400
|
+
// constraint is not present, or if some extension in |x509| was invalid.
|
401
|
+
//
|
402
|
+
// Note that decoding an |X509| object will not check for invalid extensions. To
|
403
|
+
// detect the error case, call |X509_get_extensions_flags| and check the
|
404
|
+
// |EXFLAG_INVALID| bit.
|
405
|
+
OPENSSL_EXPORT long X509_get_pathlen(X509 *x509);
|
406
|
+
|
407
|
+
// X509_REQ_VERSION_1 is the version constant for |X509_REQ| objects. Note no
|
408
|
+
// other versions are defined.
|
409
|
+
#define X509_REQ_VERSION_1 0
|
410
|
+
|
411
|
+
// X509_REQ_get_version returns the numerical value of |req|'s version. This
|
412
|
+
// will be |X509_REQ_VERSION_1| for valid certificate requests. If |req| is
|
413
|
+
// invalid, it may return another value, or -1 on overflow.
|
414
|
+
//
|
415
|
+
// TODO(davidben): Enforce the version number in the parser.
|
504
416
|
OPENSSL_EXPORT long X509_REQ_get_version(const X509_REQ *req);
|
505
417
|
|
506
418
|
// X509_REQ_get_subject_name returns |req|'s subject name. Note this function is
|
@@ -513,51 +425,60 @@ OPENSSL_EXPORT X509_NAME *X509_REQ_get_subject_name(const X509_REQ *req);
|
|
513
425
|
// X509_name_cmp is a legacy alias for |X509_NAME_cmp|.
|
514
426
|
#define X509_name_cmp(a, b) X509_NAME_cmp((a), (b))
|
515
427
|
|
516
|
-
|
517
|
-
|
518
|
-
|
428
|
+
#define X509_CRL_VERSION_1 0
|
429
|
+
#define X509_CRL_VERSION_2 1
|
430
|
+
|
431
|
+
// X509_CRL_get_version returns the numerical value of |crl|'s version. Callers
|
432
|
+
// may compare the result to |X509_CRL_VERSION_*| constants. If |crl| is
|
433
|
+
// invalid, it may return another value, or -1 on overflow.
|
434
|
+
//
|
435
|
+
// TODO(davidben): Enforce the version number in the parser.
|
519
436
|
OPENSSL_EXPORT long X509_CRL_get_version(const X509_CRL *crl);
|
520
437
|
|
521
438
|
// X509_CRL_get0_lastUpdate returns |crl|'s lastUpdate time.
|
522
439
|
OPENSSL_EXPORT const ASN1_TIME *X509_CRL_get0_lastUpdate(const X509_CRL *crl);
|
523
440
|
|
524
|
-
//
|
441
|
+
// X509_CRL_get0_nextUpdate returns |crl|'s nextUpdate time, or NULL if |crl|
|
442
|
+
// has none.
|
525
443
|
OPENSSL_EXPORT const ASN1_TIME *X509_CRL_get0_nextUpdate(const X509_CRL *crl);
|
526
444
|
|
445
|
+
// X509_CRL_set1_lastUpdate sets |crl|'s lastUpdate time to |tm|. It returns one
|
446
|
+
// on success and zero on error.
|
447
|
+
OPENSSL_EXPORT int X509_CRL_set1_lastUpdate(X509_CRL *crl, const ASN1_TIME *tm);
|
448
|
+
|
449
|
+
// X509_CRL_set1_nextUpdate sets |crl|'s nextUpdate time to |tm|. It returns one
|
450
|
+
// on success and zero on error.
|
451
|
+
OPENSSL_EXPORT int X509_CRL_set1_nextUpdate(X509_CRL *crl, const ASN1_TIME *tm);
|
452
|
+
|
453
|
+
// The following symbols are deprecated aliases to |X509_CRL_set1_*|.
|
454
|
+
#define X509_CRL_set_lastUpdate X509_CRL_set1_lastUpdate
|
455
|
+
#define X509_CRL_set_nextUpdate X509_CRL_set1_nextUpdate
|
456
|
+
|
527
457
|
// X509_CRL_get_lastUpdate returns a mutable pointer to |crl|'s lastUpdate time.
|
528
|
-
// Use |X509_CRL_get0_lastUpdate| or |
|
458
|
+
// Use |X509_CRL_get0_lastUpdate| or |X509_CRL_set1_lastUpdate| instead.
|
529
459
|
OPENSSL_EXPORT ASN1_TIME *X509_CRL_get_lastUpdate(X509_CRL *crl);
|
530
460
|
|
531
|
-
// X509_CRL_get_nextUpdate returns a mutable pointer to |crl|'s nextUpdate time
|
532
|
-
//
|
461
|
+
// X509_CRL_get_nextUpdate returns a mutable pointer to |crl|'s nextUpdate time,
|
462
|
+
// or NULL if |crl| has none. Use |X509_CRL_get0_nextUpdate| or
|
463
|
+
// |X509_CRL_set1_nextUpdate| instead.
|
533
464
|
OPENSSL_EXPORT ASN1_TIME *X509_CRL_get_nextUpdate(X509_CRL *crl);
|
534
465
|
|
535
466
|
// X509_CRL_get_issuer returns |crl|'s issuer name. Note this function is not
|
536
467
|
// const-correct for legacy reasons.
|
537
468
|
OPENSSL_EXPORT X509_NAME *X509_CRL_get_issuer(const X509_CRL *crl);
|
538
469
|
|
539
|
-
// X509_CRL_get_REVOKED returns the list of revoked certificates in |crl
|
470
|
+
// X509_CRL_get_REVOKED returns the list of revoked certificates in |crl|, or
|
471
|
+
// NULL if |crl| omits it.
|
540
472
|
//
|
541
473
|
// TOOD(davidben): This function was originally a macro, without clear const
|
542
474
|
// semantics. It should take a const input and give const output, but the latter
|
543
475
|
// would break existing callers. For now, we match upstream.
|
544
476
|
OPENSSL_EXPORT STACK_OF(X509_REVOKED) *X509_CRL_get_REVOKED(X509_CRL *crl);
|
545
477
|
|
546
|
-
//
|
547
|
-
//
|
548
|
-
|
549
|
-
|
550
|
-
// present in OpenSSL and constrains some improvements to the library.
|
551
|
-
OPENSSL_EXPORT void X509_CINF_set_modified(X509_CINF *cinf);
|
552
|
-
|
553
|
-
// X509_CINF_get_signature returns the signature algorithm in |cinf|. Note this
|
554
|
-
// isn't the signature itself, but the extra copy of the signature algorithm
|
555
|
-
// in the TBSCertificate.
|
556
|
-
//
|
557
|
-
// This function is deprecated and may be removed in the future. It is not
|
558
|
-
// present in OpenSSL and constrains some improvements to the library. Use
|
559
|
-
// |X509_get0_tbs_sigalg| instead.
|
560
|
-
OPENSSL_EXPORT const X509_ALGOR *X509_CINF_get_signature(const X509_CINF *cinf);
|
478
|
+
// X509_CRL_get0_extensions returns |crl|'s extension list, or NULL if |crl|
|
479
|
+
// omits it.
|
480
|
+
OPENSSL_EXPORT const STACK_OF(X509_EXTENSION) *X509_CRL_get0_extensions(
|
481
|
+
const X509_CRL *crl);
|
561
482
|
|
562
483
|
// X509_SIG_get0 sets |*out_alg| and |*out_digest| to non-owning pointers to
|
563
484
|
// |sig|'s algorithm and digest fields, respectively. Either |out_alg| and
|
@@ -586,48 +507,153 @@ OPENSSL_EXPORT void *X509_CRL_get_meth_data(X509_CRL *crl);
|
|
586
507
|
// object.
|
587
508
|
OPENSSL_EXPORT X509_PUBKEY *X509_get_X509_PUBKEY(const X509 *x509);
|
588
509
|
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
OPENSSL_EXPORT
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
510
|
+
// X509_verify_cert_error_string returns |err| as a human-readable string, where
|
511
|
+
// |err| should be one of the |X509_V_*| values. If |err| is unknown, it returns
|
512
|
+
// a default description.
|
513
|
+
OPENSSL_EXPORT const char *X509_verify_cert_error_string(long err);
|
514
|
+
|
515
|
+
// X509_verify checks that |x509| has a valid signature by |pkey|. It returns
|
516
|
+
// one if the signature is valid and zero otherwise. Note this function only
|
517
|
+
// checks the signature itself and does not perform a full certificate
|
518
|
+
// validation.
|
519
|
+
OPENSSL_EXPORT int X509_verify(X509 *x509, EVP_PKEY *pkey);
|
520
|
+
|
521
|
+
// X509_REQ_verify checks that |req| has a valid signature by |pkey|. It returns
|
522
|
+
// one if the signature is valid and zero otherwise.
|
523
|
+
OPENSSL_EXPORT int X509_REQ_verify(X509_REQ *req, EVP_PKEY *pkey);
|
524
|
+
|
525
|
+
// X509_CRL_verify checks that |crl| has a valid signature by |pkey|. It returns
|
526
|
+
// one if the signature is valid and zero otherwise.
|
527
|
+
OPENSSL_EXPORT int X509_CRL_verify(X509_CRL *crl, EVP_PKEY *pkey);
|
528
|
+
|
529
|
+
// NETSCAPE_SPKI_verify checks that |spki| has a valid signature by |pkey|. It
|
530
|
+
// returns one if the signature is valid and zero otherwise.
|
531
|
+
OPENSSL_EXPORT int NETSCAPE_SPKI_verify(NETSCAPE_SPKI *spki, EVP_PKEY *pkey);
|
532
|
+
|
533
|
+
// NETSCAPE_SPKI_b64_decode decodes |len| bytes from |str| as a base64-encoded
|
534
|
+
// Netscape signed public key and challenge (SPKAC) structure. It returns a
|
535
|
+
// newly-allocated |NETSCAPE_SPKI| structure with the result, or NULL on error.
|
536
|
+
// If |len| is 0 or negative, the length is calculated with |strlen| and |str|
|
537
|
+
// must be a NUL-terminated C string.
|
598
538
|
OPENSSL_EXPORT NETSCAPE_SPKI *NETSCAPE_SPKI_b64_decode(const char *str,
|
599
539
|
int len);
|
600
|
-
OPENSSL_EXPORT char *NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *x);
|
601
|
-
OPENSSL_EXPORT EVP_PKEY *NETSCAPE_SPKI_get_pubkey(NETSCAPE_SPKI *x);
|
602
|
-
OPENSSL_EXPORT int NETSCAPE_SPKI_set_pubkey(NETSCAPE_SPKI *x, EVP_PKEY *pkey);
|
603
|
-
|
604
|
-
OPENSSL_EXPORT int NETSCAPE_SPKI_print(BIO *out, NETSCAPE_SPKI *spki);
|
605
540
|
|
606
|
-
|
541
|
+
// NETSCAPE_SPKI_b64_encode encodes |spki| as a base64-encoded Netscape signed
|
542
|
+
// public key and challenge (SPKAC) structure. It returns a newly-allocated
|
543
|
+
// NUL-terminated C string with the result, or NULL on error. The caller must
|
544
|
+
// release the memory with |OPENSSL_free| when done.
|
545
|
+
OPENSSL_EXPORT char *NETSCAPE_SPKI_b64_encode(NETSCAPE_SPKI *spki);
|
546
|
+
|
547
|
+
// NETSCAPE_SPKI_get_pubkey decodes and returns the public key in |spki| as an
|
548
|
+
// |EVP_PKEY|, or NULL on error. The caller takes ownership of the resulting
|
549
|
+
// pointer and must call |EVP_PKEY_free| when done.
|
550
|
+
OPENSSL_EXPORT EVP_PKEY *NETSCAPE_SPKI_get_pubkey(NETSCAPE_SPKI *spki);
|
551
|
+
|
552
|
+
// NETSCAPE_SPKI_set_pubkey sets |spki|'s public key to |pkey|. It returns one
|
553
|
+
// on success or zero on error. This function does not take ownership of |pkey|,
|
554
|
+
// so the caller may continue to manage its lifetime independently of |spki|.
|
555
|
+
OPENSSL_EXPORT int NETSCAPE_SPKI_set_pubkey(NETSCAPE_SPKI *spki,
|
556
|
+
EVP_PKEY *pkey);
|
557
|
+
|
558
|
+
// X509_signature_dump writes a human-readable representation of |sig| to |bio|,
|
559
|
+
// indented with |indent| spaces. It returns one on success and zero on error.
|
560
|
+
OPENSSL_EXPORT int X509_signature_dump(BIO *bio, const ASN1_STRING *sig,
|
607
561
|
int indent);
|
608
|
-
|
562
|
+
|
563
|
+
// X509_signature_print writes a human-readable representation of |alg| and
|
564
|
+
// |sig| to |bio|. It returns one on success and zero on error.
|
565
|
+
OPENSSL_EXPORT int X509_signature_print(BIO *bio, const X509_ALGOR *alg,
|
609
566
|
const ASN1_STRING *sig);
|
610
567
|
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
OPENSSL_EXPORT int
|
616
|
-
|
617
|
-
|
568
|
+
// X509_sign signs |x509| with |pkey| and replaces the signature algorithm and
|
569
|
+
// signature fields. It returns one on success and zero on error. This function
|
570
|
+
// uses digest algorithm |md|, or |pkey|'s default if NULL. Other signing
|
571
|
+
// parameters use |pkey|'s defaults. To customize them, use |X509_sign_ctx|.
|
572
|
+
OPENSSL_EXPORT int X509_sign(X509 *x509, EVP_PKEY *pkey, const EVP_MD *md);
|
573
|
+
|
574
|
+
// X509_sign_ctx signs |x509| with |ctx| and replaces the signature algorithm
|
575
|
+
// and signature fields. It returns one on success and zero on error. The
|
576
|
+
// signature algorithm and parameters come from |ctx|, which must have been
|
577
|
+
// initialized with |EVP_DigestSignInit|. The caller should configure the
|
578
|
+
// corresponding |EVP_PKEY_CTX| before calling this function.
|
579
|
+
OPENSSL_EXPORT int X509_sign_ctx(X509 *x509, EVP_MD_CTX *ctx);
|
580
|
+
|
581
|
+
// X509_REQ_sign signs |req| with |pkey| and replaces the signature algorithm
|
582
|
+
// and signature fields. It returns one on success and zero on error. This
|
583
|
+
// function uses digest algorithm |md|, or |pkey|'s default if NULL. Other
|
584
|
+
// signing parameters use |pkey|'s defaults. To customize them, use
|
585
|
+
// |X509_REQ_sign_ctx|.
|
586
|
+
OPENSSL_EXPORT int X509_REQ_sign(X509_REQ *req, EVP_PKEY *pkey,
|
587
|
+
const EVP_MD *md);
|
588
|
+
|
589
|
+
// X509_REQ_sign_ctx signs |req| with |ctx| and replaces the signature algorithm
|
590
|
+
// and signature fields. It returns one on success and zero on error. The
|
591
|
+
// signature algorithm and parameters come from |ctx|, which must have been
|
592
|
+
// initialized with |EVP_DigestSignInit|. The caller should configure the
|
593
|
+
// corresponding |EVP_PKEY_CTX| before calling this function.
|
594
|
+
OPENSSL_EXPORT int X509_REQ_sign_ctx(X509_REQ *req, EVP_MD_CTX *ctx);
|
595
|
+
|
596
|
+
// X509_CRL_sign signs |crl| with |pkey| and replaces the signature algorithm
|
597
|
+
// and signature fields. It returns one on success and zero on error. This
|
598
|
+
// function uses digest algorithm |md|, or |pkey|'s default if NULL. Other
|
599
|
+
// signing parameters use |pkey|'s defaults. To customize them, use
|
600
|
+
// |X509_CRL_sign_ctx|.
|
601
|
+
OPENSSL_EXPORT int X509_CRL_sign(X509_CRL *crl, EVP_PKEY *pkey,
|
602
|
+
const EVP_MD *md);
|
603
|
+
|
604
|
+
// X509_CRL_sign_ctx signs |crl| with |ctx| and replaces the signature algorithm
|
605
|
+
// and signature fields. It returns one on success and zero on error. The
|
606
|
+
// signature algorithm and parameters come from |ctx|, which must have been
|
607
|
+
// initialized with |EVP_DigestSignInit|. The caller should configure the
|
608
|
+
// corresponding |EVP_PKEY_CTX| before calling this function.
|
609
|
+
OPENSSL_EXPORT int X509_CRL_sign_ctx(X509_CRL *crl, EVP_MD_CTX *ctx);
|
610
|
+
|
611
|
+
// NETSCAPE_SPKI_sign signs |spki| with |pkey| and replaces the signature
|
612
|
+
// algorithm and signature fields. It returns one on success and zero on error.
|
613
|
+
// This function uses digest algorithm |md|, or |pkey|'s default if NULL. Other
|
614
|
+
// signing parameters use |pkey|'s defaults.
|
615
|
+
OPENSSL_EXPORT int NETSCAPE_SPKI_sign(NETSCAPE_SPKI *spki, EVP_PKEY *pkey,
|
618
616
|
const EVP_MD *md);
|
619
617
|
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
618
|
+
// X509_pubkey_digest hashes the DER encoding of |x509|'s subjectPublicKeyInfo
|
619
|
+
// field with |md| and writes the result to |out|. |EVP_MD_CTX_size| bytes are
|
620
|
+
// written, which is at most |EVP_MAX_MD_SIZE|. If |out_len| is not NULL,
|
621
|
+
// |*out_len| is set to the number of bytes written. This function returns one
|
622
|
+
// on success and zero on error.
|
623
|
+
OPENSSL_EXPORT int X509_pubkey_digest(const X509 *x509, const EVP_MD *md,
|
624
|
+
uint8_t *out, unsigned *out_len);
|
625
|
+
|
626
|
+
// X509_digest hashes |x509|'s DER encoding with |md| and writes the result to
|
627
|
+
// |out|. |EVP_MD_CTX_size| bytes are written, which is at most
|
628
|
+
// |EVP_MAX_MD_SIZE|. If |out_len| is not NULL, |*out_len| is set to the number
|
629
|
+
// of bytes written. This function returns one on success and zero on error.
|
630
|
+
// Note this digest covers the entire certificate, not just the signed portion.
|
631
|
+
OPENSSL_EXPORT int X509_digest(const X509 *x509, const EVP_MD *md, uint8_t *out,
|
632
|
+
unsigned *out_len);
|
633
|
+
|
634
|
+
// X509_CRL_digest hashes |crl|'s DER encoding with |md| and writes the result
|
635
|
+
// to |out|. |EVP_MD_CTX_size| bytes are written, which is at most
|
636
|
+
// |EVP_MAX_MD_SIZE|. If |out_len| is not NULL, |*out_len| is set to the number
|
637
|
+
// of bytes written. This function returns one on success and zero on error.
|
638
|
+
// Note this digest covers the entire CRL, not just the signed portion.
|
639
|
+
OPENSSL_EXPORT int X509_CRL_digest(const X509_CRL *crl, const EVP_MD *md,
|
640
|
+
uint8_t *out, unsigned *out_len);
|
641
|
+
|
642
|
+
// X509_REQ_digest hashes |req|'s DER encoding with |md| and writes the result
|
643
|
+
// to |out|. |EVP_MD_CTX_size| bytes are written, which is at most
|
644
|
+
// |EVP_MAX_MD_SIZE|. If |out_len| is not NULL, |*out_len| is set to the number
|
645
|
+
// of bytes written. This function returns one on success and zero on error.
|
646
|
+
// Note this digest covers the entire certificate request, not just the signed
|
647
|
+
// portion.
|
648
|
+
OPENSSL_EXPORT int X509_REQ_digest(const X509_REQ *req, const EVP_MD *md,
|
649
|
+
uint8_t *out, unsigned *out_len);
|
650
|
+
|
651
|
+
// X509_NAME_digest hashes |name|'s DER encoding with |md| and writes the result
|
652
|
+
// to |out|. |EVP_MD_CTX_size| bytes are written, which is at most
|
653
|
+
// |EVP_MAX_MD_SIZE|. If |out_len| is not NULL, |*out_len| is set to the number
|
654
|
+
// of bytes written. This function returns one on success and zero on error.
|
655
|
+
OPENSSL_EXPORT int X509_NAME_digest(const X509_NAME *name, const EVP_MD *md,
|
656
|
+
uint8_t *out, unsigned *out_len);
|
631
657
|
|
632
658
|
// X509_parse_from_buffer parses an X.509 structure from |buf| and returns a
|
633
659
|
// fresh X509 or NULL on error. There must not be any trailing data in |buf|.
|
@@ -635,7 +661,6 @@ OPENSSL_EXPORT int X509_NAME_digest(const X509_NAME *data, const EVP_MD *type,
|
|
635
661
|
// copying parts of it as a normal |d2i_X509| call would do.
|
636
662
|
OPENSSL_EXPORT X509 *X509_parse_from_buffer(CRYPTO_BUFFER *buf);
|
637
663
|
|
638
|
-
#ifndef OPENSSL_NO_FP_API
|
639
664
|
OPENSSL_EXPORT X509 *d2i_X509_fp(FILE *fp, X509 **x509);
|
640
665
|
OPENSSL_EXPORT int i2d_X509_fp(FILE *fp, X509 *x509);
|
641
666
|
OPENSSL_EXPORT X509_CRL *d2i_X509_CRL_fp(FILE *fp, X509_CRL **crl);
|
@@ -669,7 +694,6 @@ OPENSSL_EXPORT int i2d_PrivateKey_fp(FILE *fp, EVP_PKEY *pkey);
|
|
669
694
|
OPENSSL_EXPORT EVP_PKEY *d2i_PrivateKey_fp(FILE *fp, EVP_PKEY **a);
|
670
695
|
OPENSSL_EXPORT int i2d_PUBKEY_fp(FILE *fp, EVP_PKEY *pkey);
|
671
696
|
OPENSSL_EXPORT EVP_PKEY *d2i_PUBKEY_fp(FILE *fp, EVP_PKEY **a);
|
672
|
-
#endif
|
673
697
|
|
674
698
|
OPENSSL_EXPORT X509 *d2i_X509_bio(BIO *bp, X509 **x509);
|
675
699
|
OPENSSL_EXPORT int i2d_X509_bio(BIO *bp, X509 *x509);
|
@@ -714,12 +738,54 @@ OPENSSL_EXPORT X509_CRL *X509_CRL_dup(X509_CRL *crl);
|
|
714
738
|
OPENSSL_EXPORT X509_REVOKED *X509_REVOKED_dup(X509_REVOKED *rev);
|
715
739
|
OPENSSL_EXPORT X509_REQ *X509_REQ_dup(X509_REQ *req);
|
716
740
|
OPENSSL_EXPORT X509_ALGOR *X509_ALGOR_dup(X509_ALGOR *xn);
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
741
|
+
|
742
|
+
// X509_ALGOR_set0 sets |alg| to an AlgorithmIdentifier with algorithm |obj| and
|
743
|
+
// parameter determined by |param_type| and |param_value|. It returns one on
|
744
|
+
// success and zero on error. This function takes ownership of |obj| and
|
745
|
+
// |param_value| on success.
|
746
|
+
//
|
747
|
+
// If |param_type| is |V_ASN1_UNDEF|, the parameter is omitted. If |param_type|
|
748
|
+
// is zero, the parameter is left unchanged. Otherwise, |param_type| and
|
749
|
+
// |param_value| are interpreted as in |ASN1_TYPE_set|.
|
750
|
+
//
|
751
|
+
// Note omitting the parameter (|V_ASN1_UNDEF|) and encoding an explicit NULL
|
752
|
+
// value (|V_ASN1_NULL|) are different. Some algorithms require one and some the
|
753
|
+
// other. Consult the relevant specification before calling this function. The
|
754
|
+
// correct parameter for an RSASSA-PKCS1-v1_5 signature is |V_ASN1_NULL|. The
|
755
|
+
// correct one for an ECDSA or Ed25519 signature is |V_ASN1_UNDEF|.
|
756
|
+
OPENSSL_EXPORT int X509_ALGOR_set0(X509_ALGOR *alg, ASN1_OBJECT *obj,
|
757
|
+
int param_type, void *param_value);
|
758
|
+
|
759
|
+
// X509_ALGOR_get0 sets |*out_obj| to the |alg|'s algorithm. If |alg|'s
|
760
|
+
// parameter is omitted, it sets |*out_param_type| and |*out_param_value| to
|
761
|
+
// |V_ASN1_UNDEF| and NULL. Otherwise, it sets |*out_param_type| and
|
762
|
+
// |*out_param_value| to the parameter, using the same representation as
|
763
|
+
// |ASN1_TYPE_set0|. See |ASN1_TYPE_set0| and |ASN1_TYPE| for details.
|
764
|
+
//
|
765
|
+
// Callers that require the parameter in serialized form should, after checking
|
766
|
+
// for |V_ASN1_UNDEF|, use |ASN1_TYPE_set1| and |d2i_ASN1_TYPE|, rather than
|
767
|
+
// inspecting |*out_param_value|.
|
768
|
+
//
|
769
|
+
// Each of |out_obj|, |out_param_type|, and |out_param_value| may be NULL to
|
770
|
+
// ignore the output. If |out_param_type| is NULL, |out_param_value| is ignored.
|
771
|
+
//
|
772
|
+
// WARNING: If |*out_param_type| is set to |V_ASN1_UNDEF|, OpenSSL and older
|
773
|
+
// revisions of BoringSSL leave |*out_param_value| unset rather than setting it
|
774
|
+
// to NULL. Callers that support both OpenSSL and BoringSSL should not assume
|
775
|
+
// |*out_param_value| is uniformly initialized.
|
776
|
+
OPENSSL_EXPORT void X509_ALGOR_get0(const ASN1_OBJECT **out_obj,
|
777
|
+
int *out_param_type,
|
778
|
+
const void **out_param_value,
|
779
|
+
const X509_ALGOR *alg);
|
780
|
+
|
781
|
+
// X509_ALGOR_set_md sets |alg| to the hash function |md|. Note this
|
782
|
+
// AlgorithmIdentifier represents the hash function itself, not a signature
|
783
|
+
// algorithm that uses |md|.
|
722
784
|
OPENSSL_EXPORT void X509_ALGOR_set_md(X509_ALGOR *alg, const EVP_MD *md);
|
785
|
+
|
786
|
+
// X509_ALGOR_cmp returns zero if |a| and |b| are equal, and some non-zero value
|
787
|
+
// otherwise. Note this function can only be used for equality checks, not an
|
788
|
+
// ordering.
|
723
789
|
OPENSSL_EXPORT int X509_ALGOR_cmp(const X509_ALGOR *a, const X509_ALGOR *b);
|
724
790
|
|
725
791
|
OPENSSL_EXPORT X509_NAME *X509_NAME_dup(X509_NAME *xn);
|
@@ -729,12 +795,30 @@ OPENSSL_EXPORT int X509_NAME_ENTRY_set(const X509_NAME_ENTRY *ne);
|
|
729
795
|
OPENSSL_EXPORT int X509_NAME_get0_der(X509_NAME *nm, const unsigned char **pder,
|
730
796
|
size_t *pderlen);
|
731
797
|
|
798
|
+
// X509_cmp_time compares |s| against |*t|. On success, it returns a negative
|
799
|
+
// number if |s| <= |*t| and a positive number if |s| > |*t|. On error, it
|
800
|
+
// returns zero. If |t| is NULL, it uses the current time instead of |*t|.
|
801
|
+
//
|
802
|
+
// WARNING: Unlike most comparison functions, this function returns zero on
|
803
|
+
// error, not equality.
|
732
804
|
OPENSSL_EXPORT int X509_cmp_time(const ASN1_TIME *s, time_t *t);
|
805
|
+
|
806
|
+
// X509_cmp_current_time behaves like |X509_cmp_time| but compares |s| against
|
807
|
+
// the current time.
|
733
808
|
OPENSSL_EXPORT int X509_cmp_current_time(const ASN1_TIME *s);
|
734
|
-
|
809
|
+
|
810
|
+
// X509_time_adj calls |X509_time_adj_ex| with |offset_day| equal to zero.
|
811
|
+
OPENSSL_EXPORT ASN1_TIME *X509_time_adj(ASN1_TIME *s, long offset_sec,
|
812
|
+
time_t *t);
|
813
|
+
|
814
|
+
// X509_time_adj_ex behaves like |ASN1_TIME_adj|, but adds an offset to |*t|. If
|
815
|
+
// |t| is NULL, it uses the current time instead of |*t|.
|
735
816
|
OPENSSL_EXPORT ASN1_TIME *X509_time_adj_ex(ASN1_TIME *s, int offset_day,
|
736
817
|
long offset_sec, time_t *t);
|
737
|
-
|
818
|
+
|
819
|
+
// X509_gmtime_adj behaves like |X509_time_adj_ex| but adds |offset_sec| to the
|
820
|
+
// current time.
|
821
|
+
OPENSSL_EXPORT ASN1_TIME *X509_gmtime_adj(ASN1_TIME *s, long offset_sec);
|
738
822
|
|
739
823
|
OPENSSL_EXPORT const char *X509_get_default_cert_area(void);
|
740
824
|
OPENSSL_EXPORT const char *X509_get_default_cert_dir(void);
|
@@ -745,22 +829,32 @@ OPENSSL_EXPORT const char *X509_get_default_private_dir(void);
|
|
745
829
|
|
746
830
|
OPENSSL_EXPORT X509_REQ *X509_to_X509_REQ(X509 *x, EVP_PKEY *pkey,
|
747
831
|
const EVP_MD *md);
|
748
|
-
OPENSSL_EXPORT X509 *X509_REQ_to_X509(X509_REQ *r, int days, EVP_PKEY *pkey);
|
749
832
|
|
750
833
|
DECLARE_ASN1_ENCODE_FUNCTIONS(X509_ALGORS, X509_ALGORS, X509_ALGORS)
|
751
|
-
DECLARE_ASN1_FUNCTIONS(X509_VAL)
|
752
834
|
|
753
835
|
DECLARE_ASN1_FUNCTIONS(X509_PUBKEY)
|
754
836
|
|
837
|
+
// X509_PUBKEY_set serializes |pkey| into a newly-allocated |X509_PUBKEY|
|
838
|
+
// structure. On success, it frees |*x|, sets |*x| to the new object, and
|
839
|
+
// returns one. Otherwise, it returns zero.
|
755
840
|
OPENSSL_EXPORT int X509_PUBKEY_set(X509_PUBKEY **x, EVP_PKEY *pkey);
|
841
|
+
|
842
|
+
// X509_PUBKEY_get decodes the public key in |key| and returns an |EVP_PKEY| on
|
843
|
+
// success, or NULL on error. The caller must release the result with
|
844
|
+
// |EVP_PKEY_free| when done. The |EVP_PKEY| is cached in |key|, so callers must
|
845
|
+
// not mutate the result.
|
756
846
|
OPENSSL_EXPORT EVP_PKEY *X509_PUBKEY_get(X509_PUBKEY *key);
|
757
847
|
|
758
848
|
DECLARE_ASN1_FUNCTIONS(X509_SIG)
|
759
|
-
DECLARE_ASN1_FUNCTIONS(X509_REQ_INFO)
|
760
849
|
DECLARE_ASN1_FUNCTIONS(X509_REQ)
|
761
850
|
|
762
851
|
DECLARE_ASN1_FUNCTIONS(X509_ATTRIBUTE)
|
763
|
-
|
852
|
+
|
853
|
+
// X509_ATTRIBUTE_create returns a newly-allocated |X509_ATTRIBUTE|, or NULL on
|
854
|
+
// error. The attribute has type |nid| and contains a single value determined by
|
855
|
+
// |attrtype| and |value|, which are interpreted as in |ASN1_TYPE_set|. Note
|
856
|
+
// this function takes ownership of |value|.
|
857
|
+
OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create(int nid, int attrtype,
|
764
858
|
void *value);
|
765
859
|
|
766
860
|
DECLARE_ASN1_FUNCTIONS(X509_EXTENSION)
|
@@ -770,15 +864,15 @@ DECLARE_ASN1_FUNCTIONS(X509_NAME_ENTRY)
|
|
770
864
|
|
771
865
|
DECLARE_ASN1_FUNCTIONS(X509_NAME)
|
772
866
|
|
867
|
+
// X509_NAME_set makes a copy of |name|. On success, it frees |*xn|, sets |*xn|
|
868
|
+
// to the copy, and returns one. Otherwise, it returns zero.
|
773
869
|
OPENSSL_EXPORT int X509_NAME_set(X509_NAME **xn, X509_NAME *name);
|
774
870
|
|
775
|
-
DECLARE_ASN1_FUNCTIONS(X509_CINF)
|
776
|
-
|
777
871
|
DECLARE_ASN1_FUNCTIONS(X509)
|
778
872
|
DECLARE_ASN1_FUNCTIONS(X509_CERT_AUX)
|
779
873
|
|
780
|
-
// X509_up_ref adds one to the reference count of |
|
781
|
-
OPENSSL_EXPORT int X509_up_ref(X509 *
|
874
|
+
// X509_up_ref adds one to the reference count of |x509| and returns one.
|
875
|
+
OPENSSL_EXPORT int X509_up_ref(X509 *x509);
|
782
876
|
|
783
877
|
OPENSSL_EXPORT int X509_get_ex_new_index(long argl, void *argp,
|
784
878
|
CRYPTO_EX_unused *unused,
|
@@ -790,14 +884,59 @@ OPENSSL_EXPORT int i2d_X509_AUX(X509 *a, unsigned char **pp);
|
|
790
884
|
OPENSSL_EXPORT X509 *d2i_X509_AUX(X509 **a, const unsigned char **pp,
|
791
885
|
long length);
|
792
886
|
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
797
|
-
|
887
|
+
// i2d_re_X509_tbs serializes the TBSCertificate portion of |x509|, as described
|
888
|
+
// in |i2d_SAMPLE|.
|
889
|
+
//
|
890
|
+
// This function re-encodes the TBSCertificate and may not reflect |x509|'s
|
891
|
+
// original encoding. It may be used to manually generate a signature for a new
|
892
|
+
// certificate. To verify certificates, use |i2d_X509_tbs| instead.
|
893
|
+
OPENSSL_EXPORT int i2d_re_X509_tbs(X509 *x509, unsigned char **outp);
|
798
894
|
|
799
|
-
|
800
|
-
|
895
|
+
// i2d_X509_tbs serializes the TBSCertificate portion of |x509|, as described in
|
896
|
+
// |i2d_SAMPLE|.
|
897
|
+
//
|
898
|
+
// This function preserves the original encoding of the TBSCertificate and may
|
899
|
+
// not reflect modifications made to |x509|. It may be used to manually verify
|
900
|
+
// the signature of an existing certificate. To generate certificates, use
|
901
|
+
// |i2d_re_X509_tbs| instead.
|
902
|
+
OPENSSL_EXPORT int i2d_X509_tbs(X509 *x509, unsigned char **outp);
|
903
|
+
|
904
|
+
// X509_set1_signature_algo sets |x509|'s signature algorithm to |algo| and
|
905
|
+
// returns one on success or zero on error. It updates both the signature field
|
906
|
+
// of the TBSCertificate structure, and the signatureAlgorithm field of the
|
907
|
+
// Certificate.
|
908
|
+
OPENSSL_EXPORT int X509_set1_signature_algo(X509 *x509, const X509_ALGOR *algo);
|
909
|
+
|
910
|
+
// X509_set1_signature_value sets |x509|'s signature to a copy of the |sig_len|
|
911
|
+
// bytes pointed by |sig|. It returns one on success and zero on error.
|
912
|
+
//
|
913
|
+
// Due to a specification error, X.509 certificates store signatures in ASN.1
|
914
|
+
// BIT STRINGs, but signature algorithms return byte strings rather than bit
|
915
|
+
// strings. This function creates a BIT STRING containing a whole number of
|
916
|
+
// bytes, with the bit order matching the DER encoding. This matches the
|
917
|
+
// encoding used by all X.509 signature algorithms.
|
918
|
+
OPENSSL_EXPORT int X509_set1_signature_value(X509 *x509, const uint8_t *sig,
|
919
|
+
size_t sig_len);
|
920
|
+
|
921
|
+
// X509_get0_signature sets |*out_sig| and |*out_alg| to the signature and
|
922
|
+
// signature algorithm of |x509|, respectively. Either output pointer may be
|
923
|
+
// NULL to ignore the value.
|
924
|
+
//
|
925
|
+
// This function outputs the outer signature algorithm. For the one in the
|
926
|
+
// TBSCertificate, see |X509_get0_tbs_sigalg|. Certificates with mismatched
|
927
|
+
// signature algorithms will successfully parse, but they will be rejected when
|
928
|
+
// verifying.
|
929
|
+
OPENSSL_EXPORT void X509_get0_signature(const ASN1_BIT_STRING **out_sig,
|
930
|
+
const X509_ALGOR **out_alg,
|
931
|
+
const X509 *x509);
|
932
|
+
|
933
|
+
// X509_get_signature_nid returns the NID corresponding to |x509|'s signature
|
934
|
+
// algorithm, or |NID_undef| if the signature algorithm does not correspond to
|
935
|
+
// a known NID.
|
936
|
+
OPENSSL_EXPORT int X509_get_signature_nid(const X509 *x509);
|
937
|
+
|
938
|
+
OPENSSL_EXPORT int X509_alias_set1(X509 *x, const unsigned char *name, int len);
|
939
|
+
OPENSSL_EXPORT int X509_keyid_set1(X509 *x, const unsigned char *id, int len);
|
801
940
|
OPENSSL_EXPORT unsigned char *X509_alias_get0(X509 *x, int *len);
|
802
941
|
OPENSSL_EXPORT unsigned char *X509_keyid_get0(X509 *x, int *len);
|
803
942
|
OPENSSL_EXPORT int (*X509_TRUST_set_default(int (*trust)(int, X509 *,
|
@@ -810,7 +949,6 @@ OPENSSL_EXPORT void X509_trust_clear(X509 *x);
|
|
810
949
|
OPENSSL_EXPORT void X509_reject_clear(X509 *x);
|
811
950
|
|
812
951
|
DECLARE_ASN1_FUNCTIONS(X509_REVOKED)
|
813
|
-
DECLARE_ASN1_FUNCTIONS(X509_CRL_INFO)
|
814
952
|
DECLARE_ASN1_FUNCTIONS(X509_CRL)
|
815
953
|
|
816
954
|
OPENSSL_EXPORT int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev);
|
@@ -825,10 +963,9 @@ OPENSSL_EXPORT void X509_PKEY_free(X509_PKEY *a);
|
|
825
963
|
DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKI)
|
826
964
|
DECLARE_ASN1_FUNCTIONS(NETSCAPE_SPKAC)
|
827
965
|
|
828
|
-
#ifndef OPENSSL_NO_EVP
|
829
966
|
OPENSSL_EXPORT X509_INFO *X509_INFO_new(void);
|
830
967
|
OPENSSL_EXPORT void X509_INFO_free(X509_INFO *a);
|
831
|
-
OPENSSL_EXPORT char *X509_NAME_oneline(X509_NAME *a, char *buf, int size);
|
968
|
+
OPENSSL_EXPORT char *X509_NAME_oneline(const X509_NAME *a, char *buf, int size);
|
832
969
|
|
833
970
|
OPENSSL_EXPORT int ASN1_digest(i2d_of_void *i2d, const EVP_MD *type, char *data,
|
834
971
|
unsigned char *md, unsigned int *len);
|
@@ -837,9 +974,10 @@ OPENSSL_EXPORT int ASN1_item_digest(const ASN1_ITEM *it, const EVP_MD *type,
|
|
837
974
|
void *data, unsigned char *md,
|
838
975
|
unsigned int *len);
|
839
976
|
|
840
|
-
OPENSSL_EXPORT int ASN1_item_verify(const ASN1_ITEM *it,
|
841
|
-
|
842
|
-
|
977
|
+
OPENSSL_EXPORT int ASN1_item_verify(const ASN1_ITEM *it,
|
978
|
+
const X509_ALGOR *algor1,
|
979
|
+
const ASN1_BIT_STRING *signature,
|
980
|
+
void *data, EVP_PKEY *pkey);
|
843
981
|
|
844
982
|
OPENSSL_EXPORT int ASN1_item_sign(const ASN1_ITEM *it, X509_ALGOR *algor1,
|
845
983
|
X509_ALGOR *algor2,
|
@@ -849,87 +987,277 @@ OPENSSL_EXPORT int ASN1_item_sign_ctx(const ASN1_ITEM *it, X509_ALGOR *algor1,
|
|
849
987
|
X509_ALGOR *algor2,
|
850
988
|
ASN1_BIT_STRING *signature, void *asn,
|
851
989
|
EVP_MD_CTX *ctx);
|
852
|
-
#endif
|
853
990
|
|
854
|
-
|
855
|
-
|
856
|
-
OPENSSL_EXPORT ASN1_INTEGER *X509_get_serialNumber(X509 *
|
857
|
-
|
858
|
-
|
859
|
-
|
860
|
-
OPENSSL_EXPORT
|
861
|
-
OPENSSL_EXPORT int X509_set_notBefore(X509 *x, const ASN1_TIME *tm);
|
862
|
-
OPENSSL_EXPORT const ASN1_TIME *X509_get0_notBefore(const X509 *x);
|
863
|
-
OPENSSL_EXPORT ASN1_TIME *X509_getm_notBefore(X509 *x);
|
864
|
-
OPENSSL_EXPORT int X509_set_notAfter(X509 *x, const ASN1_TIME *tm);
|
865
|
-
OPENSSL_EXPORT const ASN1_TIME *X509_get0_notAfter(const X509 *x);
|
866
|
-
OPENSSL_EXPORT ASN1_TIME *X509_getm_notAfter(X509 *x);
|
867
|
-
OPENSSL_EXPORT int X509_set_pubkey(X509 *x, EVP_PKEY *pkey);
|
868
|
-
OPENSSL_EXPORT EVP_PKEY *X509_get_pubkey(X509 *x);
|
869
|
-
OPENSSL_EXPORT ASN1_BIT_STRING *X509_get0_pubkey_bitstr(const X509 *x);
|
870
|
-
OPENSSL_EXPORT STACK_OF(X509_EXTENSION) * X509_get0_extensions(const X509 *x);
|
871
|
-
OPENSSL_EXPORT const X509_ALGOR *X509_get0_tbs_sigalg(const X509 *x);
|
991
|
+
// X509_get_serialNumber returns a mutable pointer to |x509|'s serial number.
|
992
|
+
// Prefer |X509_get0_serialNumber|.
|
993
|
+
OPENSSL_EXPORT ASN1_INTEGER *X509_get_serialNumber(X509 *x509);
|
994
|
+
|
995
|
+
// X509_set_issuer_name sets |x509|'s issuer to a copy of |name|. It returns one
|
996
|
+
// on success and zero on error.
|
997
|
+
OPENSSL_EXPORT int X509_set_issuer_name(X509 *x509, X509_NAME *name);
|
872
998
|
|
873
|
-
|
999
|
+
// X509_get_issuer_name returns |x509|'s issuer.
|
1000
|
+
OPENSSL_EXPORT X509_NAME *X509_get_issuer_name(const X509 *x509);
|
1001
|
+
|
1002
|
+
// X509_set_subject_name sets |x509|'s subject to a copy of |name|. It returns
|
1003
|
+
// one on success and zero on error.
|
1004
|
+
OPENSSL_EXPORT int X509_set_subject_name(X509 *x509, X509_NAME *name);
|
1005
|
+
|
1006
|
+
// X509_get_issuer_name returns |x509|'s subject.
|
1007
|
+
OPENSSL_EXPORT X509_NAME *X509_get_subject_name(const X509 *x509);
|
1008
|
+
|
1009
|
+
// X509_set_pubkey sets |x509|'s public key to |pkey|. It returns one on success
|
1010
|
+
// and zero on error. This function does not take ownership of |pkey| and
|
1011
|
+
// internally copies and updates reference counts as needed.
|
1012
|
+
OPENSSL_EXPORT int X509_set_pubkey(X509 *x509, EVP_PKEY *pkey);
|
1013
|
+
|
1014
|
+
// X509_get_pubkey returns |x509|'s public key as an |EVP_PKEY|, or NULL if the
|
1015
|
+
// public key was unsupported or could not be decoded. This function returns a
|
1016
|
+
// reference to the |EVP_PKEY|. The caller must release the result with
|
1017
|
+
// |EVP_PKEY_free| when done.
|
1018
|
+
OPENSSL_EXPORT EVP_PKEY *X509_get_pubkey(X509 *x509);
|
1019
|
+
|
1020
|
+
// X509_get0_pubkey_bitstr returns the BIT STRING portion of |x509|'s public
|
1021
|
+
// key. Note this does not contain the AlgorithmIdentifier portion.
|
1022
|
+
//
|
1023
|
+
// WARNING: This function returns a non-const pointer for OpenSSL compatibility,
|
1024
|
+
// but the caller must not modify the resulting object. Doing so will break
|
1025
|
+
// internal invariants in |x509|.
|
1026
|
+
OPENSSL_EXPORT ASN1_BIT_STRING *X509_get0_pubkey_bitstr(const X509 *x509);
|
1027
|
+
|
1028
|
+
// X509_get0_extensions returns |x509|'s extension list, or NULL if |x509| omits
|
1029
|
+
// it.
|
1030
|
+
OPENSSL_EXPORT const STACK_OF(X509_EXTENSION) *X509_get0_extensions(
|
1031
|
+
const X509 *x509);
|
1032
|
+
|
1033
|
+
// X509_get0_tbs_sigalg returns the signature algorithm in |x509|'s
|
1034
|
+
// TBSCertificate. For the outer signature algorithm, see |X509_get0_signature|.
|
1035
|
+
//
|
1036
|
+
// Certificates with mismatched signature algorithms will successfully parse,
|
1037
|
+
// but they will be rejected when verifying.
|
1038
|
+
OPENSSL_EXPORT const X509_ALGOR *X509_get0_tbs_sigalg(const X509 *x509);
|
1039
|
+
|
1040
|
+
// X509_REQ_set_version sets |req|'s version to |version|, which should be
|
1041
|
+
// |X509_REQ_VERSION_1|. It returns one on success and zero on error.
|
1042
|
+
//
|
1043
|
+
// Note no versions other than |X509_REQ_VERSION_1| are defined for CSRs.
|
1044
|
+
OPENSSL_EXPORT int X509_REQ_set_version(X509_REQ *req, long version);
|
1045
|
+
|
1046
|
+
// X509_REQ_set_subject_name sets |req|'s subject to a copy of |name|. It
|
1047
|
+
// returns one on success and zero on error.
|
874
1048
|
OPENSSL_EXPORT int X509_REQ_set_subject_name(X509_REQ *req, X509_NAME *name);
|
1049
|
+
|
1050
|
+
// X509_REQ_get0_signature sets |*out_sig| and |*out_alg| to the signature and
|
1051
|
+
// signature algorithm of |req|, respectively. Either output pointer may be NULL
|
1052
|
+
// to ignore the value.
|
875
1053
|
OPENSSL_EXPORT void X509_REQ_get0_signature(const X509_REQ *req,
|
876
|
-
const ASN1_BIT_STRING **
|
877
|
-
const X509_ALGOR **
|
1054
|
+
const ASN1_BIT_STRING **out_sig,
|
1055
|
+
const X509_ALGOR **out_alg);
|
1056
|
+
|
1057
|
+
// X509_REQ_get_signature_nid returns the NID corresponding to |req|'s signature
|
1058
|
+
// algorithm, or |NID_undef| if the signature algorithm does not correspond to
|
1059
|
+
// a known NID.
|
878
1060
|
OPENSSL_EXPORT int X509_REQ_get_signature_nid(const X509_REQ *req);
|
879
|
-
|
880
|
-
|
1061
|
+
|
1062
|
+
// i2d_re_X509_REQ_tbs serializes the CertificationRequestInfo (see RFC 2986)
|
1063
|
+
// portion of |req|, as described in |i2d_SAMPLE|.
|
1064
|
+
//
|
1065
|
+
// This function re-encodes the CertificationRequestInfo and may not reflect
|
1066
|
+
// |req|'s original encoding. It may be used to manually generate a signature
|
1067
|
+
// for a new certificate request.
|
1068
|
+
OPENSSL_EXPORT int i2d_re_X509_REQ_tbs(X509_REQ *req, uint8_t **outp);
|
1069
|
+
|
1070
|
+
// X509_REQ_set_pubkey sets |req|'s public key to |pkey|. It returns one on
|
1071
|
+
// success and zero on error. This function does not take ownership of |pkey|
|
1072
|
+
// and internally copies and updates reference counts as needed.
|
1073
|
+
OPENSSL_EXPORT int X509_REQ_set_pubkey(X509_REQ *req, EVP_PKEY *pkey);
|
1074
|
+
|
1075
|
+
// X509_REQ_get_pubkey returns |req|'s public key as an |EVP_PKEY|, or NULL if
|
1076
|
+
// the public key was unsupported or could not be decoded. This function returns
|
1077
|
+
// a reference to the |EVP_PKEY|. The caller must release the result with
|
1078
|
+
// |EVP_PKEY_free| when done.
|
881
1079
|
OPENSSL_EXPORT EVP_PKEY *X509_REQ_get_pubkey(X509_REQ *req);
|
1080
|
+
|
1081
|
+
// X509_REQ_extension_nid returns one if |nid| is a supported CSR attribute type
|
1082
|
+
// for carrying extensions and zero otherwise. The supported types are
|
1083
|
+
// |NID_ext_req| (pkcs-9-at-extensionRequest from RFC 2985) and |NID_ms_ext_req|
|
1084
|
+
// (a Microsoft szOID_CERT_EXTENSIONS variant).
|
882
1085
|
OPENSSL_EXPORT int X509_REQ_extension_nid(int nid);
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
889
|
-
|
890
|
-
OPENSSL_EXPORT
|
891
|
-
|
1086
|
+
|
1087
|
+
// X509_REQ_get_extensions decodes the list of requested extensions in |req| and
|
1088
|
+
// returns a newly-allocated |STACK_OF(X509_EXTENSION)| containing the result.
|
1089
|
+
// It returns NULL on error, or if |req| did not request extensions.
|
1090
|
+
//
|
1091
|
+
// This function supports both pkcs-9-at-extensionRequest from RFC 2985 and the
|
1092
|
+
// Microsoft szOID_CERT_EXTENSIONS variant.
|
1093
|
+
OPENSSL_EXPORT STACK_OF(X509_EXTENSION) *X509_REQ_get_extensions(X509_REQ *req);
|
1094
|
+
|
1095
|
+
// X509_REQ_add_extensions_nid adds an attribute to |req| of type |nid|, to
|
1096
|
+
// request the certificate extensions in |exts|. It returns one on success and
|
1097
|
+
// zero on error. |nid| should be |NID_ext_req| or |NID_ms_ext_req|.
|
1098
|
+
OPENSSL_EXPORT int X509_REQ_add_extensions_nid(
|
1099
|
+
X509_REQ *req, const STACK_OF(X509_EXTENSION) *exts, int nid);
|
1100
|
+
|
1101
|
+
// X509_REQ_add_extensions behaves like |X509_REQ_add_extensions_nid|, using the
|
1102
|
+
// standard |NID_ext_req| for the attribute type.
|
1103
|
+
OPENSSL_EXPORT int X509_REQ_add_extensions(
|
1104
|
+
X509_REQ *req, const STACK_OF(X509_EXTENSION) *exts);
|
1105
|
+
|
1106
|
+
// X509_REQ_get_attr_count returns the number of attributes in |req|.
|
892
1107
|
OPENSSL_EXPORT int X509_REQ_get_attr_count(const X509_REQ *req);
|
1108
|
+
|
1109
|
+
// X509_REQ_get_attr_by_NID returns the index of the attribute in |req| of type
|
1110
|
+
// |nid|, or a negative number if not found. If found, callers can use
|
1111
|
+
// |X509_REQ_get_attr| to look up the attribute by index.
|
1112
|
+
//
|
1113
|
+
// If |lastpos| is non-negative, it begins searching at |lastpos| + 1. Callers
|
1114
|
+
// can thus loop over all matching attributes by first passing -1 and then
|
1115
|
+
// passing the previously-returned value until no match is returned.
|
893
1116
|
OPENSSL_EXPORT int X509_REQ_get_attr_by_NID(const X509_REQ *req, int nid,
|
894
1117
|
int lastpos);
|
1118
|
+
|
1119
|
+
// X509_REQ_get_attr_by_OBJ behaves like |X509_REQ_get_attr_by_NID| but looks
|
1120
|
+
// for attributes of type |obj|.
|
895
1121
|
OPENSSL_EXPORT int X509_REQ_get_attr_by_OBJ(const X509_REQ *req,
|
896
|
-
ASN1_OBJECT *obj,
|
1122
|
+
const ASN1_OBJECT *obj,
|
1123
|
+
int lastpos);
|
1124
|
+
|
1125
|
+
// X509_REQ_get_attr returns the attribute at index |loc| in |req|, or NULL if
|
1126
|
+
// out of bounds.
|
897
1127
|
OPENSSL_EXPORT X509_ATTRIBUTE *X509_REQ_get_attr(const X509_REQ *req, int loc);
|
1128
|
+
|
1129
|
+
// X509_REQ_delete_attr removes the attribute at index |loc| in |req|. It
|
1130
|
+
// returns the removed attribute to the caller, or NULL if |loc| was out of
|
1131
|
+
// bounds. If non-NULL, the caller must release the result with
|
1132
|
+
// |X509_ATTRIBUTE_free| when done. It is also safe, but not necessary, to call
|
1133
|
+
// |X509_ATTRIBUTE_free| if the result is NULL.
|
898
1134
|
OPENSSL_EXPORT X509_ATTRIBUTE *X509_REQ_delete_attr(X509_REQ *req, int loc);
|
1135
|
+
|
1136
|
+
// X509_REQ_add1_attr appends a copy of |attr| to |req|'s list of attributes. It
|
1137
|
+
// returns one on success and zero on error.
|
1138
|
+
//
|
1139
|
+
// TODO(https://crbug.com/boringssl/407): |attr| should be const.
|
899
1140
|
OPENSSL_EXPORT int X509_REQ_add1_attr(X509_REQ *req, X509_ATTRIBUTE *attr);
|
1141
|
+
|
1142
|
+
// X509_REQ_add1_attr_by_OBJ appends a new attribute to |req| with type |obj|.
|
1143
|
+
// It returns one on success and zero on error. The value is determined by
|
1144
|
+
// |X509_ATTRIBUTE_set1_data|.
|
1145
|
+
//
|
1146
|
+
// WARNING: The interpretation of |attrtype|, |data|, and |len| is complex and
|
1147
|
+
// error-prone. See |X509_ATTRIBUTE_set1_data| for details.
|
900
1148
|
OPENSSL_EXPORT int X509_REQ_add1_attr_by_OBJ(X509_REQ *req,
|
901
|
-
const ASN1_OBJECT *obj,
|
902
|
-
|
1149
|
+
const ASN1_OBJECT *obj,
|
1150
|
+
int attrtype,
|
1151
|
+
const unsigned char *data,
|
903
1152
|
int len);
|
904
|
-
|
905
|
-
|
1153
|
+
|
1154
|
+
// X509_REQ_add1_attr_by_NID behaves like |X509_REQ_add1_attr_by_OBJ| except the
|
1155
|
+
// attribute type is determined by |nid|.
|
1156
|
+
OPENSSL_EXPORT int X509_REQ_add1_attr_by_NID(X509_REQ *req, int nid,
|
1157
|
+
int attrtype,
|
1158
|
+
const unsigned char *data,
|
906
1159
|
int len);
|
1160
|
+
|
1161
|
+
// X509_REQ_add1_attr_by_txt behaves like |X509_REQ_add1_attr_by_OBJ| except the
|
1162
|
+
// attribute type is determined by calling |OBJ_txt2obj| with |attrname|.
|
907
1163
|
OPENSSL_EXPORT int X509_REQ_add1_attr_by_txt(X509_REQ *req,
|
908
|
-
const char *attrname, int
|
909
|
-
const unsigned char *
|
1164
|
+
const char *attrname, int attrtype,
|
1165
|
+
const unsigned char *data,
|
910
1166
|
int len);
|
911
1167
|
|
912
|
-
|
913
|
-
|
914
|
-
|
915
|
-
|
1168
|
+
// X509_CRL_set_version sets |crl|'s version to |version|, which should be one
|
1169
|
+
// of the |X509_CRL_VERSION_*| constants. It returns one on success and zero on
|
1170
|
+
// error.
|
1171
|
+
//
|
1172
|
+
// If unsure, use |X509_CRL_VERSION_2|. Note that, unlike certificates, CRL
|
1173
|
+
// versions are only defined up to v2. Callers should not use |X509_VERSION_3|.
|
1174
|
+
OPENSSL_EXPORT int X509_CRL_set_version(X509_CRL *crl, long version);
|
1175
|
+
|
1176
|
+
// X509_CRL_set_issuer_name sets |crl|'s issuer to a copy of |name|. It returns
|
1177
|
+
// one on success and zero on error.
|
1178
|
+
OPENSSL_EXPORT int X509_CRL_set_issuer_name(X509_CRL *crl, X509_NAME *name);
|
1179
|
+
|
916
1180
|
OPENSSL_EXPORT int X509_CRL_sort(X509_CRL *crl);
|
1181
|
+
|
1182
|
+
// X509_CRL_up_ref adds one to the reference count of |crl| and returns one.
|
917
1183
|
OPENSSL_EXPORT int X509_CRL_up_ref(X509_CRL *crl);
|
918
1184
|
|
1185
|
+
// X509_CRL_get0_signature sets |*out_sig| and |*out_alg| to the signature and
|
1186
|
+
// signature algorithm of |crl|, respectively. Either output pointer may be NULL
|
1187
|
+
// to ignore the value.
|
1188
|
+
//
|
1189
|
+
// This function outputs the outer signature algorithm, not the one in the
|
1190
|
+
// TBSCertList. CRLs with mismatched signature algorithms will successfully
|
1191
|
+
// parse, but they will be rejected when verifying.
|
919
1192
|
OPENSSL_EXPORT void X509_CRL_get0_signature(const X509_CRL *crl,
|
920
|
-
const ASN1_BIT_STRING **
|
921
|
-
const X509_ALGOR **
|
1193
|
+
const ASN1_BIT_STRING **out_sig,
|
1194
|
+
const X509_ALGOR **out_alg);
|
1195
|
+
|
1196
|
+
// X509_CRL_get_signature_nid returns the NID corresponding to |crl|'s signature
|
1197
|
+
// algorithm, or |NID_undef| if the signature algorithm does not correspond to
|
1198
|
+
// a known NID.
|
922
1199
|
OPENSSL_EXPORT int X509_CRL_get_signature_nid(const X509_CRL *crl);
|
923
|
-
OPENSSL_EXPORT int i2d_re_X509_CRL_tbs(X509_CRL *req, unsigned char **pp);
|
924
1200
|
|
1201
|
+
// i2d_re_X509_CRL_tbs serializes the TBSCertList portion of |crl|, as described
|
1202
|
+
// in |i2d_SAMPLE|.
|
1203
|
+
//
|
1204
|
+
// This function re-encodes the TBSCertList and may not reflect |crl|'s original
|
1205
|
+
// encoding. It may be used to manually generate a signature for a new CRL. To
|
1206
|
+
// verify CRLs, use |i2d_X509_CRL_tbs| instead.
|
1207
|
+
OPENSSL_EXPORT int i2d_re_X509_CRL_tbs(X509_CRL *crl, unsigned char **outp);
|
1208
|
+
|
1209
|
+
// i2d_X509_CRL_tbs serializes the TBSCertList portion of |crl|, as described in
|
1210
|
+
// |i2d_SAMPLE|.
|
1211
|
+
//
|
1212
|
+
// This function preserves the original encoding of the TBSCertList and may not
|
1213
|
+
// reflect modifications made to |crl|. It may be used to manually verify the
|
1214
|
+
// signature of an existing CRL. To generate CRLs, use |i2d_re_X509_CRL_tbs|
|
1215
|
+
// instead.
|
1216
|
+
OPENSSL_EXPORT int i2d_X509_CRL_tbs(X509_CRL *crl, unsigned char **outp);
|
1217
|
+
|
1218
|
+
// X509_CRL_set1_signature_algo sets |crl|'s signature algorithm to |algo| and
|
1219
|
+
// returns one on success or zero on error. It updates both the signature field
|
1220
|
+
// of the TBSCertList structure, and the signatureAlgorithm field of the CRL.
|
1221
|
+
OPENSSL_EXPORT int X509_CRL_set1_signature_algo(X509_CRL *crl,
|
1222
|
+
const X509_ALGOR *algo);
|
1223
|
+
|
1224
|
+
// X509_CRL_set1_signature_value sets |crl|'s signature to a copy of the
|
1225
|
+
// |sig_len| bytes pointed by |sig|. It returns one on success and zero on
|
1226
|
+
// error.
|
1227
|
+
//
|
1228
|
+
// Due to a specification error, X.509 CRLs store signatures in ASN.1 BIT
|
1229
|
+
// STRINGs, but signature algorithms return byte strings rather than bit
|
1230
|
+
// strings. This function creates a BIT STRING containing a whole number of
|
1231
|
+
// bytes, with the bit order matching the DER encoding. This matches the
|
1232
|
+
// encoding used by all X.509 signature algorithms.
|
1233
|
+
OPENSSL_EXPORT int X509_CRL_set1_signature_value(X509_CRL *crl,
|
1234
|
+
const uint8_t *sig,
|
1235
|
+
size_t sig_len);
|
1236
|
+
|
1237
|
+
// X509_REVOKED_get0_serialNumber returns the serial number of the certificate
|
1238
|
+
// revoked by |revoked|.
|
925
1239
|
OPENSSL_EXPORT const ASN1_INTEGER *X509_REVOKED_get0_serialNumber(
|
926
|
-
const X509_REVOKED *
|
927
|
-
|
928
|
-
|
1240
|
+
const X509_REVOKED *revoked);
|
1241
|
+
|
1242
|
+
// X509_REVOKED_set_serialNumber sets |revoked|'s serial number to |serial|. It
|
1243
|
+
// returns one on success or zero on error.
|
1244
|
+
OPENSSL_EXPORT int X509_REVOKED_set_serialNumber(X509_REVOKED *revoked,
|
1245
|
+
const ASN1_INTEGER *serial);
|
1246
|
+
|
1247
|
+
// X509_REVOKED_get0_revocationDate returns the revocation time of the
|
1248
|
+
// certificate revoked by |revoked|.
|
929
1249
|
OPENSSL_EXPORT const ASN1_TIME *X509_REVOKED_get0_revocationDate(
|
930
|
-
const X509_REVOKED *
|
931
|
-
|
932
|
-
|
1250
|
+
const X509_REVOKED *revoked);
|
1251
|
+
|
1252
|
+
// X509_REVOKED_set_revocationDate sets |revoked|'s revocation time to |tm|. It
|
1253
|
+
// returns one on success or zero on error.
|
1254
|
+
OPENSSL_EXPORT int X509_REVOKED_set_revocationDate(X509_REVOKED *revoked,
|
1255
|
+
const ASN1_TIME *tm);
|
1256
|
+
|
1257
|
+
// X509_REVOKED_get0_extensions returns |r|'s extensions list, or NULL if |r|
|
1258
|
+
// omits it.
|
1259
|
+
OPENSSL_EXPORT const STACK_OF(X509_EXTENSION) *X509_REVOKED_get0_extensions(
|
1260
|
+
const X509_REVOKED *r);
|
933
1261
|
|
934
1262
|
OPENSSL_EXPORT X509_CRL *X509_CRL_diff(X509_CRL *base, X509_CRL *newer,
|
935
1263
|
EVP_PKEY *skey, const EVP_MD *md,
|
@@ -939,14 +1267,18 @@ OPENSSL_EXPORT int X509_REQ_check_private_key(X509_REQ *x509, EVP_PKEY *pkey);
|
|
939
1267
|
|
940
1268
|
OPENSSL_EXPORT int X509_check_private_key(X509 *x509, const EVP_PKEY *pkey);
|
941
1269
|
OPENSSL_EXPORT int X509_chain_check_suiteb(int *perror_depth, X509 *x,
|
942
|
-
STACK_OF(X509) *
|
1270
|
+
STACK_OF(X509) *chain,
|
943
1271
|
unsigned long flags);
|
944
1272
|
OPENSSL_EXPORT int X509_CRL_check_suiteb(X509_CRL *crl, EVP_PKEY *pk,
|
945
1273
|
unsigned long flags);
|
946
|
-
|
1274
|
+
|
1275
|
+
// X509_chain_up_ref returns a newly-allocated |STACK_OF(X509)| containing a
|
1276
|
+
// shallow copy of |chain|, or NULL on error. That is, the return value has the
|
1277
|
+
// same contents as |chain|, and each |X509|'s reference count is incremented by
|
1278
|
+
// one.
|
1279
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_chain_up_ref(STACK_OF(X509) *chain);
|
947
1280
|
|
948
1281
|
OPENSSL_EXPORT int X509_issuer_and_serial_cmp(const X509 *a, const X509 *b);
|
949
|
-
OPENSSL_EXPORT unsigned long X509_issuer_and_serial_hash(X509 *a);
|
950
1282
|
|
951
1283
|
OPENSSL_EXPORT int X509_issuer_name_cmp(const X509 *a, const X509 *b);
|
952
1284
|
OPENSSL_EXPORT unsigned long X509_issuer_name_hash(X509 *a);
|
@@ -964,18 +1296,16 @@ OPENSSL_EXPORT unsigned long X509_NAME_hash_old(X509_NAME *x);
|
|
964
1296
|
|
965
1297
|
OPENSSL_EXPORT int X509_CRL_cmp(const X509_CRL *a, const X509_CRL *b);
|
966
1298
|
OPENSSL_EXPORT int X509_CRL_match(const X509_CRL *a, const X509_CRL *b);
|
967
|
-
#ifndef OPENSSL_NO_FP_API
|
968
1299
|
OPENSSL_EXPORT int X509_print_ex_fp(FILE *bp, X509 *x, unsigned long nmflag,
|
969
1300
|
unsigned long cflag);
|
970
1301
|
OPENSSL_EXPORT int X509_print_fp(FILE *bp, X509 *x);
|
971
1302
|
OPENSSL_EXPORT int X509_CRL_print_fp(FILE *bp, X509_CRL *x);
|
972
1303
|
OPENSSL_EXPORT int X509_REQ_print_fp(FILE *bp, X509_REQ *req);
|
973
|
-
OPENSSL_EXPORT int X509_NAME_print_ex_fp(FILE *fp, X509_NAME *nm,
|
974
|
-
unsigned long flags);
|
975
|
-
#endif
|
1304
|
+
OPENSSL_EXPORT int X509_NAME_print_ex_fp(FILE *fp, const X509_NAME *nm,
|
1305
|
+
int indent, unsigned long flags);
|
976
1306
|
|
977
|
-
OPENSSL_EXPORT int X509_NAME_print(BIO *bp, X509_NAME *name, int obase);
|
978
|
-
OPENSSL_EXPORT int X509_NAME_print_ex(BIO *out, X509_NAME *nm, int indent,
|
1307
|
+
OPENSSL_EXPORT int X509_NAME_print(BIO *bp, const X509_NAME *name, int obase);
|
1308
|
+
OPENSSL_EXPORT int X509_NAME_print_ex(BIO *out, const X509_NAME *nm, int indent,
|
979
1309
|
unsigned long flags);
|
980
1310
|
OPENSSL_EXPORT int X509_print_ex(BIO *bp, X509 *x, unsigned long nmflag,
|
981
1311
|
unsigned long cflag);
|
@@ -987,21 +1317,22 @@ OPENSSL_EXPORT int X509_REQ_print_ex(BIO *bp, X509_REQ *x, unsigned long nmflag,
|
|
987
1317
|
unsigned long cflag);
|
988
1318
|
OPENSSL_EXPORT int X509_REQ_print(BIO *bp, X509_REQ *req);
|
989
1319
|
|
990
|
-
OPENSSL_EXPORT int X509_NAME_entry_count(X509_NAME *name);
|
991
|
-
OPENSSL_EXPORT int X509_NAME_get_text_by_NID(X509_NAME *name, int nid,
|
1320
|
+
OPENSSL_EXPORT int X509_NAME_entry_count(const X509_NAME *name);
|
1321
|
+
OPENSSL_EXPORT int X509_NAME_get_text_by_NID(const X509_NAME *name, int nid,
|
992
1322
|
char *buf, int len);
|
993
|
-
OPENSSL_EXPORT int X509_NAME_get_text_by_OBJ(X509_NAME *name,
|
1323
|
+
OPENSSL_EXPORT int X509_NAME_get_text_by_OBJ(const X509_NAME *name,
|
994
1324
|
const ASN1_OBJECT *obj, char *buf,
|
995
1325
|
int len);
|
996
1326
|
|
997
1327
|
// NOTE: you should be passsing -1, not 0 as lastpos. The functions that use
|
998
1328
|
// lastpos, search after that position on.
|
999
|
-
OPENSSL_EXPORT int X509_NAME_get_index_by_NID(X509_NAME *name, int nid,
|
1329
|
+
OPENSSL_EXPORT int X509_NAME_get_index_by_NID(const X509_NAME *name, int nid,
|
1000
1330
|
int lastpos);
|
1001
|
-
OPENSSL_EXPORT int X509_NAME_get_index_by_OBJ(X509_NAME *name,
|
1331
|
+
OPENSSL_EXPORT int X509_NAME_get_index_by_OBJ(const X509_NAME *name,
|
1002
1332
|
const ASN1_OBJECT *obj,
|
1003
1333
|
int lastpos);
|
1004
|
-
OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_get_entry(X509_NAME *name,
|
1334
|
+
OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_get_entry(const X509_NAME *name,
|
1335
|
+
int loc);
|
1005
1336
|
OPENSSL_EXPORT X509_NAME_ENTRY *X509_NAME_delete_entry(X509_NAME *name,
|
1006
1337
|
int loc);
|
1007
1338
|
OPENSSL_EXPORT int X509_NAME_add_entry(X509_NAME *name, X509_NAME_ENTRY *ne,
|
@@ -1032,133 +1363,425 @@ OPENSSL_EXPORT int X509_NAME_ENTRY_set_object(X509_NAME_ENTRY *ne,
|
|
1032
1363
|
OPENSSL_EXPORT int X509_NAME_ENTRY_set_data(X509_NAME_ENTRY *ne, int type,
|
1033
1364
|
const unsigned char *bytes,
|
1034
1365
|
int len);
|
1035
|
-
OPENSSL_EXPORT ASN1_OBJECT *X509_NAME_ENTRY_get_object(
|
1036
|
-
|
1366
|
+
OPENSSL_EXPORT ASN1_OBJECT *X509_NAME_ENTRY_get_object(
|
1367
|
+
const X509_NAME_ENTRY *ne);
|
1368
|
+
OPENSSL_EXPORT ASN1_STRING *X509_NAME_ENTRY_get_data(const X509_NAME_ENTRY *ne);
|
1037
1369
|
|
1038
|
-
|
1039
|
-
OPENSSL_EXPORT int
|
1370
|
+
// X509v3_get_ext_count returns the number of extensions in |x|.
|
1371
|
+
OPENSSL_EXPORT int X509v3_get_ext_count(const STACK_OF(X509_EXTENSION) *x);
|
1372
|
+
|
1373
|
+
// X509v3_get_ext_by_NID returns the index of the first extension in |x| with
|
1374
|
+
// type |nid|, or a negative number if not found. If found, callers can use
|
1375
|
+
// |X509v3_get_ext| to look up the extension by index.
|
1376
|
+
//
|
1377
|
+
// If |lastpos| is non-negative, it begins searching at |lastpos| + 1. Callers
|
1378
|
+
// can thus loop over all matching extensions by first passing -1 and then
|
1379
|
+
// passing the previously-returned value until no match is returned.
|
1380
|
+
OPENSSL_EXPORT int X509v3_get_ext_by_NID(const STACK_OF(X509_EXTENSION) *x,
|
1040
1381
|
int nid, int lastpos);
|
1041
|
-
|
1382
|
+
|
1383
|
+
// X509v3_get_ext_by_OBJ behaves like |X509v3_get_ext_by_NID| but looks for
|
1384
|
+
// extensions matching |obj|.
|
1385
|
+
OPENSSL_EXPORT int X509v3_get_ext_by_OBJ(const STACK_OF(X509_EXTENSION) *x,
|
1042
1386
|
const ASN1_OBJECT *obj, int lastpos);
|
1043
|
-
|
1044
|
-
|
1387
|
+
|
1388
|
+
// X509v3_get_ext_by_critical returns the index of the first extension in |x|
|
1389
|
+
// whose critical bit matches |crit|, or a negative number if no such extension
|
1390
|
+
// was found.
|
1391
|
+
//
|
1392
|
+
// If |lastpos| is non-negative, it begins searching at |lastpos| + 1. Callers
|
1393
|
+
// can thus loop over all matching extensions by first passing -1 and then
|
1394
|
+
// passing the previously-returned value until no match is returned.
|
1395
|
+
OPENSSL_EXPORT int X509v3_get_ext_by_critical(const STACK_OF(X509_EXTENSION) *x,
|
1045
1396
|
int crit, int lastpos);
|
1046
|
-
|
1047
|
-
|
1397
|
+
|
1398
|
+
// X509v3_get_ext returns the extension in |x| at index |loc|, or NULL if |loc|
|
1399
|
+
// is out of bounds.
|
1400
|
+
OPENSSL_EXPORT X509_EXTENSION *X509v3_get_ext(const STACK_OF(X509_EXTENSION) *x,
|
1048
1401
|
int loc);
|
1049
|
-
|
1402
|
+
|
1403
|
+
// X509v3_delete_ext removes the extension in |x| at index |loc| and returns the
|
1404
|
+
// removed extension, or NULL if |loc| was out of bounds. If an extension was
|
1405
|
+
// returned, the caller must release it with |X509_EXTENSION_free|.
|
1406
|
+
OPENSSL_EXPORT X509_EXTENSION *X509v3_delete_ext(STACK_OF(X509_EXTENSION) *x,
|
1050
1407
|
int loc);
|
1051
|
-
|
1052
|
-
|
1053
|
-
|
1054
|
-
|
1055
|
-
|
1056
|
-
|
1057
|
-
|
1058
|
-
|
1408
|
+
|
1409
|
+
// X509v3_add_ext adds a copy of |ex| to the extension list in |*x|. If |*x| is
|
1410
|
+
// NULL, it allocates a new |STACK_OF(X509_EXTENSION)| to hold the copy and sets
|
1411
|
+
// |*x| to the new list. It returns |*x| on success and NULL on error. The
|
1412
|
+
// caller retains ownership of |ex| and can release it independently of |*x|.
|
1413
|
+
//
|
1414
|
+
// The new extension is inserted at index |loc|, shifting extensions to the
|
1415
|
+
// right. If |loc| is -1 or out of bounds, the new extension is appended to the
|
1416
|
+
// list.
|
1417
|
+
OPENSSL_EXPORT STACK_OF(X509_EXTENSION) *X509v3_add_ext(
|
1418
|
+
STACK_OF(X509_EXTENSION) **x, X509_EXTENSION *ex, int loc);
|
1419
|
+
|
1420
|
+
// X509_get_ext_count returns the number of extensions in |x|.
|
1421
|
+
OPENSSL_EXPORT int X509_get_ext_count(const X509 *x);
|
1422
|
+
|
1423
|
+
// X509_get_ext_by_NID behaves like |X509v3_get_ext_by_NID| but searches for
|
1424
|
+
// extensions in |x|.
|
1425
|
+
OPENSSL_EXPORT int X509_get_ext_by_NID(const X509 *x, int nid, int lastpos);
|
1426
|
+
|
1427
|
+
// X509_get_ext_by_OBJ behaves like |X509v3_get_ext_by_OBJ| but searches for
|
1428
|
+
// extensions in |x|.
|
1429
|
+
OPENSSL_EXPORT int X509_get_ext_by_OBJ(const X509 *x, const ASN1_OBJECT *obj,
|
1430
|
+
int lastpos);
|
1431
|
+
|
1432
|
+
// X509_get_ext_by_critical behaves like |X509v3_get_ext_by_critical| but
|
1433
|
+
// searches for extensions in |x|.
|
1434
|
+
OPENSSL_EXPORT int X509_get_ext_by_critical(const X509 *x, int crit,
|
1435
|
+
int lastpos);
|
1436
|
+
|
1437
|
+
// X509_get_ext returns the extension in |x| at index |loc|, or NULL if |loc| is
|
1438
|
+
// out of bounds.
|
1439
|
+
OPENSSL_EXPORT X509_EXTENSION *X509_get_ext(const X509 *x, int loc);
|
1440
|
+
|
1441
|
+
// X509_delete_ext removes the extension in |x| at index |loc| and returns the
|
1442
|
+
// removed extension, or NULL if |loc| was out of bounds. If non-NULL, the
|
1443
|
+
// caller must release the result with |X509_EXTENSION_free|. It is also safe,
|
1444
|
+
// but not necessary, to call |X509_EXTENSION_free| if the result is NULL.
|
1059
1445
|
OPENSSL_EXPORT X509_EXTENSION *X509_delete_ext(X509 *x, int loc);
|
1446
|
+
|
1447
|
+
// X509_add_ext adds a copy of |ex| to |x|. It returns one on success and zero
|
1448
|
+
// on failure. The caller retains ownership of |ex| and can release it
|
1449
|
+
// independently of |x|.
|
1450
|
+
//
|
1451
|
+
// The new extension is inserted at index |loc|, shifting extensions to the
|
1452
|
+
// right. If |loc| is -1 or out of bounds, the new extension is appended to the
|
1453
|
+
// list.
|
1060
1454
|
OPENSSL_EXPORT int X509_add_ext(X509 *x, X509_EXTENSION *ex, int loc);
|
1061
|
-
|
1455
|
+
|
1456
|
+
// X509_get_ext_d2i behaves like |X509V3_get_d2i| but looks for the extension in
|
1457
|
+
// |x509|'s extension list.
|
1458
|
+
//
|
1459
|
+
// WARNING: This function is difficult to use correctly. See the documentation
|
1460
|
+
// for |X509V3_get_d2i| for details.
|
1461
|
+
OPENSSL_EXPORT void *X509_get_ext_d2i(const X509 *x509, int nid,
|
1462
|
+
int *out_critical, int *out_idx);
|
1463
|
+
|
1464
|
+
// X509_add1_ext_i2d behaves like |X509V3_add1_i2d| but adds the extension to
|
1465
|
+
// |x|'s extension list.
|
1466
|
+
//
|
1467
|
+
// WARNING: This function may return zero or -1 on error. The caller must also
|
1468
|
+
// ensure |value|'s type matches |nid|. See the documentation for
|
1469
|
+
// |X509V3_add1_i2d| for details.
|
1062
1470
|
OPENSSL_EXPORT int X509_add1_ext_i2d(X509 *x, int nid, void *value, int crit,
|
1063
1471
|
unsigned long flags);
|
1064
1472
|
|
1065
|
-
|
1066
|
-
OPENSSL_EXPORT int
|
1067
|
-
|
1473
|
+
// X509_CRL_get_ext_count returns the number of extensions in |x|.
|
1474
|
+
OPENSSL_EXPORT int X509_CRL_get_ext_count(const X509_CRL *x);
|
1475
|
+
|
1476
|
+
// X509_CRL_get_ext_by_NID behaves like |X509v3_get_ext_by_NID| but searches for
|
1477
|
+
// extensions in |x|.
|
1478
|
+
OPENSSL_EXPORT int X509_CRL_get_ext_by_NID(const X509_CRL *x, int nid,
|
1068
1479
|
int lastpos);
|
1069
|
-
|
1480
|
+
|
1481
|
+
// X509_CRL_get_ext_by_OBJ behaves like |X509v3_get_ext_by_OBJ| but searches for
|
1482
|
+
// extensions in |x|.
|
1483
|
+
OPENSSL_EXPORT int X509_CRL_get_ext_by_OBJ(const X509_CRL *x,
|
1484
|
+
const ASN1_OBJECT *obj, int lastpos);
|
1485
|
+
|
1486
|
+
// X509_CRL_get_ext_by_critical behaves like |X509v3_get_ext_by_critical| but
|
1487
|
+
// searches for extensions in |x|.
|
1488
|
+
OPENSSL_EXPORT int X509_CRL_get_ext_by_critical(const X509_CRL *x, int crit,
|
1070
1489
|
int lastpos);
|
1071
|
-
|
1490
|
+
|
1491
|
+
// X509_CRL_get_ext returns the extension in |x| at index |loc|, or NULL if
|
1492
|
+
// |loc| is out of bounds.
|
1493
|
+
OPENSSL_EXPORT X509_EXTENSION *X509_CRL_get_ext(const X509_CRL *x, int loc);
|
1494
|
+
|
1495
|
+
// X509_CRL_delete_ext removes the extension in |x| at index |loc| and returns
|
1496
|
+
// the removed extension, or NULL if |loc| was out of bounds. If non-NULL, the
|
1497
|
+
// caller must release the result with |X509_EXTENSION_free|. It is also safe,
|
1498
|
+
// but not necessary, to call |X509_EXTENSION_free| if the result is NULL.
|
1072
1499
|
OPENSSL_EXPORT X509_EXTENSION *X509_CRL_delete_ext(X509_CRL *x, int loc);
|
1500
|
+
|
1501
|
+
// X509_CRL_add_ext adds a copy of |ex| to |x|. It returns one on success and
|
1502
|
+
// zero on failure. The caller retains ownership of |ex| and can release it
|
1503
|
+
// independently of |x|.
|
1504
|
+
//
|
1505
|
+
// The new extension is inserted at index |loc|, shifting extensions to the
|
1506
|
+
// right. If |loc| is -1 or out of bounds, the new extension is appended to the
|
1507
|
+
// list.
|
1073
1508
|
OPENSSL_EXPORT int X509_CRL_add_ext(X509_CRL *x, X509_EXTENSION *ex, int loc);
|
1074
|
-
|
1075
|
-
|
1509
|
+
|
1510
|
+
// X509_CRL_get_ext_d2i behaves like |X509V3_get_d2i| but looks for the
|
1511
|
+
// extension in |crl|'s extension list.
|
1512
|
+
//
|
1513
|
+
// WARNING: This function is difficult to use correctly. See the documentation
|
1514
|
+
// for |X509V3_get_d2i| for details.
|
1515
|
+
OPENSSL_EXPORT void *X509_CRL_get_ext_d2i(const X509_CRL *crl, int nid,
|
1516
|
+
int *out_critical, int *out_idx);
|
1517
|
+
|
1518
|
+
// X509_CRL_add1_ext_i2d behaves like |X509V3_add1_i2d| but adds the extension
|
1519
|
+
// to |x|'s extension list.
|
1520
|
+
//
|
1521
|
+
// WARNING: This function may return zero or -1 on error. The caller must also
|
1522
|
+
// ensure |value|'s type matches |nid|. See the documentation for
|
1523
|
+
// |X509V3_add1_i2d| for details.
|
1076
1524
|
OPENSSL_EXPORT int X509_CRL_add1_ext_i2d(X509_CRL *x, int nid, void *value,
|
1077
1525
|
int crit, unsigned long flags);
|
1078
1526
|
|
1079
|
-
|
1080
|
-
OPENSSL_EXPORT int
|
1527
|
+
// X509_REVOKED_get_ext_count returns the number of extensions in |x|.
|
1528
|
+
OPENSSL_EXPORT int X509_REVOKED_get_ext_count(const X509_REVOKED *x);
|
1529
|
+
|
1530
|
+
// X509_REVOKED_get_ext_by_NID behaves like |X509v3_get_ext_by_NID| but searches
|
1531
|
+
// for extensions in |x|.
|
1532
|
+
OPENSSL_EXPORT int X509_REVOKED_get_ext_by_NID(const X509_REVOKED *x, int nid,
|
1533
|
+
int lastpos);
|
1534
|
+
|
1535
|
+
// X509_REVOKED_get_ext_by_OBJ behaves like |X509v3_get_ext_by_OBJ| but searches
|
1536
|
+
// for extensions in |x|.
|
1537
|
+
OPENSSL_EXPORT int X509_REVOKED_get_ext_by_OBJ(const X509_REVOKED *x,
|
1538
|
+
const ASN1_OBJECT *obj,
|
1081
1539
|
int lastpos);
|
1082
|
-
|
1083
|
-
|
1084
|
-
|
1085
|
-
|
1086
|
-
|
1540
|
+
|
1541
|
+
// X509_REVOKED_get_ext_by_critical behaves like |X509v3_get_ext_by_critical|
|
1542
|
+
// but searches for extensions in |x|.
|
1543
|
+
OPENSSL_EXPORT int X509_REVOKED_get_ext_by_critical(const X509_REVOKED *x,
|
1544
|
+
int crit, int lastpos);
|
1545
|
+
|
1546
|
+
// X509_REVOKED_get_ext returns the extension in |x| at index |loc|, or NULL if
|
1547
|
+
// |loc| is out of bounds.
|
1548
|
+
OPENSSL_EXPORT X509_EXTENSION *X509_REVOKED_get_ext(const X509_REVOKED *x,
|
1549
|
+
int loc);
|
1550
|
+
|
1551
|
+
// X509_REVOKED_delete_ext removes the extension in |x| at index |loc| and
|
1552
|
+
// returns the removed extension, or NULL if |loc| was out of bounds. If
|
1553
|
+
// non-NULL, the caller must release the result with |X509_EXTENSION_free|. It
|
1554
|
+
// is also safe, but not necessary, to call |X509_EXTENSION_free| if the result
|
1555
|
+
// is NULL.
|
1087
1556
|
OPENSSL_EXPORT X509_EXTENSION *X509_REVOKED_delete_ext(X509_REVOKED *x,
|
1088
1557
|
int loc);
|
1558
|
+
|
1559
|
+
// X509_REVOKED_add_ext adds a copy of |ex| to |x|. It returns one on success
|
1560
|
+
// and zero on failure. The caller retains ownership of |ex| and can release it
|
1561
|
+
// independently of |x|.
|
1562
|
+
//
|
1563
|
+
// The new extension is inserted at index |loc|, shifting extensions to the
|
1564
|
+
// right. If |loc| is -1 or out of bounds, the new extension is appended to the
|
1565
|
+
// list.
|
1089
1566
|
OPENSSL_EXPORT int X509_REVOKED_add_ext(X509_REVOKED *x, X509_EXTENSION *ex,
|
1090
1567
|
int loc);
|
1091
|
-
|
1092
|
-
|
1568
|
+
|
1569
|
+
// X509_REVOKED_get_ext_d2i behaves like |X509V3_get_d2i| but looks for the
|
1570
|
+
// extension in |revoked|'s extension list.
|
1571
|
+
//
|
1572
|
+
// WARNING: This function is difficult to use correctly. See the documentation
|
1573
|
+
// for |X509V3_get_d2i| for details.
|
1574
|
+
OPENSSL_EXPORT void *X509_REVOKED_get_ext_d2i(const X509_REVOKED *revoked,
|
1575
|
+
int nid, int *out_critical,
|
1576
|
+
int *out_idx);
|
1577
|
+
|
1578
|
+
// X509_REVOKED_add1_ext_i2d behaves like |X509V3_add1_i2d| but adds the
|
1579
|
+
// extension to |x|'s extension list.
|
1580
|
+
//
|
1581
|
+
// WARNING: This function may return zero or -1 on error. The caller must also
|
1582
|
+
// ensure |value|'s type matches |nid|. See the documentation for
|
1583
|
+
// |X509V3_add1_i2d| for details.
|
1093
1584
|
OPENSSL_EXPORT int X509_REVOKED_add1_ext_i2d(X509_REVOKED *x, int nid,
|
1094
1585
|
void *value, int crit,
|
1095
1586
|
unsigned long flags);
|
1096
1587
|
|
1588
|
+
// X509_EXTENSION_create_by_NID creates a new |X509_EXTENSION| with type |nid|,
|
1589
|
+
// value |data|, and critical bit |crit|. It returns the newly-allocated
|
1590
|
+
// |X509_EXTENSION| on success, and false on error. |nid| should be a |NID_*|
|
1591
|
+
// constant.
|
1592
|
+
//
|
1593
|
+
// If |ex| and |*ex| are both non-NULL, it modifies and returns |*ex| instead of
|
1594
|
+
// creating a new object. If |ex| is non-NULL, but |*ex| is NULL, it sets |*ex|
|
1595
|
+
// to the new |X509_EXTENSION|, in addition to returning the result.
|
1097
1596
|
OPENSSL_EXPORT X509_EXTENSION *X509_EXTENSION_create_by_NID(
|
1098
|
-
X509_EXTENSION **ex, int nid, int crit, ASN1_OCTET_STRING *data);
|
1597
|
+
X509_EXTENSION **ex, int nid, int crit, const ASN1_OCTET_STRING *data);
|
1598
|
+
|
1599
|
+
// X509_EXTENSION_create_by_OBJ behaves like |X509_EXTENSION_create_by_NID|, but
|
1600
|
+
// the extension type is determined by an |ASN1_OBJECT|.
|
1099
1601
|
OPENSSL_EXPORT X509_EXTENSION *X509_EXTENSION_create_by_OBJ(
|
1100
1602
|
X509_EXTENSION **ex, const ASN1_OBJECT *obj, int crit,
|
1101
|
-
ASN1_OCTET_STRING *data);
|
1603
|
+
const ASN1_OCTET_STRING *data);
|
1604
|
+
|
1605
|
+
// X509_EXTENSION_set_object sets |ex|'s extension type to |obj|. It returns one
|
1606
|
+
// on success and zero on error.
|
1102
1607
|
OPENSSL_EXPORT int X509_EXTENSION_set_object(X509_EXTENSION *ex,
|
1103
1608
|
const ASN1_OBJECT *obj);
|
1609
|
+
|
1610
|
+
// X509_EXTENSION_set_critical sets |ex| to critical if |crit| is non-zero and
|
1611
|
+
// to non-critical if |crit| is zero.
|
1104
1612
|
OPENSSL_EXPORT int X509_EXTENSION_set_critical(X509_EXTENSION *ex, int crit);
|
1613
|
+
|
1614
|
+
// X509_EXTENSION_set_data set's |ex|'s extension value to a copy of |data|. It
|
1615
|
+
// returns one on success and zero on error.
|
1105
1616
|
OPENSSL_EXPORT int X509_EXTENSION_set_data(X509_EXTENSION *ex,
|
1106
|
-
ASN1_OCTET_STRING *data);
|
1617
|
+
const ASN1_OCTET_STRING *data);
|
1618
|
+
|
1619
|
+
// X509_EXTENSION_get_object returns |ex|'s extension type.
|
1107
1620
|
OPENSSL_EXPORT ASN1_OBJECT *X509_EXTENSION_get_object(X509_EXTENSION *ex);
|
1621
|
+
|
1622
|
+
// X509_EXTENSION_get_data returns |ne|'s extension value.
|
1108
1623
|
OPENSSL_EXPORT ASN1_OCTET_STRING *X509_EXTENSION_get_data(X509_EXTENSION *ne);
|
1109
|
-
OPENSSL_EXPORT int X509_EXTENSION_get_critical(X509_EXTENSION *ex);
|
1110
1624
|
|
1111
|
-
|
1112
|
-
|
1625
|
+
// X509_EXTENSION_get_critical returns one if |ex| is critical and zero
|
1626
|
+
// otherwise.
|
1627
|
+
OPENSSL_EXPORT int X509_EXTENSION_get_critical(const X509_EXTENSION *ex);
|
1628
|
+
|
1629
|
+
// X509at_get_attr_count returns the number of attributes in |x|.
|
1630
|
+
OPENSSL_EXPORT int X509at_get_attr_count(const STACK_OF(X509_ATTRIBUTE) *x);
|
1631
|
+
|
1632
|
+
// X509at_get_attr_by_NID returns the index of the attribute in |x| of type
|
1633
|
+
// |nid|, or a negative number if not found. If found, callers can use
|
1634
|
+
// |X509at_get_attr| to look up the attribute by index.
|
1635
|
+
//
|
1636
|
+
// If |lastpos| is non-negative, it begins searching at |lastpos| + 1. Callers
|
1637
|
+
// can thus loop over all matching attributes by first passing -1 and then
|
1638
|
+
// passing the previously-returned value until no match is returned.
|
1639
|
+
OPENSSL_EXPORT int X509at_get_attr_by_NID(const STACK_OF(X509_ATTRIBUTE) *x,
|
1113
1640
|
int nid, int lastpos);
|
1114
|
-
|
1641
|
+
|
1642
|
+
// X509at_get_attr_by_OBJ behaves like |X509at_get_attr_by_NID| but looks for
|
1643
|
+
// attributes of type |obj|.
|
1644
|
+
OPENSSL_EXPORT int X509at_get_attr_by_OBJ(const STACK_OF(X509_ATTRIBUTE) *sk,
|
1115
1645
|
const ASN1_OBJECT *obj, int lastpos);
|
1116
|
-
|
1117
|
-
|
1118
|
-
|
1119
|
-
OPENSSL_EXPORT X509_ATTRIBUTE *
|
1646
|
+
|
1647
|
+
// X509at_get_attr returns the attribute at index |loc| in |x|, or NULL if
|
1648
|
+
// out of bounds.
|
1649
|
+
OPENSSL_EXPORT X509_ATTRIBUTE *X509at_get_attr(
|
1650
|
+
const STACK_OF(X509_ATTRIBUTE) *x, int loc);
|
1651
|
+
|
1652
|
+
// X509at_delete_attr removes the attribute at index |loc| in |x|. It returns
|
1653
|
+
// the removed attribute to the caller, or NULL if |loc| was out of bounds. If
|
1654
|
+
// non-NULL, the caller must release the result with |X509_ATTRIBUTE_free| when
|
1655
|
+
// done. It is also safe, but not necessary, to call |X509_ATTRIBUTE_free| if
|
1656
|
+
// the result is NULL.
|
1657
|
+
OPENSSL_EXPORT X509_ATTRIBUTE *X509at_delete_attr(STACK_OF(X509_ATTRIBUTE) *x,
|
1120
1658
|
int loc);
|
1121
|
-
|
1122
|
-
|
1123
|
-
|
1124
|
-
|
1125
|
-
|
1126
|
-
|
1127
|
-
OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *
|
1128
|
-
|
1129
|
-
|
1130
|
-
|
1131
|
-
|
1132
|
-
|
1133
|
-
|
1134
|
-
|
1135
|
-
|
1659
|
+
|
1660
|
+
// X509at_add1_attr appends a copy of |attr| to the attribute list in |*x|. If
|
1661
|
+
// |*x| is NULL, it allocates a new |STACK_OF(X509_ATTRIBUTE)| to hold the copy
|
1662
|
+
// and sets |*x| to the new list. It returns |*x| on success and NULL on error.
|
1663
|
+
// The caller retains ownership of |attr| and can release it independently of
|
1664
|
+
// |*x|.
|
1665
|
+
OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr(
|
1666
|
+
STACK_OF(X509_ATTRIBUTE) **x, X509_ATTRIBUTE *attr);
|
1667
|
+
|
1668
|
+
// X509at_add1_attr_by_OBJ behaves like |X509at_add1_attr|, but adds an
|
1669
|
+
// attribute created by |X509_ATTRIBUTE_create_by_OBJ|.
|
1670
|
+
OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_OBJ(
|
1671
|
+
STACK_OF(X509_ATTRIBUTE) **x, const ASN1_OBJECT *obj, int type,
|
1672
|
+
const unsigned char *bytes, int len);
|
1673
|
+
|
1674
|
+
// X509at_add1_attr_by_NID behaves like |X509at_add1_attr|, but adds an
|
1675
|
+
// attribute created by |X509_ATTRIBUTE_create_by_NID|.
|
1676
|
+
OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_NID(
|
1677
|
+
STACK_OF(X509_ATTRIBUTE) **x, int nid, int type, const unsigned char *bytes,
|
1678
|
+
int len);
|
1679
|
+
|
1680
|
+
// X509at_add1_attr_by_txt behaves like |X509at_add1_attr|, but adds an
|
1681
|
+
// attribute created by |X509_ATTRIBUTE_create_by_txt|.
|
1682
|
+
OPENSSL_EXPORT STACK_OF(X509_ATTRIBUTE) *X509at_add1_attr_by_txt(
|
1683
|
+
STACK_OF(X509_ATTRIBUTE) **x, const char *attrname, int type,
|
1684
|
+
const unsigned char *bytes, int len);
|
1685
|
+
|
1686
|
+
// X509_ATTRIBUTE_create_by_NID returns a newly-allocated |X509_ATTRIBUTE| of
|
1687
|
+
// type |nid|, or NULL on error. The value is determined as in
|
1688
|
+
// |X509_ATTRIBUTE_set1_data|.
|
1689
|
+
//
|
1690
|
+
// If |attr| is non-NULL, the resulting |X509_ATTRIBUTE| is also written to
|
1691
|
+
// |*attr|. If |*attr| was non-NULL when the function was called, |*attr| is
|
1692
|
+
// reused instead of creating a new object.
|
1693
|
+
//
|
1694
|
+
// WARNING: The interpretation of |attrtype|, |data|, and |len| is complex and
|
1695
|
+
// error-prone. See |X509_ATTRIBUTE_set1_data| for details.
|
1696
|
+
//
|
1697
|
+
// WARNING: The object reuse form is deprecated and may be removed in the
|
1698
|
+
// future. It also currently incorrectly appends to the reused object's value
|
1699
|
+
// set rather than overwriting it.
|
1136
1700
|
OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_NID(
|
1137
|
-
X509_ATTRIBUTE **attr, int nid, int
|
1701
|
+
X509_ATTRIBUTE **attr, int nid, int attrtype, const void *data, int len);
|
1702
|
+
|
1703
|
+
// X509_ATTRIBUTE_create_by_OBJ behaves like |X509_ATTRIBUTE_create_by_NID|
|
1704
|
+
// except the attribute's type is determined by |obj|.
|
1138
1705
|
OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_OBJ(
|
1139
|
-
X509_ATTRIBUTE **attr, const ASN1_OBJECT *obj, int
|
1706
|
+
X509_ATTRIBUTE **attr, const ASN1_OBJECT *obj, int attrtype,
|
1140
1707
|
const void *data, int len);
|
1708
|
+
|
1709
|
+
// X509_ATTRIBUTE_create_by_txt behaves like |X509_ATTRIBUTE_create_by_NID|
|
1710
|
+
// except the attribute's type is determined by calling |OBJ_txt2obj| with
|
1711
|
+
// |attrname|.
|
1141
1712
|
OPENSSL_EXPORT X509_ATTRIBUTE *X509_ATTRIBUTE_create_by_txt(
|
1142
|
-
X509_ATTRIBUTE **attr, const char *
|
1713
|
+
X509_ATTRIBUTE **attr, const char *attrname, int type,
|
1143
1714
|
const unsigned char *bytes, int len);
|
1715
|
+
|
1716
|
+
// X509_ATTRIBUTE_set1_object sets |attr|'s type to |obj|. It returns one on
|
1717
|
+
// success and zero on error.
|
1144
1718
|
OPENSSL_EXPORT int X509_ATTRIBUTE_set1_object(X509_ATTRIBUTE *attr,
|
1145
1719
|
const ASN1_OBJECT *obj);
|
1720
|
+
|
1721
|
+
// X509_ATTRIBUTE_set1_data appends a value to |attr|'s value set and returns
|
1722
|
+
// one on success or zero on error. The value is determined as follows:
|
1723
|
+
//
|
1724
|
+
// If |attrtype| is a |MBSTRING_*| constant, the value is an ASN.1 string. The
|
1725
|
+
// string is determined by decoding |len| bytes from |data| in the encoding
|
1726
|
+
// specified by |attrtype|, and then re-encoding it in a form appropriate for
|
1727
|
+
// |attr|'s type. If |len| is -1, |strlen(data)| is used instead. See
|
1728
|
+
// |ASN1_STRING_set_by_NID| for details.
|
1729
|
+
//
|
1730
|
+
// TODO(davidben): Document |ASN1_STRING_set_by_NID| so the reference is useful.
|
1731
|
+
//
|
1732
|
+
// Otherwise, if |len| is not -1, the value is an ASN.1 string. |attrtype| is an
|
1733
|
+
// |ASN1_STRING| type value and the |len| bytes from |data| are copied as the
|
1734
|
+
// type-specific representation of |ASN1_STRING|. See |ASN1_STRING| for details.
|
1735
|
+
//
|
1736
|
+
// WARNING: If this form is used to construct a negative INTEGER or ENUMERATED,
|
1737
|
+
// |attrtype| includes the |V_ASN1_NEG| flag for |ASN1_STRING|, but the function
|
1738
|
+
// forgets to clear the flag for |ASN1_TYPE|. This matches OpenSSL but is
|
1739
|
+
// probably a bug. For now, do not use this form with negative values.
|
1740
|
+
//
|
1741
|
+
// Otherwise, if |len| is -1, the value is constructed by passing |attrtype| and
|
1742
|
+
// |data| to |ASN1_TYPE_set1|. That is, |attrtype| is an |ASN1_TYPE| type value,
|
1743
|
+
// and |data| is cast to the corresponding pointer type.
|
1744
|
+
//
|
1745
|
+
// WARNING: Despite the name, this function appends to |attr|'s value set,
|
1746
|
+
// rather than overwriting it. To overwrite the value set, create a new
|
1747
|
+
// |X509_ATTRIBUTE| with |X509_ATTRIBUTE_new|.
|
1748
|
+
//
|
1749
|
+
// WARNING: If using the |MBSTRING_*| form, pass a length rather than relying on
|
1750
|
+
// |strlen|. In particular, |strlen| will not behave correctly if the input is
|
1751
|
+
// |MBSTRING_BMP| or |MBSTRING_UNIV|.
|
1752
|
+
//
|
1753
|
+
// WARNING: This function currently misinterprets |V_ASN1_OTHER| as an
|
1754
|
+
// |MBSTRING_*| constant. This matches OpenSSL but means it is impossible to
|
1755
|
+
// construct a value with a non-universal tag.
|
1146
1756
|
OPENSSL_EXPORT int X509_ATTRIBUTE_set1_data(X509_ATTRIBUTE *attr, int attrtype,
|
1147
1757
|
const void *data, int len);
|
1758
|
+
|
1759
|
+
// X509_ATTRIBUTE_get0_data returns the |idx|th value of |attr| in a
|
1760
|
+
// type-specific representation to |attrtype|, or NULL if out of bounds or the
|
1761
|
+
// type does not match. |attrtype| is one of the type values in |ASN1_TYPE|. On
|
1762
|
+
// match, the return value uses the same representation as |ASN1_TYPE_set0|. See
|
1763
|
+
// |ASN1_TYPE| for details.
|
1148
1764
|
OPENSSL_EXPORT void *X509_ATTRIBUTE_get0_data(X509_ATTRIBUTE *attr, int idx,
|
1149
|
-
int
|
1150
|
-
|
1765
|
+
int attrtype, void *unused);
|
1766
|
+
|
1767
|
+
// X509_ATTRIBUTE_count returns the number of values in |attr|.
|
1768
|
+
OPENSSL_EXPORT int X509_ATTRIBUTE_count(const X509_ATTRIBUTE *attr);
|
1769
|
+
|
1770
|
+
// X509_ATTRIBUTE_get0_object returns the type of |attr|.
|
1151
1771
|
OPENSSL_EXPORT ASN1_OBJECT *X509_ATTRIBUTE_get0_object(X509_ATTRIBUTE *attr);
|
1772
|
+
|
1773
|
+
// X509_ATTRIBUTE_get0_type returns the |idx|th value in |attr|, or NULL if out
|
1774
|
+
// of bounds. Note this function returns one of |attr|'s values, not the type.
|
1152
1775
|
OPENSSL_EXPORT ASN1_TYPE *X509_ATTRIBUTE_get0_type(X509_ATTRIBUTE *attr,
|
1153
1776
|
int idx);
|
1154
1777
|
|
1155
1778
|
OPENSSL_EXPORT int X509_verify_cert(X509_STORE_CTX *ctx);
|
1156
1779
|
|
1157
1780
|
// lookup a cert from a X509 STACK
|
1158
|
-
OPENSSL_EXPORT X509 *X509_find_by_issuer_and_serial(STACK_OF(X509) *
|
1781
|
+
OPENSSL_EXPORT X509 *X509_find_by_issuer_and_serial(STACK_OF(X509) *sk,
|
1159
1782
|
X509_NAME *name,
|
1160
1783
|
ASN1_INTEGER *serial);
|
1161
|
-
OPENSSL_EXPORT X509 *X509_find_by_subject(STACK_OF(X509) *
|
1784
|
+
OPENSSL_EXPORT X509 *X509_find_by_subject(STACK_OF(X509) *sk, X509_NAME *name);
|
1162
1785
|
|
1163
1786
|
// PKCS#8 utilities
|
1164
1787
|
|
@@ -1174,13 +1797,36 @@ OPENSSL_EXPORT int PKCS8_pkey_get0(ASN1_OBJECT **ppkalg,
|
|
1174
1797
|
const unsigned char **pk, int *ppklen,
|
1175
1798
|
X509_ALGOR **pa, PKCS8_PRIV_KEY_INFO *p8);
|
1176
1799
|
|
1177
|
-
|
1178
|
-
|
1179
|
-
|
1180
|
-
|
1181
|
-
|
1182
|
-
|
1183
|
-
|
1800
|
+
// X509_PUBKEY_set0_param sets |pub| to a key with AlgorithmIdentifier
|
1801
|
+
// determined by |obj|, |param_type|, and |param_value|, and an encoded
|
1802
|
+
// public key of |key|. On success, it takes ownership of all its parameters and
|
1803
|
+
// returns one. Otherwise, it returns zero. |key| must have been allocated by
|
1804
|
+
// |OPENSSL_malloc|.
|
1805
|
+
//
|
1806
|
+
// |obj|, |param_type|, and |param_value| are interpreted as in
|
1807
|
+
// |X509_ALGOR_set0|. See |X509_ALGOR_set0| for details.
|
1808
|
+
OPENSSL_EXPORT int X509_PUBKEY_set0_param(X509_PUBKEY *pub, ASN1_OBJECT *obj,
|
1809
|
+
int param_type, void *param_value,
|
1810
|
+
uint8_t *key, int key_len);
|
1811
|
+
|
1812
|
+
// X509_PUBKEY_get0_param outputs fields of |pub| and returns one. If |out_obj|
|
1813
|
+
// is not NULL, it sets |*out_obj| to AlgorithmIdentifier's OID. If |out_key|
|
1814
|
+
// is not NULL, it sets |*out_key| and |*out_key_len| to the encoded public key.
|
1815
|
+
// If |out_alg| is not NULL, it sets |*out_alg| to the AlgorithmIdentifier.
|
1816
|
+
//
|
1817
|
+
// Note: X.509 SubjectPublicKeyInfo structures store the encoded public key as a
|
1818
|
+
// BIT STRING. |*out_key| and |*out_key_len| will silently pad the key with zero
|
1819
|
+
// bits if |pub| did not contain a whole number of bytes. Use
|
1820
|
+
// |X509_PUBKEY_get0_public_key| to preserve this information.
|
1821
|
+
OPENSSL_EXPORT int X509_PUBKEY_get0_param(ASN1_OBJECT **out_obj,
|
1822
|
+
const uint8_t **out_key,
|
1823
|
+
int *out_key_len,
|
1824
|
+
X509_ALGOR **out_alg,
|
1825
|
+
X509_PUBKEY *pub);
|
1826
|
+
|
1827
|
+
// X509_PUBKEY_get0_public_key returns |pub|'s encoded public key.
|
1828
|
+
OPENSSL_EXPORT const ASN1_BIT_STRING *X509_PUBKEY_get0_public_key(
|
1829
|
+
const X509_PUBKEY *pub);
|
1184
1830
|
|
1185
1831
|
OPENSSL_EXPORT int X509_check_trust(X509 *x, int id, int flags);
|
1186
1832
|
OPENSSL_EXPORT int X509_TRUST_get_count(void);
|
@@ -1190,24 +1836,507 @@ OPENSSL_EXPORT int X509_TRUST_add(int id, int flags,
|
|
1190
1836
|
int (*ck)(X509_TRUST *, X509 *, int),
|
1191
1837
|
char *name, int arg1, void *arg2);
|
1192
1838
|
OPENSSL_EXPORT void X509_TRUST_cleanup(void);
|
1193
|
-
OPENSSL_EXPORT int X509_TRUST_get_flags(X509_TRUST *xp);
|
1194
|
-
OPENSSL_EXPORT char *X509_TRUST_get0_name(X509_TRUST *xp);
|
1195
|
-
OPENSSL_EXPORT int X509_TRUST_get_trust(X509_TRUST *xp);
|
1839
|
+
OPENSSL_EXPORT int X509_TRUST_get_flags(const X509_TRUST *xp);
|
1840
|
+
OPENSSL_EXPORT char *X509_TRUST_get0_name(const X509_TRUST *xp);
|
1841
|
+
OPENSSL_EXPORT int X509_TRUST_get_trust(const X509_TRUST *xp);
|
1196
1842
|
|
1197
1843
|
|
1198
|
-
|
1844
|
+
struct rsa_pss_params_st {
|
1199
1845
|
X509_ALGOR *hashAlgorithm;
|
1200
1846
|
X509_ALGOR *maskGenAlgorithm;
|
1201
1847
|
ASN1_INTEGER *saltLength;
|
1202
1848
|
ASN1_INTEGER *trailerField;
|
1203
|
-
|
1849
|
+
// OpenSSL caches the MGF hash on |RSA_PSS_PARAMS| in some cases. None of the
|
1850
|
+
// cases apply to BoringSSL, so this is always NULL, but Node expects the
|
1851
|
+
// field to be present.
|
1852
|
+
X509_ALGOR *maskHash;
|
1853
|
+
} /* RSA_PSS_PARAMS */;
|
1204
1854
|
|
1205
1855
|
DECLARE_ASN1_FUNCTIONS(RSA_PSS_PARAMS)
|
1206
1856
|
|
1857
|
+
/*
|
1858
|
+
SSL_CTX -> X509_STORE
|
1859
|
+
-> X509_LOOKUP
|
1860
|
+
->X509_LOOKUP_METHOD
|
1861
|
+
-> X509_LOOKUP
|
1862
|
+
->X509_LOOKUP_METHOD
|
1863
|
+
|
1864
|
+
SSL -> X509_STORE_CTX
|
1865
|
+
->X509_STORE
|
1866
|
+
|
1867
|
+
The X509_STORE holds the tables etc for verification stuff.
|
1868
|
+
A X509_STORE_CTX is used while validating a single certificate.
|
1869
|
+
The X509_STORE has X509_LOOKUPs for looking up certs.
|
1870
|
+
The X509_STORE then calls a function to actually verify the
|
1871
|
+
certificate chain.
|
1872
|
+
*/
|
1873
|
+
|
1874
|
+
#define X509_LU_X509 1
|
1875
|
+
#define X509_LU_CRL 2
|
1876
|
+
#define X509_LU_PKEY 3
|
1877
|
+
|
1878
|
+
DEFINE_STACK_OF(X509_LOOKUP)
|
1879
|
+
DEFINE_STACK_OF(X509_OBJECT)
|
1880
|
+
DEFINE_STACK_OF(X509_VERIFY_PARAM)
|
1881
|
+
|
1882
|
+
typedef int (*X509_STORE_CTX_verify_cb)(int, X509_STORE_CTX *);
|
1883
|
+
typedef int (*X509_STORE_CTX_verify_fn)(X509_STORE_CTX *);
|
1884
|
+
typedef int (*X509_STORE_CTX_get_issuer_fn)(X509 **issuer, X509_STORE_CTX *ctx,
|
1885
|
+
X509 *x);
|
1886
|
+
typedef int (*X509_STORE_CTX_check_issued_fn)(X509_STORE_CTX *ctx, X509 *x,
|
1887
|
+
X509 *issuer);
|
1888
|
+
typedef int (*X509_STORE_CTX_check_revocation_fn)(X509_STORE_CTX *ctx);
|
1889
|
+
typedef int (*X509_STORE_CTX_get_crl_fn)(X509_STORE_CTX *ctx, X509_CRL **crl,
|
1890
|
+
X509 *x);
|
1891
|
+
typedef int (*X509_STORE_CTX_check_crl_fn)(X509_STORE_CTX *ctx, X509_CRL *crl);
|
1892
|
+
typedef int (*X509_STORE_CTX_cert_crl_fn)(X509_STORE_CTX *ctx, X509_CRL *crl,
|
1893
|
+
X509 *x);
|
1894
|
+
typedef int (*X509_STORE_CTX_check_policy_fn)(X509_STORE_CTX *ctx);
|
1895
|
+
typedef STACK_OF(X509) *(*X509_STORE_CTX_lookup_certs_fn)(X509_STORE_CTX *ctx,
|
1896
|
+
X509_NAME *nm);
|
1897
|
+
typedef STACK_OF(X509_CRL) *(*X509_STORE_CTX_lookup_crls_fn)(
|
1898
|
+
X509_STORE_CTX *ctx, X509_NAME *nm);
|
1899
|
+
typedef int (*X509_STORE_CTX_cleanup_fn)(X509_STORE_CTX *ctx);
|
1900
|
+
|
1901
|
+
OPENSSL_EXPORT int X509_STORE_set_depth(X509_STORE *store, int depth);
|
1902
|
+
|
1903
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_depth(X509_STORE_CTX *ctx, int depth);
|
1904
|
+
|
1905
|
+
#define X509_STORE_CTX_set_app_data(ctx, data) \
|
1906
|
+
X509_STORE_CTX_set_ex_data(ctx, 0, data)
|
1907
|
+
#define X509_STORE_CTX_get_app_data(ctx) X509_STORE_CTX_get_ex_data(ctx, 0)
|
1908
|
+
|
1909
|
+
#define X509_L_FILE_LOAD 1
|
1910
|
+
#define X509_L_ADD_DIR 2
|
1911
|
+
|
1912
|
+
#define X509_LOOKUP_load_file(x, name, type) \
|
1913
|
+
X509_LOOKUP_ctrl((x), X509_L_FILE_LOAD, (name), (long)(type), NULL)
|
1914
|
+
|
1915
|
+
#define X509_LOOKUP_add_dir(x, name, type) \
|
1916
|
+
X509_LOOKUP_ctrl((x), X509_L_ADD_DIR, (name), (long)(type), NULL)
|
1917
|
+
|
1918
|
+
#define X509_V_OK 0
|
1919
|
+
#define X509_V_ERR_UNSPECIFIED 1
|
1920
|
+
|
1921
|
+
#define X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT 2
|
1922
|
+
#define X509_V_ERR_UNABLE_TO_GET_CRL 3
|
1923
|
+
#define X509_V_ERR_UNABLE_TO_DECRYPT_CERT_SIGNATURE 4
|
1924
|
+
#define X509_V_ERR_UNABLE_TO_DECRYPT_CRL_SIGNATURE 5
|
1925
|
+
#define X509_V_ERR_UNABLE_TO_DECODE_ISSUER_PUBLIC_KEY 6
|
1926
|
+
#define X509_V_ERR_CERT_SIGNATURE_FAILURE 7
|
1927
|
+
#define X509_V_ERR_CRL_SIGNATURE_FAILURE 8
|
1928
|
+
#define X509_V_ERR_CERT_NOT_YET_VALID 9
|
1929
|
+
#define X509_V_ERR_CERT_HAS_EXPIRED 10
|
1930
|
+
#define X509_V_ERR_CRL_NOT_YET_VALID 11
|
1931
|
+
#define X509_V_ERR_CRL_HAS_EXPIRED 12
|
1932
|
+
#define X509_V_ERR_ERROR_IN_CERT_NOT_BEFORE_FIELD 13
|
1933
|
+
#define X509_V_ERR_ERROR_IN_CERT_NOT_AFTER_FIELD 14
|
1934
|
+
#define X509_V_ERR_ERROR_IN_CRL_LAST_UPDATE_FIELD 15
|
1935
|
+
#define X509_V_ERR_ERROR_IN_CRL_NEXT_UPDATE_FIELD 16
|
1936
|
+
#define X509_V_ERR_OUT_OF_MEM 17
|
1937
|
+
#define X509_V_ERR_DEPTH_ZERO_SELF_SIGNED_CERT 18
|
1938
|
+
#define X509_V_ERR_SELF_SIGNED_CERT_IN_CHAIN 19
|
1939
|
+
#define X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY 20
|
1940
|
+
#define X509_V_ERR_UNABLE_TO_VERIFY_LEAF_SIGNATURE 21
|
1941
|
+
#define X509_V_ERR_CERT_CHAIN_TOO_LONG 22
|
1942
|
+
#define X509_V_ERR_CERT_REVOKED 23
|
1943
|
+
#define X509_V_ERR_INVALID_CA 24
|
1944
|
+
#define X509_V_ERR_PATH_LENGTH_EXCEEDED 25
|
1945
|
+
#define X509_V_ERR_INVALID_PURPOSE 26
|
1946
|
+
#define X509_V_ERR_CERT_UNTRUSTED 27
|
1947
|
+
#define X509_V_ERR_CERT_REJECTED 28
|
1948
|
+
// These are 'informational' when looking for issuer cert
|
1949
|
+
#define X509_V_ERR_SUBJECT_ISSUER_MISMATCH 29
|
1950
|
+
#define X509_V_ERR_AKID_SKID_MISMATCH 30
|
1951
|
+
#define X509_V_ERR_AKID_ISSUER_SERIAL_MISMATCH 31
|
1952
|
+
#define X509_V_ERR_KEYUSAGE_NO_CERTSIGN 32
|
1953
|
+
|
1954
|
+
#define X509_V_ERR_UNABLE_TO_GET_CRL_ISSUER 33
|
1955
|
+
#define X509_V_ERR_UNHANDLED_CRITICAL_EXTENSION 34
|
1956
|
+
#define X509_V_ERR_KEYUSAGE_NO_CRL_SIGN 35
|
1957
|
+
#define X509_V_ERR_UNHANDLED_CRITICAL_CRL_EXTENSION 36
|
1958
|
+
#define X509_V_ERR_INVALID_NON_CA 37
|
1959
|
+
#define X509_V_ERR_PROXY_PATH_LENGTH_EXCEEDED 38
|
1960
|
+
#define X509_V_ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE 39
|
1961
|
+
#define X509_V_ERR_PROXY_CERTIFICATES_NOT_ALLOWED 40
|
1962
|
+
|
1963
|
+
#define X509_V_ERR_INVALID_EXTENSION 41
|
1964
|
+
#define X509_V_ERR_INVALID_POLICY_EXTENSION 42
|
1965
|
+
#define X509_V_ERR_NO_EXPLICIT_POLICY 43
|
1966
|
+
#define X509_V_ERR_DIFFERENT_CRL_SCOPE 44
|
1967
|
+
#define X509_V_ERR_UNSUPPORTED_EXTENSION_FEATURE 45
|
1968
|
+
|
1969
|
+
#define X509_V_ERR_UNNESTED_RESOURCE 46
|
1970
|
+
|
1971
|
+
#define X509_V_ERR_PERMITTED_VIOLATION 47
|
1972
|
+
#define X509_V_ERR_EXCLUDED_VIOLATION 48
|
1973
|
+
#define X509_V_ERR_SUBTREE_MINMAX 49
|
1974
|
+
#define X509_V_ERR_APPLICATION_VERIFICATION 50
|
1975
|
+
#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_TYPE 51
|
1976
|
+
#define X509_V_ERR_UNSUPPORTED_CONSTRAINT_SYNTAX 52
|
1977
|
+
#define X509_V_ERR_UNSUPPORTED_NAME_SYNTAX 53
|
1978
|
+
#define X509_V_ERR_CRL_PATH_VALIDATION_ERROR 54
|
1979
|
+
|
1980
|
+
// Suite B mode algorithm violation
|
1981
|
+
#define X509_V_ERR_SUITE_B_INVALID_VERSION 56
|
1982
|
+
#define X509_V_ERR_SUITE_B_INVALID_ALGORITHM 57
|
1983
|
+
#define X509_V_ERR_SUITE_B_INVALID_CURVE 58
|
1984
|
+
#define X509_V_ERR_SUITE_B_INVALID_SIGNATURE_ALGORITHM 59
|
1985
|
+
#define X509_V_ERR_SUITE_B_LOS_NOT_ALLOWED 60
|
1986
|
+
#define X509_V_ERR_SUITE_B_CANNOT_SIGN_P_384_WITH_P_256 61
|
1987
|
+
|
1988
|
+
// Host, email and IP check errors
|
1989
|
+
#define X509_V_ERR_HOSTNAME_MISMATCH 62
|
1990
|
+
#define X509_V_ERR_EMAIL_MISMATCH 63
|
1991
|
+
#define X509_V_ERR_IP_ADDRESS_MISMATCH 64
|
1992
|
+
|
1993
|
+
// Caller error
|
1994
|
+
#define X509_V_ERR_INVALID_CALL 65
|
1995
|
+
// Issuer lookup error
|
1996
|
+
#define X509_V_ERR_STORE_LOOKUP 66
|
1997
|
+
|
1998
|
+
#define X509_V_ERR_NAME_CONSTRAINTS_WITHOUT_SANS 67
|
1999
|
+
|
2000
|
+
// Certificate verify flags
|
2001
|
+
|
2002
|
+
// Send issuer+subject checks to verify_cb
|
2003
|
+
#define X509_V_FLAG_CB_ISSUER_CHECK 0x1
|
2004
|
+
// Use check time instead of current time
|
2005
|
+
#define X509_V_FLAG_USE_CHECK_TIME 0x2
|
2006
|
+
// Lookup CRLs
|
2007
|
+
#define X509_V_FLAG_CRL_CHECK 0x4
|
2008
|
+
// Lookup CRLs for whole chain
|
2009
|
+
#define X509_V_FLAG_CRL_CHECK_ALL 0x8
|
2010
|
+
// Ignore unhandled critical extensions
|
2011
|
+
#define X509_V_FLAG_IGNORE_CRITICAL 0x10
|
2012
|
+
// Does nothing as its functionality has been enabled by default.
|
2013
|
+
#define X509_V_FLAG_X509_STRICT 0x00
|
2014
|
+
// Enable proxy certificate validation
|
2015
|
+
#define X509_V_FLAG_ALLOW_PROXY_CERTS 0x40
|
2016
|
+
// Enable policy checking
|
2017
|
+
#define X509_V_FLAG_POLICY_CHECK 0x80
|
2018
|
+
// Policy variable require-explicit-policy
|
2019
|
+
#define X509_V_FLAG_EXPLICIT_POLICY 0x100
|
2020
|
+
// Policy variable inhibit-any-policy
|
2021
|
+
#define X509_V_FLAG_INHIBIT_ANY 0x200
|
2022
|
+
// Policy variable inhibit-policy-mapping
|
2023
|
+
#define X509_V_FLAG_INHIBIT_MAP 0x400
|
2024
|
+
// Notify callback that policy is OK
|
2025
|
+
#define X509_V_FLAG_NOTIFY_POLICY 0x800
|
2026
|
+
// Extended CRL features such as indirect CRLs, alternate CRL signing keys
|
2027
|
+
#define X509_V_FLAG_EXTENDED_CRL_SUPPORT 0x1000
|
2028
|
+
// Delta CRL support
|
2029
|
+
#define X509_V_FLAG_USE_DELTAS 0x2000
|
2030
|
+
// Check selfsigned CA signature
|
2031
|
+
#define X509_V_FLAG_CHECK_SS_SIGNATURE 0x4000
|
2032
|
+
// Use trusted store first
|
2033
|
+
#define X509_V_FLAG_TRUSTED_FIRST 0x8000
|
2034
|
+
// Suite B 128 bit only mode: not normally used
|
2035
|
+
#define X509_V_FLAG_SUITEB_128_LOS_ONLY 0x10000
|
2036
|
+
// Suite B 192 bit only mode
|
2037
|
+
#define X509_V_FLAG_SUITEB_192_LOS 0x20000
|
2038
|
+
// Suite B 128 bit mode allowing 192 bit algorithms
|
2039
|
+
#define X509_V_FLAG_SUITEB_128_LOS 0x30000
|
2040
|
+
|
2041
|
+
// Allow partial chains if at least one certificate is in trusted store
|
2042
|
+
#define X509_V_FLAG_PARTIAL_CHAIN 0x80000
|
2043
|
+
|
2044
|
+
// If the initial chain is not trusted, do not attempt to build an alternative
|
2045
|
+
// chain. Alternate chain checking was introduced in 1.0.2b. Setting this flag
|
2046
|
+
// will force the behaviour to match that of previous versions.
|
2047
|
+
#define X509_V_FLAG_NO_ALT_CHAINS 0x100000
|
2048
|
+
|
2049
|
+
#define X509_VP_FLAG_DEFAULT 0x1
|
2050
|
+
#define X509_VP_FLAG_OVERWRITE 0x2
|
2051
|
+
#define X509_VP_FLAG_RESET_FLAGS 0x4
|
2052
|
+
#define X509_VP_FLAG_LOCKED 0x8
|
2053
|
+
#define X509_VP_FLAG_ONCE 0x10
|
2054
|
+
|
2055
|
+
// Internal use: mask of policy related options
|
2056
|
+
#define X509_V_FLAG_POLICY_MASK \
|
2057
|
+
(X509_V_FLAG_POLICY_CHECK | X509_V_FLAG_EXPLICIT_POLICY | \
|
2058
|
+
X509_V_FLAG_INHIBIT_ANY | X509_V_FLAG_INHIBIT_MAP)
|
2059
|
+
|
2060
|
+
OPENSSL_EXPORT int X509_OBJECT_idx_by_subject(STACK_OF(X509_OBJECT) *h,
|
2061
|
+
int type, X509_NAME *name);
|
2062
|
+
OPENSSL_EXPORT X509_OBJECT *X509_OBJECT_retrieve_by_subject(
|
2063
|
+
STACK_OF(X509_OBJECT) *h, int type, X509_NAME *name);
|
2064
|
+
OPENSSL_EXPORT X509_OBJECT *X509_OBJECT_retrieve_match(STACK_OF(X509_OBJECT) *h,
|
2065
|
+
X509_OBJECT *x);
|
2066
|
+
OPENSSL_EXPORT int X509_OBJECT_up_ref_count(X509_OBJECT *a);
|
2067
|
+
OPENSSL_EXPORT void X509_OBJECT_free_contents(X509_OBJECT *a);
|
2068
|
+
OPENSSL_EXPORT int X509_OBJECT_get_type(const X509_OBJECT *a);
|
2069
|
+
OPENSSL_EXPORT X509 *X509_OBJECT_get0_X509(const X509_OBJECT *a);
|
2070
|
+
OPENSSL_EXPORT X509_STORE *X509_STORE_new(void);
|
2071
|
+
OPENSSL_EXPORT int X509_STORE_up_ref(X509_STORE *store);
|
2072
|
+
OPENSSL_EXPORT void X509_STORE_free(X509_STORE *v);
|
2073
|
+
|
2074
|
+
OPENSSL_EXPORT STACK_OF(X509_OBJECT) *X509_STORE_get0_objects(X509_STORE *st);
|
2075
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_get1_certs(X509_STORE_CTX *st,
|
2076
|
+
X509_NAME *nm);
|
2077
|
+
OPENSSL_EXPORT STACK_OF(X509_CRL) *X509_STORE_get1_crls(X509_STORE_CTX *st,
|
2078
|
+
X509_NAME *nm);
|
2079
|
+
OPENSSL_EXPORT int X509_STORE_set_flags(X509_STORE *ctx, unsigned long flags);
|
2080
|
+
OPENSSL_EXPORT int X509_STORE_set_purpose(X509_STORE *ctx, int purpose);
|
2081
|
+
OPENSSL_EXPORT int X509_STORE_set_trust(X509_STORE *ctx, int trust);
|
2082
|
+
OPENSSL_EXPORT int X509_STORE_set1_param(X509_STORE *ctx,
|
2083
|
+
X509_VERIFY_PARAM *pm);
|
2084
|
+
OPENSSL_EXPORT X509_VERIFY_PARAM *X509_STORE_get0_param(X509_STORE *ctx);
|
2085
|
+
|
2086
|
+
OPENSSL_EXPORT void X509_STORE_set_verify(X509_STORE *ctx,
|
2087
|
+
X509_STORE_CTX_verify_fn verify);
|
2088
|
+
#define X509_STORE_set_verify_func(ctx, func) \
|
2089
|
+
X509_STORE_set_verify((ctx), (func))
|
2090
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_verify(X509_STORE_CTX *ctx,
|
2091
|
+
X509_STORE_CTX_verify_fn verify);
|
2092
|
+
OPENSSL_EXPORT X509_STORE_CTX_verify_fn X509_STORE_get_verify(X509_STORE *ctx);
|
2093
|
+
OPENSSL_EXPORT void X509_STORE_set_verify_cb(
|
2094
|
+
X509_STORE *ctx, X509_STORE_CTX_verify_cb verify_cb);
|
2095
|
+
#define X509_STORE_set_verify_cb_func(ctx, func) \
|
2096
|
+
X509_STORE_set_verify_cb((ctx), (func))
|
2097
|
+
OPENSSL_EXPORT X509_STORE_CTX_verify_cb
|
2098
|
+
X509_STORE_get_verify_cb(X509_STORE *ctx);
|
2099
|
+
OPENSSL_EXPORT void X509_STORE_set_get_issuer(
|
2100
|
+
X509_STORE *ctx, X509_STORE_CTX_get_issuer_fn get_issuer);
|
2101
|
+
OPENSSL_EXPORT X509_STORE_CTX_get_issuer_fn
|
2102
|
+
X509_STORE_get_get_issuer(X509_STORE *ctx);
|
2103
|
+
OPENSSL_EXPORT void X509_STORE_set_check_issued(
|
2104
|
+
X509_STORE *ctx, X509_STORE_CTX_check_issued_fn check_issued);
|
2105
|
+
OPENSSL_EXPORT X509_STORE_CTX_check_issued_fn
|
2106
|
+
X509_STORE_get_check_issued(X509_STORE *ctx);
|
2107
|
+
OPENSSL_EXPORT void X509_STORE_set_check_revocation(
|
2108
|
+
X509_STORE *ctx, X509_STORE_CTX_check_revocation_fn check_revocation);
|
2109
|
+
OPENSSL_EXPORT X509_STORE_CTX_check_revocation_fn
|
2110
|
+
X509_STORE_get_check_revocation(X509_STORE *ctx);
|
2111
|
+
OPENSSL_EXPORT void X509_STORE_set_get_crl(X509_STORE *ctx,
|
2112
|
+
X509_STORE_CTX_get_crl_fn get_crl);
|
2113
|
+
OPENSSL_EXPORT X509_STORE_CTX_get_crl_fn
|
2114
|
+
X509_STORE_get_get_crl(X509_STORE *ctx);
|
2115
|
+
OPENSSL_EXPORT void X509_STORE_set_check_crl(
|
2116
|
+
X509_STORE *ctx, X509_STORE_CTX_check_crl_fn check_crl);
|
2117
|
+
OPENSSL_EXPORT X509_STORE_CTX_check_crl_fn
|
2118
|
+
X509_STORE_get_check_crl(X509_STORE *ctx);
|
2119
|
+
OPENSSL_EXPORT void X509_STORE_set_cert_crl(
|
2120
|
+
X509_STORE *ctx, X509_STORE_CTX_cert_crl_fn cert_crl);
|
2121
|
+
OPENSSL_EXPORT X509_STORE_CTX_cert_crl_fn
|
2122
|
+
X509_STORE_get_cert_crl(X509_STORE *ctx);
|
2123
|
+
OPENSSL_EXPORT void X509_STORE_set_lookup_certs(
|
2124
|
+
X509_STORE *ctx, X509_STORE_CTX_lookup_certs_fn lookup_certs);
|
2125
|
+
OPENSSL_EXPORT X509_STORE_CTX_lookup_certs_fn
|
2126
|
+
X509_STORE_get_lookup_certs(X509_STORE *ctx);
|
2127
|
+
OPENSSL_EXPORT void X509_STORE_set_lookup_crls(
|
2128
|
+
X509_STORE *ctx, X509_STORE_CTX_lookup_crls_fn lookup_crls);
|
2129
|
+
#define X509_STORE_set_lookup_crls_cb(ctx, func) \
|
2130
|
+
X509_STORE_set_lookup_crls((ctx), (func))
|
2131
|
+
OPENSSL_EXPORT X509_STORE_CTX_lookup_crls_fn
|
2132
|
+
X509_STORE_get_lookup_crls(X509_STORE *ctx);
|
2133
|
+
OPENSSL_EXPORT void X509_STORE_set_cleanup(X509_STORE *ctx,
|
2134
|
+
X509_STORE_CTX_cleanup_fn cleanup);
|
2135
|
+
OPENSSL_EXPORT X509_STORE_CTX_cleanup_fn
|
2136
|
+
X509_STORE_get_cleanup(X509_STORE *ctx);
|
2137
|
+
|
2138
|
+
OPENSSL_EXPORT X509_STORE_CTX *X509_STORE_CTX_new(void);
|
2139
|
+
|
2140
|
+
OPENSSL_EXPORT int X509_STORE_CTX_get1_issuer(X509 **issuer,
|
2141
|
+
X509_STORE_CTX *ctx, X509 *x);
|
2142
|
+
|
2143
|
+
OPENSSL_EXPORT void X509_STORE_CTX_zero(X509_STORE_CTX *ctx);
|
2144
|
+
OPENSSL_EXPORT void X509_STORE_CTX_free(X509_STORE_CTX *ctx);
|
2145
|
+
OPENSSL_EXPORT int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store,
|
2146
|
+
X509 *x509, STACK_OF(X509) *chain);
|
2147
|
+
OPENSSL_EXPORT void X509_STORE_CTX_trusted_stack(X509_STORE_CTX *ctx,
|
2148
|
+
STACK_OF(X509) *sk);
|
2149
|
+
OPENSSL_EXPORT void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
|
2150
|
+
|
2151
|
+
OPENSSL_EXPORT X509_STORE *X509_STORE_CTX_get0_store(X509_STORE_CTX *ctx);
|
2152
|
+
OPENSSL_EXPORT X509 *X509_STORE_CTX_get0_cert(X509_STORE_CTX *ctx);
|
2153
|
+
|
2154
|
+
OPENSSL_EXPORT X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v,
|
2155
|
+
X509_LOOKUP_METHOD *m);
|
2156
|
+
|
2157
|
+
OPENSSL_EXPORT X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
|
2158
|
+
OPENSSL_EXPORT X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
|
2159
|
+
|
2160
|
+
OPENSSL_EXPORT int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
|
2161
|
+
OPENSSL_EXPORT int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
|
2162
|
+
|
2163
|
+
OPENSSL_EXPORT int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type,
|
2164
|
+
X509_NAME *name, X509_OBJECT *ret);
|
2165
|
+
|
2166
|
+
OPENSSL_EXPORT int X509_LOOKUP_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc,
|
2167
|
+
long argl, char **ret);
|
2168
|
+
|
2169
|
+
#ifndef OPENSSL_NO_STDIO
|
2170
|
+
OPENSSL_EXPORT int X509_load_cert_file(X509_LOOKUP *ctx, const char *file,
|
2171
|
+
int type);
|
2172
|
+
OPENSSL_EXPORT int X509_load_crl_file(X509_LOOKUP *ctx, const char *file,
|
2173
|
+
int type);
|
2174
|
+
OPENSSL_EXPORT int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file,
|
2175
|
+
int type);
|
2176
|
+
#endif
|
1207
2177
|
|
2178
|
+
OPENSSL_EXPORT X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method);
|
2179
|
+
OPENSSL_EXPORT void X509_LOOKUP_free(X509_LOOKUP *ctx);
|
2180
|
+
OPENSSL_EXPORT int X509_LOOKUP_init(X509_LOOKUP *ctx);
|
2181
|
+
OPENSSL_EXPORT int X509_LOOKUP_by_subject(X509_LOOKUP *ctx, int type,
|
2182
|
+
X509_NAME *name, X509_OBJECT *ret);
|
2183
|
+
OPENSSL_EXPORT int X509_LOOKUP_by_issuer_serial(X509_LOOKUP *ctx, int type,
|
2184
|
+
X509_NAME *name,
|
2185
|
+
ASN1_INTEGER *serial,
|
2186
|
+
X509_OBJECT *ret);
|
2187
|
+
OPENSSL_EXPORT int X509_LOOKUP_by_fingerprint(X509_LOOKUP *ctx, int type,
|
2188
|
+
unsigned char *bytes, int len,
|
2189
|
+
X509_OBJECT *ret);
|
2190
|
+
OPENSSL_EXPORT int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, int type, char *str,
|
2191
|
+
int len, X509_OBJECT *ret);
|
2192
|
+
OPENSSL_EXPORT int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
|
2193
|
+
|
2194
|
+
#ifndef OPENSSL_NO_STDIO
|
2195
|
+
OPENSSL_EXPORT int X509_STORE_load_locations(X509_STORE *ctx, const char *file,
|
2196
|
+
const char *dir);
|
2197
|
+
OPENSSL_EXPORT int X509_STORE_set_default_paths(X509_STORE *ctx);
|
2198
|
+
#endif
|
1208
2199
|
|
1209
|
-
|
1210
|
-
|
2200
|
+
OPENSSL_EXPORT int X509_STORE_CTX_get_ex_new_index(long argl, void *argp,
|
2201
|
+
CRYPTO_EX_unused *unused,
|
2202
|
+
CRYPTO_EX_dup *dup_unused,
|
2203
|
+
CRYPTO_EX_free *free_func);
|
2204
|
+
OPENSSL_EXPORT int X509_STORE_CTX_set_ex_data(X509_STORE_CTX *ctx, int idx,
|
2205
|
+
void *data);
|
2206
|
+
OPENSSL_EXPORT void *X509_STORE_CTX_get_ex_data(X509_STORE_CTX *ctx, int idx);
|
2207
|
+
OPENSSL_EXPORT int X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
|
2208
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_error(X509_STORE_CTX *ctx, int s);
|
2209
|
+
OPENSSL_EXPORT int X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
|
2210
|
+
OPENSSL_EXPORT X509 *X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
|
2211
|
+
OPENSSL_EXPORT X509 *X509_STORE_CTX_get0_current_issuer(X509_STORE_CTX *ctx);
|
2212
|
+
OPENSSL_EXPORT X509_CRL *X509_STORE_CTX_get0_current_crl(X509_STORE_CTX *ctx);
|
2213
|
+
OPENSSL_EXPORT X509_STORE_CTX *X509_STORE_CTX_get0_parent_ctx(
|
2214
|
+
X509_STORE_CTX *ctx);
|
2215
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
|
2216
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get0_chain(X509_STORE_CTX *ctx);
|
2217
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get1_chain(X509_STORE_CTX *ctx);
|
2218
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_cert(X509_STORE_CTX *c, X509 *x);
|
2219
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_chain(X509_STORE_CTX *c,
|
2220
|
+
STACK_OF(X509) *sk);
|
2221
|
+
OPENSSL_EXPORT STACK_OF(X509) *X509_STORE_CTX_get0_untrusted(
|
2222
|
+
X509_STORE_CTX *ctx);
|
2223
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set0_crls(X509_STORE_CTX *c,
|
2224
|
+
STACK_OF(X509_CRL) *sk);
|
2225
|
+
OPENSSL_EXPORT int X509_STORE_CTX_set_purpose(X509_STORE_CTX *ctx, int purpose);
|
2226
|
+
OPENSSL_EXPORT int X509_STORE_CTX_set_trust(X509_STORE_CTX *ctx, int trust);
|
2227
|
+
OPENSSL_EXPORT int X509_STORE_CTX_purpose_inherit(X509_STORE_CTX *ctx,
|
2228
|
+
int def_purpose, int purpose,
|
2229
|
+
int trust);
|
2230
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_flags(X509_STORE_CTX *ctx,
|
2231
|
+
unsigned long flags);
|
2232
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_time(X509_STORE_CTX *ctx,
|
2233
|
+
unsigned long flags, time_t t);
|
2234
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set_verify_cb(
|
2235
|
+
X509_STORE_CTX *ctx, int (*verify_cb)(int, X509_STORE_CTX *));
|
2236
|
+
|
2237
|
+
OPENSSL_EXPORT X509_POLICY_TREE *X509_STORE_CTX_get0_policy_tree(
|
2238
|
+
X509_STORE_CTX *ctx);
|
2239
|
+
OPENSSL_EXPORT int X509_STORE_CTX_get_explicit_policy(X509_STORE_CTX *ctx);
|
2240
|
+
|
2241
|
+
OPENSSL_EXPORT X509_VERIFY_PARAM *X509_STORE_CTX_get0_param(
|
2242
|
+
X509_STORE_CTX *ctx);
|
2243
|
+
OPENSSL_EXPORT void X509_STORE_CTX_set0_param(X509_STORE_CTX *ctx,
|
2244
|
+
X509_VERIFY_PARAM *param);
|
2245
|
+
OPENSSL_EXPORT int X509_STORE_CTX_set_default(X509_STORE_CTX *ctx,
|
2246
|
+
const char *name);
|
2247
|
+
|
2248
|
+
// X509_VERIFY_PARAM functions
|
2249
|
+
|
2250
|
+
OPENSSL_EXPORT X509_VERIFY_PARAM *X509_VERIFY_PARAM_new(void);
|
2251
|
+
OPENSSL_EXPORT void X509_VERIFY_PARAM_free(X509_VERIFY_PARAM *param);
|
2252
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_inherit(X509_VERIFY_PARAM *to,
|
2253
|
+
const X509_VERIFY_PARAM *from);
|
2254
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1(X509_VERIFY_PARAM *to,
|
2255
|
+
const X509_VERIFY_PARAM *from);
|
2256
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_name(X509_VERIFY_PARAM *param,
|
2257
|
+
const char *name);
|
2258
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set_flags(X509_VERIFY_PARAM *param,
|
2259
|
+
unsigned long flags);
|
2260
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_clear_flags(X509_VERIFY_PARAM *param,
|
2261
|
+
unsigned long flags);
|
2262
|
+
OPENSSL_EXPORT unsigned long X509_VERIFY_PARAM_get_flags(
|
2263
|
+
X509_VERIFY_PARAM *param);
|
2264
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set_purpose(X509_VERIFY_PARAM *param,
|
2265
|
+
int purpose);
|
2266
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set_trust(X509_VERIFY_PARAM *param,
|
2267
|
+
int trust);
|
2268
|
+
OPENSSL_EXPORT void X509_VERIFY_PARAM_set_depth(X509_VERIFY_PARAM *param,
|
2269
|
+
int depth);
|
2270
|
+
OPENSSL_EXPORT void X509_VERIFY_PARAM_set_time(X509_VERIFY_PARAM *param,
|
2271
|
+
time_t t);
|
2272
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_add0_policy(X509_VERIFY_PARAM *param,
|
2273
|
+
ASN1_OBJECT *policy);
|
2274
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_policies(
|
2275
|
+
X509_VERIFY_PARAM *param, STACK_OF(ASN1_OBJECT) *policies);
|
2276
|
+
|
2277
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_host(X509_VERIFY_PARAM *param,
|
2278
|
+
const char *name,
|
2279
|
+
size_t namelen);
|
2280
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param,
|
2281
|
+
const char *name,
|
2282
|
+
size_t namelen);
|
2283
|
+
OPENSSL_EXPORT void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param,
|
2284
|
+
unsigned int flags);
|
2285
|
+
OPENSSL_EXPORT char *X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *);
|
2286
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param,
|
2287
|
+
const char *email,
|
2288
|
+
size_t emaillen);
|
2289
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_ip(X509_VERIFY_PARAM *param,
|
2290
|
+
const unsigned char *ip,
|
2291
|
+
size_t iplen);
|
2292
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_set1_ip_asc(X509_VERIFY_PARAM *param,
|
2293
|
+
const char *ipasc);
|
2294
|
+
|
2295
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_get_depth(const X509_VERIFY_PARAM *param);
|
2296
|
+
OPENSSL_EXPORT const char *X509_VERIFY_PARAM_get0_name(
|
2297
|
+
const X509_VERIFY_PARAM *param);
|
2298
|
+
|
2299
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_add0_table(X509_VERIFY_PARAM *param);
|
2300
|
+
OPENSSL_EXPORT int X509_VERIFY_PARAM_get_count(void);
|
2301
|
+
OPENSSL_EXPORT const X509_VERIFY_PARAM *X509_VERIFY_PARAM_get0(int id);
|
2302
|
+
OPENSSL_EXPORT const X509_VERIFY_PARAM *X509_VERIFY_PARAM_lookup(
|
2303
|
+
const char *name);
|
2304
|
+
OPENSSL_EXPORT void X509_VERIFY_PARAM_table_cleanup(void);
|
2305
|
+
|
2306
|
+
OPENSSL_EXPORT int X509_policy_check(X509_POLICY_TREE **ptree,
|
2307
|
+
int *pexplicit_policy,
|
2308
|
+
STACK_OF(X509) *certs,
|
2309
|
+
STACK_OF(ASN1_OBJECT) *policy_oids,
|
2310
|
+
unsigned int flags);
|
2311
|
+
|
2312
|
+
OPENSSL_EXPORT void X509_policy_tree_free(X509_POLICY_TREE *tree);
|
2313
|
+
|
2314
|
+
OPENSSL_EXPORT int X509_policy_tree_level_count(const X509_POLICY_TREE *tree);
|
2315
|
+
OPENSSL_EXPORT X509_POLICY_LEVEL *X509_policy_tree_get0_level(
|
2316
|
+
const X509_POLICY_TREE *tree, int i);
|
2317
|
+
|
2318
|
+
OPENSSL_EXPORT STACK_OF(X509_POLICY_NODE) *X509_policy_tree_get0_policies(
|
2319
|
+
const X509_POLICY_TREE *tree);
|
2320
|
+
|
2321
|
+
OPENSSL_EXPORT STACK_OF(X509_POLICY_NODE) *X509_policy_tree_get0_user_policies(
|
2322
|
+
const X509_POLICY_TREE *tree);
|
2323
|
+
|
2324
|
+
OPENSSL_EXPORT int X509_policy_level_node_count(X509_POLICY_LEVEL *level);
|
2325
|
+
|
2326
|
+
OPENSSL_EXPORT X509_POLICY_NODE *X509_policy_level_get0_node(
|
2327
|
+
X509_POLICY_LEVEL *level, int i);
|
2328
|
+
|
2329
|
+
OPENSSL_EXPORT const ASN1_OBJECT *X509_policy_node_get0_policy(
|
2330
|
+
const X509_POLICY_NODE *node);
|
2331
|
+
|
2332
|
+
OPENSSL_EXPORT STACK_OF(POLICYQUALINFO) *X509_policy_node_get0_qualifiers(
|
2333
|
+
const X509_POLICY_NODE *node);
|
2334
|
+
OPENSSL_EXPORT const X509_POLICY_NODE *X509_policy_node_get0_parent(
|
2335
|
+
const X509_POLICY_NODE *node);
|
2336
|
+
|
2337
|
+
|
2338
|
+
#if defined(__cplusplus)
|
2339
|
+
} // extern C
|
1211
2340
|
#endif
|
1212
2341
|
|
1213
2342
|
#if !defined(BORINGSSL_NO_CXX)
|
@@ -1220,6 +2349,7 @@ BORINGSSL_MAKE_DELETER(RSA_PSS_PARAMS, RSA_PSS_PARAMS_free)
|
|
1220
2349
|
BORINGSSL_MAKE_DELETER(X509, X509_free)
|
1221
2350
|
BORINGSSL_MAKE_UP_REF(X509, X509_up_ref)
|
1222
2351
|
BORINGSSL_MAKE_DELETER(X509_ALGOR, X509_ALGOR_free)
|
2352
|
+
BORINGSSL_MAKE_DELETER(X509_ATTRIBUTE, X509_ATTRIBUTE_free)
|
1223
2353
|
BORINGSSL_MAKE_DELETER(X509_CRL, X509_CRL_free)
|
1224
2354
|
BORINGSSL_MAKE_UP_REF(X509_CRL, X509_CRL_up_ref)
|
1225
2355
|
BORINGSSL_MAKE_DELETER(X509_CRL_METHOD, X509_CRL_METHOD_free)
|
@@ -1235,13 +2365,10 @@ BORINGSSL_MAKE_DELETER(X509_REQ, X509_REQ_free)
|
|
1235
2365
|
BORINGSSL_MAKE_DELETER(X509_REVOKED, X509_REVOKED_free)
|
1236
2366
|
BORINGSSL_MAKE_DELETER(X509_SIG, X509_SIG_free)
|
1237
2367
|
BORINGSSL_MAKE_DELETER(X509_STORE, X509_STORE_free)
|
2368
|
+
BORINGSSL_MAKE_UP_REF(X509_STORE, X509_STORE_up_ref)
|
1238
2369
|
BORINGSSL_MAKE_DELETER(X509_STORE_CTX, X509_STORE_CTX_free)
|
1239
2370
|
BORINGSSL_MAKE_DELETER(X509_VERIFY_PARAM, X509_VERIFY_PARAM_free)
|
1240
2371
|
|
1241
|
-
using ScopedX509_STORE_CTX =
|
1242
|
-
internal::StackAllocated<X509_STORE_CTX, void, X509_STORE_CTX_zero,
|
1243
|
-
X509_STORE_CTX_cleanup>;
|
1244
|
-
|
1245
2372
|
BSSL_NAMESPACE_END
|
1246
2373
|
|
1247
2374
|
} // extern C++
|