From 7c86357070edc57460a00e43869dca38a58036c9 Mon Sep 17 00:00:00 2001 From: "cdn@chromium.org" Date: Thu, 9 Jun 2011 22:35:33 +0000 Subject: Add a flag to print the handles held by a child process when it shuts down. This will allow us to make tests that audit for extra handles and permissions being added to sandboxed processes. BUG=85212 Review URL: http://codereview.chromium.org/7054080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@88602 0039d316-1c4b-4281-b951-d872f2087c98 --- sandbox/tools/finder/ntundoc.h | 39 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 37 insertions(+), 2 deletions(-) (limited to 'sandbox/tools') diff --git a/sandbox/tools/finder/ntundoc.h b/sandbox/tools/finder/ntundoc.h index 19dd386..dc8c3a5 100644 --- a/sandbox/tools/finder/ntundoc.h +++ b/sandbox/tools/finder/ntundoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2010 The Chromium Authors. All rights reserved. +// Copyright (c) 2006-2011 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. @@ -7,6 +7,7 @@ #define NTSTATUS ULONG #define STATUS_SUCCESS 0x00000000 +#define STATUS_INFO_LENGTH_MISMATCH 0xC0000004 #define STATUS_ACCESS_DENIED 0xC0000022 #define STATUS_BUFFER_OVERFLOW 0x80000005 @@ -44,11 +45,45 @@ typedef struct __PUBLIC_OBJECT_TYPE_INFORMATION { ULONG Reserved [22]; // reserved for internal use } PUBLIC_OBJECT_TYPE_INFORMATION, *PPUBLIC_OBJECT_TYPE_INFORMATION; +typedef enum _POOL_TYPE { + NonPagedPool, + PagedPool, + NonPagedPoolMustSucceed, + ReservedType, + NonPagedPoolCacheAligned, + PagedPoolCacheAligned, + NonPagedPoolCacheAlignedMustS +} POOL_TYPE; + +typedef struct _OBJECT_TYPE_INFORMATION { + UNICODE_STRING Name; + ULONG TotalNumberOfObjects; + ULONG TotalNumberOfHandles; + ULONG TotalPagedPoolUsage; + ULONG TotalNonPagedPoolUsage; + ULONG TotalNamePoolUsage; + ULONG TotalHandleTableUsage; + ULONG HighWaterNumberOfObjects; + ULONG HighWaterNumberOfHandles; + ULONG HighWaterPagedPoolUsage; + ULONG HighWaterNonPagedPoolUsage; + ULONG HighWaterNamePoolUsage; + ULONG HighWaterHandleTableUsage; + ULONG InvalidAttributes; + GENERIC_MAPPING GenericMapping; + ULONG ValidAccess; + BOOLEAN SecurityRequired; + BOOLEAN MaintainHandleCount; + USHORT MaintainTypeList; + POOL_TYPE PoolType; + ULONG PagedPoolUsage; + ULONG NonPagedPoolUsage; +} OBJECT_TYPE_INFORMATION, *POBJECT_TYPE_INFORMATION; + typedef struct _OBJECT_NAME_INFORMATION { UNICODE_STRING ObjectName; } OBJECT_NAME_INFORMATION, *POBJECT_NAME_INFORMATION; - typedef enum _OBJECT_INFORMATION_CLASS { ObjectBasicInformation, ObjectNameInformation, -- cgit v1.1