Revert "ipv4: work around FreeBSD 12 kernel running COMPAT_FREEBSD32"
This reverts commit 7a92b5139a68fa49faeb322e1929c49a8fb0f023.
Reason for revert: not completely functional on FreeBSD 12 or above and
broke FreeBSD 11 or below.
Change-Id: Icd43d9ecebc0059a577751802e589a6e5f0cd363
Reviewed-on: https://go-review.googlesource.com/c/net/+/168078
Run-TryBot: Mikio Hara <mikioh.public.networking@gmail.com>
Reviewed-by: Mikio Hara <mikioh.public.networking@gmail.com>
diff --git a/ipv4/batch.go b/ipv4/batch.go
index 6ea1a6d..fbe0cfd 100644
--- a/ipv4/batch.go
+++ b/ipv4/batch.go
@@ -89,12 +89,6 @@
n = 0
err = &net.OpError{Op: "read", Net: c.PacketConn.LocalAddr().Network(), Source: c.PacketConn.LocalAddr(), Err: err}
}
- if compatFreeBSD32 {
- l := len(ms[0].OOB)
- if 0 < ms[0].NN && ms[0].NN < l {
- ms[0].NN = l
- }
- }
return n, err
}
}
@@ -158,12 +152,6 @@
n = 0
err = &net.OpError{Op: "read", Net: c.IPConn.LocalAddr().Network(), Source: c.IPConn.LocalAddr(), Err: err}
}
- if compatFreeBSD32 {
- l := len(ms[0].OOB)
- if 0 < ms[0].NN && ms[0].NN < l {
- ms[0].NN = l
- }
- }
return n, err
}
}
diff --git a/ipv4/helper.go b/ipv4/helper.go
index 198ec3b..d054952 100644
--- a/ipv4/helper.go
+++ b/ipv4/helper.go
@@ -23,8 +23,7 @@
errNotImplemented = errors.New("not implemented on " + runtime.GOOS + "/" + runtime.GOARCH)
// See http://www.freebsd.org/doc/en/books/porters-handbook/freebsd-versions.html.
- freebsdVersion uint32
- compatFreeBSD32 bool // 386 emulation on amd64
+ freebsdVersion uint32
)
func boolint(b bool) int {
diff --git a/ipv4/packet.go b/ipv4/packet.go
index 7c15307..30e0951 100644
--- a/ipv4/packet.go
+++ b/ipv4/packet.go
@@ -46,12 +46,6 @@
return nil, nil, nil, &net.OpError{Op: "read", Net: c.IPConn.LocalAddr().Network(), Source: c.IPConn.LocalAddr(), Err: err}
}
if m.NN > 0 {
- if compatFreeBSD32 {
- l := len(m.OOB)
- if m.NN < l {
- m.NN = l
- }
- }
cm = new(ControlMessage)
if err := cm.Parse(m.OOB[:m.NN]); err != nil {
return nil, nil, nil, &net.OpError{Op: "read", Net: c.IPConn.LocalAddr().Network(), Source: c.IPConn.LocalAddr(), Err: err}
diff --git a/ipv4/payload_cmsg.go b/ipv4/payload_cmsg.go
index cbceda1..e8b21c5 100644
--- a/ipv4/payload_cmsg.go
+++ b/ipv4/payload_cmsg.go
@@ -49,12 +49,6 @@
return 0, nil, nil, &net.OpError{Op: "read", Net: c.PacketConn.LocalAddr().Network(), Source: c.PacketConn.LocalAddr(), Err: errInvalidConnType}
}
if m.NN > 0 {
- if compatFreeBSD32 {
- l := len(m.OOB)
- if m.NN < l {
- m.NN = l
- }
- }
cm = new(ControlMessage)
if err := cm.Parse(m.OOB[:m.NN]); err != nil {
return 0, nil, nil, &net.OpError{Op: "read", Net: c.PacketConn.LocalAddr().Network(), Source: c.PacketConn.LocalAddr(), Err: err}
diff --git a/ipv4/sys_ssmreq.go b/ipv4/sys_ssmreq.go
index eeced7f..95eea2b 100644
--- a/ipv4/sys_ssmreq.go
+++ b/ipv4/sys_ssmreq.go
@@ -13,6 +13,8 @@
"golang.org/x/net/internal/socket"
)
+var compatFreeBSD32 bool // 386 emulation on amd64
+
func (so *sockOpt) setGroupReq(c *socket.Conn, ifi *net.Interface, grp net.IP) error {
var gr groupReq
if ifi != nil {