aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFilippo Valsorda <filippo@golang.org>2019-10-24 06:33:17 -0400
committerFilippo Valsorda <filippo@golang.org>2019-10-24 06:33:17 -0400
commitcab2e4707a424dd55740ef0adfc739d66b1f2cb6 (patch)
treeb2b9de38f4be8d30275277b041a8ab30447c92d2
parentc5a4ae8c8c1b8621b705273aa6928994131e3bce (diff)
parent9e6d3ca2794c04b3f65019ee90b6e406bcfc9286 (diff)
downloadgo-cab2e4707a424dd55740ef0adfc739d66b1f2cb6.tar.gz
go-cab2e4707a424dd55740ef0adfc739d66b1f2cb6.zip
[dev.boringcrypto.go1.12] all: merge go1.12.12 into dev.boringcrypto.go1.12
Change-Id: Icb1265898a5da209c1560e2a317e219ceed536af
-rw-r--r--doc/devel/release.html7
-rw-r--r--doc/go1.10.html2
-rw-r--r--doc/go1.11.html2
-rw-r--r--doc/go1.12.html2
-rw-r--r--doc/go1.6.html2
-rw-r--r--doc/go1.7.html2
-rw-r--r--doc/go1.8.html2
-rw-r--r--doc/go1.9.html2
-rw-r--r--src/cmd/go/go_test.go1
-rw-r--r--src/cmd/go/internal/modconv/convert_test.go2
-rw-r--r--src/cmd/go/internal/modfetch/coderepo_test.go10
-rw-r--r--src/cmd/go/internal/modfetch/proxy.go8
-rw-r--r--src/cmd/go/internal/modload/query_test.go6
-rw-r--r--src/cmd/vendor/golang.org/x/arch/LICENSE27
-rw-r--r--src/cmd/vendor/golang.org/x/arch/PATENTS22
-rw-r--r--src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/objdump_test.go12
-rw-r--r--src/cmd/vendor/vendor.json7
-rw-r--r--src/net/dnsclient_unix.go8
-rw-r--r--src/net/dnsclient_unix_test.go47
-rw-r--r--src/runtime/runtime-gdb.py2
-rw-r--r--src/syscall/syscall_aix.go19
-rw-r--r--src/syscall/types_aix.go24
-rw-r--r--src/syscall/zsyscall_aix_ppc64.go16
-rw-r--r--src/syscall/ztypes_aix_ppc64.go32
24 files changed, 219 insertions, 45 deletions
diff --git a/doc/devel/release.html b/doc/devel/release.html
index c756cfeb4f..d136cc98fd 100644
--- a/doc/devel/release.html
+++ b/doc/devel/release.html
@@ -112,6 +112,13 @@ See the <a href="https://github.com/golang/go/issues?q=milestone%3AGo1.12.11">Go
1.12.11 milestone</a> on our issue tracker for details.
</p>
+<p>
+go1.12.12 (released 2019/10/17) includes fixes to the go command,
+runtime, <code>syscall</code> and <code>net</code> packages.
+See the <a href="https://github.com/golang/go/issues?q=milestone%3AGo1.12.12">Go
+1.12.12 milestone</a> on our issue tracker for details.
+</p>
+
<h2 id="go1.11">go1.11 (released 2018/08/24)</h2>
<p>
diff --git a/doc/go1.10.html b/doc/go1.10.html
index 2974fef9a3..41db36ab1e 100644
--- a/doc/go1.10.html
+++ b/doc/go1.10.html
@@ -12,7 +12,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
-ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.10</h2>
diff --git a/doc/go1.11.html b/doc/go1.11.html
index 1d85be9fe4..841ead225f 100644
--- a/doc/go1.11.html
+++ b/doc/go1.11.html
@@ -12,7 +12,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
- ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.11</h2>
diff --git a/doc/go1.12.html b/doc/go1.12.html
index 7f0b221cc3..a8b0c87fe5 100644
--- a/doc/go1.12.html
+++ b/doc/go1.12.html
@@ -12,7 +12,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
- ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.12</h2>
diff --git a/doc/go1.6.html b/doc/go1.6.html
index 902a82d517..c8ec7e7991 100644
--- a/doc/go1.6.html
+++ b/doc/go1.6.html
@@ -10,7 +10,7 @@ Edit .,s;^([a-z][A-Za-z0-9_/]+)\.([A-Z][A-Za-z0-9_]+\.)?([A-Z][A-Za-z0-9_]+)([ .
-->
<style>
-ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.6</h2>
diff --git a/doc/go1.7.html b/doc/go1.7.html
index db60702776..61076fd091 100644
--- a/doc/go1.7.html
+++ b/doc/go1.7.html
@@ -22,7 +22,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
-ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.7</h2>
diff --git a/doc/go1.8.html b/doc/go1.8.html
index 611f5ee25e..2a47fac420 100644
--- a/doc/go1.8.html
+++ b/doc/go1.8.html
@@ -12,7 +12,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
-ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.8</h2>
diff --git a/doc/go1.9.html b/doc/go1.9.html
index fa50ae7805..3dfdf53a81 100644
--- a/doc/go1.9.html
+++ b/doc/go1.9.html
@@ -12,7 +12,7 @@ Do not send CLs removing the interior tags from such phrases.
-->
<style>
-ul li { margin: 0.5em 0; }
+ main ul li { margin: 0.5em 0; }
</style>
<h2 id="introduction">Introduction to Go 1.9</h2>
diff --git a/src/cmd/go/go_test.go b/src/cmd/go/go_test.go
index 5e18629859..3ba9a20335 100644
--- a/src/cmd/go/go_test.go
+++ b/src/cmd/go/go_test.go
@@ -3639,6 +3639,7 @@ func TestGoGetInsecure(t *testing.T) {
tg.tempFile("go.mod", "module m")
tg.cd(tg.path("."))
tg.setenv("GO111MODULE", "on")
+ tg.setenv("GOPROXY", "")
} else {
tg.setenv("GOPATH", tg.path("."))
tg.setenv("GO111MODULE", "off")
diff --git a/src/cmd/go/internal/modconv/convert_test.go b/src/cmd/go/internal/modconv/convert_test.go
index 4d55d73f21..d6316e36e9 100644
--- a/src/cmd/go/internal/modconv/convert_test.go
+++ b/src/cmd/go/internal/modconv/convert_test.go
@@ -28,6 +28,8 @@ func TestMain(m *testing.M) {
}
func testMain(m *testing.M) int {
+ modfetch.SetProxy("direct")
+
if _, err := exec.LookPath("git"); err != nil {
fmt.Fprintln(os.Stderr, "skipping because git binary not found")
fmt.Println("PASS")
diff --git a/src/cmd/go/internal/modfetch/coderepo_test.go b/src/cmd/go/internal/modfetch/coderepo_test.go
index 7a419576ce..f9d19f751e 100644
--- a/src/cmd/go/internal/modfetch/coderepo_test.go
+++ b/src/cmd/go/internal/modfetch/coderepo_test.go
@@ -24,6 +24,8 @@ func TestMain(m *testing.M) {
}
func testMain(m *testing.M) int {
+ SetProxy("direct")
+
dir, err := ioutil.TempDir("", "gitrepo-test-")
if err != nil {
log.Fatal(err)
@@ -284,10 +286,10 @@ var codeRepoTests = []struct {
{
path: "gopkg.in/yaml.v2",
rev: "v2",
- version: "v2.2.2",
- name: "51d6538a90f86fe93ac480b35f37b2be17fef232",
- short: "51d6538a90f8",
- time: time.Date(2018, 11, 15, 11, 05, 04, 0, time.UTC),
+ version: "v2.2.5-0.20191002202810-970885f01c8b",
+ name: "970885f01c8bc1fecb7ab1c8ce8e7609bda45530",
+ short: "970885f01c8b",
+ time: time.Date(2019, 10, 2, 20, 28, 10, 0, time.UTC),
gomod: "module \"gopkg.in/yaml.v2\"\n\nrequire (\n\t\"gopkg.in/check.v1\" v0.0.0-20161208181325-20d25e280405\n)\n",
},
{
diff --git a/src/cmd/go/internal/modfetch/proxy.go b/src/cmd/go/internal/modfetch/proxy.go
index 60ed2a3796..3d4d2becf4 100644
--- a/src/cmd/go/internal/modfetch/proxy.go
+++ b/src/cmd/go/internal/modfetch/proxy.go
@@ -87,6 +87,14 @@ cached module versions with GOPROXY=https://example.com/proxy.
var proxyURL = os.Getenv("GOPROXY")
+// SetProxy sets the proxy to use when fetching modules.
+// It accepts the same syntax as the GOPROXY environment variable,
+// which also provides its default configuration.
+// SetProxy must not be called after the first module fetch has begun.
+func SetProxy(url string) {
+ proxyURL = url
+}
+
func lookupProxy(path string) (Repo, error) {
if strings.Contains(proxyURL, ",") {
return nil, fmt.Errorf("invalid $GOPROXY setting: cannot have comma")
diff --git a/src/cmd/go/internal/modload/query_test.go b/src/cmd/go/internal/modload/query_test.go
index 9b07383217..d6e52c6b74 100644
--- a/src/cmd/go/internal/modload/query_test.go
+++ b/src/cmd/go/internal/modload/query_test.go
@@ -14,6 +14,7 @@ import (
"strings"
"testing"
+ "cmd/go/internal/cfg"
"cmd/go/internal/modfetch"
"cmd/go/internal/modfetch/codehost"
"cmd/go/internal/module"
@@ -24,11 +25,16 @@ func TestMain(m *testing.M) {
}
func testMain(m *testing.M) int {
+ modfetch.SetProxy("direct")
+
dir, err := ioutil.TempDir("", "modload-test-")
if err != nil {
log.Fatal(err)
}
defer os.RemoveAll(dir)
+
+ os.Setenv("GOPATH", dir)
+ cfg.BuildContext.GOPATH = dir
modfetch.PkgMod = filepath.Join(dir, "pkg/mod")
codehost.WorkRoot = filepath.Join(dir, "codework")
return m.Run()
diff --git a/src/cmd/vendor/golang.org/x/arch/LICENSE b/src/cmd/vendor/golang.org/x/arch/LICENSE
new file mode 100644
index 0000000000..d29b37261f
--- /dev/null
+++ b/src/cmd/vendor/golang.org/x/arch/LICENSE
@@ -0,0 +1,27 @@
+Copyright (c) 2015 The Go Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/src/cmd/vendor/golang.org/x/arch/PATENTS b/src/cmd/vendor/golang.org/x/arch/PATENTS
new file mode 100644
index 0000000000..733099041f
--- /dev/null
+++ b/src/cmd/vendor/golang.org/x/arch/PATENTS
@@ -0,0 +1,22 @@
+Additional IP Rights Grant (Patents)
+
+"This implementation" means the copyrightable works distributed by
+Google as part of the Go project.
+
+Google hereby grants to You a perpetual, worldwide, non-exclusive,
+no-charge, royalty-free, irrevocable (except as stated in this section)
+patent license to make, have made, use, offer to sell, sell, import,
+transfer and otherwise run, modify and propagate the contents of this
+implementation of Go, where such license applies only to those patent
+claims, both currently owned or controlled by Google and acquired in
+the future, licensable by Google that are necessarily infringed by this
+implementation of Go. This grant does not include claims that would be
+infringed only as a consequence of further modification of this
+implementation. If you or your agent or exclusive licensee institute or
+order or agree to the institution of patent litigation against any
+entity (including a cross-claim or counterclaim in a lawsuit) alleging
+that this implementation of Go or any code incorporated within this
+implementation of Go constitutes direct or contributory patent
+infringement, or inducement of patent infringement, then any patent
+rights granted to you under this License for this implementation of Go
+shall terminate as of the date such litigation is filed.
diff --git a/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/objdump_test.go b/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/objdump_test.go
index 261c7cae5f..3baf8a19dd 100644
--- a/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/objdump_test.go
+++ b/src/cmd/vendor/golang.org/x/arch/arm64/arm64asm/objdump_test.go
@@ -103,6 +103,13 @@ func allowedMismatchObjdump(text string, inst *Inst, dec ExtInst) bool {
return true
}
}
+ // New objdump supports some newer mnemonics than this package. This
+ // package should be updated to support the new mnemonics and the sense
+ // of this reversed to continue passing with older objdumps but that
+ // requires internal ARM tooling.
+ if newForm, ok := newMnemonics[text]; ok && newForm == dec.text {
+ return true
+ }
// GNU objdump misses spaces between operands for some instructions (e.g., "ld1 {v10.2s, v11.2s}, [x23],#16")
if strings.Replace(text, " ", "", -1) == strings.Replace(dec.text, " ", "", -1) {
return true
@@ -148,3 +155,8 @@ var oldObjdumpMismatch = map[string]string{
"strh": "sturh",
"prfm": "prfum",
}
+
+var newMnemonics = map[string]string{
+ "dsb #0x00": "ssbb",
+ "dsb #0x04": "pssbb",
+}
diff --git a/src/cmd/vendor/vendor.json b/src/cmd/vendor/vendor.json
index ef7255acd1..e59e8a21cb 100644
--- a/src/cmd/vendor/vendor.json
+++ b/src/cmd/vendor/vendor.json
@@ -114,9 +114,10 @@
"revisionTime": "2018-04-06T10:28:20Z"
},
{
+ "checksumSHA1": "wWnXz4wz8/jDvPd+xXU22nBuqYw=",
"path": "golang.org/x/arch/arm64/arm64asm",
- "revision": "9111c30535f37e70dcaf5956d34b03233f90f3b6",
- "revisionTime": "2018-03-13T04:07:09Z"
+ "revision": "b19384d3c130858bb31a343ea8fce26be71b5998",
+ "revisionTime": "2018-09-20T07:20:31Z"
},
{
"path": "golang.org/x/arch/ppc64/ppc64asm",
@@ -381,5 +382,5 @@
"revisionTime": "2018-11-05T19:48:08Z"
}
],
- "rootPath": "/cmd"
+ "rootPath": "cmd"
}
diff --git a/src/net/dnsclient_unix.go b/src/net/dnsclient_unix.go
index 86ce92dc43..7f335eba9f 100644
--- a/src/net/dnsclient_unix.go
+++ b/src/net/dnsclient_unix.go
@@ -738,6 +738,14 @@ func (r *Resolver) goLookupPTR(ctx context.Context, addr string) ([]string, erro
}
}
if h.Type != dnsmessage.TypePTR {
+ err := p.SkipAnswer()
+ if err != nil {
+ return nil, &DNSError{
+ Err: "cannot marshal DNS message",
+ Name: addr,
+ Server: server,
+ }
+ }
continue
}
ptr, err := p.PTRResource()
diff --git a/src/net/dnsclient_unix_test.go b/src/net/dnsclient_unix_test.go
index be04a44c14..f5e7992f30 100644
--- a/src/net/dnsclient_unix_test.go
+++ b/src/net/dnsclient_unix_test.go
@@ -1621,3 +1621,50 @@ func TestTXTRecordTwoStrings(t *testing.T) {
t.Errorf("txt[1], got %q, want %q", txt[1], want)
}
}
+
+// Issue 34660: PTR response with non-PTR answers should ignore non-PTR
+func TestPTRandNonPTR(t *testing.T) {
+ fake := fakeDNSServer{
+ rh: func(n, _ string, q dnsmessage.Message, _ time.Time) (dnsmessage.Message, error) {
+ r := dnsmessage.Message{
+ Header: dnsmessage.Header{
+ ID: q.Header.ID,
+ Response: true,
+ RCode: dnsmessage.RCodeSuccess,
+ },
+ Questions: q.Questions,
+ Answers: []dnsmessage.Resource{
+ {
+ Header: dnsmessage.ResourceHeader{
+ Name: q.Questions[0].Name,
+ Type: dnsmessage.TypePTR,
+ Class: dnsmessage.ClassINET,
+ },
+ Body: &dnsmessage.PTRResource{
+ PTR: mustNewName("golang.org."),
+ },
+ },
+ {
+ Header: dnsmessage.ResourceHeader{
+ Name: q.Questions[0].Name,
+ Type: dnsmessage.TypeTXT,
+ Class: dnsmessage.ClassINET,
+ },
+ Body: &dnsmessage.TXTResource{
+ TXT: []string{"PTR 8 6 60 ..."}, // fake RRSIG
+ },
+ },
+ },
+ }
+ return r, nil
+ },
+ }
+ r := Resolver{PreferGo: true, Dial: fake.DialContext}
+ names, err := r.lookupAddr(context.Background(), "192.0.2.123")
+ if err != nil {
+ t.Fatalf("LookupAddr: %v", err)
+ }
+ if want := []string{"golang.org."}; !reflect.DeepEqual(names, want) {
+ t.Errorf("names = %q; want %q", names, want)
+ }
+}
diff --git a/src/runtime/runtime-gdb.py b/src/runtime/runtime-gdb.py
index 48960b7f61..72645d289e 100644
--- a/src/runtime/runtime-gdb.py
+++ b/src/runtime/runtime-gdb.py
@@ -540,8 +540,8 @@ class GoroutineCmd(gdb.Command):
# In GDB, assignments to sp must be done from the
# top-most frame, so select frame 0 first.
gdb.execute('select-frame 0')
- gdb.parse_and_eval('$sp = $save_sp')
gdb.parse_and_eval('$pc = $save_pc')
+ gdb.parse_and_eval('$sp = $save_sp')
save_frame.select()
diff --git a/src/syscall/syscall_aix.go b/src/syscall/syscall_aix.go
index 6512761c33..8b5d6523a9 100644
--- a/src/syscall/syscall_aix.go
+++ b/src/syscall/syscall_aix.go
@@ -217,8 +217,11 @@ func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int,
//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error)
//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error)
//sys Shutdown(s int, how int) (err error)
-//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error)
-//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error)
+
+// In order to use msghdr structure with Control, Controllen in golang.org/x/net,
+// nrecvmsg and nsendmsg must be used.
+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) = nrecvmsg
+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) = nsendmsg
func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
if sa.Port < 0 || sa.Port > 0xFFFF {
@@ -434,6 +437,18 @@ func anyToSockaddr(rsa *RawSockaddrAny) (Sockaddr, error) {
return nil, EAFNOSUPPORT
}
+type SockaddrDatalink struct {
+ Len uint8
+ Family uint8
+ Index uint16
+ Type uint8
+ Nlen uint8
+ Alen uint8
+ Slen uint8
+ Data [120]uint8
+ raw RawSockaddrDatalink
+}
+
/*
* Wait
*/
diff --git a/src/syscall/types_aix.go b/src/syscall/types_aix.go
index b961bdb197..abb5545a1d 100644
--- a/src/syscall/types_aix.go
+++ b/src/syscall/types_aix.go
@@ -23,6 +23,7 @@ package syscall
#include <sys/statfs.h>
#include <net/if.h>
+#include <net/if_dl.h>
#include <netinet/in.h>
#include <netinet/icmp6.h>
@@ -112,6 +113,8 @@ type RawSockaddrInet6 C.struct_sockaddr_in6
type RawSockaddrUnix C.struct_sockaddr_un
+type RawSockaddrDatalink C.struct_sockaddr_dl
+
type RawSockaddr C.struct_sockaddr
type RawSockaddrAny C.struct_sockaddr_any
@@ -133,16 +136,17 @@ type Linger C.struct_linger
type Msghdr C.struct_msghdr
const (
- SizeofSockaddrInet4 = C.sizeof_struct_sockaddr_in
- SizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
- SizeofSockaddrAny = C.sizeof_struct_sockaddr_any
- SizeofSockaddrUnix = C.sizeof_struct_sockaddr_un
- SizeofLinger = C.sizeof_struct_linger
- SizeofIPMreq = C.sizeof_struct_ip_mreq
- SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
- SizeofMsghdr = C.sizeof_struct_msghdr
- SizeofCmsghdr = C.sizeof_struct_cmsghdr
- SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
+ SizeofSockaddrInet4 = C.sizeof_struct_sockaddr_in
+ SizeofSockaddrInet6 = C.sizeof_struct_sockaddr_in6
+ SizeofSockaddrAny = C.sizeof_struct_sockaddr_any
+ SizeofSockaddrUnix = C.sizeof_struct_sockaddr_un
+ SizeofSockaddrDatalink = C.sizeof_struct_sockaddr_dl
+ SizeofLinger = C.sizeof_struct_linger
+ SizeofIPMreq = C.sizeof_struct_ip_mreq
+ SizeofIPv6Mreq = C.sizeof_struct_ipv6_mreq
+ SizeofMsghdr = C.sizeof_struct_msghdr
+ SizeofCmsghdr = C.sizeof_struct_cmsghdr
+ SizeofICMPv6Filter = C.sizeof_struct_icmp6_filter
)
// Ptrace requests
diff --git a/src/syscall/zsyscall_aix_ppc64.go b/src/syscall/zsyscall_aix_ppc64.go
index fe27dcadf2..3d9939b141 100644
--- a/src/syscall/zsyscall_aix_ppc64.go
+++ b/src/syscall/zsyscall_aix_ppc64.go
@@ -32,8 +32,8 @@ import "unsafe"
//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.a/shr_64.o"
//go:cgo_import_dynamic libc_sendto sendto "libc.a/shr_64.o"
//go:cgo_import_dynamic libc_Shutdown shutdown "libc.a/shr_64.o"
-//go:cgo_import_dynamic libc_recvmsg recvmsg "libc.a/shr_64.o"
-//go:cgo_import_dynamic libc_sendmsg sendmsg "libc.a/shr_64.o"
+//go:cgo_import_dynamic libc_nrecvmsg nrecvmsg "libc.a/shr_64.o"
+//go:cgo_import_dynamic libc_nsendmsg nsendmsg "libc.a/shr_64.o"
//go:cgo_import_dynamic libc_accept accept "libc.a/shr_64.o"
//go:cgo_import_dynamic libc_Openat openat "libc.a/shr_64.o"
//go:cgo_import_dynamic libc_ptrace64 ptrace64 "libc.a/shr_64.o"
@@ -120,8 +120,8 @@ import "unsafe"
//go:linkname libc_recvfrom libc_recvfrom
//go:linkname libc_sendto libc_sendto
//go:linkname libc_Shutdown libc_Shutdown
-//go:linkname libc_recvmsg libc_recvmsg
-//go:linkname libc_sendmsg libc_sendmsg
+//go:linkname libc_nrecvmsg libc_nrecvmsg
+//go:linkname libc_nsendmsg libc_nsendmsg
//go:linkname libc_accept libc_accept
//go:linkname libc_Openat libc_Openat
//go:linkname libc_ptrace64 libc_ptrace64
@@ -211,8 +211,8 @@ var (
libc_recvfrom,
libc_sendto,
libc_Shutdown,
- libc_recvmsg,
- libc_sendmsg,
+ libc_nrecvmsg,
+ libc_nsendmsg,
libc_accept,
libc_Openat,
libc_ptrace64,
@@ -573,7 +573,7 @@ func Shutdown(s int, how int) (err error) {
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- r0, _, e1 := syscall6(uintptr(unsafe.Pointer(&libc_recvmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
+ r0, _, e1 := syscall6(uintptr(unsafe.Pointer(&libc_nrecvmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
n = int(r0)
if e1 != 0 {
err = errnoErr(e1)
@@ -584,7 +584,7 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) {
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) {
- r0, _, e1 := syscall6(uintptr(unsafe.Pointer(&libc_sendmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
+ r0, _, e1 := syscall6(uintptr(unsafe.Pointer(&libc_nsendmsg)), 3, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags), 0, 0, 0)
n = int(r0)
if e1 != 0 {
err = errnoErr(e1)
diff --git a/src/syscall/ztypes_aix_ppc64.go b/src/syscall/ztypes_aix_ppc64.go
index 314266ea79..e226907d23 100644
--- a/src/syscall/ztypes_aix_ppc64.go
+++ b/src/syscall/ztypes_aix_ppc64.go
@@ -168,6 +168,17 @@ type RawSockaddrUnix struct {
Path [1023]uint8
}
+type RawSockaddrDatalink struct {
+ Len uint8
+ Family uint8
+ Index uint16
+ Type uint8
+ Nlen uint8
+ Alen uint8
+ Slen uint8
+ Data [120]uint8
+}
+
type RawSockaddr struct {
Len uint8
Family uint8
@@ -224,16 +235,17 @@ type Msghdr struct {
}
const (
- SizeofSockaddrInet4 = 0x10
- SizeofSockaddrInet6 = 0x1c
- SizeofSockaddrAny = 0x404
- SizeofSockaddrUnix = 0x401
- SizeofLinger = 0x8
- SizeofIPMreq = 0x8
- SizeofIPv6Mreq = 0x14
- SizeofMsghdr = 0x30
- SizeofCmsghdr = 0xc
- SizeofICMPv6Filter = 0x20
+ SizeofSockaddrInet4 = 0x10
+ SizeofSockaddrInet6 = 0x1c
+ SizeofSockaddrAny = 0x404
+ SizeofSockaddrUnix = 0x401
+ SizeofSockaddrDatalink = 0x80
+ SizeofLinger = 0x8
+ SizeofIPMreq = 0x8
+ SizeofIPv6Mreq = 0x14
+ SizeofMsghdr = 0x30
+ SizeofCmsghdr = 0xc
+ SizeofICMPv6Filter = 0x20
)
const (