aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/embeddable-dll-service/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'embeddable-dll-service/main.go')
-rw-r--r--embeddable-dll-service/main.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/embeddable-dll-service/main.go b/embeddable-dll-service/main.go
index edf72fba..27fca4ee 100644
--- a/embeddable-dll-service/main.go
+++ b/embeddable-dll-service/main.go
@@ -9,6 +9,7 @@ import (
"C"
"golang.org/x/crypto/curve25519"
+ "golang.org/x/sys/windows"
"golang.zx2c4.com/wireguard/windows/conf"
"golang.zx2c4.com/wireguard/windows/tunnel"
@@ -20,7 +21,8 @@ import (
)
//export WireGuardTunnelService
-func WireGuardTunnelService(confFile string) bool {
+func WireGuardTunnelService(confFile16 *uint16) bool {
+ confFile := windows.UTF16ToString((*[(1 << 30) - 1]uint16)(unsafe.Pointer(confFile16))[:])
conf.PresetRootDirectory(filepath.Dir(confFile))
tunnel.UseFixedGUIDInsteadOfDeterministic = true
err := tunnel.Run(confFile)