mirror of
https://github.com/fosrl/newt.git
synced 2026-03-07 03:06:42 +00:00
Starting to work on option
This commit is contained in:
41
linux.go
41
linux.go
@@ -11,7 +11,6 @@ import (
|
|||||||
"github.com/fosrl/newt/websocket"
|
"github.com/fosrl/newt/websocket"
|
||||||
"golang.zx2c4.com/wireguard/tun/netstack"
|
"golang.zx2c4.com/wireguard/tun/netstack"
|
||||||
|
|
||||||
// "github.com/fosrl/newt/wg"
|
|
||||||
"github.com/fosrl/newt/wgnetstack"
|
"github.com/fosrl/newt/wgnetstack"
|
||||||
"github.com/fosrl/newt/wgtester"
|
"github.com/fosrl/newt/wgtester"
|
||||||
)
|
)
|
||||||
@@ -29,27 +28,31 @@ func setupClients(client *websocket.Client) {
|
|||||||
|
|
||||||
host = strings.TrimSuffix(host, "/")
|
host = strings.TrimSuffix(host, "/")
|
||||||
|
|
||||||
// Create WireGuard service
|
if useNativeInterface {
|
||||||
wgService, err = wgnetstack.NewWireGuardService(interfaceName, mtuInt, generateAndSaveKeyTo, host, id, client, "8.8.8.8")
|
|
||||||
if err != nil {
|
|
||||||
logger.Fatal("Failed to create WireGuard service: %v", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// // Set up callback to restart wgtester with netstack when WireGuard is ready
|
} else {
|
||||||
wgService.SetOnNetstackReady(func(tnet *netstack.Net) {
|
// Create WireGuard service
|
||||||
|
wgService, err = wgnetstack.NewWireGuardService(interfaceName, mtuInt, generateAndSaveKeyTo, host, id, client, "8.8.8.8")
|
||||||
wgTesterServer = wgtester.NewServerWithNetstack("0.0.0.0", wgService.Port, id, tnet) // TODO: maybe make this the same ip of the wg server?
|
|
||||||
err := wgTesterServer.Start()
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Error("Failed to start WireGuard tester server: %v", err)
|
logger.Fatal("Failed to create WireGuard service: %v", err)
|
||||||
}
|
}
|
||||||
// logger.Info("WireGuard netstack is ready, restarting wgtester with netstack")
|
|
||||||
// if err := wgTesterServer.RestartWithNetstack(tnet); err != nil {
|
// // Set up callback to restart wgtester with netstack when WireGuard is ready
|
||||||
// logger.Error("Failed to restart wgtester with netstack: %v", err)
|
wgService.SetOnNetstackReady(func(tnet *netstack.Net) {
|
||||||
// } else {
|
|
||||||
// logger.Info("WGTester successfully restarted with netstack")
|
wgTesterServer = wgtester.NewServerWithNetstack("0.0.0.0", wgService.Port, id, tnet) // TODO: maybe make this the same ip of the wg server?
|
||||||
// }
|
err := wgTesterServer.Start()
|
||||||
})
|
if err != nil {
|
||||||
|
logger.Error("Failed to start WireGuard tester server: %v", err)
|
||||||
|
}
|
||||||
|
// logger.Info("WireGuard netstack is ready, restarting wgtester with netstack")
|
||||||
|
// if err := wgTesterServer.RestartWithNetstack(tnet); err != nil {
|
||||||
|
// logger.Error("Failed to restart wgtester with netstack: %v", err)
|
||||||
|
// } else {
|
||||||
|
// logger.Info("WGTester successfully restarted with netstack")
|
||||||
|
// }
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
client.OnTokenUpdate(func(token string) {
|
client.OnTokenUpdate(func(token string) {
|
||||||
wgService.SetToken(token)
|
wgService.SetToken(token)
|
||||||
|
|||||||
Reference in New Issue
Block a user