INNER CODE UNIT · Go
buildCredentials
grpc-ecosystem/grpc-health-probe · main.go:187
func buildCredentials(skipVerify bool, caCerts, clientCert, clientKey, serverName string) (credentials.TransportCredentials, error) {
var cfg tls.Config
if clientCert != "" && clientKey != "" {
keyPair, err := tls.LoadX509KeyPair(clientCert, clientKey)
if err != nil {
return nil, fmt.Errorf("failed to load tls client cert/key pair. error=%v", err)
}
cfg.Certificates = []tls.Certificate{keyPair}
}
if skipVerify {
cfg.InsecureSkipVerify = true
} else if caCerts != "" {
// override system roots
rootCAs := x509.NewCertPool()
pem, err := os.ReadFile(caCerts)
if err != nil {