wine  6.0.1
About: Wine is an Open Source implementation of the MS Windows API on top of X, OpenGL, and Unix. Think of Wine as a compatibility layer for running Windows programs.
  Fossies Dox: wine-6.0.1.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

ntddk.h File Reference
#include <ddk/wdm.h>
#include <excpt.h>
#include <ntstatus.h>
Include dependency graph for ntddk.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _CONFIGURATION_INFORMATION
 
struct  _IMAGE_INFO
 
struct  _FILE_VALID_DATA_LENGTH_INFORMATION
 
struct  _RTL_SPLAY_LINKS
 
struct  _RTL_GENERIC_TABLE
 
struct  _RTL_BALANCED_LINKS
 
struct  _RTL_AVL_TABLE
 
struct  _PS_CREATE_NOTIFY_INFO
 

Macros

#define IMAGE_ADDRESSING_MODE_32BIT   3
 
#define UUID_DEFINED
 

Typedefs

typedef enum _BUS_DATA_TYPE BUS_DATA_TYPE
 
typedef enum _BUS_DATA_TYPEPBUS_DATA_TYPE
 
typedef struct _CONFIGURATION_INFORMATION CONFIGURATION_INFORMATION
 
typedef struct _CONFIGURATION_INFORMATIONPCONFIGURATION_INFORMATION
 
typedef enum _CONFIGURATION_TYPE CONFIGURATION_TYPE
 
typedef enum _CONFIGURATION_TYPEPCONFIGURATION_TYPE
 
typedef struct _IMAGE_INFO IMAGE_INFO
 
typedef struct _IMAGE_INFOPIMAGE_INFO
 
typedef enum _IO_NOTIFICATION_EVENT_CATEGORY IO_NOTIFICATION_EVENT_CATEGORY
 
typedef struct _FILE_VALID_DATA_LENGTH_INFORMATION FILE_VALID_DATA_LENGTH_INFORMATION
 
typedef struct _FILE_VALID_DATA_LENGTH_INFORMATIONPFILE_VALID_DATA_LENGTH_INFORMATION
 
typedef enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS
 
typedef struct _RTL_SPLAY_LINKS RTL_SPLAY_LINKS
 
typedef struct _RTL_SPLAY_LINKSPRTL_SPLAY_LINKS
 
typedef void void *typedef void *WINAPIPRTL_GENERIC_ALLOCATE_ROUTINE(struct _RTL_GENERIC_TABLE *, LONG)
 
typedef void(WINAPIPRTL_GENERIC_FREE_ROUTINE) (struct _RTL_GENERIC_TABLE *Table, void *)
 
typedef struct _RTL_GENERIC_TABLE RTL_GENERIC_TABLE
 
typedef RTL_GENERIC_TABLEPRTL_GENERIC_TABLE
 
typedef struct _RTL_BALANCED_LINKS RTL_BALANCED_LINKS
 
typedef RTL_BALANCED_LINKSPRTL_BALANCED_LINKS
 
typedef void void *typedef void *WINAPIPRTL_AVL_ALLOCATE_ROUTINE(struct _RTL_AVL_TABLE *, LONG)
 
typedef voidbuffer
 
typedef struct _RTL_AVL_TABLE RTL_AVL_TABLE
 
typedef struct _RTL_AVL_TABLEPRTL_AVL_TABLE
 
typedef struct _PS_CREATE_NOTIFY_INFO PS_CREATE_NOTIFY_INFO
 
typedef struct _PS_CREATE_NOTIFY_INFOPPS_CREATE_NOTIFY_INFO
 
typedef void(WINAPIPCREATE_PROCESS_NOTIFY_ROUTINE) (HANDLE, HANDLE, BOOLEAN)
 
typedef void(WINAPIPCREATE_PROCESS_NOTIFY_ROUTINE_EX) (PEPROCESS, HANDLE, PS_CREATE_NOTIFY_INFO *)
 
typedef void(WINAPIPCREATE_THREAD_NOTIFY_ROUTINE) (HANDLE, HANDLE, BOOLEAN)
 
typedef void(WINAPIPDRIVER_NOTIFICATION_CALLBACK_ROUTINE) (PVOID, PVOID)
 
typedef void(WINAPIPDRIVER_REINITIALIZE) (PDRIVER_OBJECT, PVOID, ULONG)
 
typedef void(WINAPIPLOAD_IMAGE_NOTIFY_ROUTINE) (PUNICODE_STRING, HANDLE, PIMAGE_INFO)
 
typedef NTSTATUS(WINAPIPIO_QUERY_DEVICE_ROUTINE) (PVOID, PUNICODE_STRING, INTERFACE_TYPE, ULONG, PKEY_VALUE_FULL_INFORMATION *, CONFIGURATION_TYPE, ULONG, PKEY_VALUE_FULL_INFORMATION *)
 
typedef EXPAND_STACK_CALLOUT * PEXPAND_STACK_CALLOUT
 
typedef GUID UUID
 

Enumerations

enum  _BUS_DATA_TYPE {
  ConfigurationSpaceUndefined = -1 , Cmos , EisaConfiguration , Pos ,
  CbusConfiguration , PCIConfiguration , VMEConfiguration , NuBusConfiguration ,
  PCMCIAConfiguration , MPIConfiguration , MPSAConfiguration , PNPISAConfiguration ,
  MaximumBusDataType
}
 
enum  _CONFIGURATION_TYPE {
  ArcSystem = 0 , CentralProcessor , FloatingPointProcessor , PrimaryIcache ,
  PrimaryDcache , SecondaryIcache , SecondaryDcache , SecondaryCache ,
  EisaAdapter , TcAdapter , ScsiAdapter , DtiAdapter ,
  MultiFunctionAdapter , DiskController , TapeController , CdromController ,
  WormController , SerialController , NetworkController , DisplayController ,
  ParallelController , PointerController , KeyboardController , AudioController ,
  OtherController , DiskPeripheral , FloppyDiskPeripheral , TapePeripheral ,
  ModemPeripheral , MonitorPeripheral , PrinterPeripheral , PointerPeripheral ,
  KeyboardPeripheral , TerminalPeripheral , OtherPeripheral , LinePeripheral ,
  NetworkPeripheral , SystemMemory , DockingInformation , RealModeIrqRoutingTable ,
  RealModePCIEnumeration , MaximumType
}
 
enum  _IO_NOTIFICATION_EVENT_CATEGORY { EventCategoryReserved , EventCategoryHardwareProfileChange , EventCategoryDeviceInterfaceChange , EventCategoryTargetDeviceChange }
 
enum  _RTL_GENERIC_COMPARE_RESULTS { GenericLessThan , GenericGreaterThan , GenericEqual }
 

Functions

typedef RTL_GENERIC_COMPARE_RESULTS (WINAPI *PRTL_GENERIC_COMPARE_ROUTINE)(struct _RTL_GENERIC_TABLE *
 
typedef void (WINAPI *PRTL_AVL_FREE_ROUTINE)(struct _RTL_AVL_TABLE *
 
typedef void (__stdcall EXPAND_STACK_CALLOUT)(void *)
 
NTSTATUS WINAPI ExUuidCreate (UUID *)
 
NTSTATUS WINAPI IoQueryDeviceDescription (PINTERFACE_TYPE, PULONG, PCONFIGURATION_TYPE, PULONG, PCONFIGURATION_TYPE, PULONG, PIO_QUERY_DEVICE_ROUTINE, PVOID)
 
void WINAPI IoRegisterBootDriverReinitialization (DRIVER_OBJECT *, PDRIVER_REINITIALIZE, void *)
 
void WINAPI IoRegisterDriverReinitialization (PDRIVER_OBJECT, PDRIVER_REINITIALIZE, PVOID)
 
NTSTATUS WINAPI IoRegisterShutdownNotification (PDEVICE_OBJECT)
 
BOOLEAN WINAPI KeAreApcsDisabled (void)
 
void WINAPI DECLSPEC_NORETURN KeBugCheck (ULONG)
 
NTSTATUS WINAPI KeExpandKernelStackAndCallout (PEXPAND_STACK_CALLOUT, void *, SIZE_T)
 
void WINAPI KeSetTargetProcessorDpc (PRKDPC, CCHAR)
 
BOOLEAN WINAPI MmIsAddressValid (void *)
 
HANDLE WINAPI PsGetProcessId (PEPROCESS)
 
void *WINAPI PsGetProcessSectionBaseAddress (PEPROCESS)
 
HANDLE WINAPI PsGetThreadId (PETHREAD)
 
HANDLE WINAPI PsGetThreadProcessId (PETHREAD)
 
NTSTATUS WINAPI PsRemoveLoadImageNotifyRoutine (PLOAD_IMAGE_NOTIFY_ROUTINE)
 
NTSTATUS WINAPI PsSetCreateProcessNotifyRoutine (PCREATE_PROCESS_NOTIFY_ROUTINE, BOOLEAN)
 
NTSTATUS WINAPI PsSetCreateProcessNotifyRoutineEx (PCREATE_PROCESS_NOTIFY_ROUTINE_EX, BOOLEAN)
 
NTSTATUS WINAPI PsSetCreateThreadNotifyRoutine (PCREATE_THREAD_NOTIFY_ROUTINE)
 
NTSTATUS WINAPI PsSetLoadImageNotifyRoutine (PLOAD_IMAGE_NOTIFY_ROUTINE)
 
void WINAPI RtlInitializeGenericTableAvl (PRTL_AVL_TABLE, PRTL_AVL_COMPARE_ROUTINE, PRTL_AVL_ALLOCATE_ROUTINE, PRTL_AVL_FREE_ROUTINE, void *)
 
void WINAPI RtlInsertElementGenericTableAvl (PRTL_AVL_TABLE, void *, ULONG, BOOL *)
 

Macro Definition Documentation

◆ IMAGE_ADDRESSING_MODE_32BIT

#define IMAGE_ADDRESSING_MODE_32BIT   3

Definition at line 110 of file ntddk.h.

◆ UUID_DEFINED

#define UUID_DEFINED

Definition at line 244 of file ntddk.h.

Typedef Documentation

◆ buffer

typedef void* buffer

Definition at line 198 of file ntddk.h.

◆ BUS_DATA_TYPE

◆ CONFIGURATION_INFORMATION

◆ CONFIGURATION_TYPE

◆ FILE_VALID_DATA_LENGTH_INFORMATION

◆ IMAGE_INFO

◆ IO_NOTIFICATION_EVENT_CATEGORY

◆ PBUS_DATA_TYPE

◆ PCONFIGURATION_INFORMATION

◆ PCONFIGURATION_TYPE

◆ PCREATE_PROCESS_NOTIFY_ROUTINE

typedef void(WINAPI * PCREATE_PROCESS_NOTIFY_ROUTINE) (HANDLE, HANDLE, BOOLEAN)

Definition at line 232 of file ntddk.h.

◆ PCREATE_PROCESS_NOTIFY_ROUTINE_EX

typedef void(WINAPI * PCREATE_PROCESS_NOTIFY_ROUTINE_EX) (PEPROCESS, HANDLE, PS_CREATE_NOTIFY_INFO *)

Definition at line 233 of file ntddk.h.

◆ PCREATE_THREAD_NOTIFY_ROUTINE

typedef void(WINAPI * PCREATE_THREAD_NOTIFY_ROUTINE) (HANDLE, HANDLE, BOOLEAN)

Definition at line 234 of file ntddk.h.

◆ PDRIVER_NOTIFICATION_CALLBACK_ROUTINE

typedef void(WINAPI * PDRIVER_NOTIFICATION_CALLBACK_ROUTINE) (PVOID, PVOID)

Definition at line 235 of file ntddk.h.

◆ PDRIVER_REINITIALIZE

typedef void(WINAPI * PDRIVER_REINITIALIZE) (PDRIVER_OBJECT, PVOID, ULONG)

Definition at line 236 of file ntddk.h.

◆ PEXPAND_STACK_CALLOUT

typedef EXPAND_STACK_CALLOUT* PEXPAND_STACK_CALLOUT

Definition at line 241 of file ntddk.h.

◆ PFILE_VALID_DATA_LENGTH_INFORMATION

◆ PIMAGE_INFO

◆ PIO_QUERY_DEVICE_ROUTINE

◆ PLOAD_IMAGE_NOTIFY_ROUTINE

typedef void(WINAPI * PLOAD_IMAGE_NOTIFY_ROUTINE) (PUNICODE_STRING, HANDLE, PIMAGE_INFO)

Definition at line 237 of file ntddk.h.

◆ PPS_CREATE_NOTIFY_INFO

◆ PRTL_AVL_ALLOCATE_ROUTINE

typedef void void* typedef void* WINAPI* PRTL_AVL_ALLOCATE_ROUTINE(struct _RTL_AVL_TABLE *, LONG)

Definition at line 196 of file ntddk.h.

◆ PRTL_AVL_TABLE

◆ PRTL_BALANCED_LINKS

Definition at line 190 of file ntddk.h.

◆ PRTL_GENERIC_ALLOCATE_ROUTINE

typedef void void* typedef void* WINAPI* PRTL_GENERIC_ALLOCATE_ROUTINE(struct _RTL_GENERIC_TABLE *, LONG)

Definition at line 166 of file ntddk.h.

◆ PRTL_GENERIC_FREE_ROUTINE

typedef void(WINAPI * PRTL_GENERIC_FREE_ROUTINE) (struct _RTL_GENERIC_TABLE *Table, void *)

Definition at line 167 of file ntddk.h.

◆ PRTL_GENERIC_TABLE

Definition at line 181 of file ntddk.h.

◆ PRTL_SPLAY_LINKS

◆ PS_CREATE_NOTIFY_INFO

◆ RTL_AVL_TABLE

◆ RTL_BALANCED_LINKS

◆ RTL_GENERIC_COMPARE_RESULTS

◆ RTL_GENERIC_TABLE

◆ RTL_SPLAY_LINKS

◆ UUID

typedef GUID UUID

Definition at line 245 of file ntddk.h.

Enumeration Type Documentation

◆ _BUS_DATA_TYPE

Enumerator
ConfigurationSpaceUndefined 
Cmos 
EisaConfiguration 
Pos 
CbusConfiguration 
PCIConfiguration 
VMEConfiguration 
NuBusConfiguration 
PCMCIAConfiguration 
MPIConfiguration 
MPSAConfiguration 
PNPISAConfiguration 
MaximumBusDataType 

Definition at line 32 of file ntddk.h.

◆ _CONFIGURATION_TYPE

Enumerator
ArcSystem 
CentralProcessor 
FloatingPointProcessor 
PrimaryIcache 
PrimaryDcache 
SecondaryIcache 
SecondaryDcache 
SecondaryCache 
EisaAdapter 
TcAdapter 
ScsiAdapter 
DtiAdapter 
MultiFunctionAdapter 
DiskController 
TapeController 
CdromController 
WormController 
SerialController 
NetworkController 
DisplayController 
ParallelController 
PointerController 
KeyboardController 
AudioController 
OtherController 
DiskPeripheral 
FloppyDiskPeripheral 
TapePeripheral 
ModemPeripheral 
MonitorPeripheral 
PrinterPeripheral 
PointerPeripheral 
KeyboardPeripheral 
TerminalPeripheral 
OtherPeripheral 
LinePeripheral 
NetworkPeripheral 
SystemMemory 
DockingInformation 
RealModeIrqRoutingTable 
RealModePCIEnumeration 
MaximumType 

Definition at line 64 of file ntddk.h.

◆ _IO_NOTIFICATION_EVENT_CATEGORY

Enumerator
EventCategoryReserved 
EventCategoryHardwareProfileChange 
EventCategoryDeviceInterfaceChange 
EventCategoryTargetDeviceChange 

Definition at line 136 of file ntddk.h.

◆ _RTL_GENERIC_COMPARE_RESULTS

Enumerator
GenericLessThan 
GenericGreaterThan 
GenericEqual 

Definition at line 149 of file ntddk.h.

Function Documentation

◆ ExUuidCreate()

NTSTATUS WINAPI ExUuidCreate ( UUID uuid)

ExUuidCreate (NTOSKRNL.@)

Creates a 128bit UUID.

RETURNS

STATUS_SUCCESS if successful. RPC_NT_UUID_LOCAL_ONLY if UUID is only locally unique.

NOTES

Follows RFC 4122, section 4.4 (Algorithms for Creating a UUID from Truly Random or Pseudo-Random Numbers)

Definition at line 4003 of file ntoskrnl.c.

References RtlGenRandom, and STATUS_SUCCESS.

◆ IoQueryDeviceDescription()

NTSTATUS WINAPI IoQueryDeviceDescription ( PINTERFACE_TYPE  itype,
PULONG  bus,
PCONFIGURATION_TYPE  ctype,
PULONG  cnum,
PCONFIGURATION_TYPE  ptype,
PULONG  pnum,
PIO_QUERY_DEVICE_ROUTINE  callout,
PVOID  context 
)

IoQueryDeviceDescription (NTOSKRNL.EXE.@)

Definition at line 1827 of file ntoskrnl.c.

References STATUS_NOT_IMPLEMENTED.

◆ IoRegisterBootDriverReinitialization()

void WINAPI IoRegisterBootDriverReinitialization ( DRIVER_OBJECT driver,
PDRIVER_REINITIALIZE  proc,
void ctx 
)

IoRegisterBootDriverReinitialization (NTOSKRNL.EXE.@)

Definition at line 1846 of file ntoskrnl.c.

References proc.

◆ IoRegisterDriverReinitialization()

void WINAPI IoRegisterDriverReinitialization ( PDRIVER_OBJECT  obj,
PDRIVER_REINITIALIZE  reinit,
PVOID  context 
)

IoRegisterDriverReinitialization (NTOSKRNL.EXE.@)

Definition at line 1838 of file ntoskrnl.c.

References obj.

◆ IoRegisterShutdownNotification()

NTSTATUS WINAPI IoRegisterShutdownNotification ( PDEVICE_OBJECT  obj)

IoRegisterShutdownNotification (NTOSKRNL.EXE.@)

Definition at line 1854 of file ntoskrnl.c.

References obj, and STATUS_SUCCESS.

◆ KeAreApcsDisabled()

BOOLEAN WINAPI KeAreApcsDisabled ( void  )

KeAreApcsDisabled (NTOSKRNL.@)

Definition at line 3341 of file ntoskrnl.c.

References _KTHREAD::critical_region, and KeGetCurrentThread().

◆ KeBugCheck()

void WINAPI DECLSPEC_NORETURN KeBugCheck ( ULONG  code)

KeBugCheck (NTOSKRNL.@)

Definition at line 3351 of file ntoskrnl.c.

References KeBugCheckEx().

◆ KeExpandKernelStackAndCallout()

NTSTATUS WINAPI KeExpandKernelStackAndCallout ( PEXPAND_STACK_CALLOUT  callout,
void parameter,
SIZE_T  size 
)

KeExpandKernelStackAndCallout (NTOSKRNL.EXE.@)

Definition at line 2570 of file ntoskrnl.c.

References KeExpandKernelStackAndCalloutEx(), NULL, and TRUE.

◆ KeSetTargetProcessorDpc()

void WINAPI KeSetTargetProcessorDpc ( PRKDPC  dpc,
CCHAR  number 
)

KeSetTargetProcessorDpc (NTOSKRNL.EXE.@)

Definition at line 3189 of file ntoskrnl.c.

◆ MmIsAddressValid()

BOOLEAN WINAPI MmIsAddressValid ( void )

◆ PsGetProcessId()

HANDLE WINAPI PsGetProcessId ( PEPROCESS  process)

PsGetProcessId (NTOSKRNL.@)

Definition at line 2283 of file ntoskrnl.c.

◆ PsGetProcessSectionBaseAddress()

void* WINAPI PsGetProcessSectionBaseAddress ( PEPROCESS  process)

◆ PsGetThreadId()

HANDLE WINAPI PsGetThreadId ( PETHREAD  thread)

PsGetThreadId (NTOSKRNL.@)

Definition at line 2387 of file ntoskrnl.c.

References thread::id.

◆ PsGetThreadProcessId()

HANDLE WINAPI PsGetThreadProcessId ( PETHREAD  thread)

PsGetThreadProcessId (NTOSKRNL.@)

Definition at line 2396 of file ntoskrnl.c.

References thread::id.

◆ PsRemoveLoadImageNotifyRoutine()

NTSTATUS WINAPI PsRemoveLoadImageNotifyRoutine ( PLOAD_IMAGE_NOTIFY_ROUTINE  routine)

PsRemoveLoadImageNotifyRoutine (NTOSKRNL.EXE.@)

Definition at line 3046 of file ntoskrnl.c.

References load_image_notify_routine_count, load_image_notify_routines, memmove(), STATUS_PROCEDURE_NOT_FOUND, and STATUS_SUCCESS.

◆ PsSetCreateProcessNotifyRoutine()

NTSTATUS WINAPI PsSetCreateProcessNotifyRoutine ( PCREATE_PROCESS_NOTIFY_ROUTINE  callback,
BOOLEAN  remove 
)

PsSetCreateProcessNotifyRoutine (NTOSKRNL.EXE.@)

Definition at line 3006 of file ntoskrnl.c.

References remove(), and STATUS_SUCCESS.

◆ PsSetCreateProcessNotifyRoutineEx()

NTSTATUS WINAPI PsSetCreateProcessNotifyRoutineEx ( PCREATE_PROCESS_NOTIFY_ROUTINE_EX  callback,
BOOLEAN  remove 
)

PsSetCreateProcessNotifyRoutineEx (NTOSKRNL.EXE.@)

Definition at line 3016 of file ntoskrnl.c.

References remove(), and STATUS_SUCCESS.

◆ PsSetCreateThreadNotifyRoutine()

NTSTATUS WINAPI PsSetCreateThreadNotifyRoutine ( PCREATE_THREAD_NOTIFY_ROUTINE  NotifyRoutine)

PsSetCreateThreadNotifyRoutine (NTOSKRNL.EXE.@)

Definition at line 3026 of file ntoskrnl.c.

References STATUS_SUCCESS.

◆ PsSetLoadImageNotifyRoutine()

NTSTATUS WINAPI PsSetLoadImageNotifyRoutine ( PLOAD_IMAGE_NOTIFY_ROUTINE  routine)

PsSetLoadImageNotifyRoutine (NTOSKRNL.EXE.@)

Definition at line 3223 of file ntoskrnl.c.

References ARRAY_SIZE, load_image_notify_routine_count, load_image_notify_routines, STATUS_INSUFFICIENT_RESOURCES, and STATUS_SUCCESS.

◆ RTL_GENERIC_COMPARE_RESULTS()

typedef RTL_GENERIC_COMPARE_RESULTS ( WINAPI PRTL_GENERIC_COMPARE_ROUTINE)

◆ RtlInitializeGenericTableAvl()

void WINAPI RtlInitializeGenericTableAvl ( PRTL_AVL_TABLE  table,
PRTL_AVL_COMPARE_ROUTINE  compare,
PRTL_AVL_ALLOCATE_ROUTINE  allocate,
PRTL_AVL_FREE_ROUTINE  free,
void context 
)

RtlInitializeGenericTableAvl (NTDLL.@)

Definition at line 2145 of file rtl.c.

References compare(), and free().

◆ RtlInsertElementGenericTableAvl()

void WINAPI RtlInsertElementGenericTableAvl ( PRTL_AVL_TABLE  table,
void buffer,
ULONG  size,
BOOL element 
)

RtlInsertElementGenericTableAvl (NTDLL.@)

Definition at line 2154 of file rtl.c.

◆ void() [1/2]

typedef void ( __stdcall  EXPAND_STACK_CALLOUT)

◆ void() [2/2]

typedef void ( WINAPI PRTL_AVL_FREE_ROUTINE)