What version of Go are you using (go version)?
$ go version
go version go1.14 darwin/amd64
Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN="/Users/xxx/gopath/bin"
GOCACHE="/Users/xxx/Library/Caches/go-build"
GOENV="/Users/xxx/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/xxx/gopath"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/usr/local/go/src/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/2b/74fz3jhd4wz4vnbf4z7ywzww0000gp/T/go-build191944931=/tmp/go-build -gno-record-gcc-switches -fno-common"
What did you do?
I tried to use SSL_CERT_FILE to try to override the default system location on macOS.
What did you expect to see?
x509.SystemCertPool use my environment variable.
What did you see instead?
It did not.
Per crypto/x509's docs:
On UNIX systems the environment variables SSL_CERT_FILE and SSL_CERT_DIR can be used to override the system default locations...
macOS is very much a UNIX system (afaik it's verified UNIX, or at least was) and at any rate, it's usually assumed to be included in the _unix.go convention.
At the very least, the docs should specify which operating systems allow the environment variable override.
What version of Go are you using (
go version)?Does this issue reproduce with the latest release?
Yes.
What operating system and processor architecture are you using (
go env)?go envOutputWhat did you do?
I tried to use
SSL_CERT_FILEto try to override the default system location on macOS.What did you expect to see?
x509.SystemCertPooluse my environment variable.What did you see instead?
It did not.
Per
crypto/x509's docs:macOS is very much a UNIX system (afaik it's verified UNIX, or at least was) and at any rate, it's usually assumed to be included in the
_unix.goconvention.At the very least, the docs should specify which operating systems allow the environment variable override.