28 nLength =
sizeof(SECURITY_ATTRIBUTES);
29 lpSecurityDescriptor = NULL;
30 bInheritHandle = FALSE;
38 nLength =
sizeof(SECURITY_ATTRIBUTES);
39 lpSecurityDescriptor = a.lpSecurityDescriptor;
40 bInheritHandle = a.bInheritHandle;
41 a.lpSecurityDescriptor = NULL;
49 if (lpSecurityDescriptor)
50 LocalFree(lpSecurityDescriptor);
59 nLength =
sizeof(SECURITY_ATTRIBUTES);
60 if (lpSecurityDescriptor)
61 LocalFree(lpSecurityDescriptor);
62 lpSecurityDescriptor = a.lpSecurityDescriptor;
63 bInheritHandle = a.bInheritHandle;
64 a.lpSecurityDescriptor = NULL;
77#pragma warning(disable: 4505)
82 PSECURITY_DESCRIPTOR sd;
85 if (sa.lpSecurityDescriptor)
86 LocalFree(sa.lpSecurityDescriptor);
87 sa.lpSecurityDescriptor = sd;
99 PSECURITY_DESCRIPTOR sd;
102 if (sa.lpSecurityDescriptor)
103 LocalFree(sa.lpSecurityDescriptor);
104 sa.lpSecurityDescriptor = sd;
security_attributes(security_attributes &&a) noexcept
Moves an existing SECURITY_ATTRIBUTES.
Definition SDDL.h:36
~security_attributes()
Destroys the SECURITY_ATTRIBUTES.
Definition SDDL.h:47
security_attributes & operator=(security_attributes &&a) noexcept
Moves an existing SECURITY_ATTRIBUTES.
Definition SDDL.h:56
security_attributes() noexcept
Initializes a new SECURITY_ATTRIBUTES.
Definition SDDL.h:26
#define WINSTD_NONCOPYABLE(C)
Declares a class as non-copyable.
Definition Common.h:67
static BOOL WINAPI ConvertStringSecurityDescriptorToSecurityDescriptorA(LPCSTR StringSecurityDescriptor, DWORD StringSDRevision, winstd::security_attributes &sa, PULONG SecurityDescriptorSize)
Converts a string-format security descriptor into a valid, functional security descriptor.
Definition SDDL.h:80
static BOOL WINAPI ConvertStringSecurityDescriptorToSecurityDescriptorW(LPCWSTR StringSecurityDescriptor, DWORD StringSDRevision, winstd::security_attributes &sa, PULONG SecurityDescriptorSize)
Converts a string-format security descriptor into a valid, functional security descriptor.
Definition SDDL.h:97