<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>†</sup> that comes with Xcode<sup>‡</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>†</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>†</sup>. No need for cygwin or msys.</td></tr>
</table>
<p>
+++ /dev/null
-// 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
- }
-}
"time"
)
-var supportSHA2 = true
-
type verifyTest struct {
leaf string
intermediates []string
if runtime.GOOS == "windows" && test.testSystemRootsError {
continue
}
- if useSystemRoots && !supportSHA2 && test.sha2 {
- continue
- }
opts := VerifyOptions{
Intermediates: NewCertPool(),
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
}
// 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
}{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)))