- Check if NodeId is out of bounds

- Return correct status code

svn path=/trunk/; revision=43253
This commit is contained in:
Johannes Anderwald 2009-10-02 10:53:36 +00:00
parent 9ef3f7c1a2
commit 2f541881a8

View file

@ -241,6 +241,13 @@ KsTopologyPropertyHandler(
case KSPROPERTY_TOPOLOGY_NAME:
Node = (KSP_NODE*)Property;
if (Node->NodeId >= Topology->TopologyNodesCount)
{
Irp->IoStatus.Information = 0;
Status = STATUS_INVALID_PARAMETER;
break;
}
Status = RtlStringFromGUID(&Topology->TopologyNodesNames[Node->NodeId], &GuidString);
if (!NT_SUCCESS(Status))
{
@ -254,6 +261,7 @@ KsTopologyPropertyHandler(
if (!KeyName.Buffer)
{
Irp->IoStatus.Information = 0;
Status = STATUS_INSUFFICIENT_RESOURCES;
break;
}