Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/*++
Copyright (c) 1989 Microsoft Corporation.
Module Name: header.h Abstract: This module contains the main infrastructure for mup data structures. Revision History:
Uday Hegde (udayh) 11\10\1999 NOTES:
*/
#ifndef __DFS_HEADER_H
#define __DFS_HEADER_H
#define DFS_OBJECT_MAJOR 0x81
typedef enum _DFS_OBJECT_TYPES { DFS_OT_UNDEFINED = 0x8100, DFS_OT_PREFIX_TABLE, DFS_OT_NAME_TABLE, DFS_OT_SERVER_INFO, DFS_OT_ROOT_OBJECT, DFS_OT_LINK_OBJECT, DFS_OT_REPLICA_OBJECT, DFS_OT_METADATA_STORAGE, DFS_OT_REGISTRY_MACHINE, DFS_OT_REFERRAL_STRUCT, DFS_OT_REGISTRY_STORE, DFS_OT_AD_STORE, DFS_OT_POLICY_OBJECT, DFS_OT_REFERRAL_LOAD_CONTEXT, DFS_OT_AD_DOMAIN, DFS_OT_ENTERPRISE_STORE } DFS_OBJECT_TYPES;
typedef struct _DFS_OBJECT_HEADER { union { struct { UCHAR ObjectType; UCHAR ObjectMajor; // Only used for debugging.
}Ob; USHORT NodeType; // Mainly for debugging.
}Node; SHORT NodeSize; LONG ReferenceCount; // count of people referencing this.
} DFS_OBJECT_HEADER, *PDFS_OBJECT_HEADER;
#define DfsInitializeHeader(_hdr, _type, _size) \
(_hdr)->Node.NodeType = (USHORT)(_type), \ (_hdr)->NodeSize = (USHORT)(_size), \ (_hdr)->ReferenceCount = 1
#define DfsIncrementReference(_hdr) \
InterlockedIncrement(&((PDFS_OBJECT_HEADER)(_hdr))->ReferenceCount) #define DfsDecrementReference(_hdr) \
InterlockedDecrement(&((PDFS_OBJECT_HEADER)(_hdr))->ReferenceCount)
#define DfsGetHeaderType(_x) (((PDFS_OBJECT_HEADER)(_x))->Node.NodeType)
#define DfsGetHeaderSize(_x) (((PDFS_OBJECT_HEADER)(_x))->NodeSize)
#define DfsGetHeaderCount(_x) (((PDFS_OBJECT_HEADER)(_x))->ReferenceCount)
#define DFS_FILTER_NAME L"\\DfsServer"
typedef DWORD DFSSTATUS;
#endif /* __DFS_HEADER_H */
|