Skip to content

Commit 1a5aaff

Browse files
committed
Fix and update CI analyzers
1 parent 33ca7b5 commit 1a5aaff

File tree

4 files changed

+53
-21
lines changed

4 files changed

+53
-21
lines changed

analysis.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,19 @@ import (
2020
"golang.org/x/tools/go/analysis/passes/copylock"
2121
"golang.org/x/tools/go/analysis/passes/errorsas"
2222
"golang.org/x/tools/go/analysis/passes/httpresponse"
23+
"golang.org/x/tools/go/analysis/passes/ifaceassert"
2324
"golang.org/x/tools/go/analysis/passes/loopclosure"
2425
"golang.org/x/tools/go/analysis/passes/lostcancel"
2526
"golang.org/x/tools/go/analysis/passes/nilfunc"
2627
"golang.org/x/tools/go/analysis/passes/printf"
2728
"golang.org/x/tools/go/analysis/passes/shift"
2829
"golang.org/x/tools/go/analysis/passes/stdmethods"
30+
"golang.org/x/tools/go/analysis/passes/stringintconv"
2931
"golang.org/x/tools/go/analysis/passes/structtag"
32+
"golang.org/x/tools/go/analysis/passes/testinggoroutine"
3033
"golang.org/x/tools/go/analysis/passes/tests"
3134
"golang.org/x/tools/go/analysis/passes/unmarshal"
3235
"golang.org/x/tools/go/analysis/passes/unreachable"
33-
"golang.org/x/tools/go/analysis/passes/unsafeptr"
3436
"golang.org/x/tools/go/analysis/passes/unusedresult"
3537

3638
"honnef.co/go/tools/simple"
@@ -42,6 +44,7 @@ func main() {
4244
var analyzers []*analysis.Analyzer
4345

4446
// Add all cmd/vet analyzers.
47+
// https://github.com/golang/go/issues/35487
4548
analyzers = append(analyzers,
4649
asmdecl.Analyzer,
4750
assign.Analyzer,
@@ -53,17 +56,22 @@ func main() {
5356
copylock.Analyzer,
5457
errorsas.Analyzer,
5558
httpresponse.Analyzer,
59+
ifaceassert.Analyzer,
5660
loopclosure.Analyzer,
5761
lostcancel.Analyzer,
5862
nilfunc.Analyzer,
5963
printf.Analyzer,
6064
shift.Analyzer,
6165
stdmethods.Analyzer,
66+
stringintconv.Analyzer,
6267
structtag.Analyzer,
6368
tests.Analyzer,
69+
testinggoroutine.Analyzer,
6470
unmarshal.Analyzer,
6571
unreachable.Analyzer,
66-
unsafeptr.Analyzer,
72+
// False positives when using Windows DLL procs.
73+
// https://github.com/golang/go/issues/41205
74+
// unsafeptr.Analyzer,
6775
unusedresult.Analyzer)
6876

6977
for _, v := range simple.Analyzers {

go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ module filippo.io/mkcert
33
go 1.13
44

55
require (
6-
golang.org/x/net v0.0.0-20190620200207-3b0461eec859
7-
golang.org/x/tools v0.0.0-20191108193012-7d206e10da11
8-
honnef.co/go/tools v0.0.0-20191107024926-a9480a3ec3bc
6+
golang.org/x/net v0.0.0-20201021035429-f5854403a974
7+
golang.org/x/tools v0.0.0-20201124202034-299f270db459
8+
honnef.co/go/tools v0.0.1-2020.1.6
99
howett.net/plist v0.0.0-20181124034731-591f970eefbb
1010
software.sslmate.com/src/go-pkcs12 v0.0.0-20180114231543-2291e8f0f237
1111
)

go.sum

Lines changed: 27 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,27 +7,47 @@ github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORN
77
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
88
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
99
github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
10+
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
11+
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
1012
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
11-
golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
12-
golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc=
13+
golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI=
14+
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI=
15+
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
16+
golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
17+
golang.org/x/mod v0.3.0 h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
18+
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
1319
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
1420
golang.org/x/net v0.0.0-20190620200207-3b0461eec859 h1:R/3boaszxrf1GEUWTVDzSKVwLmSJpwZ1yqXm8j0v2QI=
1521
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
22+
golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
23+
golang.org/x/net v0.0.0-20201021035429-f5854403a974 h1:IX6qOQeG5uLjB/hjjwjedwfjND0hgjPMMyO1RoIXQNI=
24+
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
1625
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
26+
golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
27+
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
1728
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
1829
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
30+
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
1931
golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
2032
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
21-
golang.org/x/tools v0.0.0-20191022074931-774d2ec196ee/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
22-
golang.org/x/tools v0.0.0-20191108193012-7d206e10da11 h1:Yq9t9jnGoR+dBuitxdo9l6Q7xh/zOyNnYUtDKaQ3x0E=
23-
golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
33+
golang.org/x/text v0.3.3 h1:cokOdA+Jmi5PJGXLlLllQSgYigAEfHXJAERHVMaCc2k=
34+
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
35+
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
36+
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
37+
golang.org/x/tools v0.0.0-20200410194907-79a7a3126eef/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE=
38+
golang.org/x/tools v0.0.0-20201124202034-299f270db459 h1:XrUnpqJ8xqeZHrgPu3FuYCv9/O3MrxnIKh5/+MLDE8Q=
39+
golang.org/x/tools v0.0.0-20201124202034-299f270db459/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
2440
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
41+
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
42+
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
43+
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
44+
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
2545
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
2646
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
2747
gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
2848
gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
29-
honnef.co/go/tools v0.0.0-20191107024926-a9480a3ec3bc h1:G3KJU7T3tdNpGfKsED8OHHsQozNxEW0rDS785ks+feY=
30-
honnef.co/go/tools v0.0.0-20191107024926-a9480a3ec3bc/go.mod h1:bskWClgaWw7pMntzj97vj6x8S0hIhRBiTMJkNmGWTLE=
49+
honnef.co/go/tools v0.0.1-2020.1.6 h1:W18jzjh8mfPez+AwGLxmOImucz/IFjpNlrKVnaj2YVc=
50+
honnef.co/go/tools v0.0.1-2020.1.6/go.mod h1:pyyisuGw24ruLjrr1ddx39WE0y9OooInRzEYLhQB2YY=
3151
howett.net/plist v0.0.0-20181124034731-591f970eefbb h1:jhnBjNi9UFpfpl8YZhA9CrOqpnJdvzuiHsl/dnxl11M=
3252
howett.net/plist v0.0.0-20181124034731-591f970eefbb/go.mod h1:vMygbs4qMhSZSc4lCUl2OEE+rDiIIJAIdR4m7MiMcm0=
3353
software.sslmate.com/src/go-pkcs12 v0.0.0-20180114231543-2291e8f0f237 h1:iAEkCBPbRaflBgZ7o9gjVUuWuvWeV4sytFWg9o+Pj2k=

truststore_windows.go

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ func (m *mkcert) installPlatform() bool {
3838
fatalIfErr(err, "failed to read root certificate")
3939
// Decode PEM
4040
if certBlock, _ := pem.Decode(cert); certBlock == nil || certBlock.Type != "CERTIFICATE" {
41-
fatalIfErr(fmt.Errorf("Invalid PEM data"), "decode pem")
41+
fatalIfErr(fmt.Errorf("invalid PEM data"), "decode pem")
4242
} else {
4343
cert = certBlock.Bytes
4444
}
@@ -60,7 +60,7 @@ func (m *mkcert) uninstallPlatform() bool {
6060
// Do the deletion
6161
deletedAny, err := store.deleteCertsWithSerial(m.caCert.SerialNumber)
6262
if err == nil && !deletedAny {
63-
err = fmt.Errorf("No certs found")
63+
err = fmt.Errorf("no certs found")
6464
}
6565
fatalIfErr(err, "delete cert")
6666
return true
@@ -69,19 +69,23 @@ func (m *mkcert) uninstallPlatform() bool {
6969
type windowsRootStore uintptr
7070

7171
func openWindowsRootStore() (windowsRootStore, error) {
72-
store, _, err := procCertOpenSystemStoreW.Call(0, uintptr(unsafe.Pointer(syscall.StringToUTF16Ptr("ROOT"))))
72+
rootStr, err := syscall.UTF16PtrFromString("ROOT")
73+
if err != nil {
74+
return 0, err
75+
}
76+
store, _, err := procCertOpenSystemStoreW.Call(0, uintptr(unsafe.Pointer(rootStr)))
7377
if store != 0 {
7478
return windowsRootStore(store), nil
7579
}
76-
return 0, fmt.Errorf("Failed to open windows root store: %v", err)
80+
return 0, fmt.Errorf("failed to open windows root store: %v", err)
7781
}
7882

7983
func (w windowsRootStore) close() error {
8084
ret, _, err := procCertCloseStore.Call(uintptr(w), 0)
8185
if ret != 0 {
8286
return nil
8387
}
84-
return fmt.Errorf("Failed to close windows root store: %v", err)
88+
return fmt.Errorf("failed to close windows root store: %v", err)
8589
}
8690

8791
func (w windowsRootStore) addCert(cert []byte) error {
@@ -97,7 +101,7 @@ func (w windowsRootStore) addCert(cert []byte) error {
97101
if ret != 0 {
98102
return nil
99103
}
100-
return fmt.Errorf("Failed adding cert: %v", err)
104+
return fmt.Errorf("failed adding cert: %v", err)
101105
}
102106

103107
func (w windowsRootStore) deleteCertsWithSerial(serial *big.Int) (bool, error) {
@@ -111,7 +115,7 @@ func (w windowsRootStore) deleteCertsWithSerial(serial *big.Int) (bool, error) {
111115
if errno, ok := err.(syscall.Errno); ok && errno == 0x80092004 {
112116
break
113117
}
114-
return deletedAny, fmt.Errorf("Failed enumerating certs: %v", err)
118+
return deletedAny, fmt.Errorf("failed enumerating certs: %v", err)
115119
}
116120
// Parse cert
117121
certBytes := (*[1 << 20]byte)(unsafe.Pointer(cert.EncodedCert))[:cert.Length]
@@ -121,10 +125,10 @@ func (w windowsRootStore) deleteCertsWithSerial(serial *big.Int) (bool, error) {
121125
// Duplicate the context so it doesn't stop the enum when we delete it
122126
dupCertPtr, _, err := procCertDuplicateCertificateContext.Call(uintptr(unsafe.Pointer(cert)))
123127
if dupCertPtr == 0 {
124-
return deletedAny, fmt.Errorf("Failed duplicating context: %v", err)
128+
return deletedAny, fmt.Errorf("failed duplicating context: %v", err)
125129
}
126130
if ret, _, err := procCertDeleteCertificateFromStore.Call(dupCertPtr); ret == 0 {
127-
return deletedAny, fmt.Errorf("Failed deleting certificate: %v", err)
131+
return deletedAny, fmt.Errorf("failed deleting certificate: %v", err)
128132
}
129133
deletedAny = true
130134
}

0 commit comments

Comments
 (0)