2020-09-30 17:17:25 +02:00

47 lines
1.6 KiB
C

/*++
Copyright (c) 2000-2001 Microsoft Corporation
Module Name:
driver.c
Abstract:
This module implements routines that apply to the driver object including
initialization and IRP dispatch routines.
--*/
#include "udfx.h"
//
// Driver object for the UDF file system.
//
DECLSPEC_RDATA DRIVER_OBJECT UdfxDriverObject = {
NULL, // DriverStartIo
NULL, // DriverDeleteDevice
UdfxDismountVolume, // DriverDismountVolume
{
UdfxFsdCreate, // IRP_MJ_CREATE
UdfxFsdClose, // IRP_MJ_CLOSE
UdfxFsdRead, // IRP_MJ_READ
IoInvalidDeviceRequest, // IRP_MJ_WRITE
UdfxFsdQueryInformation, // IRP_MJ_QUERY_INFORMATION
UdfxFsdSetInformation, // IRP_MJ_SET_INFORMATION
IoInvalidDeviceRequest, // IRP_MJ_FLUSH_BUFFERS
UdfxFsdQueryVolumeInformation, // IRP_MJ_QUERY_VOLUME_INFORMATION
UdfxFsdDirectoryControl, // IRP_MJ_DIRECTORY_CONTROL
UdfxFsdFileSystemControl, // IRP_MJ_FILE_SYSTEM_CONTROL
UdfxFsdDeviceControl, // IRP_MJ_DEVICE_CONTROL
IoInvalidDeviceRequest, // IRP_MJ_INTERNAL_DEVICE_CONTROL
IoInvalidDeviceRequest, // IRP_MJ_SHUTDOWN
IoInvalidDeviceRequest, // IRP_MJ_CLEANUP
}
};
//
// All file system access is guarded by this single global lock.
//
INITIALIZED_CRITICAL_SECTION(UdfxGlobalMutex);