mirror of https://github.com/golang/go.git
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: Mikio Hara <mikioh.public.networking@gmail.com>
This commit is contained in:
parent
0cd74d1f11
commit
ca4314d39e
|
|
@ -0,0 +1,24 @@
|
|||
// 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 @@
|
|||
// license that can be found in the LICENSE file.
|
||||
|
||||
// +build cgo,!netgo
|
||||
// +build darwin dragonfly freebsd netbsd openbsd
|
||||
// +build aix darwin dragonfly freebsd netbsd openbsd
|
||||
|
||||
package net
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
// license that can be found in the LICENSE file.
|
||||
|
||||
// +build cgo,!netgo
|
||||
// +build darwin dragonfly freebsd linux netbsd openbsd solaris
|
||||
// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
|
||||
|
||||
package net
|
||||
|
||||
|
|
@ -14,6 +14,11 @@ package net
|
|||
#include <netdb.h>
|
||||
#include <unistd.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"
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
// license that can be found in the LICENSE file.
|
||||
|
||||
// +build cgo,!netgo
|
||||
// +build darwin dragonfly freebsd linux netbsd openbsd solaris
|
||||
// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
|
||||
|
||||
package net
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue