summaryrefslogtreecommitdiff
path: root/wrappers/python/eduvpncommon
diff options
context:
space:
mode:
Diffstat (limited to 'wrappers/python/eduvpncommon')
-rw-r--r--wrappers/python/eduvpncommon/__init__.py1
-rw-r--r--wrappers/python/eduvpncommon/main.py5
2 files changed, 6 insertions, 0 deletions
diff --git a/wrappers/python/eduvpncommon/__init__.py b/wrappers/python/eduvpncommon/__init__.py
index faa311d..4c1872f 100644
--- a/wrappers/python/eduvpncommon/__init__.py
+++ b/wrappers/python/eduvpncommon/__init__.py
@@ -34,6 +34,7 @@ VPNStateChange = CFUNCTYPE(None, c_char_p, c_char_p, c_char_p)
# Exposed functions
lib.Connect.argtypes, lib.Connect.restype = [c_char_p], DataError
+lib.Deregister.argtypes, lib.Deregister.restype = [], None
lib.Register.argtypes, lib.Register.restype = [c_char_p, c_char_p, VPNStateChange], None
lib.GetOrganizationsList.argtypes, lib.GetOrganizationsList.restype = [], DataError
lib.GetServersList.argtypes, lib.GetServersList.restype = [], DataError
diff --git a/wrappers/python/eduvpncommon/main.py b/wrappers/python/eduvpncommon/main.py
index 9e1f25e..16d7baa 100644
--- a/wrappers/python/eduvpncommon/main.py
+++ b/wrappers/python/eduvpncommon/main.py
@@ -19,6 +19,8 @@ def Register(name, config_directory, state_callback):
err_string = GetPtrString(ptr_err)
return err_string
+def Deregister():
+ return lib.Deregister()
def GetDiscoServers():
servers, serversErr = GetDataError(lib.GetServersList())
@@ -52,6 +54,9 @@ class EduVPN(object):
self.config_directory = config_directory
register_callback(self)
+ def __del__(self):
+ Deregister()
+
def register(self) -> bool:
return Register(self.name, self.config_directory, callback_function) == ""