ReactOS 0.4.16-dev-2110-ge3521eb
imports.h File Reference
#include <ntddk.h>
#include <ntdddisk.h>
#include <ntverp.h>
Include dependency graph for imports.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  _MOUNTDEV_UNIQUE_ID
 
struct  _MOUNTDEV_NAME
 
struct  _MOUNTDEV_SUGGESTED_LINK_NAME
 
struct  _MOUNTMGR_TARGET_NAME
 
struct  _MOUNTMGR_CREATE_POINT_INPUT
 
struct  _MOUNTMGR_MOUNT_POINT
 
struct  _MOUNTMGR_MOUNT_POINTS
 
struct  _PARTITION_INFORMATION_MBR
 
struct  _PARTITION_INFORMATION_GPT
 
struct  _PARTITION_INFORMATION_EX
 
struct  _GET_LENGTH_INFORMATION
 
struct  _STORAGE_HOTPLUG_INFO
 
struct  _MOUNTDEV_STABLE_GUID
 
struct  _TOKEN_SOURCE
 
struct  _TOKEN_CONTROL
 
struct  _SECURITY_CLIENT_CONTEXT
 

Macros

#define FILE_ATTRIBUTE_ENCRYPTED   0x00004000
 
#define FILE_DEVICE_MASS_STORAGE   0x0000002d
 
#define IOCTL_STORAGE_CHECK_VERIFY2
 
#define MOUNTMGR_DEVICE_NAME   L"\\Device\\MountPointManager"
 
#define MOUNTMGRCONTROLTYPE   ((ULONG) 'm')
 
#define MOUNTDEVCONTROLTYPE   ((ULONG) 'M')
 
#define IOCTL_MOUNTDEV_QUERY_UNIQUE_ID
 
#define IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY
 
#define IOCTL_MOUNTDEV_QUERY_DEVICE_NAME
 
#define IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME
 
#define IOCTL_MOUNTDEV_LINK_CREATED
 
#define IOCTL_MOUNTDEV_LINK_DELETED
 
#define IOCTL_MOUNTMGR_CREATE_POINT
 
#define IOCTL_MOUNTMGR_DELETE_POINTS
 
#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION
 
#define IOCTL_DISK_GET_PARTITION_INFO_EX
 
#define IOCTL_DISK_GET_LENGTH_INFO
 
#define IOCTL_STORAGE_GET_HOTPLUG_INFO
 
#define IOCTL_MOUNTDEV_QUERY_STABLE_GUID
 
#define TOKEN_SOURCE_LENGTH   8
 
#define PsDereferenceImpersonationToken(T)    if (ARGUMENT_PRESENT(T)) (ObDereferenceObject((T)))
 
#define PsDereferencePrimaryToken(T)   (ObDereferenceObject((T)))
 
#define SeDeleteClientSecurity(C)
 

Typedefs

typedef enum _MM_PAGE_PRIORITY MM_PAGE_PRIORITY
 
typedef struct _MOUNTDEV_UNIQUE_ID MOUNTDEV_UNIQUE_ID
 
typedef struct _MOUNTDEV_UNIQUE_IDPMOUNTDEV_UNIQUE_ID
 
typedef struct _MOUNTDEV_NAME MOUNTDEV_NAME
 
typedef struct _MOUNTDEV_NAMEPMOUNTDEV_NAME
 
typedef struct _MOUNTDEV_SUGGESTED_LINK_NAME MOUNTDEV_SUGGESTED_LINK_NAME
 
typedef struct _MOUNTDEV_SUGGESTED_LINK_NAMEPMOUNTDEV_SUGGESTED_LINK_NAME
 
typedef struct _MOUNTMGR_TARGET_NAME MOUNTMGR_TARGET_NAME
 
typedef struct _MOUNTMGR_TARGET_NAMEPMOUNTMGR_TARGET_NAME
 
typedef struct _MOUNTMGR_CREATE_POINT_INPUT MOUNTMGR_CREATE_POINT_INPUT
 
typedef struct _MOUNTMGR_CREATE_POINT_INPUTPMOUNTMGR_CREATE_POINT_INPUT
 
typedef struct _MOUNTMGR_MOUNT_POINT MOUNTMGR_MOUNT_POINT
 
typedef struct _MOUNTMGR_MOUNT_POINTPMOUNTMGR_MOUNT_POINT
 
typedef struct _MOUNTMGR_MOUNT_POINTS MOUNTMGR_MOUNT_POINTS
 
typedef struct _MOUNTMGR_MOUNT_POINTSPMOUNTMGR_MOUNT_POINTS
 
typedef unsigned __int64 ULONG64
 
typedef unsigned __int64PULONG64
 
typedef enum _PARTITION_STYLE PARTITION_STYLE
 
typedef struct _PARTITION_INFORMATION_MBR PARTITION_INFORMATION_MBR
 
typedef struct _PARTITION_INFORMATION_MBRPPARTITION_INFORMATION_MBR
 
typedef struct _PARTITION_INFORMATION_GPT PARTITION_INFORMATION_GPT
 
typedef struct _PARTITION_INFORMATION_GPTPPARTITION_INFORMATION_GPT
 
typedef struct _PARTITION_INFORMATION_EX PARTITION_INFORMATION_EX
 
typedef struct _PARTITION_INFORMATION_EXPPARTITION_INFORMATION_EX
 
typedef struct _GET_LENGTH_INFORMATION GET_LENGTH_INFORMATION
 
typedef struct _GET_LENGTH_INFORMATIONPGET_LENGTH_INFORMATION
 
typedef struct _STORAGE_HOTPLUG_INFO STORAGE_HOTPLUG_INFO
 
typedef struct _STORAGE_HOTPLUG_INFOPSTORAGE_HOTPLUG_INFO
 
typedef struct _MOUNTDEV_STABLE_GUID MOUNTDEV_STABLE_GUID
 
typedef struct _MOUNTDEV_STABLE_GUIDPMOUNTDEV_STABLE_GUID
 
typedef enum _TOKEN_TYPE TOKEN_TYPE
 
typedef struct _TOKEN_SOURCE TOKEN_SOURCE
 
typedef struct _TOKEN_SOURCEPTOKEN_SOURCE
 
typedef struct _TOKEN_CONTROL TOKEN_CONTROL
 
typedef struct _TOKEN_CONTROLPTOKEN_CONTROL
 
typedef struct _SECURITY_CLIENT_CONTEXT SECURITY_CLIENT_CONTEXT
 
typedef struct _SECURITY_CLIENT_CONTEXTPSECURITY_CLIENT_CONTEXT
 

Enumerations

enum  _MM_PAGE_PRIORITY {
  LowPagePriority = 0 , NormalPagePriority = 16 , HighPagePriority = 32 , LowPagePriority ,
  NormalPagePriority = 16 , HighPagePriority = 32
}
 
enum  _PARTITION_STYLE { PARTITION_STYLE_MBR , PARTITION_STYLE_GPT }
 
enum  _TOKEN_TYPE { TokenPrimary = 1 , TokenImpersonation , TokenPrimary = 1 , TokenImpersonation }
 

Functions

NTKERNELAPI VOID NTAPI PsRevertToSelf (VOID)
 
NTKERNELAPI NTSTATUS NTAPI SeCreateClientSecurity (IN PETHREAD Thread, IN PSECURITY_QUALITY_OF_SERVICE QualityOfService, IN BOOLEAN RemoteClient, OUT PSECURITY_CLIENT_CONTEXT ClientContext)
 
NTKERNELAPI VOID NTAPI SeImpersonateClient (IN PSECURITY_CLIENT_CONTEXT ClientContext, IN PETHREAD ServerThread OPTIONAL)
 
NTKERNELAPI TOKEN_TYPE NTAPI SeTokenType (IN PACCESS_TOKEN Token)
 
int _snprintf (char *buffer, size_t count, const char *format,...)
 
int _snwprintf (wchar_t *buffer, size_t count, const wchar_t *format,...)
 
int sprintf (char *buffer, const char *format,...)
 
int _swprintf (wchar_t *buffer, const wchar_t *format,...)
 

Macro Definition Documentation

◆ FILE_ATTRIBUTE_ENCRYPTED

#define FILE_ATTRIBUTE_ENCRYPTED   0x00004000

Definition at line 58 of file imports.h.

◆ FILE_DEVICE_MASS_STORAGE

#define FILE_DEVICE_MASS_STORAGE   0x0000002d

Definition at line 60 of file imports.h.

◆ IOCTL_DISK_GET_LENGTH_INFO

#define IOCTL_DISK_GET_LENGTH_INFO
Value:
0x0017, \
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define FILE_READ_ACCESS
Definition: nt_native.h:610
#define IOCTL_DISK_BASE
Definition: ntdddisk.h:44

Definition at line 192 of file imports.h.

◆ IOCTL_DISK_GET_PARTITION_INFO_EX

#define IOCTL_DISK_GET_PARTITION_INFO_EX
Value:
0x0012, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609

Definition at line 186 of file imports.h.

◆ IOCTL_MOUNTDEV_LINK_CREATED

#define IOCTL_MOUNTDEV_LINK_CREATED
Value:
4, \
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:76

Definition at line 104 of file imports.h.

◆ IOCTL_MOUNTDEV_LINK_DELETED

#define IOCTL_MOUNTDEV_LINK_DELETED
Value:

Definition at line 110 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_DEVICE_NAME

#define IOCTL_MOUNTDEV_QUERY_DEVICE_NAME
Value:

Definition at line 91 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_STABLE_GUID

#define IOCTL_MOUNTDEV_QUERY_STABLE_GUID
Value:

Definition at line 255 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME

#define IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME
Value:

Definition at line 97 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_UNIQUE_ID

#define IOCTL_MOUNTDEV_QUERY_UNIQUE_ID
Value:

Definition at line 78 of file imports.h.

◆ IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY

#define IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY
Value:

Definition at line 84 of file imports.h.

◆ IOCTL_MOUNTMGR_CREATE_POINT

#define IOCTL_MOUNTMGR_CREATE_POINT
Value:
0, \
#define MOUNTMGRCONTROLTYPE
Definition: imports.h:75
#define FILE_WRITE_ACCESS
Definition: nt_native.h:611

Definition at line 116 of file imports.h.

◆ IOCTL_MOUNTMGR_DELETE_POINTS

#define IOCTL_MOUNTMGR_DELETE_POINTS
Value:

Definition at line 122 of file imports.h.

◆ IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION

#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION
Value:

Definition at line 128 of file imports.h.

◆ IOCTL_STORAGE_CHECK_VERIFY2

#define IOCTL_STORAGE_CHECK_VERIFY2
Value:
0x0200, \
#define IOCTL_STORAGE_BASE
Definition: ntddstor.h:96

Definition at line 65 of file imports.h.

◆ IOCTL_STORAGE_GET_HOTPLUG_INFO

#define IOCTL_STORAGE_GET_HOTPLUG_INFO
Value:

Definition at line 238 of file imports.h.

◆ MOUNTDEVCONTROLTYPE

#define MOUNTDEVCONTROLTYPE   ((ULONG) 'M')

Definition at line 76 of file imports.h.

◆ MOUNTMGR_DEVICE_NAME

#define MOUNTMGR_DEVICE_NAME   L"\\Device\\MountPointManager"

Definition at line 74 of file imports.h.

◆ MOUNTMGRCONTROLTYPE

#define MOUNTMGRCONTROLTYPE   ((ULONG) 'm')

Definition at line 75 of file imports.h.

◆ PsDereferenceImpersonationToken

#define PsDereferenceImpersonationToken (   T)     if (ARGUMENT_PRESENT(T)) (ObDereferenceObject((T)))

Definition at line 298 of file imports.h.

◆ PsDereferencePrimaryToken

#define PsDereferencePrimaryToken (   T)    (ObDereferenceObject((T)))

Definition at line 301 of file imports.h.

◆ SeDeleteClientSecurity

#define SeDeleteClientSecurity (   C)
Value:
{ \
if (SeTokenType((C)->ClientToken) == TokenPrimary) { \
PsDereferencePrimaryToken((C)->ClientToken); \
} \
else { \
PsDereferenceImpersonationToken((C)->ClientToken); \
} \
}
Definition: terminate.cpp:24
@ TokenPrimary
Definition: imports.h:273
NTKERNELAPI TOKEN_TYPE NTAPI SeTokenType(IN PACCESS_TOKEN Token)

Definition at line 320 of file imports.h.

◆ TOKEN_SOURCE_LENGTH

#define TOKEN_SOURCE_LENGTH   8

Definition at line 270 of file imports.h.

Typedef Documentation

◆ GET_LENGTH_INFORMATION

◆ MM_PAGE_PRIORITY

◆ MOUNTDEV_NAME

◆ MOUNTDEV_STABLE_GUID

◆ MOUNTDEV_SUGGESTED_LINK_NAME

◆ MOUNTDEV_UNIQUE_ID

◆ MOUNTMGR_CREATE_POINT_INPUT

◆ MOUNTMGR_MOUNT_POINT

◆ MOUNTMGR_MOUNT_POINTS

◆ MOUNTMGR_TARGET_NAME

◆ PARTITION_INFORMATION_EX

◆ PARTITION_INFORMATION_GPT

◆ PARTITION_INFORMATION_MBR

◆ PARTITION_STYLE

◆ PGET_LENGTH_INFORMATION

◆ PMOUNTDEV_NAME

◆ PMOUNTDEV_STABLE_GUID

◆ PMOUNTDEV_SUGGESTED_LINK_NAME

◆ PMOUNTDEV_UNIQUE_ID

◆ PMOUNTMGR_CREATE_POINT_INPUT

◆ PMOUNTMGR_MOUNT_POINT

◆ PMOUNTMGR_MOUNT_POINTS

◆ PMOUNTMGR_TARGET_NAME

◆ PPARTITION_INFORMATION_EX

◆ PPARTITION_INFORMATION_GPT

◆ PPARTITION_INFORMATION_MBR

◆ PSECURITY_CLIENT_CONTEXT

◆ PSTORAGE_HOTPLUG_INFO

◆ PTOKEN_CONTROL

◆ PTOKEN_SOURCE

◆ PULONG64

Definition at line 198 of file imports.h.

◆ SECURITY_CLIENT_CONTEXT

◆ STORAGE_HOTPLUG_INFO

◆ TOKEN_CONTROL

◆ TOKEN_SOURCE

◆ TOKEN_TYPE

◆ ULONG64

Definition at line 198 of file imports.h.

Enumeration Type Documentation

◆ _MM_PAGE_PRIORITY

Enumerator
LowPagePriority 
NormalPagePriority 
HighPagePriority 
LowPagePriority 
NormalPagePriority 
HighPagePriority 

Definition at line 52 of file imports.h.

52 {
@ NormalPagePriority
Definition: imports.h:54
@ LowPagePriority
Definition: imports.h:53
@ HighPagePriority
Definition: imports.h:55
enum _MM_PAGE_PRIORITY MM_PAGE_PRIORITY

◆ _PARTITION_STYLE

Enumerator
PARTITION_STYLE_MBR 
PARTITION_STYLE_GPT 

Definition at line 200 of file imports.h.

200 {
enum _PARTITION_STYLE PARTITION_STYLE
@ PARTITION_STYLE_GPT
Definition: imports.h:202
@ PARTITION_STYLE_MBR
Definition: imports.h:201

◆ _TOKEN_TYPE

Enumerator
TokenPrimary 
TokenImpersonation 
TokenPrimary 
TokenImpersonation 

Definition at line 272 of file imports.h.

272 {
273 TokenPrimary = 1,
275} TOKEN_TYPE;
@ TokenImpersonation
Definition: imports.h:274
enum _TOKEN_TYPE TOKEN_TYPE

Function Documentation

◆ _snprintf()

int _snprintf ( char buffer,
size_t  count,
const char format,
  ... 
)

Definition at line 1231 of file wcs.c.

1232{
1233 int retval;
1237 va_end(valist);
1238 return retval;
1239}
#define va_end(v)
Definition: stdarg.h:28
#define va_start(v, l)
Definition: stdarg.h:26
char * va_list
Definition: vadefs.h:50
GLenum GLsizei len
Definition: glext.h:6722
static va_list valist
Definition: printf.c:46
const WCHAR * str
Definition: format.c:58
#define vsnprintf
Definition: tif_win32.c:406
int retval
Definition: wcstombs.cpp:91

◆ _snwprintf()

int _snwprintf ( wchar_t buffer,
size_t  count,
const wchar_t format,
  ... 
)

Definition at line 1493 of file wcs.c.

1494{
1495 int retval;
1499 va_end(valist);
1500 return retval;
1501}
#define _vsnwprintf
Definition: _vsnwprintf.c:28

◆ _swprintf()

int _swprintf ( wchar_t buffer,
const wchar_t format,
  ... 
)

Definition at line 1687 of file wcs.c.

1688{
1689 va_list ap;
1690 int r;
1691
1692 va_start( ap, format );
1693 r = _vsnwprintf( str, INT_MAX, format, ap );
1694 va_end( ap );
1695 return r;
1696}
#define INT_MAX
Definition: limits.h:26
GLdouble GLdouble GLdouble r
Definition: gl.h:2055
void int int ULONGLONG int va_list * ap
Definition: winesup.h:36

◆ PsRevertToSelf()

NTKERNELAPI VOID NTAPI PsRevertToSelf ( VOID  )

Definition at line 556 of file security.c.

557{
558 /* Call the per-thread API */
559 PAGED_CODE();
561}
#define PAGED_CODE()
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
VOID NTAPI PsRevertThreadToSelf(IN PETHREAD Thread)
Definition: security.c:568

Referenced by CmpCmdHiveOpen(), and VfdIoCtlThread().

◆ SeCreateClientSecurity()

◆ SeImpersonateClient()

NTKERNELAPI VOID NTAPI SeImpersonateClient ( IN PSECURITY_CLIENT_CONTEXT  ClientContext,
IN PETHREAD ServerThread  OPTIONAL 
)

◆ SeTokenType()

◆ sprintf()

int sprintf ( char buffer,
const char format,
  ... 
)

Definition at line 1601 of file wcs.c.

1602{
1603 va_list ap;
1604 int r;
1605
1606 va_start( ap, format );
1607 r = vsnprintf( str, INT_MAX, format, ap );
1608 va_end( ap );
1609 return r;
1610}