Commit c61c29fe authored by Russ Cox's avatar Russ Cox

cmd/go: accept GOSUMDB=sum.golang.google.cn

This CL makes the go command understand that
GOSUMDB=sum.golang.google.cn should connect
to that domain but expect to find a checksum database
signed by sum.golang.org there.

The host sum.golang.google.cn is not yet completely
configured; we hope it will be available in a few weeks.

Change-Id: Ie0fc4323f0c7084dda59bd3b45fc406717fa16d9
Reviewed-on: https://go-review.googlesource.com/c/go/+/191137
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: default avatarAndrew Bonventre <andybons@golang.org>
parent 72385238
...@@ -2743,9 +2743,11 @@ ...@@ -2743,9 +2743,11 @@
// GOSUMDB="sum.golang.org+<publickey>" // GOSUMDB="sum.golang.org+<publickey>"
// GOSUMDB="sum.golang.org+<publickey> https://sum.golang.org" // GOSUMDB="sum.golang.org+<publickey> https://sum.golang.org"
// //
// The go command knows the public key of sum.golang.org; use of any other // The go command knows the public key of sum.golang.org, and also that the name
// database requires giving the public key explicitly. The URL defaults to // sum.golang.google.cn (available inside mainland China) connects to the
// "https://" followed by the database name. // sum.golang.org checksum database; use of any other database requires giving
// the public key explicitly.
// The URL defaults to "https://" followed by the database name.
// //
// GOSUMDB defaults to "sum.golang.org", the Go checksum database run by Google. // GOSUMDB defaults to "sum.golang.org", the Go checksum database run by Google.
// See https://sum.golang.org/privacy for the service's privacy policy. // See https://sum.golang.org/privacy for the service's privacy policy.
......
...@@ -701,9 +701,11 @@ to use and optionally its public key and URL, as in: ...@@ -701,9 +701,11 @@ to use and optionally its public key and URL, as in:
GOSUMDB="sum.golang.org+<publickey>" GOSUMDB="sum.golang.org+<publickey>"
GOSUMDB="sum.golang.org+<publickey> https://sum.golang.org" GOSUMDB="sum.golang.org+<publickey> https://sum.golang.org"
The go command knows the public key of sum.golang.org; use of any other The go command knows the public key of sum.golang.org, and also that the name
database requires giving the public key explicitly. The URL defaults to sum.golang.google.cn (available inside mainland China) connects to the
"https://" followed by the database name. sum.golang.org checksum database; use of any other database requires giving
the public key explicitly.
The URL defaults to "https://" followed by the database name.
GOSUMDB defaults to "sum.golang.org", the Go checksum database run by Google. GOSUMDB defaults to "sum.golang.org", the Go checksum database run by Google.
See https://sum.golang.org/privacy for the service's privacy policy. See https://sum.golang.org/privacy for the service's privacy policy.
......
...@@ -60,7 +60,17 @@ func dbDial() (dbName string, db *sumweb.Conn, err error) { ...@@ -60,7 +60,17 @@ func dbDial() (dbName string, db *sumweb.Conn, err error) {
// $GOSUMDB can be "key" or "key url", // $GOSUMDB can be "key" or "key url",
// and the key can be a full verifier key // and the key can be a full verifier key
// or a host on our list of known keys. // or a host on our list of known keys.
key := strings.Fields(cfg.GOSUMDB)
// Special case: sum.golang.google.cn
// is an alias, reachable inside mainland China,
// for sum.golang.org. If there are more
// of these we should add a map like knownGOSUMDB.
gosumdb := cfg.GOSUMDB
if gosumdb == "sum.golang.google.cn" {
gosumdb = "sum.golang.org https://sum.golang.google.cn"
}
key := strings.Fields(gosumdb)
if len(key) >= 1 { if len(key) >= 1 {
if k := knownGOSUMDB[key[0]]; k != "" { if k := knownGOSUMDB[key[0]]; k != "" {
key[0] = k key[0] = k
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment