diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2020-11-03 02:24:32 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2020-11-03 10:34:25 +0100 |
commit | 19d6227c1de4d19363a5f63d0e26c91a776defbd (patch) | |
tree | 422229c923ef0e430ba1af38d65780ddc1c233aa /api/adapter.c | |
parent | api: refactor .inf parsing and check SystemTimeToFileTime for errors (diff) | |
download | wintun-19d6227c1de4d19363a5f63d0e26c91a776defbd.tar.xz wintun-19d6227c1de4d19363a5f63d0e26c91a776defbd.zip |
api: rundll32: repair token spawning semantics
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'api/adapter.c')
-rw-r--r-- | api/adapter.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/api/adapter.c b/api/adapter.c index 45ff38f..86eef0f 100644 --- a/api/adapter.c +++ b/api/adapter.c @@ -593,8 +593,7 @@ WINTUN_STATUS WINAPI WintunGetAdapter(_In_z_ const WCHAR *Pool, _In_z_ const WCHAR *Name, _Out_ WINTUN_ADAPTER **Adapter) { if (!ElevateToSystem()) - return LOG(WINTUN_LOG_ERR, L"Failed to impersonate SYSTEM user"), ERROR_ACCESS_DENIED; - + return LOG_LAST_ERROR(L"Failed to impersonate SYSTEM user"); DWORD Result; HANDLE Mutex = NamespaceTakePoolMutex(Pool); if (!Mutex) @@ -1681,7 +1680,7 @@ WintunCreateAdapter( _Out_opt_ BOOL *RebootRequired) { if (!ElevateToSystem()) - return LOG(WINTUN_LOG_ERR, L"Failed to impersonate SYSTEM user"), ERROR_ACCESS_DENIED; + return LOG_LAST_ERROR(L"Failed to impersonate SYSTEM user"); BOOL DummyRebootRequired; if (!RebootRequired) RebootRequired = &DummyRebootRequired; @@ -1699,7 +1698,7 @@ WINTUN_STATUS WINAPI WintunDeleteAdapter(_In_ const WINTUN_ADAPTER *Adapter, _In_ BOOL ForceCloseSessions, _Out_opt_ BOOL *RebootRequired) { if (!ElevateToSystem()) - return LOG(WINTUN_LOG_ERR, L"Failed to impersonate SYSTEM user"), ERROR_ACCESS_DENIED; + return LOG_LAST_ERROR(L"Failed to impersonate SYSTEM user"); BOOL DummyRebootRequired; if (!RebootRequired) @@ -1790,7 +1789,7 @@ WINTUN_STATUS WINAPI WintunDeleteDriver(void) { if (!ElevateToSystem()) - return LOG(WINTUN_LOG_ERR, L"Failed to impersonate SYSTEM user"), ERROR_ACCESS_DENIED; + return LOG_LAST_ERROR(L"Failed to impersonate SYSTEM user"); DWORD Result = ERROR_SUCCESS; |