func GetTLSCertificateConfig(certFile, keyFile string) (*TLSCertificateConfig, error) { if len(certFile) == 0 { return nil, errors.New("certFile missing") } if len(keyFile) == 0 { return nil, errors.New("keyFile missing") } certPEMBlock, err := ioutil.ReadFile(certFile) if err != nil { return nil, err } certs, err := cmdutil.CertificatesFromPEM(certPEMBlock) if err != nil { return nil, fmt.Errorf("Error reading %s: %s", certFile, err) } keyPEMBlock, err := ioutil.ReadFile(keyFile) if err != nil { return nil, err } keyPairCert, err := tls.X509KeyPair(certPEMBlock, keyPEMBlock) if err != nil { return nil, err } key := keyPairCert.PrivateKey return &TLSCertificateConfig{certs, key}, nil }
func GetTLSCARoots(caFile string) (*TLSCARoots, error) { if len(caFile) == 0 { return nil, errors.New("caFile missing") } caPEMBlock, err := ioutil.ReadFile(caFile) if err != nil { return nil, err } roots, err := cmdutil.CertificatesFromPEM(caPEMBlock) if err != nil { return nil, fmt.Errorf("Error reading %s: %s", caFile, err) } return &TLSCARoots{roots}, nil }