summaryrefslogtreecommitdiffhomepage
path: root/windows
diff options
context:
space:
mode:
authorDavid Lönnhager <david.l@mullvad.net>2021-11-17 13:41:38 +0100
committerDavid Lönnhager <david.l@mullvad.net>2021-12-07 14:39:51 +0100
commitea2ade1e2a7981d2e72f8149c9033982e4d53fcc (patch)
tree8fa0e152dba723e7fb8f12c3de1de014091fb112 /windows
parentf9f31a08c8b7061dbee96c850892a545ff02d43c (diff)
downloadmullvadvpn-ea2ade1e2a7981d2e72f8149c9033982e4d53fcc.tar.xz
mullvadvpn-ea2ade1e2a7981d2e72f8149c9033982e4d53fcc.zip
Update WireGuardNT cleanup in the uninstaller
Caveat: Since the pool is gone, the driver is removed unconditionally
Diffstat (limited to 'windows')
-rw-r--r--windows/driverlogic/src/driverlogic.cpp16
-rw-r--r--windows/driverlogic/src/wireguard.h4
2 files changed, 6 insertions, 14 deletions
diff --git a/windows/driverlogic/src/driverlogic.cpp b/windows/driverlogic/src/driverlogic.cpp
index 3cb1739e21..aba746d3e3 100644
--- a/windows/driverlogic/src/driverlogic.cpp
+++ b/windows/driverlogic/src/driverlogic.cpp
@@ -283,24 +283,16 @@ ReturnCode CommandWireGuardNtCleanup(const std::vector<std::wstring> &args)
{
ArgumentContext argsContext(args);
- argsContext.ensureExactArgumentCount(1);
-
- const auto poolName = argsContext.next();
+ argsContext.ensureExactArgumentCount(0);
WireGuardNtDll wgNt;
- BOOL rebootRequired;
-
- if (FALSE == wgNt.deletePoolDriver(poolName.c_str(), &rebootRequired))
+ if (FALSE == wgNt.deleteDriver())
{
- throw std::runtime_error("Failed to delete WireGuardNT pool");
+ throw std::runtime_error("Failed to delete WireGuardNT driver");
}
- std::wstringstream ss;
-
- ss << L"Successfully deleted WireGuardNT pool. Reboot required: " << rebootRequired;
-
- Log(ss.str());
+ Log(L"Successfully deleted WireGuardNT driver");
return ReturnCode::GENERAL_SUCCESS;
}
diff --git a/windows/driverlogic/src/wireguard.h b/windows/driverlogic/src/wireguard.h
index 5892b248f1..ae3f7ee3d1 100644
--- a/windows/driverlogic/src/wireguard.h
+++ b/windows/driverlogic/src/wireguard.h
@@ -20,7 +20,7 @@ public:
try
{
- deletePoolDriver = getProcAddressOrThrow<WIREGUARD_DELETE_POOL_DRIVER_FUNC*>("WireGuardDeletePoolDriver");
+ deleteDriver = getProcAddressOrThrow<WIREGUARD_DELETE_DRIVER_FUNC*>("WireGuardDeleteDriver");
}
catch (...)
{
@@ -37,7 +37,7 @@ public:
}
}
- WIREGUARD_DELETE_POOL_DRIVER_FUNC *deletePoolDriver;
+ WIREGUARD_DELETE_DRIVER_FUNC *deleteDriver;
private: