]> Cypherpunks repositories - gostls13.git/commitdiff
doc: update the minimum support Windows version
authorBrad Fitzpatrick <bradfitz@golang.org>
Wed, 11 Jul 2018 21:14:42 +0000 (21:14 +0000)
committerBrad Fitzpatrick <bradfitz@golang.org>
Wed, 11 Jul 2018 22:05:38 +0000 (22:05 +0000)
Also, remove some test code that was trying to work on XP and fix up
some comments referencing XP.

Fixes #26191
Updates #23380

Change-Id: I0b7319fe1954afddb22d396e5ec91d8c960268d8
Reviewed-on: https://go-review.googlesource.com/123415
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Alex Brainman <alex.brainman@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>

doc/install.html
src/crypto/x509/sha2_windows_test.go [deleted file]
src/crypto/x509/verify_test.go
src/internal/poll/fd_windows.go
src/net/interface_windows.go
src/runtime/syscall_windows.go

index 3bb4a15b25384ce134f98cb014996851a0952d0a..2e0c7f859d82cc10e13e91ef0b5d506bb7f11ebc 100644 (file)
@@ -50,7 +50,7 @@ If your OS or architecture is not on the list, you may be able to
 <tr><td>FreeBSD 10.3 or later</td> <td>amd64, 386</td> <td>Debian GNU/kFreeBSD not supported</td></tr>
 <tr valign='top'><td>Linux 2.6.23 or later with glibc</td> <td>amd64, 386, arm, arm64,<br>s390x, ppc64le</td> <td>CentOS/RHEL 5.x not supported.<br>Install from source for other libc.</td></tr>
 <tr><td>macOS 10.10 or later</td> <td>amd64</td> <td>use the clang or gcc<sup>&#8224;</sup> that comes with Xcode<sup>&#8225;</sup> for <code>cgo</code> support</td></tr>
-<tr><td>Windows XP SP2 or later</td> <td>amd64, 386</td> <td>use MinGW gcc<sup>&#8224;</sup>. No need for cygwin or msys.</td></tr>
+<tr><td>Windows 7, Server 2008R2 or later</td> <td>amd64, 386</td> <td>use MinGW gcc<sup>&#8224;</sup>. No need for cygwin or msys.</td></tr>
 </table>
 
 <p>
diff --git a/src/crypto/x509/sha2_windows_test.go b/src/crypto/x509/sha2_windows_test.go
deleted file mode 100644 (file)
index 620b7b9..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-// Copyright 2015 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package x509
-
-import "syscall"
-
-func init() {
-       v, err := syscall.GetVersion()
-       if err != nil {
-               return
-       }
-       if major := byte(v); major < 6 {
-               // Windows XP SP2 and Windows 2003 do not support SHA2.
-               // https://blogs.technet.com/b/pki/archive/2010/09/30/sha2-and-windows.aspx
-               supportSHA2 = false
-       }
-}
index bd3df47907858ba053cd2e00dd58ae2efd72c333..95034dbba33eb2a630ffbd58c87d6c054ba57db0 100644 (file)
@@ -15,8 +15,6 @@ import (
        "time"
 )
 
-var supportSHA2 = true
-
 type verifyTest struct {
        leaf                 string
        intermediates        []string
@@ -427,9 +425,6 @@ func testVerify(t *testing.T, useSystemRoots bool) {
                if runtime.GOOS == "windows" && test.testSystemRootsError {
                        continue
                }
-               if useSystemRoots && !supportSHA2 && test.sha2 {
-                       continue
-               }
 
                opts := VerifyOptions{
                        Intermediates: NewCertPool(),
index 74135ce716dd49212fd7a839f8eadff6f56858eb..d04d332696db486ea8fd0c9f11cef8887a021f1f 100644 (file)
@@ -34,12 +34,11 @@ var (
 
 var canCancelIO bool // determines if CancelIoEx API is present
 
-// This package uses SetFileCompletionNotificationModes Windows API
-// to skip calling GetQueuedCompletionStatus if an IO operation completes
-// synchronously. Unfortuently SetFileCompletionNotificationModes is not
-// available on Windows XP. Also there is a known bug where
-// SetFileCompletionNotificationModes crashes on some systems
-// (see https://support.microsoft.com/kb/2568167 for details).
+// This package uses the SetFileCompletionNotificationModes Windows
+// API to skip calling GetQueuedCompletionStatus if an IO operation
+// completes synchronously. There is a known bug where
+// SetFileCompletionNotificationModes crashes on some systems (see
+// https://support.microsoft.com/kb/2568167 for details).
 
 var useSetFileCompletionNotificationModes bool // determines is SetFileCompletionNotificationModes is present and safe to use
 
index be96c586c722b3cdb5e3e5f1f1904d902a137300..28b0a65f665913b56516a1241b489e5117e061ce 100644 (file)
@@ -65,9 +65,8 @@ func interfaceTable(ifindex int) ([]Interface, error) {
                        }
                        // For now we need to infer link-layer service
                        // capabilities from media types.
-                       // We will be able to use
-                       // MIB_IF_ROW2.AccessType once we drop support
-                       // for Windows XP.
+                       // TODO: use MIB_IF_ROW2.AccessType now that we no longer support
+                       // Windows XP.
                        switch aa.IfType {
                        case windows.IF_TYPE_ETHERNET_CSMACD, windows.IF_TYPE_ISO88025_TOKENRING, windows.IF_TYPE_IEEE80211, windows.IF_TYPE_IEEE1394:
                                ifi.Flags |= FlagBroadcast | FlagMulticast
index 134d4dbd99630797d424a178f02948284cbccdb9..5ab78fdbf20a56b8eaa3a29e1decbd5805c75f7b 100644 (file)
@@ -107,11 +107,12 @@ func syscall_loadsystemlibrary(filename *uint16) (handle, err uintptr) {
                }{filename, 0, _LOAD_LIBRARY_SEARCH_SYSTEM32}
                c.args = uintptr(noescape(unsafe.Pointer(&args)))
        } else {
-               // User is on Windows XP or something ancient.
-               // The caller wanted to only load the filename DLL
-               // from the System32 directory but that facility
-               // doesn't exist, so just load it the normal way. This
-               // is a potential security risk, but so is Windows XP.
+               // User doesn't have KB2533623 installed. The caller
+               // wanted to only load the filename DLL from the
+               // System32 directory but that facility doesn't exist,
+               // so just load it the normal way. This is a potential
+               // security risk, but so is not installing security
+               // updates.
                c.fn = getLoadLibrary()
                c.n = 1
                c.args = uintptr(noescape(unsafe.Pointer(&filename)))