#include "idl_types.h"

import "misc.idl";
/* fscc structures */

[
	pointer_default(unique),
	helpstring("fscc structures")
]


interface fscc
{
	typedef [public] struct {
		GUID id;
		GUID birthVolumeId;
		GUID initialObjectId;
		GUID domainId;
	} fscc_FileObjectIdBuffer_2;

	typedef [bitmap32bit,flag(NDR_PAHEX)] bitmap{
		FSCC_FILE_ATTRIBUTE_READONLY		= 0x00000001,
		FSCC_FILE_ATTRIBUTE_HIDDEN		= 0x00000002,
		FSCC_FILE_ATTRIBUTE_SYSTEM		= 0x00000004,
		FSCC_FILE_ATTRIBUTE_NORMAL		= 0x00000008,
		FSCC_FILE_ATTRIBUTE_DIRECTORY		= 0x00000010,
		FSCC_FILE_ATTRIBUTE_ARCHIVE		= 0x00000020,
		FSCC_FILE_ATTRIBUTE_TEMPORARY		= 0x00000100,
		FSCC_FILE_ATTRIBUTE_SPARSE_FILE		= 0x00000200,
		FSCC_FILE_ATTRIBUTE_REPARSE_POINT	= 0x00000400,
		FSCC_FILE_ATTRIBUTE_COMPRESSED		= 0x00000800,
		FSCC_FILE_ATTRIBUTE_OFFLINE		= 0x00001000,
		FSCC_FILE_ATTRIBUTE_NOT_CONTENT_INDEXED	= 0x00002000,
		FSCC_FILE_ATTRIBUTE_ENCRYPTED		= 0x00004000
	} fscc_FileAttributes;

	typedef [public] struct {
		hyper creationTime;
		hyper lastAccessTime;
		hyper lastWriteTime;
		hyper changeTime;
		hyper allocSize;
		hyper endOfFile;
		fscc_FileAttributes fileAttribute;
		uint32 reserved;
	} fscc_FileNetworkOpenInformation;
}
