Bug#574371: Patch for building on squeeze
The patch below is required to make the package build on squeeze.
It's still not policy-conforming because there are tests which require
access to the network, but at least it builds now when the network is
available.
By the way, what's the story behind the statically-linked binaries in
/usr/lib/golang/bin?
# HG changeset patch
# User fw@deneb.enyo.de
# Date 1282471319 -7200
# Node ID d68478aa6899b45b119c044ed8f819fe5cb8bd30
# Parent c6b2f56925705655af802e6093072b63bbf86486
Allow IPv4 on IPv6 sockets
diff -r c6b2f5692570 -r d68478aa6899 src/pkg/net/sock.go
--- a/src/pkg/net/sock.go Sun Jul 04 21:37:27 2010 -0500
+++ b/src/pkg/net/sock.go Sun Aug 22 12:01:59 2010 +0200
@@ -38,6 +38,16 @@
// Allow broadcast.
syscall.SetsockoptInt(s, syscall.SOL_SOCKET, syscall.SO_BROADCAST, 1)
+ // Allow IPv4 on IPv6 sockets.
+ if f == syscall.AF_INET6 {
+ e = syscall.SetsockoptInt(s, syscall.IPPROTO_IPV6,
+ syscall.IPV6_V6ONLY, 0)
+ if e != 0 {
+ syscall.Close(s)
+ return nil, os.Errno(e)
+ }
+ }
+
if la != nil {
e = syscall.Bind(s, la)
if e != 0 {
Reply to: