typedef CCHAR KPROCESSOR_MODE; typedef NTSTATUS (*OB_PARSE_METHOD)( IN PVOID ParseObject, IN PVOID ObjectType, IN OUT PACCESS_STATE AccessState, IN KPROCESSOR_MODE AccessMode, IN ULONG Attributes, IN OUT PUNICODE_STRING CompleteName, IN OUT PUNICODE_STRING RemainingName, IN OUT PVOID Context OPTIONAL, IN PSECURITY_QUALITY_OF_SERVICE SecurityQos OPTIONAL, OUT PVOID *Object );

typedef NTSTATUS (*OB_SECURITY_METHOD)( IN PVOID Object, IN SECURITY_OPERATION_CODE OperationCode, IN PSECURITY_INFORMATION SecurityInformation, IN OUT PSECURITY_DESCRIPTOR SecurityDescriptor, IN OUT PULONG CapturedLength, IN OUT PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, IN POOL_TYPE PoolType, IN PGENERIC_MAPPING GenericMapping );

typedef struct _QUAD { // QUAD is for those times we want double DoNotUseThisField; // an 8 byte aligned 8 byte long structure } QUAD; // which is NOT really a floating point // number. Use DOUBLE if you want an FP // number.