diff --git a/BUILD b/BUILD index a1a9c395447..1b1a4ef5081 100644 --- a/BUILD +++ b/BUILD @@ -4000,26 +4000,6 @@ grpc_cc_library( ], ) -grpc_cc_library( - name = "subprocess", - srcs = [ - "//src/core:lib/gpr/subprocess_posix.cc", - "//src/core:lib/gpr/subprocess_windows.cc", - ], - hdrs = [ - "//src/core:lib/gpr/subprocess.h", - ], - external_deps = [ - "absl/strings", - "absl/types:span", - ], - deps = [ - "gpr", - "//src/core:strerror", - "//src/core:tchar", - ], -) - # TODO(yashykt): Remove the UPB definitions from here once they are no longer needed ### UPB Targets diff --git a/CMakeLists.txt b/CMakeLists.txt index f2b7f516196..0392d456561 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3281,6 +3281,8 @@ add_library(benchmark_helpers test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/microbenchmarks/helpers.cc ) @@ -3998,8 +4000,6 @@ endif() if(gRPC_BUILD_TESTS) add_library(grpc++_test_util - src/core/lib/gpr/subprocess_posix.cc - src/core/lib/gpr/subprocess_windows.cc test/core/end2end/data/client_certs.cc test/core/end2end/data/server1_cert.cc test/core/end2end/data/server1_key.cc @@ -4013,6 +4013,8 @@ add_library(grpc++_test_util test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/util/byte_buffer_proto_helper.cc test/cpp/util/create_test_channel.cc @@ -5033,6 +5035,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc ) target_compile_features(fd_conservation_posix_test PUBLIC cxx_std_14) @@ -5168,6 +5172,8 @@ add_executable(test_core_iomgr_timer_list_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc ) target_compile_features(test_core_iomgr_timer_list_test PUBLIC cxx_std_14) @@ -5281,8 +5287,6 @@ if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(address_sorting_test_unsecure - src/core/lib/gpr/subprocess_posix.cc - src/core/lib/gpr/subprocess_windows.cc test/core/util/cmdline.cc test/core/util/fuzzer_util.cc test/core/util/grpc_profiler.cc @@ -5292,6 +5296,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/naming/address_sorting_test.cc test/cpp/util/byte_buffer_proto_helper.cc @@ -5403,6 +5409,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/common/alarm_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -5845,6 +5853,8 @@ add_executable(alts_security_connector_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -6179,6 +6189,8 @@ add_executable(auth_context_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -6263,6 +6275,8 @@ add_executable(authorization_matchers_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -6387,6 +6401,8 @@ add_executable(aws_request_signer_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -6585,8 +6601,6 @@ if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(bad_ssl_alpn_test - src/core/lib/gpr/subprocess_posix.cc - src/core/lib/gpr/subprocess_windows.cc test/core/bad_ssl/bad_ssl_test.cc test/core/end2end/cq_verifier.cc test/core/util/cmdline.cc @@ -6598,6 +6612,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -6637,8 +6653,6 @@ if(gRPC_BUILD_TESTS) if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) add_executable(bad_ssl_cert_test - src/core/lib/gpr/subprocess_posix.cc - src/core/lib/gpr/subprocess_windows.cc test/core/bad_ssl/bad_ssl_test.cc test/core/end2end/cq_verifier.cc test/core/util/cmdline.cc @@ -6650,6 +6664,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -7205,6 +7221,8 @@ add_executable(buffer_list_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -7963,6 +7981,8 @@ add_executable(cel_authorization_engine_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -8297,6 +8317,8 @@ add_executable(channel_creds_registry_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -8592,6 +8614,8 @@ add_executable(check_gcp_environment_linux_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -8639,6 +8663,8 @@ add_executable(check_gcp_environment_windows_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -9280,6 +9306,8 @@ add_executable(cmdline_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -9404,6 +9432,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -9726,6 +9756,8 @@ add_executable(connectivity_state_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -10787,6 +10819,8 @@ add_executable(endpoint_pair_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -10922,6 +10956,8 @@ add_executable(error_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -10969,6 +11005,8 @@ add_executable(error_utils_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -11016,6 +11054,8 @@ add_executable(evaluate_args_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -11584,6 +11624,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -12239,6 +12281,8 @@ add_executable(format_request_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -12922,6 +12966,8 @@ add_executable(grpc_alts_credentials_options_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13007,6 +13053,8 @@ add_executable(grpc_authorization_engine_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13054,6 +13102,8 @@ add_executable(grpc_authorization_policy_provider_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13413,6 +13463,8 @@ add_executable(grpc_ipv6_loopback_available_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13670,6 +13722,8 @@ add_executable(grpc_tls_certificate_distributor_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13717,6 +13771,8 @@ add_executable(grpc_tls_certificate_provider_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13764,6 +13820,8 @@ add_executable(grpc_tls_certificate_verifier_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13811,6 +13869,8 @@ add_executable(grpc_tls_credentials_options_comparator_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -13858,6 +13918,8 @@ add_executable(grpc_tls_credentials_options_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -14462,6 +14524,8 @@ add_executable(histogram_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -14546,6 +14610,8 @@ add_executable(hpack_encoder_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -14593,6 +14659,8 @@ add_executable(hpack_parser_table_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -14640,6 +14708,8 @@ add_executable(hpack_parser_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -15150,6 +15220,8 @@ add_executable(insecure_security_connector_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -15657,6 +15729,8 @@ add_executable(json_token_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -15704,6 +15778,8 @@ add_executable(jwt_verifier_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -16308,6 +16384,8 @@ add_executable(matchers_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -16677,6 +16755,8 @@ add_executable(message_compress_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -16761,6 +16841,8 @@ add_executable(metadata_map_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -17851,6 +17933,8 @@ add_executable(parser_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -18114,6 +18198,8 @@ add_executable(pid_controller_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -18161,6 +18247,8 @@ add_executable(ping_abuse_policy_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -18208,6 +18296,8 @@ add_executable(ping_configuration_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -18303,6 +18393,8 @@ add_executable(ping_rate_policy_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -19431,6 +19523,8 @@ add_executable(rbac_translator_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -19737,6 +19831,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -19787,6 +19883,8 @@ add_executable(resolve_address_using_ares_resolver_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -19836,6 +19934,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -19886,6 +19986,8 @@ add_executable(resolve_address_using_native_resolver_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -21992,6 +22094,8 @@ add_executable(secure_endpoint_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -22039,6 +22143,8 @@ add_executable(security_connector_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -22236,6 +22342,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/server/server_builder_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -22302,6 +22410,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/server/server_builder_with_socket_mutator_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -22712,6 +22822,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/server/server_request_call_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -22982,6 +23094,8 @@ add_executable(settings_timeout_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -23594,6 +23708,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -23715,6 +23831,8 @@ add_executable(ssl_credentials_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -23993,6 +24111,8 @@ add_executable(status_conversion_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24116,6 +24236,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24309,6 +24431,8 @@ add_executable(streams_not_seen_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24468,6 +24592,8 @@ add_executable(system_roots_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24557,6 +24683,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24646,6 +24774,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -24695,6 +24825,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -25118,6 +25250,8 @@ add_executable(test_core_iomgr_load_file_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -25165,6 +25299,8 @@ add_executable(test_core_iomgr_timer_heap_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -25212,6 +25348,8 @@ add_executable(test_core_security_credentials_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -25819,6 +25957,8 @@ add_executable(timeout_encoding_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -26033,6 +26173,8 @@ add_executable(tls_security_connector_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc @@ -27347,6 +27489,8 @@ if(_gRPC_PLATFORM_LINUX OR _gRPC_PLATFORM_MAC OR _gRPC_PLATFORM_POSIX) test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc test/cpp/performance/writes_per_rpc_test.cc third_party/googletest/googletest/src/gtest-all.cc @@ -28367,6 +28511,8 @@ add_executable(xds_credentials_test test/core/util/passthru_endpoint.cc test/core/util/resolve_localhost_ip46.cc test/core/util/slice_splitter.cc + test/core/util/subprocess_posix.cc + test/core/util/subprocess_windows.cc test/core/util/tracer_util.cc third_party/googletest/googletest/src/gtest-all.cc third_party/googletest/googlemock/src/gmock-all.cc diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml index 5b8542b7b9c..da1291c2353 100644 --- a/build_autogenerated.yaml +++ b/build_autogenerated.yaml @@ -2773,6 +2773,7 @@ libs: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h - test/cpp/microbenchmarks/fullstack_context_mutators.h - test/cpp/microbenchmarks/fullstack_fixtures.h @@ -2791,6 +2792,8 @@ libs: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/microbenchmarks/helpers.cc deps: @@ -3179,7 +3182,6 @@ libs: language: c++ public_headers: [] headers: - - src/core/lib/gpr/subprocess.h - test/core/end2end/data/ssl_test_data.h - test/core/util/cmdline.h - test/core/util/evaluate_args_test_util.h @@ -3192,6 +3194,7 @@ libs: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h - test/cpp/util/byte_buffer_proto_helper.h - test/cpp/util/create_test_channel.h @@ -3199,8 +3202,6 @@ libs: - test/cpp/util/subprocess.h - test/cpp/util/test_credentials_provider.h src: - - src/core/lib/gpr/subprocess_posix.cc - - src/core/lib/gpr/subprocess_windows.cc - test/core/end2end/data/client_certs.cc - test/core/end2end/data/server1_cert.cc - test/core/end2end/data/server1_key.cc @@ -3214,6 +3215,8 @@ libs: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/util/byte_buffer_proto_helper.cc - test/cpp/util/create_test_channel.cc @@ -4195,6 +4198,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/fd_conservation_posix_test.cc @@ -4207,6 +4211,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4268,6 +4274,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/timer_list_test.cc @@ -4280,6 +4287,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4339,7 +4348,6 @@ targets: build: test language: c++ headers: - - src/core/lib/gpr/subprocess.h - test/core/util/cmdline.h - test/core/util/evaluate_args_test_util.h - test/core/util/fuzzer_util.h @@ -4351,13 +4359,12 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h - test/cpp/util/byte_buffer_proto_helper.h - test/cpp/util/string_ref_helper.h - test/cpp/util/subprocess.h src: - - src/core/lib/gpr/subprocess_posix.cc - - src/core/lib/gpr/subprocess_windows.cc - test/core/util/cmdline.cc - test/core/util/fuzzer_util.cc - test/core/util/grpc_profiler.cc @@ -4367,6 +4374,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/naming/address_sorting_test.cc - test/cpp/util/byte_buffer_proto_helper.cc @@ -4414,6 +4423,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/util/cmdline.cc @@ -4425,6 +4435,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/common/alarm_test.cc deps: @@ -4570,6 +4582,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/alts_security_connector_test.cc @@ -4582,6 +4595,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4680,6 +4695,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/auth_context_test.cc @@ -4692,6 +4708,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4722,6 +4740,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/authorization_matchers_test.cc @@ -4734,6 +4753,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4779,6 +4800,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/aws_request_signer_test.cc @@ -4791,6 +4813,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4865,7 +4889,6 @@ targets: build: test language: c++ headers: - - src/core/lib/gpr/subprocess.h - test/core/end2end/cq_verifier.h - test/core/util/cmdline.h - test/core/util/evaluate_args_test_util.h @@ -4878,10 +4901,9 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - - src/core/lib/gpr/subprocess_posix.cc - - src/core/lib/gpr/subprocess_windows.cc - test/core/bad_ssl/bad_ssl_test.cc - test/core/end2end/cq_verifier.cc - test/core/util/cmdline.cc @@ -4893,6 +4915,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -4905,7 +4929,6 @@ targets: build: test language: c++ headers: - - src/core/lib/gpr/subprocess.h - test/core/end2end/cq_verifier.h - test/core/util/cmdline.h - test/core/util/evaluate_args_test_util.h @@ -4918,10 +4941,9 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - - src/core/lib/gpr/subprocess_posix.cc - - src/core/lib/gpr/subprocess_windows.cc - test/core/bad_ssl/bad_ssl_test.cc - test/core/end2end/cq_verifier.cc - test/core/util/cmdline.cc @@ -4933,6 +4955,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -5206,6 +5230,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/buffer_list_test.cc @@ -5218,6 +5243,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -5707,6 +5734,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - src/core/ext/upb-generated/envoy/annotations/deprecation.upb.c @@ -5808,6 +5836,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -5920,6 +5950,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/channel_creds_registry_test.cc @@ -5932,6 +5963,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -6021,6 +6054,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/check_gcp_environment_linux_test.cc @@ -6033,6 +6067,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -6052,6 +6088,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/check_gcp_environment_windows_test.cc @@ -6064,6 +6101,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -6367,6 +6406,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/util/cmdline.cc @@ -6379,6 +6419,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -6422,6 +6464,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/combiner_test.cc @@ -6434,6 +6477,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -6556,6 +6601,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/connectivity_state_test.cc @@ -6568,6 +6614,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7063,6 +7111,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/endpoint_pair_test.cc @@ -7076,6 +7125,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7119,6 +7170,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/endpoint_tests.cc @@ -7132,6 +7184,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7152,6 +7206,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/error_utils_test.cc @@ -7164,6 +7219,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7183,6 +7240,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/evaluate_args_test.cc @@ -7195,6 +7253,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7497,6 +7557,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/fd_posix_test.cc @@ -7509,6 +7570,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -7945,6 +8008,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/end2end/data/client_certs.cc @@ -7961,6 +8025,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -8662,6 +8728,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_alts_credentials_options_test.cc @@ -8674,6 +8741,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -8703,6 +8772,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_authorization_engine_test.cc @@ -8716,6 +8786,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -8735,6 +8807,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_authorization_policy_provider_test.cc @@ -8747,6 +8820,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_authorization_provider @@ -8880,6 +8955,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/grpc_ipv6_loopback_available_test.cc @@ -8892,6 +8968,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -8951,6 +9029,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_tls_certificate_distributor_test.cc @@ -8963,6 +9042,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -8982,6 +9063,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_tls_certificate_provider_test.cc @@ -8994,6 +9076,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9013,6 +9097,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_tls_certificate_verifier_test.cc @@ -9025,6 +9110,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9044,6 +9131,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_tls_credentials_options_comparator_test.cc @@ -9056,6 +9144,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9075,6 +9165,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/grpc_tls_credentials_options_test.cc @@ -9087,6 +9178,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9329,6 +9422,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/util/cmdline.cc @@ -9341,6 +9435,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9371,6 +9467,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/hpack_encoder_test.cc @@ -9383,6 +9480,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9403,6 +9502,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/hpack_parser_table_test.cc @@ -9415,6 +9515,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9435,6 +9537,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/hpack_parser_test.cc @@ -9447,6 +9550,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9635,6 +9740,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/insecure_security_connector_test.cc @@ -9647,6 +9753,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9908,6 +10016,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/json_token_test.cc @@ -9920,6 +10029,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -9940,6 +10051,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/jwt_verifier_test.cc @@ -9952,6 +10064,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -10296,6 +10410,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/matchers/matchers_test.cc @@ -10308,6 +10423,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -10506,6 +10623,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/compression/message_compress_test.cc @@ -10518,6 +10636,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -10547,6 +10667,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/metadata_map_test.cc @@ -10559,6 +10680,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -10963,6 +11086,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/end2end/data/client_certs.cc @@ -10979,6 +11103,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11118,6 +11244,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/pid_controller_test.cc @@ -11130,6 +11257,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11149,6 +11278,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/ping_abuse_policy_test.cc @@ -11161,6 +11291,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11181,6 +11313,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/ping_configuration_test.cc @@ -11193,6 +11326,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11248,6 +11383,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/ping_rate_policy_test.cc @@ -11260,6 +11396,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11719,6 +11857,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/rbac_translator_test.cc @@ -11731,6 +11870,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_authorization_provider @@ -11887,6 +12028,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/resolve_address_posix_test.cc @@ -11899,6 +12041,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - absl/flags:parse @@ -11926,6 +12070,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/resolve_address_test.cc @@ -11939,6 +12084,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -11959,6 +12106,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/resolve_address_posix_test.cc @@ -11971,6 +12119,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - absl/flags:parse @@ -11998,6 +12148,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/resolve_address_test.cc @@ -12011,6 +12162,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -13365,6 +13518,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/endpoint_tests.cc @@ -13378,6 +13532,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -13397,6 +13553,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/security_connector_test.cc @@ -13409,6 +13566,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -13471,6 +13630,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - src/proto/grpc/testing/echo.proto @@ -13486,6 +13646,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/server/server_builder_test.cc deps: @@ -13511,6 +13673,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - src/proto/grpc/testing/echo.proto @@ -13526,6 +13689,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/server/server_builder_with_socket_mutator_test.cc deps: @@ -13668,6 +13833,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - src/proto/grpc/testing/echo.proto @@ -13683,6 +13849,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/server/server_request_call_test.cc deps: @@ -13792,6 +13960,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/chttp2/settings_timeout_test.cc @@ -13804,6 +13973,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14096,6 +14267,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/socket_utils_test.cc @@ -14108,6 +14280,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14152,6 +14326,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/ssl_credentials_test.cc @@ -14164,6 +14339,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14258,6 +14435,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/status_conversion_test.cc @@ -14270,6 +14448,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14311,6 +14491,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/end2end/cq_verifier.cc @@ -14324,6 +14505,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14410,6 +14593,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/end2end/cq_verifier.cc @@ -14423,6 +14607,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14473,6 +14659,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/system_roots_test.cc @@ -14485,6 +14672,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14521,6 +14710,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/tcp_client_posix_test.cc @@ -14533,6 +14723,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14571,6 +14763,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/endpoint_tests.cc @@ -14584,6 +14777,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14606,6 +14801,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/tcp_server_posix_test.cc @@ -14618,6 +14814,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14803,6 +15001,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/load_file_test.cc @@ -14815,6 +15014,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14835,6 +15036,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/iomgr/timer_heap_test.cc @@ -14847,6 +15049,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -14867,6 +15071,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/credentials_test.cc @@ -14879,6 +15084,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -15078,6 +15285,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/transport/timeout_encoding_test.cc @@ -15090,6 +15298,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -15156,6 +15366,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/tls_security_connector_test.cc @@ -15168,6 +15379,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util @@ -15878,6 +16091,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - src/proto/grpc/testing/echo.proto @@ -15893,6 +16107,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc - test/cpp/performance/writes_per_rpc_test.cc deps: @@ -16234,6 +16450,7 @@ targets: - test/core/util/passthru_endpoint.h - test/core/util/resolve_localhost_ip46.h - test/core/util/slice_splitter.h + - test/core/util/subprocess.h - test/core/util/tracer_util.h src: - test/core/security/xds_credentials_test.cc @@ -16246,6 +16463,8 @@ targets: - test/core/util/passthru_endpoint.cc - test/core/util/resolve_localhost_ip46.cc - test/core/util/slice_splitter.cc + - test/core/util/subprocess_posix.cc + - test/core/util/subprocess_windows.cc - test/core/util/tracer_util.cc deps: - grpc_test_util diff --git a/grpc.gyp b/grpc.gyp index 38b14acf973..9a53deff7e9 100644 --- a/grpc.gyp +++ b/grpc.gyp @@ -1504,6 +1504,8 @@ 'test/core/util/passthru_endpoint.cc', 'test/core/util/resolve_localhost_ip46.cc', 'test/core/util/slice_splitter.cc', + 'test/core/util/subprocess_posix.cc', + 'test/core/util/subprocess_windows.cc', 'test/core/util/tracer_util.cc', 'test/cpp/microbenchmarks/helpers.cc', ], @@ -1644,8 +1646,6 @@ 'grpc_test_util', ], 'sources': [ - 'src/core/lib/gpr/subprocess_posix.cc', - 'src/core/lib/gpr/subprocess_windows.cc', 'test/core/end2end/data/client_certs.cc', 'test/core/end2end/data/server1_cert.cc', 'test/core/end2end/data/server1_key.cc', @@ -1659,6 +1659,8 @@ 'test/core/util/passthru_endpoint.cc', 'test/core/util/resolve_localhost_ip46.cc', 'test/core/util/slice_splitter.cc', + 'test/core/util/subprocess_posix.cc', + 'test/core/util/subprocess_windows.cc', 'test/core/util/tracer_util.cc', 'test/cpp/util/byte_buffer_proto_helper.cc', 'test/cpp/util/create_test_channel.cc', diff --git a/src/core/lib/gpr/subprocess_posix.cc b/src/core/lib/gpr/subprocess_posix.cc deleted file mode 100644 index b482c440da7..00000000000 --- a/src/core/lib/gpr/subprocess_posix.cc +++ /dev/null @@ -1,266 +0,0 @@ -// -// -// Copyright 2015 gRPC authors. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -// - -#include - -#ifdef GPR_POSIX_SUBPROCESS - -#include -#include -#include -#include -#include - -#include - -#include "absl/strings/substitute.h" - -#include -#include - -#include "src/core/lib/gpr/subprocess.h" -#include "src/core/lib/gprpp/memory.h" -#include "src/core/lib/gprpp/strerror.h" - -struct gpr_subprocess { - int pid; - bool joined; - int child_stdin_; - int child_stdout_; -}; - -const char* gpr_subprocess_binary_extension() { return ""; } - -gpr_subprocess* gpr_subprocess_create(int argc, const char** argv) { - gpr_subprocess* r; - int pid; - char** exec_args; - int stdin_pipe[2]; - int stdout_pipe[2]; - int p0 = pipe(stdin_pipe); - int p1 = pipe(stdout_pipe); - GPR_ASSERT(p0 != -1); - GPR_ASSERT(p1 != -1); - pid = fork(); - if (pid == -1) { - return nullptr; - } else if (pid == 0) { - dup2(stdin_pipe[0], STDIN_FILENO); - dup2(stdout_pipe[1], STDOUT_FILENO); - close(stdin_pipe[0]); - close(stdin_pipe[1]); - close(stdout_pipe[0]); - close(stdout_pipe[1]); - exec_args = static_cast( - gpr_malloc((static_cast(argc) + 1) * sizeof(char*))); - memcpy(exec_args, argv, static_cast(argc) * sizeof(char*)); - exec_args[argc] = nullptr; - execv(exec_args[0], exec_args); - // if we reach here, an error has occurred - gpr_log(GPR_ERROR, "execv '%s' failed: %s", exec_args[0], - grpc_core::StrError(errno).c_str()); - _exit(1); - } else { - r = grpc_core::Zalloc(); - r->pid = pid; - close(stdin_pipe[0]); - close(stdout_pipe[1]); - r->child_stdin_ = stdin_pipe[1]; - r->child_stdout_ = stdout_pipe[0]; - return r; - } -} - -gpr_subprocess* gpr_subprocess_create_with_envp(int argc, const char** argv, - int envc, const char** envp) { - gpr_subprocess* r; - int pid; - char **exec_args, **envp_args; - int stdin_pipe[2]; - int stdout_pipe[2]; - int p0 = pipe(stdin_pipe); - int p1 = pipe(stdout_pipe); - GPR_ASSERT(p0 != -1); - GPR_ASSERT(p1 != -1); - pid = fork(); - if (pid == -1) { - return nullptr; - } else if (pid == 0) { - dup2(stdin_pipe[0], STDIN_FILENO); - dup2(stdout_pipe[1], STDOUT_FILENO); - close(stdin_pipe[0]); - close(stdin_pipe[1]); - close(stdout_pipe[0]); - close(stdout_pipe[1]); - exec_args = static_cast( - gpr_malloc((static_cast(argc) + 1) * sizeof(char*))); - memcpy(exec_args, argv, static_cast(argc) * sizeof(char*)); - exec_args[argc] = nullptr; - envp_args = static_cast( - gpr_malloc((static_cast(envc) + 1) * sizeof(char*))); - memcpy(envp_args, envp, static_cast(envc) * sizeof(char*)); - envp_args[envc] = nullptr; - execve(exec_args[0], exec_args, envp_args); - // if we reach here, an error has occurred - gpr_log(GPR_ERROR, "execvpe '%s' failed: %s", exec_args[0], - grpc_core::StrError(errno).c_str()); - _exit(1); - } else { - r = grpc_core::Zalloc(); - r->pid = pid; - close(stdin_pipe[0]); - close(stdout_pipe[1]); - r->child_stdin_ = stdin_pipe[1]; - r->child_stdout_ = stdout_pipe[0]; - return r; - } -} - -bool gpr_subprocess_communicate(gpr_subprocess* p, std::string& input_data, - std::string* output_data, std::string* error) { - typedef void SignalHandler(int); - - // Make sure SIGPIPE is disabled so that if the child dies it doesn't kill us. - SignalHandler* old_pipe_handler = signal(SIGPIPE, SIG_IGN); - - int input_pos = 0; - int max_fd = std::max(p->child_stdin_, p->child_stdout_); - - while (p->child_stdout_ != -1) { - fd_set read_fds; - fd_set write_fds; - FD_ZERO(&read_fds); - FD_ZERO(&write_fds); - if (p->child_stdout_ != -1) { - FD_SET(p->child_stdout_, &read_fds); - } - if (p->child_stdin_ != -1) { - FD_SET(p->child_stdin_, &write_fds); - } - - if (select(max_fd + 1, &read_fds, &write_fds, nullptr, nullptr) < 0) { - if (errno == EINTR) { - // Interrupted by signal. Try again. - continue; - } else { - std::cerr << "select: " << strerror(errno) << std::endl; - GPR_ASSERT(0); - } - } - - if (p->child_stdin_ != -1 && FD_ISSET(p->child_stdin_, &write_fds)) { - int n = write(p->child_stdin_, input_data.data() + input_pos, - input_data.size() - input_pos); - if (n < 0) { - // Child closed pipe. Presumably it will report an error later. - // Pretend we're done for now. - input_pos = input_data.size(); - } else { - input_pos += n; - } - - if (input_pos == static_cast(input_data.size())) { - // We're done writing. Close. - close(p->child_stdin_); - p->child_stdin_ = -1; - } - } - - if (p->child_stdout_ != -1 && FD_ISSET(p->child_stdout_, &read_fds)) { - char buffer[4096]; - int n = read(p->child_stdout_, buffer, sizeof(buffer)); - - if (n > 0) { - output_data->append(buffer, static_cast(n)); - } else { - // We're done reading. Close. - close(p->child_stdout_); - p->child_stdout_ = -1; - } - } - } - - if (p->child_stdin_ != -1) { - // Child did not finish reading input before it closed the output. - // Presumably it exited with an error. - close(p->child_stdin_); - p->child_stdin_ = -1; - } - - int status; - while (waitpid(p->pid, &status, 0) == -1) { - if (errno != EINTR) { - std::cerr << "waitpid: " << strerror(errno) << std::endl; - GPR_ASSERT(0); - } - } - - // Restore SIGPIPE handling. - signal(SIGPIPE, old_pipe_handler); - - if (WIFEXITED(status)) { - if (WEXITSTATUS(status) != 0) { - int error_code = WEXITSTATUS(status); - *error = - absl::Substitute("Plugin failed with status code $0.", error_code); - return false; - } - } else if (WIFSIGNALED(status)) { - int signal = WTERMSIG(status); - *error = absl::Substitute("Plugin killed by signal $0.", signal); - return false; - } else { - *error = "Neither WEXITSTATUS nor WTERMSIG is true?"; - return false; - } - - return true; -} - -void gpr_subprocess_destroy(gpr_subprocess* p) { - if (!p->joined) { - kill(p->pid, SIGKILL); - gpr_subprocess_join(p); - } - gpr_free(p); -} - -int gpr_subprocess_join(gpr_subprocess* p) { - int status; -retry: - if (waitpid(p->pid, &status, 0) == -1) { - if (errno == EINTR) { - goto retry; - } - gpr_log(GPR_ERROR, "waitpid failed for pid %d: %s", p->pid, - grpc_core::StrError(errno).c_str()); - return -1; - } - p->joined = true; - return status; -} - -void gpr_subprocess_interrupt(gpr_subprocess* p) { - if (!p->joined) { - kill(p->pid, SIGINT); - } -} - -int gpr_subprocess_get_process_id(gpr_subprocess* p) { return p->pid; } - -#endif // GPR_POSIX_SUBPROCESS diff --git a/test/core/bad_ssl/bad_ssl_test.cc b/test/core/bad_ssl/bad_ssl_test.cc index 5faa7b7bc5a..51d5a95b63f 100644 --- a/test/core/bad_ssl/bad_ssl_test.cc +++ b/test/core/bad_ssl/bad_ssl_test.cc @@ -32,11 +32,11 @@ #include #include -#include "src/core/lib/gpr/subprocess.h" #include "src/core/lib/gprpp/env.h" #include "src/core/lib/gprpp/host_port.h" #include "test/core/end2end/cq_verifier.h" #include "test/core/util/port.h" +#include "test/core/util/subprocess.h" #include "test/core/util/test_config.h" static void run_test(const char* target, size_t nops) { diff --git a/test/core/bad_ssl/generate_tests.bzl b/test/core/bad_ssl/generate_tests.bzl index ecce282765a..f2f3fcab93e 100755 --- a/test/core/bad_ssl/generate_tests.bzl +++ b/test/core/bad_ssl/generate_tests.bzl @@ -61,7 +61,6 @@ def grpc_bad_ssl_tests(): "//test/core/util:grpc_test_util_base", "//:gpr", "//:grpc", - "//:subprocess", "//test/core/end2end:cq_verifier", ], tags = ["no_windows"], diff --git a/test/core/event_engine/test_suite/tests/BUILD b/test/core/event_engine/test_suite/tests/BUILD index 4c187e2c5d4..ef297860a97 100644 --- a/test/core/event_engine/test_suite/tests/BUILD +++ b/test/core/event_engine/test_suite/tests/BUILD @@ -68,7 +68,6 @@ grpc_cc_library( "address_sorting", ], deps = [ - "//:subprocess", "//src/core:env", "//test/core/event_engine:event_engine_test_utils", "//test/core/event_engine/test_suite:event_engine_test_framework", diff --git a/test/core/http/BUILD b/test/core/http/BUILD index 2495cfb1cbd..965a7a84ca9 100644 --- a/test/core/http/BUILD +++ b/test/core/http/BUILD @@ -68,7 +68,6 @@ grpc_cc_library( hdrs = ["httpcli_test_util.h"], deps = [ "//:gpr", - "//:subprocess", "//test/core/end2end:ssl_test_data", "//test/core/util:grpc_test_util", "//test/core/util:grpc_test_util_base", @@ -91,7 +90,6 @@ grpc_cc_test( ":httpcli_test_util", "//:gpr", "//:grpc", - "//:subprocess", "//test/core/end2end:ssl_test_data", "//test/core/util:fake_udp_and_tcp_server", "//test/core/util:grpc_test_util", @@ -105,7 +103,6 @@ grpc_cc_test( data = [ "python_wrapper.sh", "test_server.py", - "//:subprocess", "//src/core/tsi/test_creds:ca.pem", "//src/core/tsi/test_creds:server1.key", "//src/core/tsi/test_creds:server1.pem", diff --git a/test/core/http/httpcli_test.cc b/test/core/http/httpcli_test.cc index 98fc2c934fd..519e7fd3aaf 100644 --- a/test/core/http/httpcli_test.cc +++ b/test/core/http/httpcli_test.cc @@ -44,7 +44,6 @@ #include #include "src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.h" -#include "src/core/lib/gpr/subprocess.h" #include "src/core/lib/gprpp/status_helper.h" #include "src/core/lib/gprpp/time.h" #include "src/core/lib/gprpp/time_util.h" @@ -54,6 +53,7 @@ #include "test/core/http/httpcli_test_util.h" #include "test/core/util/fake_udp_and_tcp_server.h" #include "test/core/util/port.h" +#include "test/core/util/subprocess.h" #include "test/core/util/test_config.h" namespace { diff --git a/test/core/http/httpcli_test_util.cc b/test/core/http/httpcli_test_util.cc index 5381fb03dd3..763413cc373 100644 --- a/test/core/http/httpcli_test_util.cc +++ b/test/core/http/httpcli_test_util.cc @@ -32,8 +32,8 @@ #include #include "src/core/lib/config/config_vars.h" -#include "src/core/lib/gpr/subprocess.h" #include "test/core/util/port.h" +#include "test/core/util/subprocess.h" namespace grpc_core { namespace testing { diff --git a/test/core/http/httpcli_test_util.h b/test/core/http/httpcli_test_util.h index 6007a4be203..e1ecebe7926 100644 --- a/test/core/http/httpcli_test_util.h +++ b/test/core/http/httpcli_test_util.h @@ -19,7 +19,7 @@ #include -#include "src/core/lib/gpr/subprocess.h" +#include "test/core/util/subprocess.h" namespace grpc_core { namespace testing { diff --git a/test/core/http/httpscli_test.cc b/test/core/http/httpscli_test.cc index 35da8634f7e..281ccda4269 100644 --- a/test/core/http/httpscli_test.cc +++ b/test/core/http/httpscli_test.cc @@ -42,7 +42,6 @@ #include #include "src/core/lib/channel/channel_args.h" -#include "src/core/lib/gpr/subprocess.h" #include "src/core/lib/gprpp/orphanable.h" #include "src/core/lib/gprpp/status_helper.h" #include "src/core/lib/gprpp/sync.h" @@ -61,6 +60,7 @@ #include "src/core/lib/uri/uri_parser.h" #include "test/core/http/httpcli_test_util.h" #include "test/core/util/fake_udp_and_tcp_server.h" +#include "test/core/util/subprocess.h" #include "test/core/util/test_config.h" namespace { diff --git a/test/core/memory_usage/BUILD b/test/core/memory_usage/BUILD index cfc2880b688..41aab426c18 100644 --- a/test/core/memory_usage/BUILD +++ b/test/core/memory_usage/BUILD @@ -159,7 +159,6 @@ grpc_cc_test( deps = [ "//:gpr", "//:grpc", - "//:subprocess", "//test/core/util:grpc_test_util", "//test/core/util:grpc_test_util_base", ], @@ -179,7 +178,6 @@ grpc_cc_binary( deps = [ "//:gpr", "//:grpc", - "//:subprocess", "//test/core/util:grpc_test_util", "//test/core/util:grpc_test_util_base", ], diff --git a/test/core/memory_usage/memory_usage_test.cc b/test/core/memory_usage/memory_usage_test.cc index 0c2c9ee2b73..671539654be 100644 --- a/test/core/memory_usage/memory_usage_test.cc +++ b/test/core/memory_usage/memory_usage_test.cc @@ -37,9 +37,9 @@ #include #include "src/core/lib/config/config_vars.h" -#include "src/core/lib/gpr/subprocess.h" #include "src/core/lib/gprpp/host_port.h" #include "test/core/util/port.h" +#include "test/core/util/subprocess.h" #include "test/core/util/test_config.h" ABSL_FLAG(std::string, benchmark_names, "call,channel", diff --git a/test/core/util/BUILD b/test/core/util/BUILD index e520da58a06..2b88fd11f58 100644 --- a/test/core/util/BUILD +++ b/test/core/util/BUILD @@ -59,6 +59,8 @@ grpc_cc_library( "passthru_endpoint.cc", "resolve_localhost_ip46.cc", "slice_splitter.cc", + "subprocess_posix.cc", + "subprocess_windows.cc", "tracer_util.cc", ], hdrs = [ @@ -73,6 +75,7 @@ grpc_cc_library( "passthru_endpoint.h", "resolve_localhost_ip46.h", "slice_splitter.h", + "subprocess.h", "tracer_util.h", ], external_deps = [ diff --git a/src/core/lib/gpr/subprocess.h b/test/core/util/subprocess.h similarity index 68% rename from src/core/lib/gpr/subprocess.h rename to test/core/util/subprocess.h index 71d4796fde6..a46be258516 100644 --- a/src/core/lib/gpr/subprocess.h +++ b/test/core/util/subprocess.h @@ -16,26 +16,17 @@ // // -#ifndef GRPC_SRC_CORE_LIB_GPR_SUBPROCESS_H -#define GRPC_SRC_CORE_LIB_GPR_SUBPROCESS_H +#ifndef GRPC_TEST_CORE_UTIL_SUBPROCESS_H +#define GRPC_TEST_CORE_UTIL_SUBPROCESS_H #include -#include - typedef struct gpr_subprocess gpr_subprocess; /// .exe on windows, empty on unices const char* gpr_subprocess_binary_extension(); gpr_subprocess* gpr_subprocess_create(int argc, const char** argv); - -gpr_subprocess* gpr_subprocess_create_with_envp(int argc, const char** argv, - int envc, const char** envp); - -// communicate to the subprocess via stdin, stdout and stderr -bool gpr_subprocess_communicate(gpr_subprocess* p, std::string& input_data, - std::string* output_data, std::string* error); /// if subprocess has not been joined, kill it void gpr_subprocess_destroy(gpr_subprocess* p); /// returns exit status; can be called at most once @@ -43,4 +34,4 @@ int gpr_subprocess_join(gpr_subprocess* p); void gpr_subprocess_interrupt(gpr_subprocess* p); int gpr_subprocess_get_process_id(gpr_subprocess* p); -#endif // GRPC_SRC_CORE_LIB_GPR_SUBPROCESS_H +#endif // GRPC_TEST_CORE_UTIL_SUBPROCESS_H diff --git a/test/core/util/subprocess_posix.cc b/test/core/util/subprocess_posix.cc new file mode 100644 index 00000000000..1b97df0d26d --- /dev/null +++ b/test/core/util/subprocess_posix.cc @@ -0,0 +1,101 @@ +// +// +// Copyright 2015 gRPC authors. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// + +#include + +#include + +#ifdef GPR_POSIX_SUBPROCESS + +#include +#include +#include +#include +#include + +#include +#include + +#include "src/core/lib/gprpp/memory.h" +#include "src/core/lib/gprpp/strerror.h" +#include "test/core/util/subprocess.h" + +struct gpr_subprocess { + int pid; + bool joined; +}; + +const char* gpr_subprocess_binary_extension() { return ""; } + +gpr_subprocess* gpr_subprocess_create(int argc, const char** argv) { + gpr_subprocess* r; + int pid; + char** exec_args; + + pid = fork(); + if (pid == -1) { + return nullptr; + } else if (pid == 0) { + exec_args = static_cast( + gpr_malloc((static_cast(argc) + 1) * sizeof(char*))); + memcpy(exec_args, argv, static_cast(argc) * sizeof(char*)); + exec_args[argc] = nullptr; + execv(exec_args[0], exec_args); + // if we reach here, an error has occurred + gpr_log(GPR_ERROR, "execv '%s' failed: %s", exec_args[0], + grpc_core::StrError(errno).c_str()); + _exit(1); + } else { + r = grpc_core::Zalloc(); + r->pid = pid; + return r; + } +} + +void gpr_subprocess_destroy(gpr_subprocess* p) { + if (!p->joined) { + kill(p->pid, SIGKILL); + gpr_subprocess_join(p); + } + gpr_free(p); +} + +int gpr_subprocess_join(gpr_subprocess* p) { + int status; +retry: + if (waitpid(p->pid, &status, 0) == -1) { + if (errno == EINTR) { + goto retry; + } + gpr_log(GPR_ERROR, "waitpid failed for pid %d: %s", p->pid, + grpc_core::StrError(errno).c_str()); + return -1; + } + p->joined = true; + return status; +} + +void gpr_subprocess_interrupt(gpr_subprocess* p) { + if (!p->joined) { + kill(p->pid, SIGINT); + } +} + +int gpr_subprocess_get_process_id(gpr_subprocess* p) { return p->pid; } + +#endif // GPR_POSIX_SUBPROCESS diff --git a/src/core/lib/gpr/subprocess_windows.cc b/test/core/util/subprocess_windows.cc similarity index 98% rename from src/core/lib/gpr/subprocess_windows.cc rename to test/core/util/subprocess_windows.cc index 3efadd2a9b0..b639b3ef737 100644 --- a/src/core/lib/gpr/subprocess_windows.cc +++ b/test/core/util/subprocess_windows.cc @@ -31,9 +31,9 @@ #include #include "src/core/lib/gpr/string.h" -#include "src/core/lib/gpr/subprocess.h" #include "src/core/lib/gprpp/crash.h" #include "src/core/lib/gprpp/tchar.h" +#include "test/core/util/subprocess.h" struct gpr_subprocess { PROCESS_INFORMATION pi; diff --git a/test/cpp/util/BUILD b/test/cpp/util/BUILD index e4b98dc1ec2..d8aed93aa50 100644 --- a/test/cpp/util/BUILD +++ b/test/cpp/util/BUILD @@ -80,7 +80,6 @@ grpc_cc_library( ], deps = [ "//:grpc++", - "//:subprocess", "//test/core/end2end:ssl_test_data", "//test/core/util:grpc_test_util", "//test/core/util:grpc_test_util_base", @@ -115,7 +114,6 @@ grpc_cc_library( ], deps = [ "//:grpc++_unsecure", - "//:subprocess", "//test/core/util:grpc_test_util_base", "//test/core/util:grpc_test_util_unsecure", ], diff --git a/test/cpp/util/subprocess.cc b/test/cpp/util/subprocess.cc index 2f0c9cd03b2..1cd7fbd44a4 100644 --- a/test/cpp/util/subprocess.cc +++ b/test/cpp/util/subprocess.cc @@ -20,7 +20,7 @@ #include -#include "src/core/lib/gpr/subprocess.h" +#include "test/core/util/subprocess.h" namespace grpc {