aboutsummaryrefslogtreecommitdiff
path: root/conn/boundif_android.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 /conn/boundif_android.go
parentd6de6f3ce6c24841d29b563d3283a0fd85e437ac (diff)
downloadwireguard-go-c403da6a39c876123c096113d08d0d3019b4a07e.tar.gz
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 'conn/boundif_android.go')
-rw-r--r--conn/boundif_android.go34
1 files changed, 34 insertions, 0 deletions
diff --git a/conn/boundif_android.go b/conn/boundif_android.go
new file mode 100644
index 0000000..3e10607
--- /dev/null
+++ b/conn/boundif_android.go
@@ -0,0 +1,34 @@
+/* SPDX-License-Identifier: MIT
+ *
+ * Copyright (C) 2017-2020 WireGuard LLC. All Rights Reserved.
+ */
+
+package conn
+
+func (bind *nativeBind) PeekLookAtSocketFd4() (fd int, err error) {
+ sysconn, err := bind.ipv4.SyscallConn()
+ if err != nil {
+ return -1, err
+ }
+ err = sysconn.Control(func(f uintptr) {
+ fd = int(f)
+ })
+ if err != nil {
+ return -1, err
+ }
+ return
+}
+
+func (bind *nativeBind) PeekLookAtSocketFd6() (fd int, err error) {
+ sysconn, err := bind.ipv6.SyscallConn()
+ if err != nil {
+ return -1, err
+ }
+ err = sysconn.Control(func(f uintptr) {
+ fd = int(f)
+ })
+ if err != nil {
+ return -1, err
+ }
+ return
+}