mirror of
https://github.com/reactos/reactos.git
synced 2025-05-18 16:51:18 +00:00
- Implement NtSetEventBoostPriority, NtGetCurrentProcessorNumber, NtQueryPortInformationProcess, NtWaitForMultipleObjects32.
svn path=/trunk/; revision=24635
This commit is contained in:
parent
20cab2c593
commit
4ccf5bf0a4
4 changed files with 92 additions and 8 deletions
|
@ -488,8 +488,6 @@ NtSetEvent(IN HANDLE EventHandle,
|
||||||
PreviousMode,
|
PreviousMode,
|
||||||
(PVOID*)&Event,
|
(PVOID*)&Event,
|
||||||
NULL);
|
NULL);
|
||||||
|
|
||||||
/* Check for success */
|
|
||||||
if (NT_SUCCESS(Status))
|
if (NT_SUCCESS(Status))
|
||||||
{
|
{
|
||||||
/* Set the Event */
|
/* Set the Event */
|
||||||
|
@ -517,4 +515,33 @@ NtSetEvent(IN HANDLE EventHandle,
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @implemented
|
||||||
|
*/
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
NtSetEventBoostPriority(IN HANDLE EventHandle)
|
||||||
|
{
|
||||||
|
PKEVENT Event;
|
||||||
|
NTSTATUS Status;
|
||||||
|
PAGED_CODE();
|
||||||
|
|
||||||
|
/* Open the Object */
|
||||||
|
Status = ObReferenceObjectByHandle(EventHandle,
|
||||||
|
EVENT_MODIFY_STATE,
|
||||||
|
ExEventObjectType,
|
||||||
|
ExGetPreviousMode(),
|
||||||
|
(PVOID*)&Event,
|
||||||
|
NULL);
|
||||||
|
if (NT_SUCCESS(Status))
|
||||||
|
{
|
||||||
|
/* Set the Event */
|
||||||
|
KeSetEventBoostPriority(Event, NULL);
|
||||||
|
ObDereferenceObject(Event);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Return Status */
|
||||||
|
return Status;
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -1692,5 +1692,12 @@ NtFlushInstructionCache (
|
||||||
return STATUS_SUCCESS;
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ULONG
|
||||||
|
NTAPI
|
||||||
|
NtGetCurrentProcessorNumber(VOID)
|
||||||
|
{
|
||||||
|
/* Just return the CPU */
|
||||||
|
return KeGetCurrentProcessorNumber();
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -133,4 +133,12 @@ NtImpersonateClientOfPort (HANDLE PortHandle,
|
||||||
return(STATUS_NOT_IMPLEMENTED);
|
return(STATUS_NOT_IMPLEMENTED);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
NtQueryPortInformationProcess(VOID)
|
||||||
|
{
|
||||||
|
/* This is all this function does */
|
||||||
|
return STATUS_UNSUCCESSFUL;
|
||||||
|
}
|
||||||
|
|
||||||
/* EOF */
|
/* EOF */
|
||||||
|
|
|
@ -277,6 +277,48 @@ Quickie:
|
||||||
return Status;
|
return Status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*++
|
||||||
|
* @name NtWaitForMultipleObjects32
|
||||||
|
* @implemented NT5.1
|
||||||
|
*
|
||||||
|
* The NtWaitForMultipleObjects32 routine <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @param ObjectCount
|
||||||
|
* <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @param HandleArray
|
||||||
|
* <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @param WaitType
|
||||||
|
* <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @param Alertable
|
||||||
|
* <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @param TimeOut
|
||||||
|
* <FILLMEIN>
|
||||||
|
*
|
||||||
|
* @return STATUS_SUCCESS or appropriate error value.
|
||||||
|
*
|
||||||
|
* @remarks None.
|
||||||
|
*
|
||||||
|
*--*/
|
||||||
|
NTSTATUS
|
||||||
|
NTAPI
|
||||||
|
NtWaitForMultipleObjects32(IN ULONG ObjectCount,
|
||||||
|
IN PLONG Handles,
|
||||||
|
IN WAIT_TYPE WaitType,
|
||||||
|
IN BOOLEAN Alertable,
|
||||||
|
IN PLARGE_INTEGER TimeOut OPTIONAL)
|
||||||
|
{
|
||||||
|
/* FIXME WOW64 */
|
||||||
|
return NtWaitForMultipleObjects(ObjectCount,
|
||||||
|
(PHANDLE)Handles,
|
||||||
|
WaitType,
|
||||||
|
Alertable,
|
||||||
|
TimeOut);
|
||||||
|
}
|
||||||
|
|
||||||
/*++
|
/*++
|
||||||
* @name NtWaitForSingleObject
|
* @name NtWaitForSingleObject
|
||||||
* @implemented NT4
|
* @implemented NT4
|
||||||
|
|
Loading…
Reference in a new issue