ReactOS  0.4.13-dev-100-gc8611ae
pnp.c
Go to the documentation of this file.
1 /*
2  * COPYRIGHT: See COPYING in the top level directory
3  * PROJECT: ReactOS kernel
4  * FILE: drivers/filesystems/fastfat/pnp.c
5  * PURPOSE: VFAT Filesystem
6  * PROGRAMMER: Pierre Schweitzer
7  *
8  */
9 
10 /* INCLUDES *****************************************************************/
11 
12 #include "vfat.h"
13 
14 #define NDEBUG
15 #include <debug.h>
16 
17 /* FUNCTIONS ****************************************************************/
18 
21  PVFAT_IRP_CONTEXT IrpContext)
22 {
23  PVCB Vcb = NULL;
25 
26  /* PRECONDITION */
27  ASSERT(IrpContext);
28 
29  switch (IrpContext->Stack->MinorFunction)
30  {
36  break;
37 
38  default:
40  Vcb = (PVCB)IrpContext->Stack->DeviceObject->DeviceExtension;
41  IrpContext->Flags &= ~IRPCONTEXT_COMPLETE;
42  Status = IoCallDriver(Vcb->StorageDevice, IrpContext->Irp);
43  }
44 
45  return Status;
46 }
#define IRP_MN_CANCEL_REMOVE_DEVICE
#define IRP_MN_REMOVE_DEVICE
#define STATUS_NOT_IMPLEMENTED
Definition: ntstatus.h:225
#define IRPCONTEXT_COMPLETE
Definition: vfat.h:570
LONG NTSTATUS
Definition: precomp.h:26
Definition: cdstruc.h:504
#define IRP_MN_QUERY_REMOVE_DEVICE
PVOID DeviceExtension
Definition: env_spec_w32.h:418
smooth NULL
Definition: ftsmooth.c:416
#define IRP_MN_SURPRISE_REMOVAL
Definition: ntifs_ex.h:408
#define Vcb
Definition: cdprocs.h:1425
PDEVICE_OBJECT DeviceObject
Definition: iotypes.h:2866
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
struct _VCB * PVCB
Definition: fatstruc.h:553
Status
Definition: gdiplustypes.h:24
NTSTATUS VfatPnp(PVFAT_IRP_CONTEXT IrpContext)
Definition: pnp.c:20
NTSTATUS NTAPI IoCallDriver(IN PDEVICE_OBJECT DeviceObject, IN PIRP Irp)
Definition: irp.c:1218
#define IoSkipCurrentIrpStackLocation(Irp)
Definition: ntifs_ex.h:421
ULONG Flags
Definition: vfat.h:580
PIO_STACK_LOCATION Stack
Definition: vfat.h:582