Commit ca4314d3 authored by Clément Chigot's avatar Clément Chigot Committed by Ian Lance Taylor

net: allow build on aix/ppc64 with cgo

This commit adds C support for net package for aix/ppc64.

Change-Id: I704710991fc013c6ec3511671def6791df4854f1
Reviewed-on: https://go-review.googlesource.com/c/go/+/164038
Run-TryBot: Mikio Hara <mikioh.public.networking@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: default avatarMikio Hara <mikioh.public.networking@gmail.com>
parent 0cd74d1f
// Copyright 2019 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.
// +build cgo,!netgo
package net
/*
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
*/
import "C"
import "unsafe"
const cgoAddrInfoFlags = C.AI_CANONNAME
func cgoNameinfoPTR(b []byte, sa *C.struct_sockaddr, salen C.socklen_t) (int, error) {
gerrno, err := C.getnameinfo(sa, C.size_t(salen), (*C.char)(unsafe.Pointer(&b[0])), C.size_t(len(b)), nil, 0, C.NI_NAMEREQD)
return int(gerrno), err
}
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
// +build cgo,!netgo // +build cgo,!netgo
// +build darwin dragonfly freebsd netbsd openbsd // +build aix darwin dragonfly freebsd netbsd openbsd
package net package net
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
// +build cgo,!netgo // +build cgo,!netgo
// +build darwin dragonfly freebsd linux netbsd openbsd solaris // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
package net package net
...@@ -14,6 +14,11 @@ package net ...@@ -14,6 +14,11 @@ package net
#include <netdb.h> #include <netdb.h>
#include <unistd.h> #include <unistd.h>
#include <string.h> #include <string.h>
// If nothing else defined EAI_OVERFLOW, make sure it has a value.
#ifndef EAI_OVERFLOW
#define EAI_OVERFLOW -12
#endif
*/ */
import "C" import "C"
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
// license that can be found in the LICENSE file. // license that can be found in the LICENSE file.
// +build cgo,!netgo // +build cgo,!netgo
// +build darwin dragonfly freebsd linux netbsd openbsd solaris // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
package net package net
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment