From 815742c221c61496f89a8601a073082247cdb9f0 Mon Sep 17 00:00:00 2001 From: albexk Date: Mon, 27 May 2024 13:15:05 +0300 Subject: [PATCH] Add error return from registering controllers --- controller_android.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/controller_android.go b/controller_android.go index c5f5b60..110ad89 100644 --- a/controller_android.go +++ b/controller_android.go @@ -3,25 +3,28 @@ package libXray import ( "syscall" + "github.com/amnezia-vpn/amnezia-libxray/nodep" xinternet "github.com/amnezia-vpn/amnezia-xray-core/transport/internet" ) // Give a callback before connection beginning. Useful for Android development. // It depends on xray:api:beta -func RegisterDialerController(controller DialerController) { - xinternet.RegisterDialerController(func(network, address string, conn syscall.RawConn) error { +func RegisterDialerController(controller DialerController) string { + err := xinternet.RegisterDialerController(func(network, address string, conn syscall.RawConn) error { return conn.Control(func(fd uintptr) { controller.ProtectFd(int(fd)) }) }) + return nodep.WrapError(err) } // Give a callback before listener beginning. Useful for Android development. // It depends on xray:api:beta -func RegisterListenerController(controller DialerController) { - xinternet.RegisterListenerController(func(network, address string, conn syscall.RawConn) error { +func RegisterListenerController(controller DialerController) string { + err := xinternet.RegisterListenerController(func(network, address string, conn syscall.RawConn) error { return conn.Control(func(fd uintptr) { controller.ProtectFd(int(fd)) }) }) + return nodep.WrapError(err) }