mirror of
https://github.com/reactos/reactos.git
synced 2024-07-10 22:55:05 +00:00
[KS]
- Activate handling of requests of type KSPROPERTY_TYPE_BASICSUPPORT - Return correct status code in the GUID_NULL handler svn path=/trunk/; revision=43407
This commit is contained in:
parent
3c2e2137ce
commit
54d11c96f0
|
@ -8,6 +8,7 @@
|
||||||
|
|
||||||
#include "priv.h"
|
#include "priv.h"
|
||||||
|
|
||||||
|
const GUID KSPROPTYPESETID_General = {0x97E99BA0L, 0xBDEA, 0x11CF, {0xA5, 0xD6, 0x28, 0xDB, 0x04, 0xC1, 0x00, 0x00}};
|
||||||
|
|
||||||
NTSTATUS
|
NTSTATUS
|
||||||
FindPropertyHandler(
|
FindPropertyHandler(
|
||||||
|
@ -22,7 +23,6 @@ FindPropertyHandler(
|
||||||
OUT PKSPROPERTY_SET * Set)
|
OUT PKSPROPERTY_SET * Set)
|
||||||
{
|
{
|
||||||
ULONG Index, ItemIndex;
|
ULONG Index, ItemIndex;
|
||||||
//PULONG Flags;
|
|
||||||
|
|
||||||
for(Index = 0; Index < PropertySetCount; Index++)
|
for(Index = 0; Index < PropertySetCount; Index++)
|
||||||
{
|
{
|
||||||
|
@ -47,9 +47,11 @@ FindPropertyHandler(
|
||||||
IoStatus->Information = PropertySet[Index].PropertyItem[ItemIndex].MinData;
|
IoStatus->Information = PropertySet[Index].PropertyItem[ItemIndex].MinData;
|
||||||
return STATUS_MORE_ENTRIES;
|
return STATUS_MORE_ENTRIES;
|
||||||
}
|
}
|
||||||
#if 0
|
|
||||||
if (Property->Flags & KSPROPERTY_TYPE_BASICSUPPORT)
|
if (Property->Flags & KSPROPERTY_TYPE_BASICSUPPORT)
|
||||||
{
|
{
|
||||||
|
PULONG Flags;
|
||||||
|
PKSPROPERTY_DESCRIPTION Description;
|
||||||
|
|
||||||
if (sizeof(ULONG) > OutputBufferLength)
|
if (sizeof(ULONG) > OutputBufferLength)
|
||||||
{
|
{
|
||||||
/* too small buffer */
|
/* too small buffer */
|
||||||
|
@ -60,7 +62,7 @@ FindPropertyHandler(
|
||||||
Flags = (PULONG)OutputBuffer;
|
Flags = (PULONG)OutputBuffer;
|
||||||
|
|
||||||
/* clear flags */
|
/* clear flags */
|
||||||
*Flags = KSPROPERTY_TYPE_BASICSUPPORT;
|
*Flags = 0;
|
||||||
|
|
||||||
if (PropertySet[Index].PropertyItem[ItemIndex].GetSupported)
|
if (PropertySet[Index].PropertyItem[ItemIndex].GetSupported)
|
||||||
*Flags |= KSPROPERTY_TYPE_GET;
|
*Flags |= KSPROPERTY_TYPE_GET;
|
||||||
|
@ -85,9 +87,8 @@ FindPropertyHandler(
|
||||||
|
|
||||||
IoStatus->Information = sizeof(KSPROPERTY_DESCRIPTION);
|
IoStatus->Information = sizeof(KSPROPERTY_DESCRIPTION);
|
||||||
}
|
}
|
||||||
|
return STATUS_SUCCESS;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
if (Property->Flags & KSPROPERTY_TYPE_SET)
|
if (Property->Flags & KSPROPERTY_TYPE_SET)
|
||||||
*PropertyHandler = PropertySet[Index].PropertyItem[ItemIndex].SetPropertyHandler;
|
*PropertyHandler = PropertySet[Index].PropertyItem[ItemIndex].SetPropertyHandler;
|
||||||
|
|
||||||
|
@ -177,7 +178,7 @@ KspPropertyHandler(
|
||||||
if (IoStack->Parameters.DeviceIoControl.OutputBufferLength < sizeof(GUID) * PropertySetsCount)
|
if (IoStack->Parameters.DeviceIoControl.OutputBufferLength < sizeof(GUID) * PropertySetsCount)
|
||||||
{
|
{
|
||||||
// buffer too small
|
// buffer too small
|
||||||
return STATUS_BUFFER_OVERFLOW;
|
return STATUS_MORE_ENTRIES;
|
||||||
}
|
}
|
||||||
|
|
||||||
// get output buffer
|
// get output buffer
|
||||||
|
|
Loading…
Reference in a new issue