Blob Blame History Raw
#ifndef _NT_STAT_H_
#define _NT_STAT_H_

#include "nt_abi.h"
#include "nt_object.h"
#include "nt_file.h"

/* ntapi_tt_stat info flags bits */
#define NT_STAT_DEFAULT		(0x00000000)
#define NT_STAT_COMMON		(0x00000001)
#define NT_STAT_DEV_NAME_COPY	(0x00000002)
#define NT_STAT_MUP_DEVICE	(0x20000000)

typedef struct _nt_stat {
	nt_fbi		fbi;
	nt_fsi		fsi;
	nt_fii		fii;
	nt_fei		fei;
	nt_facci	facci;
	nt_fpi		fpi;
	nt_fmi		fmi;
	nt_falii	falii;
	nt_fssi		fssi;
	void *		hfile;
	uint32_t	flags;
	uint32_t	file_name_length;
	uint16_t	obj_name_strlen;
	uint16_t	obj_name_maxlen;
	uint16_t	dev_name_strlen;
	uint16_t	dev_name_maxlen;
	uint32_t	dev_name_hash;
	wchar16_t	dev_name[];
} nt_stat;


typedef int32_t __stdcall ntapi_tt_stat(
	__in	void *			hfile,
	__out	nt_stat *		info,
	__in	uint32_t		infolen,
	__out	uintptr_t *		buffer,
	__in	uint32_t		buffer_size,
	__in	uint32_t		flags);

#endif