diff options
| author | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-01-13 13:56:26 +0100 |
|---|---|---|
| committer | jwijenbergh <jeroenwijenbergh@protonmail.com> | 2023-01-13 13:57:29 +0100 |
| commit | b320b13b5d019c26928d2f00d8cba0febacb104b (patch) | |
| tree | 1622ea3088dc933944867c26b141227f6fa6e28f /exports/exports.go | |
| parent | 26abec61db10c3b86d9d168f093d4e5a75cc8783 (diff) | |
Client + Exports: Separate cleanup from disconnect
Diffstat (limited to 'exports/exports.go')
| -rw-r--r-- | exports/exports.go | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/exports/exports.go b/exports/exports.go index 89d18dc..5a17da0 100644 --- a/exports/exports.go +++ b/exports/exports.go @@ -414,8 +414,8 @@ func SetSearchServer(name *C.char) *C.error { return getError(setSearchErr) } -//export SetDisconnected -func SetDisconnected(name *C.char, cleanup C.int, prevTokens C.token) *C.error { +//export Cleanup +func Cleanup(name *C.char, prevTokens C.token) *C.error { nameStr := C.GoString(name) state, stateErr := GetVPNState(nameStr) if stateErr != nil { @@ -426,7 +426,18 @@ func SetDisconnected(name *C.char, cleanup C.int, prevTokens C.token) *C.error { Refresh: C.GoString(prevTokens.refresh), ExpiredTimestamp: time.Unix(int64(prevTokens.expired), 0), } - setDisconnectedErr := state.SetDisconnected(int(cleanup) == 1, t) + err := state.Cleanup(t) + return getError(err) +} + +//export SetDisconnected +func SetDisconnected(name *C.char) *C.error { + nameStr := C.GoString(name) + state, stateErr := GetVPNState(nameStr) + if stateErr != nil { + return getError(stateErr) + } + setDisconnectedErr := state.SetDisconnected() return getError(setDisconnectedErr) } |
