summaryrefslogtreecommitdiff
path: root/exports
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2022-12-20 17:14:13 +0100
committerjwijenbergh <jeroenwijenbergh@protonmail.com>2022-12-21 18:28:52 +0100
commita8e71f7f20a1d5640d08ff637dc209206f536b8d (patch)
tree3e0d2643befe839aadc586293387f2cf32a54d0e /exports
parentb6c079587e035b073c32f52e537e253ae5a3f440 (diff)
Client + Exports: Forward tokens for /disconnect
Diffstat (limited to 'exports')
-rw-r--r--exports/exports.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/exports/exports.go b/exports/exports.go
index 904fbec..db353c9 100644
--- a/exports/exports.go
+++ b/exports/exports.go
@@ -415,13 +415,18 @@ func SetSearchServer(name *C.char) *C.error {
}
//export SetDisconnected
-func SetDisconnected(name *C.char, cleanup C.int) *C.error {
+func SetDisconnected(name *C.char, cleanup C.int, prevTokens C.token) *C.error {
nameStr := C.GoString(name)
state, stateErr := GetVPNState(nameStr)
if stateErr != nil {
return getError(stateErr)
}
- setDisconnectedErr := state.SetDisconnected(int(cleanup) == 1)
+ t := oauth.Token{
+ Access: C.GoString(prevTokens.access),
+ Refresh: C.GoString(prevTokens.refresh),
+ ExpiredTimestamp: time.Unix(int64(prevTokens.expired), 0),
+ }
+ setDisconnectedErr := state.SetDisconnected(int(cleanup) == 1, t)
return getError(setDisconnectedErr)
}