2001-05-01 23:08:21 +00:00
|
|
|
/* $Id: shutdown.c,v 1.4 2001/05/01 23:08:21 chorns Exp $
|
2000-12-29 13:45:01 +00:00
|
|
|
*
|
|
|
|
* COPYRIGHT: See COPYING in the top level directory
|
|
|
|
* PROJECT: ReactOS kernel
|
|
|
|
* FILE: services/fs/vfat/shutdown.c
|
|
|
|
* PURPOSE: VFAT Filesystem
|
|
|
|
* PROGRAMMER: Eric Kohl (ekohl@rz-online.de)
|
|
|
|
*/
|
|
|
|
|
|
|
|
/* INCLUDES *****************************************************************/
|
|
|
|
|
|
|
|
#include <ddk/ntddk.h>
|
|
|
|
|
2001-05-01 23:08:21 +00:00
|
|
|
#define NDEBUG
|
2000-12-29 13:45:01 +00:00
|
|
|
#include <debug.h>
|
|
|
|
|
|
|
|
#include "vfat.h"
|
|
|
|
|
|
|
|
/* FUNCTIONS ****************************************************************/
|
|
|
|
|
|
|
|
NTSTATUS STDCALL
|
|
|
|
VfatShutdown(PDEVICE_OBJECT DeviceObject, PIRP Irp)
|
|
|
|
{
|
|
|
|
NTSTATUS Status;
|
|
|
|
|
|
|
|
DPRINT("VfatShutdown(DeviceObject %x, Irp %x)\n",DeviceObject, Irp);
|
|
|
|
|
2001-01-14 15:28:50 +00:00
|
|
|
#if 0
|
|
|
|
/* FIXME: block new mount requests */
|
|
|
|
|
|
|
|
|
|
|
|
/* FIXME: Traverse list of logical volumes. For each volume: */
|
|
|
|
{
|
|
|
|
/* FIXME: acquire vcb resource exclusively */
|
|
|
|
|
|
|
|
/* FIXME: Flush logical volume */
|
|
|
|
|
|
|
|
/* FIXME: send IRP_MJ_SHUTDOWN to each volume */
|
|
|
|
|
|
|
|
/* FIXME: wait for completion of IRP_MJ_SHUTDOWN */
|
|
|
|
|
|
|
|
/* FIXME: release vcb resource */
|
|
|
|
}
|
|
|
|
|
|
|
|
#endif
|
2000-12-29 13:45:01 +00:00
|
|
|
|
|
|
|
Status = STATUS_SUCCESS;
|
|
|
|
|
|
|
|
Irp->IoStatus.Status = Status;
|
|
|
|
Irp->IoStatus.Information = 0;
|
|
|
|
|
|
|
|
IoCompleteRequest(Irp, IO_NO_INCREMENT);
|
|
|
|
return(Status);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* EOF */
|