aboutsummaryrefslogtreecommitdiffstats
path: root/device/bindsocketshim.go
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2020-06-07 01:41:08 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2020-06-07 01:48:28 -0600
commitc403da6a39c876123c096113d08d0d3019b4a07e (patch)
tree3ac29ee510e5eebb2510dfeb3e771259627c65ff /device/bindsocketshim.go
parentconn: remove useless comment (diff)
downloadwireguard-go-c403da6a39c876123c096113d08d0d3019b4a07e.tar.xz
wireguard-go-c403da6a39c876123c096113d08d0d3019b4a07e.zip
conn: unbreak boundif on android
Another thing never tested ever. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'device/bindsocketshim.go')
-rw-r--r--device/bindsocketshim.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/device/bindsocketshim.go b/device/bindsocketshim.go
index 896c7d2..68e1504 100644
--- a/device/bindsocketshim.go
+++ b/device/bindsocketshim.go
@@ -34,3 +34,27 @@ func (device *Device) BindSocketToInterface6(interfaceIndex uint32, blackhole bo
}
return nil
}
+
+// TODO(crawshaw): this method is a compatibility shim. Replace with direct use of conn.
+func (device *Device) PeekLookAtSocketFd4() (fd int, err error) {
+ if device.net.bind == nil {
+ return -1, errors.New("Bind is not yet initialized")
+ }
+
+ if iface, ok := device.net.bind.(conn.PeekLookAtSocketFd); ok {
+ return iface.PeekLookAtSocketFd4()
+ }
+ return -1, errors.New("unimplemented")
+}
+
+// TODO(crawshaw): this method is a compatibility shim. Replace with direct use of conn.
+func (device *Device) PeekLookAtSocketFd6() (fd int, err error) {
+ if device.net.bind == nil {
+ return -1, errors.New("Bind is not yet initialized")
+ }
+
+ if iface, ok := device.net.bind.(conn.PeekLookAtSocketFd); ok {
+ return iface.PeekLookAtSocketFd6()
+ }
+ return -1, errors.New("unimplemented")
+}