typedef struct _SECURITY_ATTRIBUTES { /* sa */
DWORD nLength;
LPVOID lpSecurityDescriptor;
BOOL bInheritHandle;
} SECURITY_ATTRIBUTES;
The SECURITY_ATTRIBUTES data structure contains information about an object's security attributes.
nLength
Specifies the length of this data structure. Must be set to sizeof(SECURITY_ATTRIBUTES).
lpSecurityDescriptor
Pointer to a security descriptor for the object. A security descriptor controls the sharing of an object.
This parameter should be NULL for Dos/Win32. A non-NULL value passed in Dos/Win32 is checked for validity, then ignored.
This parameter is used with NT/Win32. A value of NULL specifies that the object is assigned the default security descriptor of the calling process. A non-NULL value uses the specified security descriptor pointed to by the parameter.
bInheritHandle
Specifies whether or not the returned handle is to be inherited by a new process during process creation. A value of TRUE indicates that the new process will inherit the handle.