From 604e7f91869fea4c0ada322f8f6a219b22a50a54 Mon Sep 17 00:00:00 2001 From: ian Date: Thu, 26 Apr 2012 04:25:56 +0000 Subject: [PATCH] mksysinfo, net: Always define syscall.SO_REUSEPORT. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186857 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgo/go/net/sockopt_bsd.go | 8 +++++--- libgo/mksysinfo.sh | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/libgo/go/net/sockopt_bsd.go b/libgo/go/net/sockopt_bsd.go index fff65f3..af88814 100644 --- a/libgo/go/net/sockopt_bsd.go +++ b/libgo/go/net/sockopt_bsd.go @@ -53,9 +53,11 @@ func setDefaultMulticastSockopts(s int) error { // This option is supported only in descendants of 4.4BSD, // to make an effective multicast application that requires // quick draw possible. - err = syscall.SetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_REUSEPORT, 1) - if err != nil { - return os.NewSyscallError("setsockopt", err) + if syscall.SO_REUSEPORT != 0 { + err = syscall.SetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_REUSEPORT, 1) + if err != nil { + return os.NewSyscallError("setsockopt", err) + } } return nil } diff --git a/libgo/mksysinfo.sh b/libgo/mksysinfo.sh index 4f51533..db61a73 100755 --- a/libgo/mksysinfo.sh +++ b/libgo/mksysinfo.sh @@ -264,7 +264,7 @@ grep '^const _SHUT_' gen-sysinfo.go | sed -e 's/^\(const \)_\(SHUT[^= ]*\)\(.*\)$/\1\2 = _\2/' >> ${OUT} # The net package requires some const definitions. -for m in IP_PKTINFO IPV6_V6ONLY IPPROTO_IPV6 IPV6_JOIN_GROUP IPV6_LEAVE_GROUP IPV6_TCLASS; do +for m in IP_PKTINFO IPV6_V6ONLY IPPROTO_IPV6 IPV6_JOIN_GROUP IPV6_LEAVE_GROUP IPV6_TCLASS SO_REUSEPORT; do if ! grep "^const $m " ${OUT} >/dev/null 2>&1; then echo "const $m = 0" >> ${OUT} fi -- 2.7.4