- ObInitializeObjectHeader(OBJTYP_DIRECTORY,NULL,&namespc_root.hdr);
- InitializeListHead(&namespc_root.head);
+ ObDirectoryType = ExAllocatePool(NonPagedPool,sizeof(OBJECT_TYPE));
+
+ ObDirectoryType->TotalObjects = 0;
+ ObDirectoryType->TotalHandles = 0;
+ ObDirectoryType->MaxObjects = ULONG_MAX;
+ ObDirectoryType->MaxHandles = ULONG_MAX;
+ ObDirectoryType->PagedPoolCharge = 0;
+ ObDirectoryType->NonpagedPoolCharge = sizeof(DIRECTORY_OBJECT);
+ ObDirectoryType->Dump = NULL;
+ ObDirectoryType->Open = NULL;
+ ObDirectoryType->Close = NULL;
+ ObDirectoryType->Delete = NULL;
+ ObDirectoryType->Parse = NULL;
+ ObDirectoryType->Security = NULL;
+ ObDirectoryType->QueryName = NULL;
+ ObDirectoryType->OkayToClose = NULL;
+
+ RtlInitAnsiString(&AnsiString,"Directory");
+ RtlAnsiStringToUnicodeString(&ObDirectoryType->TypeName,
+ &AnsiString,TRUE);