in src/Test.FunctionalTests.Sarif/v1/ConverterTestData/StaticDriverVerifier/src/sdv/sdv-harness.c [5307:6090]
void sdv_main()
{
UNICODE_STRING u;
NTSTATUS status;
LONG choice;
BOOLEAN sdv_dispatch_routines;
BOOLEAN sdv_startio_routines;
BOOLEAN sdv_dpc_routines;
BOOLEAN sdv_isr_routines;
BOOLEAN sdv_cancel_routines;
BOOLEAN sdv_io_dpc_routines;
BOOLEAN sdv_io_completion_routines;
BOOLEAN sdv_io_worker_routines;
BOOLEAN sdv_check_adddevice;
BOOLEAN sdv_check_Irp_Mj_Pnp;
BOOLEAN sdv_check_Irp_Mj_Power;
BOOLEAN sdv_check_driver_unload;
PIO_WORKITEM IoWorkItem;
PIO_WORKITEM_ROUTINE WorkerRoutine;
PIO_WORKITEM_ROUTINE_EX WorkerRoutineEx;
WORK_QUEUE_TYPE QueueType;
PVOID IoObject;
PVOID Context;
#ifdef SDV_NO_DEBUGGER_ATTACHED_OR_ENABLED
KD_DEBUGGER_ENABLED=0;
KD_DEBUGGER_NOT_PRESENT=1;
#endif
/* Suppress C4101: Unreferenced local variable.
Certain flawors of the OS Model does not reference u and status.
Reference them explicitly to suppress warning: */
u;
status;
#ifdef SDV_DEVICE_FLAGS
sdv_p_devobj_fdo->Flags = DO_DEVICE_INITIALIZING;
sdv_p_devobj_child_pdo->Flags = DO_DEVICE_INITIALIZING;
#endif
sdv_dispatch_routines=sdv_CheckDispatchRoutines();
sdv_startio_routines=sdv_CheckStartIoRoutines();
sdv_dpc_routines=sdv_CheckDpcRoutines();
sdv_isr_routines=sdv_CheckIsrRoutines();
sdv_cancel_routines=sdv_CheckCancelRoutines();
sdv_io_dpc_routines=sdv_CheckIoDpcRoutines();
sdv_io_completion_routines=sdv_IoCompletionRoutines();
sdv_io_worker_routines=sdv_CheckWorkerRoutines();
sdv_check_adddevice=sdv_CheckAddDevice();
sdv_check_Irp_Mj_Pnp=sdv_CheckIrpMjPnp();
sdv_check_Irp_Mj_Power=sdv_CheckIrpMjPower();
sdv_check_driver_unload=sdv_CheckDriverUnload();
choice = SdvMakeChoice();
switch (choice) {
/*****************************************************************************
For all the harness(es):
SDV_FLAT_DISPATCH_HARNESS
SDV_FLAT_DISPATCH_STARTIO_HARNESS
SDV_FLAT_SIMPLE_HARNESS
SDV_FLAT_HARNESS
Exercise:
sdv_RunDispatchFunction ||
*****************************************************************************/
case 0:
if(sdv_dispatch_routines)
{
sdv_stub_driver_init();
sdv_RunDispatchFunction(sdv_p_devobj_fdo, sdv_irp);
}
break;
/*****************************************************************************
Additionally for the harness(es):
SDV_FLAT_DISPATCH_STARTIO_HARNESS
SDV_FLAT_SIMPLE_HARNESS
SDV_FLAT_HARNESS
Exercise:
sdv_RunStartIo ||
*****************************************************************************/
#if (SDV_HARNESS!=SDV_FLAT_DISPATCH_HARNESS)
case 1:
if(sdv_startio_routines)
{
sdv_stub_driver_init();
sdv_RunStartIo(sdv_p_devobj_fdo, sdv_irp);
}
break;
/*****************************************************************************
Additionally for the harness(es):
SDV_FLAT_SIMPLE_HARNESS
SDV_FLAT_HARNESS
Exercise:
sdv_RunDPC ||
sdv_RunISR ||
sdv_RunWorkerThreads ||
sdv_RunIoDpcs
*****************************************************************************/
#if (SDV_HARNESS!=SDV_FLAT_DISPATCH_STARTIO_HARNESS)
#ifndef SDV_FLAT_HARNESS_NO_DPC
case 2:
#ifdef fun_KDEFERRED_ROUTINE_1
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_1(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 3:
#ifdef fun_KDEFERRED_ROUTINE_2
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_2(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 4:
#ifdef fun_KDEFERRED_ROUTINE_3
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_3(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 5:
#ifdef fun_KDEFERRED_ROUTINE_4
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_4(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 6:
#ifdef fun_KDEFERRED_ROUTINE_5
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_5(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 7:
#ifdef fun_KDEFERRED_ROUTINE_6
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_6(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 8:
#ifdef fun_KDEFERRED_ROUTINE_7
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_7(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 9:
#ifdef fun_KDEFERRED_ROUTINE_8
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_8(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 10:
#ifdef fun_KDEFERRED_ROUTINE_9
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_KDEFERRED_ROUTINE_9(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
#endif
#ifndef SDV_FLAT_HARNESS_NO_ISR
case 11:
#ifdef fun_KSERVICE_ROUTINE_1
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_1(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 12:
#ifdef fun_KSERVICE_ROUTINE_2
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_2(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 13:
#ifdef fun_KSERVICE_ROUTINE_3
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_3(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 14:
#ifdef fun_KSERVICE_ROUTINE_4
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_4(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 15:
#ifdef fun_KSERVICE_ROUTINE_5
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_5(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 16:
#ifdef fun_KSERVICE_ROUTINE_6
SDV_IRQL_PUSH(SDV_DIRQL);
fun_KSERVICE_ROUTINE_6(sdv_kinterrupt,sdv_pv1);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 17:
#ifdef fun_WORKER_THREAD_ROUTINE_1
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_1(sdv_pv2);
#endif
break;
case 18:
#ifdef fun_WORKER_THREAD_ROUTINE_2
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_2(sdv_pv2);
#endif
break;
case 19:
#ifdef fun_WORKER_THREAD_ROUTINE_3
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_3(sdv_pv2);
#endif
break;
case 20:
#ifdef fun_WORKER_THREAD_ROUTINE_4
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_4(sdv_pv2);
#endif
break;
case 21:
#ifdef fun_WORKER_THREAD_ROUTINE_5
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_5(sdv_pv2);
#endif
break;
case 22:
#ifdef fun_WORKER_THREAD_ROUTINE_6
SDV_IRQL_POPTO(PASSIVE_LEVEL);
fun_WORKER_THREAD_ROUTINE_6(sdv_pv2);
#endif
break;
#endif
#ifndef SDV_FLAT_HARNESS_NO_KE_DPC
case 23:
#ifdef fun_IO_DPC_ROUTINE_1
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_1(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 24:
#ifdef fun_IO_DPC_ROUTINE_2
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_2(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 25:
#ifdef fun_IO_DPC_ROUTINE_3
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_3(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 26:
#ifdef fun_IO_DPC_ROUTINE_4
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_4(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 27:
#ifdef fun_IO_DPC_ROUTINE_5
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_5(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
case 28:
#ifdef fun_IO_DPC_ROUTINE_6
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_DPC_ROUTINE_6(sdv_kdpc,sdv_pDpcContext,sdv_pv2,sdv_pv3);
SDV_IRQL_POPTO(PASSIVE_LEVEL);
#endif
break;
#endif
#ifndef SDV_FLAT_HARNESS_CANCEL_ROUTINE
case 29:
#ifdef fun_DRIVER_CANCEL_1
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_1(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 30:
#ifdef fun_DRIVER_CANCEL_2
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_2(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 31:
#ifdef fun_DRIVER_CANCEL_3
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_3(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 32:
#ifdef fun_DRIVER_CANCEL_4
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_4(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 33:
#ifdef fun_DRIVER_CANCEL_5
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_5(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 34:
#ifdef fun_DRIVER_CANCEL_6
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_6(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
case 35:
#ifdef fun_DRIVER_CANCEL_7
SDV_MACRO_STUB_CANCEL_BEGIN(sdv_irp);
fun_DRIVER_CANCEL_7(sdv_p_devobj_fdo, sdv_irp);
SDV_MACRO_STUB_CANCEL_END(sdv_irp);
#endif
break;
#endif
#ifndef SDV_HARNESS_COMPLETION_ROUTINE
case 36:
#ifdef fun_IO_COMPLETION_ROUTINE_1
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_1(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 37:
#ifdef fun_IO_COMPLETION_ROUTINE_2
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_2(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 38:
#ifdef fun_IO_COMPLETION_ROUTINE_3
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_3(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 39:
#ifdef fun_IO_COMPLETION_ROUTINE_4
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_4(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 40:
#ifdef fun_IO_COMPLETION_ROUTINE_5
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_5(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 41:
#ifdef fun_IO_COMPLETION_ROUTINE_6
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_6(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 42:
#ifdef fun_IO_COMPLETION_ROUTINE_7
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_7(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 43:
#ifdef fun_IO_COMPLETION_ROUTINE_8
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_8(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 44:
#ifdef fun_IO_COMPLETION_ROUTINE_9
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_9(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 45:
#ifdef fun_IO_COMPLETION_ROUTINE_10
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_10(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 46:
#ifdef fun_IO_COMPLETION_ROUTINE_11
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_11(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
case 47:
#ifdef fun_IO_COMPLETION_ROUTINE_12
SDV_IRQL_PUSH(DISPATCH_LEVEL);
fun_IO_COMPLETION_ROUTINE_12(sdv_p_devobj_fdo,sdv_irp,sdv_pv2);
SDV_IRQL_POP();
#endif
break;
#endif
case 48:
#ifdef fun_REQUEST_POWER_COMPLETE_1
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_1(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 49:
#ifdef fun_REQUEST_POWER_COMPLETE_2
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_2(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 50:
#ifdef fun_REQUEST_POWER_COMPLETE_3
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation=sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_3(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 51:
#ifdef fun_REQUEST_POWER_COMPLETE_4
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_4(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 52:
#ifdef fun_REQUEST_POWER_COMPLETE_5
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_5(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 53:
#ifdef fun_REQUEST_POWER_COMPLETE_6
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_6(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 54:
#ifdef fun_REQUEST_POWER_COMPLETE_7
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_7(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 55:
#ifdef fun_REQUEST_POWER_COMPLETE_8
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_8(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 56:
#ifdef fun_REQUEST_POWER_COMPLETE_9
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_9(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
case 57:
#ifdef fun_REQUEST_POWER_COMPLETE_10
sdv_stub_power_completion_begin();
sdv_irp->Tail.Overlay.CurrentStackLocation =sdv_SetPowerRequestIrpMinorFunction(sdv_irp);
fun_REQUEST_POWER_COMPLETE_10(sdv_p_devobj_fdo,sdv_irp->Tail.Overlay.CurrentStackLocation->MinorFunction,sdv_irp->Tail.Overlay.CurrentStackLocation->Parameters.Power.State,sdv_pv2,&sdv_irp->IoStatus);
SDV_IRQL_POP();
#endif
break;
#ifndef SDV_FLAT_HARNESS_NO_KE_WORK_ITEMS
case 58:
#ifdef fun_IO_WORKITEM_ROUTINE_1
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_1(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 59:
#ifdef fun_IO_WORKITEM_ROUTINE_2
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_2(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 60:
#ifdef fun_IO_WORKITEM_ROUTINE_3
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_3(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 61:
#ifdef fun_IO_WORKITEM_ROUTINE_4
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_4(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 62:
#ifdef fun_IO_WORKITEM_ROUTINE_5
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_5(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 63:
#ifdef fun_IO_WORKITEM_ROUTINE_6
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_6(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 64:
#ifdef fun_IO_WORKITEM_ROUTINE_7
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_7(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 65:
#ifdef fun_IO_WORKITEM_ROUTINE_8
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_8(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 66:
#ifdef fun_IO_WORKITEM_ROUTINE_9
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_9(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 67:
#ifdef fun_IO_WORKITEM_ROUTINE_10
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_10(sdv_p_devobj_fdo,Context);
SDV_IRQL_POP();
#endif
break;
case 68:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_1
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_1(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 69:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_2
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_2(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 70:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_3
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_3(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 71:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_4
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_4(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 72:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_5
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_5(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 73:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_6
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_6(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 74:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_7
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_7(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 75:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_8
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_8(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 76:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_9
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_9(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
case 77:
#ifdef fun_IO_WORKITEM_ROUTINE_EX_10
SDV_IRQL_PUSH(PASSIVE_LEVEL);
fun_IO_WORKITEM_ROUTINE_EX_10(IoObject,Context,IoWorkItem);
SDV_IRQL_POP();
#endif
break;
#endif
case 78:
#ifdef fun_PO_FX_COMPONENT_IDLE_STATE_CALLBACK
sdv_stub_power_runtime_begin();
fun_PO_FX_COMPONENT_IDLE_STATE_CALLBACK(Context,sdv_PoRuntime_Component,sdv_PoRuntime_State);
SDV_IRQL_POP();
#endif
break;
case 79:
#ifdef fun_PO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK
sdv_stub_power_runtime_begin();
fun_PO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK(Context,sdv_PoRuntime_Component,sdv_PoRuntime_State);
SDV_IRQL_POP();
#endif
break;
case 80:
#ifdef fun_PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK
sdv_stub_power_runtime_begin();
fun_PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK(Context,sdv_PoRuntime_Component);
SDV_IRQL_POP();
#endif
break;
case 81:
#ifdef fun_PO_FX_DEVICE_POWER_REQUIRED_CALLBACK
sdv_stub_power_runtime_begin();
fun_PO_FX_DEVICE_POWER_REQUIRED_CALLBACK(Context);
SDV_IRQL_POP();
#endif
break;
case 82:
#ifdef fun_PO_FX_POWER_CONTROL_CALLBACK
sdv_stub_power_runtime_begin();
status=fun_PO_FX_POWER_CONTROL_CALLBACK(sdv_PoRuntime_DeviceContext,
sdv_PoRuntime_PowerControlCode,
sdv_PoRuntime_InBuffer,
sdv_PoRuntime_InBufferSize,
sdv_PoRuntime_OutBuffer,
sdv_PoRuntime_OutBufferSize,
sdv_PoRuntime_BytesReturned);
SDV_IRQL_POP();
#endif
break;
case 83:
#ifdef fun_PO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK
sdv_stub_power_runtime_critical_begin();
fun_PO_FX_COMPONENT_CRITICAL_TRANSITION_CALLBACK(Context,sdv_PoRuntime_Component,sdv_PoRuntime_Active);
SDV_IRQL_POP();
#endif
break;
case 84:
#ifdef fun_PO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK
sdv_stub_power_runtime_begin();
fun_PO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK(Context);
SDV_IRQL_POP();
#endif
break;
/*****************************************************************************
Additionally for the harness(es):
SDV_FLAT_HARNESS
Exercise:
DriverEntry ||
sdv_RunAddDevice ||
sdv_RunStartDevice ||
sdv_RunRemoveDevice ||
sdv_RunUnload
*****************************************************************************/
#if ( !SDV_IS_FLAT_SIMPLE_HARNESS() && SDV_HARNESS!=SDV_XFLAT_SIMPLE_HARNESS_CANCEL )
case 85:
sdv_inside_init_entrypoint = TRUE;
status = fun_DriverEntry(&sdv_driver_object, &u);
sdv_inside_init_entrypoint = FALSE;
break;
#ifndef SDV_FLAT_HARNESS_MODIFIER_NO_ADDDEVICE
#ifdef fun_AddDevice
case 86:
status = sdv_RunAddDevice(&sdv_driver_object,sdv_p_devobj_pdo);
break;
#endif
#endif
#ifdef fun_IRP_MJ_PNP
case 87:
sdv_stub_driver_init();
status = sdv_RunStartDevice(sdv_p_devobj_fdo, sdv_irp);
break;
#endif
#ifndef SDV_FLAT_HARNESS_MODIFIER_NO_REMOVE_DEVICE
#ifdef fun_IRP_MJ_PNP
case 88:
status = sdv_RunRemoveDevice(sdv_p_devobj_fdo, sdv_irp);
break;
#endif
#endif
#ifndef SDV_FLAT_HARNESS_MODIFIER_NO_UNLOAD
#ifdef fun_DriverUnload
case 89:
sdv_RunUnload(&sdv_driver_object);
break;
#endif
#endif
#endif
#endif
#endif
}
}