Source File
default_cert.go
Belonging Package
google.golang.org/api/transport/cert
package cert
import (
)
const (
metadataPath = ".secureConnect"
metadataFile = "context_aware_metadata.json"
)
var (
defaultSourceOnce sync.Once
defaultSource Source
defaultSourceErr error
)
type Source func(*tls.CertificateRequestInfo) (*tls.Certificate, error)
func () (Source, error) {
defaultSourceOnce.Do(func() {
defaultSource, defaultSourceErr = newSecureConnectSource()
})
return defaultSource, defaultSourceErr
}
type secureConnectSource struct {
metadata secureConnectMetadata
}
type secureConnectMetadata struct {
Cmd []string `json:"cert_provider_command"`
}
return nil, nil
}
:= filepath.Join(.HomeDir, metadataPath, metadataFile)
, := ioutil.ReadFile()
return nil, nil
}
if != nil {
return nil,
}
var secureConnectMetadata
if := json.Unmarshal(, &); != nil {
return nil, fmt.Errorf("cert: could not parse JSON in %q: %v", , )
}
if := validateMetadata(); != nil {
return nil, fmt.Errorf("cert: invalid config in %q: %v", , )
}
return (&secureConnectSource{
metadata: ,
}).getClientCertificate, nil
}
func ( secureConnectMetadata) error {
if len(.Cmd) == 0 {
return errors.New("empty cert_provider_command")
}
return nil
}
![]() |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64) Golds is a Go 101 project developed by Tapir Liu. PR and bug reports are welcome and can be submitted to the issue list. Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |