var once … var systemRootsMu … var systemRoots … var systemRootsErr … var fallbacksSet … func systemRootsPool() *CertPool { … } func initSystemRoots() { … } var x509usefallbackroots … // SetFallbackRoots sets the roots to use during certificate verification, if no // custom roots are specified and a platform verifier or a system certificate // pool is not available (for instance in a container which does not have a root // certificate bundle). SetFallbackRoots will panic if roots is nil. // // SetFallbackRoots may only be called once, if called multiple times it will // panic. // // The fallback behavior can be forced on all platforms, even when there is a // system certificate pool, by setting GODEBUG=x509usefallbackroots=1 (note that // on Windows and macOS this will disable usage of the platform verification // APIs and cause the pure Go verifier to be used). Setting // x509usefallbackroots=1 without calling SetFallbackRoots has no effect. func SetFallbackRoots(roots *CertPool) { … }