POBJECT_TYPE ObpTypeObjectType = NULL;
KEVENT ObpDefaultObject;
+KGUARDED_MUTEX ObpDeviceMapLock;
GENERAL_LOOKASIDE ObpNameBufferLookasideList, ObpCreateInfoLookasideList;
/* Add the SD charge too */
if (Header->Flags & OB_FLAG_SECURITY) PagedPoolCharge += 2048;
}
+
+ /* Return the quota */
+ DPRINT("FIXME: Should return quotas: %lx %lx\n", PagedPoolCharge, NonPagedPoolCharge);
+#if 0
+ PsReturnSharedPoolQuota(ObjectHeader->QuotaBlockCharged,
+ PagedPoolCharge,
+ NonPagedPoolCharge);
+#endif
+
}
}
{
ULONG i;
POBJECT_TYPE ObjectType = (PVOID)Object;
-
+
/* Loop our locks */
for (i = 0; i < 4; i++)
{
/* Delete each one */
ExDeleteResourceLite(&ObjectType->ObjectLocks[i]);
}
-
+
/* Delete our main mutex */
ExDeleteResourceLite(&ObjectType->Mutex);
}
/* Information about all types */
case ObjectTypesInformation:
DPRINT1("NOT IMPLEMENTED!\n");
+ InfoLength = Length;
Status = STATUS_NOT_IMPLEMENTED;
break;
default:
/* Fail it */
+ InfoLength = Length;
Status = STATUS_INVALID_INFO_CLASS;
break;
}
if (ResultLength)
{
/* Write the length */
- *ResultLength = Length;
+ *ResultLength = InfoLength;
}
}
_SEH2_EXCEPT(ExSystemExceptionFilter())