Files
metasploit-gs/external/source/exploits/CVE-2020-0787/CommonUtils/ScopedHandle.h
T

26 lines
473 B
C++

#pragma once
class ScopedHandle
{
HANDLE g_h;
public:
ScopedHandle(HANDLE h, bool duplicate);
void Close();
void Reset(HANDLE h);
bool IsValid() const {
return (g_h != nullptr) && (g_h != INVALID_HANDLE_VALUE);
}
ScopedHandle(const ScopedHandle& other);
ScopedHandle& operator=(const ScopedHandle& other);
ScopedHandle(ScopedHandle&& other);
ScopedHandle& operator=(ScopedHandle&& other);
operator HANDLE() const {
return g_h;
}
~ScopedHandle();
};