File fix_certificates_lookup.patch of Package go1.7

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
openSUSE Build Service is sponsored by