go/fix_certificates_lookup.patch
Thomas Boerger c7282e4f72 Accepting request 431323 from home:jordimassaguerpla:branch:d:l:g:update_go_1_7
- update to go1.7.0 (bsc#996303)
  Most of its changes are in the implementation of the toolchain,
  runtime, and libraries. There is one minor change to the language
  specification.
  The release adds a port to IBM LinuxOne; updates the x86-64 compiler
  back end to generate more efficient code; includes the context package,
  promoted from the x/net subrepository and now used in the standard
  library; and adds support in the testing package for creating
  hierarchies of tests and benchmarks. The release also finalizes
  the vendoring support started in Go 1.5, making it a standard feature. 
  more at: https://golang.org/doc/go1.7
  Review patches: 
    - armv6l.patch
    - fix_certificates_lookup.patch,
    - go-1.5-install-dont-reinstall-stdlibs.patch
    - gcc5-go.patch

OBS-URL: https://build.opensuse.org/request/show/431323
OBS-URL: https://build.opensuse.org/package/show/devel:languages:go/go?expand=0&rev=270
2016-10-07 10:13:54 +00:00

37 lines
842 B
Diff

diff --git a/src/crypto/x509/root_unix.go b/src/crypto/x509/root_unix.go
index 7bcb3d6..7755293 100644
--- a/src/crypto/x509/root_unix.go
+++ b/src/crypto/x509/root_unix.go
@@ -36,6 +37,8 @@ func loadSystemRoots() (*CertPool, error) {
}
}
+ rootsAdded := false
+
for _, directory := range certDirectories {
fis, err := ioutil.ReadDir(directory)
if err != nil {
@@ -44,16 +47,18 @@ func loadSystemRoots() (*CertPool, error) {
}
continue
}
- rootsAdded := false
for _, fi := range fis {
+ if fi.Mode()&os.ModeSymlink != 0 {
+ continue
+ }
data, err := ioutil.ReadFile(directory + "/" + fi.Name())
if err == nil && roots.AppendCertsFromPEM(data) {
rootsAdded = true
}
}
- if rootsAdded {
- return roots, nil
- }
+ }
+ if rootsAdded {
+ return roots, nil
}
return nil, firstErr