// configure TLS and retry settings before making any connections func (flag *ClientFlag) configure(sc *soap.Client) (soap.RoundTripper, error) { if err := flag.SetRootCAs(sc); err != nil { return nil, err } if err := sc.LoadThumbprints(flag.tlsKnownHosts); err != nil { return nil, err } // Retry twice when a temporary I/O error occurs. // This means a maximum of 3 attempts. return vim25.Retry(sc, vim25.TemporaryNetworkError(3)), nil }
// configure TLS and retry settings before making any connections func (flag *ClientFlag) configure(sc *soap.Client) (soap.RoundTripper, error) { // Set namespace and version sc.Namespace = flag.vimNamespace sc.Version = flag.vimVersion sc.UserAgent = fmt.Sprintf("govc/%s", Version) if err := flag.SetRootCAs(sc); err != nil { return nil, err } if err := sc.LoadThumbprints(flag.tlsKnownHosts); err != nil { return nil, err } // Retry twice when a temporary I/O error occurs. // This means a maximum of 3 attempts. return vim25.Retry(sc, vim25.TemporaryNetworkError(3)), nil }
func (flag *ClientFlag) SetRootCAs(c *soap.Client) error { if flag.tlsCaCerts != "" { return c.SetRootCAs(flag.tlsCaCerts) } return nil }