Implement NtMakePermanentObject().

svn path=/trunk/; revision=10175
This commit is contained in:
Eric Kohl 2004-07-17 12:08:21 +00:00
parent 14f18e7d6d
commit a3a123ab31

View file

@ -1,4 +1,4 @@
/* $Id: ntobj.c,v 1.20 2004/07/17 03:06:01 ion Exp $
/* $Id: ntobj.c,v 1.21 2004/07/17 12:08:21 ekohl Exp $
*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS kernel
@ -135,11 +135,7 @@ NtQueryObject (IN HANDLE ObjectHandle,
}
else
{
#if defined(__GNUC__)
BasicInfo->CreateTime.QuadPart = 0ULL;
#else
BasicInfo->CreateTime.QuadPart = 0;
#endif
BasicInfo->CreateTime.QuadPart = (ULONGLONG)0;
}
Status = STATUS_SUCCESS;
}
@ -275,18 +271,43 @@ NtMakeTemporaryObject (IN HANDLE Handle)
return STATUS_SUCCESS;
}
/*
* @unimplemented
/**********************************************************************
* NAME EXPORTED
* NtMakePermanentObject
*
* DESCRIPTION
*
* ARGUMENTS
*
* RETURN VALUE
*
* REVISIONS
*/
NTSTATUS
STDCALL
NtMakePermanentObject(
IN HANDLE Object
)
NTSTATUS STDCALL
NtMakePermanentObject(IN HANDLE Handle)
{
UNIMPLEMENTED;
return STATUS_NOT_IMPLEMENTED;
POBJECT_HEADER ObjectHeader;
PVOID Object;
NTSTATUS Status;
Status = ObReferenceObjectByHandle(Handle,
0,
NULL,
(KPROCESSOR_MODE)KeGetPreviousMode(),
&Object,
NULL);
if (Status != STATUS_SUCCESS)
{
return Status;
}
ObjectHeader = BODY_TO_HEADER(Object);
ObjectHeader->Permanent = TRUE;
ObDereferenceObject(Object);
return STATUS_SUCCESS;
}
/* EOF */