diff options
author | kali kaneko (leap communications) <kali@leap.se> | 2020-06-17 19:40:24 +0200 |
---|---|---|
committer | kali kaneko (leap communications) <kali@leap.se> | 2020-06-26 12:13:43 +0200 |
commit | 9b8009cfaf6707d23a20494cd5467aed9c98513b (patch) | |
tree | 427ae34f6c32ba1dd4e182ac1def70c700b27e86 | |
parent | 2bcaa8e89c2e76c2d14cf9f7f029e17d46c91e0f (diff) |
[feat] cleanup temp dirs on quit
-rw-r--r-- | pkg/backend/actions.go | 21 | ||||
-rw-r--r-- | pkg/backend/api.go | 10 | ||||
-rw-r--r-- | pkg/backend/cleanup.go | 16 |
3 files changed, 41 insertions, 6 deletions
diff --git a/pkg/backend/actions.go b/pkg/backend/actions.go new file mode 100644 index 0000000..725a550 --- /dev/null +++ b/pkg/backend/actions.go @@ -0,0 +1,21 @@ +package backend + +import ( + "log" + "os" +) + +func startVPN() { + err := ctx.bm.StartVPN(ctx.Provider) + if err != nil { + log.Println(err) + os.Exit(1) + } +} + +func stopVPN() { + err := ctx.bm.StopVPN() + if err != nil { + log.Println(err) + } +} diff --git a/pkg/backend/api.go b/pkg/backend/api.go index 5cb0304..74220ed 100644 --- a/pkg/backend/api.go +++ b/pkg/backend/api.go @@ -1,4 +1,4 @@ -/* All the exported functions live here */ +/* All the exported functions should be added here */ package backend @@ -24,7 +24,7 @@ func SwitchOff() { } func Unblock() { - //TODO + //TODO - fmt.Println("unblock... [not implemented]") } @@ -34,6 +34,7 @@ func Quit() { ctx.cfg.SetUserStoppedVPN(true) stopVPN() } + cleanupTempDirs() } func DonateAccepted() { @@ -51,10 +52,7 @@ func SubscribeToEvent(event string, f unsafe.Pointer) { func InitializeBitmaskContext() { p := bitmask.GetConfiguredProvider() - initOnce.Do(func() { - initializeContext( - p.Provider, p.AppName) - }) + initOnce.Do(func() { initializeContext(p.Provider, p.AppName) }) go ctx.updateStatus() go func() { diff --git a/pkg/backend/cleanup.go b/pkg/backend/cleanup.go new file mode 100644 index 0000000..77c55e6 --- /dev/null +++ b/pkg/backend/cleanup.go @@ -0,0 +1,16 @@ +package backend + +import ( + "log" + "os" + "path" + "path/filepath" +) + +func cleanupTempDirs() { + dirs, _ := filepath.Glob(path.Join(os.TempDir(), "leap-*")) + for _, d := range dirs { + log.Println("removing temp dir:", d) + os.RemoveAll(d) + } +} |