mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-22 08:23:05 -05:00
sys: IRP_MJ_QUERY_SECURITY
This commit is contained in:
parent
e7cef94507
commit
d4f1c13542
@ -112,6 +112,17 @@ NTSTATUS FspFsvolQuerySecurityComplete(
|
|||||||
|
|
||||||
if (0 != FspIopRequestContext(Request, RequestFileNode))
|
if (0 != FspIopRequestContext(Request, RequestFileNode))
|
||||||
{
|
{
|
||||||
|
/* check that the security descriptor we got back is valid */
|
||||||
|
if (Response->Buffer + Response->Rsp.QuerySecurity.SecurityDescriptor.Size >
|
||||||
|
(PUINT8)Response + Response->Size ||
|
||||||
|
!RtlValidRelativeSecurityDescriptor((PVOID)Response->Buffer,
|
||||||
|
Response->Rsp.QuerySecurity.SecurityDescriptor.Size, 0))
|
||||||
|
{
|
||||||
|
Irp->IoStatus.Information = 0;
|
||||||
|
Result = STATUS_INVALID_SECURITY_DESCR;
|
||||||
|
FSP_RETURN();
|
||||||
|
}
|
||||||
|
|
||||||
FspIopRequestContext(Request, RequestSecurityChangeNumber) = (PVOID)FileNode->SecurityChangeNumber;
|
FspIopRequestContext(Request, RequestSecurityChangeNumber) = (PVOID)FileNode->SecurityChangeNumber;
|
||||||
FspIopRequestContext(Request, RequestFileNode) = 0;
|
FspIopRequestContext(Request, RequestFileNode) = 0;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user