ReactOS  0.4.12-dev-708-g95ed44e
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, PARTITION_STYLE_MBR, PARTITION_STYLE_GPT,
  PARTITION_STYLE_RAW, PARTITION_STYLE_MBR, PARTITION_STYLE_GPT, PARTITION_STYLE_RAW
}
 
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 60 of file imports.h.

◆ FILE_DEVICE_MASS_STORAGE

#define FILE_DEVICE_MASS_STORAGE   0x0000002d

Definition at line 62 of file imports.h.

◆ IOCTL_DISK_GET_LENGTH_INFO

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

Definition at line 192 of file imports.h.

◆ IOCTL_DISK_GET_PARTITION_INFO_EX

#define IOCTL_DISK_GET_PARTITION_INFO_EX
Value:
0x0012, \
#define IOCTL_DISK_BASE
Definition: ntdddisk.h:44
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 186 of file imports.h.

◆ IOCTL_MOUNTDEV_LINK_CREATED

#define IOCTL_MOUNTDEV_LINK_CREATED
Value:
4, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 106 of file imports.h.

◆ IOCTL_MOUNTDEV_LINK_DELETED

#define IOCTL_MOUNTDEV_LINK_DELETED
Value:
5, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 112 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_DEVICE_NAME

#define IOCTL_MOUNTDEV_QUERY_DEVICE_NAME
Value:
2, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 93 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_STABLE_GUID

#define IOCTL_MOUNTDEV_QUERY_STABLE_GUID
Value:
6, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 255 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME

#define IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME
Value:
3, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 99 of file imports.h.

◆ IOCTL_MOUNTDEV_QUERY_UNIQUE_ID

#define IOCTL_MOUNTDEV_QUERY_UNIQUE_ID
Value:
0, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 80 of file imports.h.

◆ IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY

#define IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY
Value:
1, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define MOUNTDEVCONTROLTYPE
Definition: imports.h:78
#define METHOD_BUFFERED
Definition: nt_native.h:594

Definition at line 86 of file imports.h.

◆ IOCTL_MOUNTMGR_CREATE_POINT

#define IOCTL_MOUNTMGR_CREATE_POINT
Value:
0, \
#define FILE_READ_ACCESS
Definition: nt_native.h:610
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define MOUNTMGRCONTROLTYPE
Definition: imports.h:77
#define FILE_WRITE_ACCESS
Definition: nt_native.h:611

Definition at line 118 of file imports.h.

◆ IOCTL_MOUNTMGR_DELETE_POINTS

#define IOCTL_MOUNTMGR_DELETE_POINTS
Value:
1, \
#define FILE_READ_ACCESS
Definition: nt_native.h:610
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define MOUNTMGRCONTROLTYPE
Definition: imports.h:77
#define FILE_WRITE_ACCESS
Definition: nt_native.h:611

Definition at line 124 of file imports.h.

◆ IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION

#define IOCTL_MOUNTMGR_VOLUME_ARRIVAL_NOTIFICATION
Value:
11, \
#define FILE_READ_ACCESS
Definition: nt_native.h:610
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define MOUNTMGRCONTROLTYPE
Definition: imports.h:77

Definition at line 130 of file imports.h.

◆ IOCTL_STORAGE_CHECK_VERIFY2

#define IOCTL_STORAGE_CHECK_VERIFY2
Value:
0x0200, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define IOCTL_STORAGE_BASE
Definition: ntddstor.h:85

Definition at line 67 of file imports.h.

◆ IOCTL_STORAGE_GET_HOTPLUG_INFO

#define IOCTL_STORAGE_GET_HOTPLUG_INFO
Value:
0x0305, \
#define FILE_ANY_ACCESS
Definition: nt_native.h:609
#define CTL_CODE(DeviceType, Function, Method, Access)
Definition: nt_native.h:586
#define METHOD_BUFFERED
Definition: nt_native.h:594
#define IOCTL_STORAGE_BASE
Definition: ntddstor.h:85

Definition at line 238 of file imports.h.

◆ MOUNTDEVCONTROLTYPE

#define MOUNTDEVCONTROLTYPE   ((ULONG) 'M')

Definition at line 78 of file imports.h.

◆ MOUNTMGR_DEVICE_NAME

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

Definition at line 76 of file imports.h.

◆ MOUNTMGRCONTROLTYPE

#define MOUNTMGRCONTROLTYPE   ((ULONG) 'm')

Definition at line 77 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); \
} \
}
NTKERNELAPI TOKEN_TYPE NTAPI SeTokenType(IN PACCESS_TOKEN Token)
Definition: token.c:1780
Definition: ttei6.cpp:27

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

typedef unsigned __int64 * PULONG64

Definition at line 198 of file imports.h.

◆ SECURITY_CLIENT_CONTEXT

◆ STORAGE_HOTPLUG_INFO

◆ TOKEN_CONTROL

◆ TOKEN_SOURCE

◆ TOKEN_TYPE

◆ ULONG64

typedef unsigned __int64 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 54 of file imports.h.

54  {
55  LowPagePriority = 0,
56  NormalPagePriority = 16,
57  HighPagePriority = 32
enum _MM_PAGE_PRIORITY MM_PAGE_PRIORITY

◆ _PARTITION_STYLE

Enumerator
PARTITION_STYLE_MBR 
PARTITION_STYLE_GPT 
PARTITION_STYLE_MBR 
PARTITION_STYLE_GPT 
PARTITION_STYLE_RAW 
PARTITION_STYLE_MBR 
PARTITION_STYLE_GPT 
PARTITION_STYLE_RAW 

Definition at line 200 of file imports.h.

200  {
enum _PARTITION_STYLE PARTITION_STYLE

◆ _TOKEN_TYPE

Enumerator
TokenPrimary 
TokenImpersonation 
TokenPrimary 
TokenImpersonation 

Definition at line 272 of file imports.h.

272  {
273  TokenPrimary = 1,
275 } TOKEN_TYPE;
enum _TOKEN_TYPE TOKEN_TYPE

Function Documentation

◆ _snprintf()

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

Definition at line 718 of file sprintf.c.

719 {
720  va_list args;
721  int i;
722 
723  va_start(args, fmt);
724  i=_vsnprintf(buf,cnt,fmt,args);
725  va_end(args);
726  return i;
727 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
int __cdecl _vsnprintf(char *buf, size_t cnt, const char *fmt, va_list args)
Definition: sprintf.c:386
Definition: match.c:390
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
#define va_end(ap)
Definition: acmsvcex.h:90
char * va_list
Definition: acmsvcex.h:78
#define va_start(ap, A)
Definition: acmsvcex.h:91
#define args
Definition: format.c:66
Definition: dsound.c:943

◆ _snwprintf()

◆ _swprintf()

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

◆ PsRevertToSelf()

NTKERNELAPI VOID NTAPI PsRevertToSelf ( VOID  )

Definition at line 548 of file security.c.

549 {
550  /* Call the per-thread API */
551  PAGED_CODE();
553 }
#define PsGetCurrentThread()
Definition: env_spec_w32.h:81
VOID NTAPI PsRevertThreadToSelf(IN PETHREAD Thread)
Definition: security.c:560
#define PAGED_CODE()
Definition: video.h:57

Referenced by CmpCmdHiveOpen(), and VfdIoCtlThread().

◆ SeCreateClientSecurity()

NTKERNELAPI NTSTATUS NTAPI SeCreateClientSecurity ( IN PETHREAD  Thread,
IN PSECURITY_QUALITY_OF_SERVICE  QualityOfService,
IN BOOLEAN  RemoteClient,
OUT PSECURITY_CLIENT_CONTEXT  ClientContext 
)

Definition at line 506 of file access.c.

510 {
512  BOOLEAN ThreadEffectiveOnly;
516  PAGED_CODE();
517 
518  /* Reference the correct token */
520  &TokenType,
521  &ThreadEffectiveOnly,
523 
524  /* Create client security from it */
526  Qos,
527  RemoteClient,
528  TokenType,
529  ThreadEffectiveOnly,
531  ClientContext);
532 
533  /* Check if we failed or static tracking was used */
534  if (!(NT_SUCCESS(Status)) || (Qos->ContextTrackingMode == SECURITY_STATIC_TRACKING))
535  {
536  /* Dereference our copy since it's not being used */
538  }
539 
540  /* Return status */
541  return Status;
542 }
LONG NTSTATUS
Definition: precomp.h:26
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID _Out_ PULONG _Inout_ PLUID _Out_ PHANDLE Token
VOID NTAPI ObDereferenceObject(IN PVOID Object)
Definition: obref.c:375
NTSTATUS NTAPI SepCreateClientSecurity(IN PACCESS_TOKEN Token, IN PSECURITY_QUALITY_OF_SERVICE ClientSecurityQos, IN BOOLEAN ServerIsRemote, IN TOKEN_TYPE TokenType, IN BOOLEAN ThreadEffectiveOnly, IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel, OUT PSECURITY_CLIENT_CONTEXT ClientContext)
Definition: access.c:174
#define PAGED_CODE()
Definition: video.h:57
enum _SECURITY_IMPERSONATION_LEVEL SECURITY_IMPERSONATION_LEVEL
unsigned char BOOLEAN
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:24
_In_ PVOID ClientContext
Definition: netioddk.h:55
_Out_ PBOOLEAN _Out_ PBOOLEAN _Out_ PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
Definition: psfuncs.h:154
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2653
PACCESS_TOKEN NTAPI PsReferenceEffectiveToken(IN PETHREAD Thread, OUT IN PTOKEN_TYPE TokenType, OUT PBOOLEAN EffectiveOnly, OUT PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel)
Definition: security.c:705
enum _TOKEN_TYPE TOKEN_TYPE
Status
Definition: gdiplustypes.h:24
#define SECURITY_STATIC_TRACKING
Definition: setypes.h:104
_In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_ BOOLEAN _In_ TOKEN_TYPE TokenType
Definition: sefuncs.h:417

Referenced by CmLoadKey(), NpGetClientSecurityContext(), NpInitializeSecurity(), NtImpersonateClientOfPort(), NtImpersonateThread(), NtSecureConnectPort(), and VfdOpenCheck().

◆ SeImpersonateClient()

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

Definition at line 623 of file access.c.

625 {
626  PAGED_CODE();
627 
628  /* Call the new API */
630 }
#define PAGED_CODE()
Definition: video.h:57
UINT CALLBACK ServerThread(_Inout_ PVOID Parameter)
_In_ PVOID ClientContext
Definition: netioddk.h:55
NTSTATUS NTAPI SeImpersonateClientEx(IN PSECURITY_CLIENT_CONTEXT ClientContext, IN PETHREAD ServerThread OPTIONAL)
Definition: access.c:589

Referenced by NtImpersonateThread(), and VfdIoCtlThread().

◆ SeTokenType()

NTKERNELAPI TOKEN_TYPE NTAPI SeTokenType ( IN PACCESS_TOKEN  Token)

Definition at line 1780 of file token.c.

1781 {
1782  PAGED_CODE();
1783 
1784  return ((PTOKEN)Token)->TokenType;
1785 }
_IRQL_requires_same_ _In_ PLSA_STRING _In_ SECURITY_LOGON_TYPE _In_ ULONG _In_ ULONG _In_opt_ PTOKEN_GROUPS _In_ PTOKEN_SOURCE _Out_ PVOID _Out_ PULONG _Inout_ PLUID _Out_ PHANDLE Token
#define PAGED_CODE()
Definition: video.h:57

Referenced by NpFreeClientSecurityContext(), and PsAssignImpersonationToken().

◆ sprintf()

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

Definition at line 762 of file utprint.c.

766 {
767  va_list Args;
768  int Length;
769 
770 
771  va_start (Args, Format);
773  va_end (Args);
774 
775  return (Length);
776 }
int vsnprintf(char *String, ACPI_SIZE Size, const char *Format, va_list Args)
Definition: utprint.c:433
static WCHAR String[]
Definition: stringtable.c:55
#define va_end(ap)
Definition: acmsvcex.h:90
char * va_list
Definition: acmsvcex.h:78
char ** Args
Definition: acdebug.h:343
#define ACPI_UINT32_MAX
Definition: actypes.h:66
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
#define va_start(ap, A)
Definition: acmsvcex.h:91