75{
79
81
82 DPRINT(
"%s(%p, %p) Minor - %X\n",
84 FdoExt,
87
89 {
91 {
94 else
96
98 }
99
101 {
103
105 break;
106
110 if (!DeviceRelations)
111 {
114 }
115
116 DeviceRelations->
Count = 0;
117
120 break;
121 }
122
124 {
128
131
133 }
134
136 {
139 break;
140 }
141
143 {
146 {
147 break;
148 }
150 {
152 }
153
155 break;
156 }
157
164 {
166 break;
167 }
168
169 default:
170 break;
171 }
172
175
180}
static PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(PIRP Irp)
#define STATUS_NOT_SUPPORTED
#define NT_SUCCESS(StatCode)
NTSTATUS IsaFdoQueryInterface(_In_ PISAPNP_FDO_EXTENSION FdoExt, _In_ PIO_STACK_LOCATION IrpSp)
_In_ PIO_STACK_LOCATION IrpSp
VOID CompleteIrp(IN PIRP Irp, IN NTSTATUS Status, IN ULONG_PTR Information)
#define ExAllocatePoolWithTag(hernya, size, tag)
#define IRP_MN_SURPRISE_REMOVAL
VOID NTAPI IoDetachDevice(IN PDEVICE_OBJECT TargetDevice)
VOID NTAPI IoDeleteDevice(IN PDEVICE_OBJECT DeviceObject)
BOOLEAN NTAPI IoForwardIrpSynchronously(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
union _IO_STACK_LOCATION::@1579 Parameters
struct _IO_STACK_LOCATION::@3978::@4003 QueryDeviceRelations
ISAPNP_COMMON_EXTENSION Common
#define FIELD_OFFSET(t, f)
#define STATUS_UNSUCCESSFUL
#define IRP_MN_CANCEL_STOP_DEVICE
#define IRP_MN_QUERY_PNP_DEVICE_STATE
#define PNP_DEVICE_NOT_DISABLEABLE
#define IRP_MN_QUERY_INTERFACE
#define IRP_MN_START_DEVICE
#define IRP_MN_REMOVE_DEVICE
#define IRP_MN_QUERY_DEVICE_RELATIONS
#define IRP_MN_QUERY_STOP_DEVICE
#define IRP_MN_CANCEL_REMOVE_DEVICE
#define IRP_MN_STOP_DEVICE
#define IRP_MN_QUERY_REMOVE_DEVICE