From f7e32a669ef253679d61e3ba56497343c3170738 Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Wed, 4 Mar 2015 11:29:09 -0800 Subject: [PATCH] C# interop client support for external CA file --- src/csharp/Grpc.IntegrationTesting/InteropClient.cs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs index e560112a899..30301f165ba 100644 --- a/src/csharp/Grpc.IntegrationTesting/InteropClient.cs +++ b/src/csharp/Grpc.IntegrationTesting/InteropClient.cs @@ -103,8 +103,16 @@ namespace Grpc.IntegrationTesting Credentials credentials = null; if (options.useTls) { - // TODO: use also Env variable for location of the ca file. - credentials = new SslCredentials(File.ReadAllText("data/ca.pem")); + string caPath = "data/ca.pem"; // Default testing CA + if (!options.useTestCa) + { + caPath = Environment.GetEnvironmentVariable("SSL_CERT_FILE"); + if (string.IsNullOrEmpty(caPath)) + { + throw new ArgumentException("CA path environment variable is not set."); + } + } + credentials = new SslCredentials(File.ReadAllText(caPath)); } ChannelArgs channelArgs = null;