ipv4: use of internal/netreflect package
Change-Id: Idffb7eace4d7913e7dfad2715d10dcd1762f83e4
Reviewed-on: https://go-review.googlesource.com/27733
Run-TryBot: Mikio Hara <mikioh.mikioh@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
diff --git a/ipv4/genericopt_posix.go b/ipv4/genericopt_posix.go
index fefa0be..53bc79f 100644
--- a/ipv4/genericopt_posix.go
+++ b/ipv4/genericopt_posix.go
@@ -6,18 +6,22 @@
package ipv4
-import "syscall"
+import (
+ "syscall"
+
+ "golang.org/x/net/internal/netreflect"
+)
// TOS returns the type-of-service field value for outgoing packets.
func (c *genericOpt) TOS() (int, error) {
if !c.ok() {
return 0, syscall.EINVAL
}
- fd, err := c.sysfd()
+ s, err := netreflect.SocketOf(c.Conn)
if err != nil {
return 0, err
}
- return getInt(fd, &sockOpts[ssoTOS])
+ return getInt(s, &sockOpts[ssoTOS])
}
// SetTOS sets the type-of-service field value for future outgoing
@@ -26,11 +30,11 @@
if !c.ok() {
return syscall.EINVAL
}
- fd, err := c.sysfd()
+ s, err := netreflect.SocketOf(c.Conn)
if err != nil {
return err
}
- return setInt(fd, &sockOpts[ssoTOS], tos)
+ return setInt(s, &sockOpts[ssoTOS], tos)
}
// TTL returns the time-to-live field value for outgoing packets.
@@ -38,11 +42,11 @@
if !c.ok() {
return 0, syscall.EINVAL
}
- fd, err := c.sysfd()
+ s, err := netreflect.SocketOf(c.Conn)
if err != nil {
return 0, err
}
- return getInt(fd, &sockOpts[ssoTTL])
+ return getInt(s, &sockOpts[ssoTTL])
}
// SetTTL sets the time-to-live field value for future outgoing
@@ -51,9 +55,9 @@
if !c.ok() {
return syscall.EINVAL
}
- fd, err := c.sysfd()
+ s, err := netreflect.SocketOf(c.Conn)
if err != nil {
return err
}
- return setInt(fd, &sockOpts[ssoTTL], ttl)
+ return setInt(s, &sockOpts[ssoTTL], ttl)
}