#include "UdfProcs.h"
Go to the source code of this file.
Defines | |
#define | BugCheckFileId (UDFS_BUG_CHECK_CREATE) |
#define | Dbg (UDFS_DEBUG_LEVEL_CREATE) |
Functions | |
NTSTATUS | UdfNormalizeFileNames (IN PIRP_CONTEXT IrpContext, IN PVCB Vcb, IN BOOLEAN OpenByFileId, IN BOOLEAN IgnoreCase, IN TYPE_OF_OPEN RelatedTypeOfOpen, IN PCCB RelatedCcb OPTIONAL, IN PUNICODE_STRING RelatedFileName OPTIONAL, IN OUT PUNICODE_STRING FileName, IN OUT PUNICODE_STRING RemainingName) |
NTSTATUS | UdfOpenExistingFcb (IN PIRP_CONTEXT IrpContext, IN PIO_STACK_LOCATION IrpSp, IN OUT PFCB *CurrentFcb, IN PLCB OpenLcb, IN TYPE_OF_OPEN TypeOfOpen, IN BOOLEAN IgnoreCase, IN PCCB RelatedCcb OPTIONAL) |
NTSTATUS | UdfOpenObjectByFileId (IN PIRP_CONTEXT IrpContext, IN PIO_STACK_LOCATION IrpSp, IN PVCB Vcb, IN OUT PFCB *CurrentFcb) |
NTSTATUS | UdfOpenObjectFromDirContext (IN PIRP_CONTEXT IrpContext, IN PIO_STACK_LOCATION IrpSp, IN PVCB Vcb, IN OUT PFCB *CurrentFcb, IN BOOLEAN ShortNameMatch, IN BOOLEAN IgnoreCase, IN PDIR_ENUM_CONTEXT DirContext, IN BOOLEAN PerformUserOpen, IN PCCB RelatedCcb OPTIONAL) |
NTSTATUS | UdfCompleteFcbOpen (IN PIRP_CONTEXT IrpContext, PIO_STACK_LOCATION IrpSp, IN PVCB Vcb, IN OUT PFCB *CurrentFcb, IN PLCB OpenLcb, IN TYPE_OF_OPEN TypeOfOpen, IN ULONG UserCcbFlags, IN ACCESS_MASK DesiredAccess) |
NTSTATUS | UdfCommonCreate (IN PIRP_CONTEXT IrpContext, IN PIRP Irp) |
|
Definition at line 28 of file udfs/create.c. |
|
Definition at line 34 of file udfs/create.c. |
|
Definition at line 108 of file udfs/create.c. References ASSERT, BooleanFlagOn, DIR_ENUM_CONTEXT, FALSE, _DIR_ENUM_CONTEXT::Fid, _FCB::FileAttributes, FileName, _FILE_OBJECT::FileName, _IO_STACK_LOCATION::FileObject, FlagOn, _IO_STACK_LOCATION::Flags, NSR_FID::Flags, IoGetCurrentIrpStackLocation, Irp, IRP_CONTEXT_FLAG_TRAIL_BACKSLASH, IRP_CONTEXT_FLAG_WAIT, NSR_FID_F_DIRECTORY, NT_SUCCESS, NTSTATUS(), NULL, _DIR_ENUM_CONTEXT::ObjectName, PAGED_CODE, _IO_STACK_LOCATION::Parameters, _FILE_OBJECT::RelatedFileObject, _VCB::RootIndexFcb, SafeNodeType, SL_CASE_SENSITIVE, SL_OPEN_PAGING_FILE, SL_OPEN_TARGET_DIRECTORY, Status, TRUE, try_leave, TYPE_OF_OPEN, UdfAcquireFcbExclusive, UdfAcquireVcbExclusive, UdfAcquireVcbShared, UdfCandidateShortName(), UdfCleanupDirContext(), UdfCompleteRequest(), UdfDecodeFileObject(), UdfDissectName(), UdfFindDirEntry(), UdfFindPrefix(), UdfInitializeDirContext(), UdfNormalizeFileNames(), UdfOpenExistingFcb(), UdfOpenObjectByFileId(), UdfOpenObjectFromDirContext(), UdfRaiseStatus(), UdfReleaseFcb, UdfReleaseVcb, UDFS_NTC_FCB_DATA, UdfTeardownStructures(), UdfVerifyVcb(), UnopenedFileObject, UserDirectoryOpen, UserFileOpen, UserVolumeOpen, VCB_STATE_LOCKED, _VCB::VcbState, _VCB::VolumeDasdFcb, and _FILE_OBJECT::Vpb. Referenced by UdfFsdDispatch(), and UdfFspDispatch().
|
|
Definition at line 1955 of file udfs/create.c. References Dbg, DebugTrace, FALSE, FastIoIsNotPossible, _FCB::FcbCleanup, _FCB::FcbNonpaged, _FCB::FcbReference, _FCB::FcbUserReference, _IO_STACK_LOCATION::FileObject, FlagOn, _FILE_OBJECT::Flags, FO_CACHE_SUPPORTED, FO_NO_INTERMEDIATE_BUFFERING, FsRtlCheckOplock(), FsRtlCurrentBatchOplock(), IoCheckShareAccess(), IoSetShareAccess(), IoUpdateShareAccess(), IRP_CONTEXT_FLAG_WAIT, NT_SUCCESS, NTSTATUS(), NULL, PAGED_CODE, _IO_STACK_LOCATION::Parameters, _FILE_OBJECT::SectionObjectPointer, _FCB_NONPAGED::SegmentObject, SetFlag, _FCB::ShareAccess, Status, TRUE, UdfCreateCcb(), UdfFspClose(), UdfIncrementCleanupCounts, UdfIncrementReferenceCounts, UdfIsFastIoPossible, UdfLockFcb, UdfLockVcb, UdfOplockComplete(), UdfPrePostIrp(), UdfPurgeVolume(), UdfRaiseStatus(), UdfSetFileObject(), UdfUnlockFcb, UdfUnlockVcb, UserFileOpen, UserVolumeOpen, and VCB_STATE_LOCKED. Referenced by UdfOpenExistingFcb(), UdfOpenObjectByFileId(), and UdfOpenObjectFromDirContext().
|
|
Definition at line 809 of file udfs/create.c. References Add2Ptr, CCB_FLAG_OPEN_BY_ID, ExFreePool(), FILE_ID, FileName, FlagOn, FsRtlAllocatePoolWithTag, FsRtlDoesNameContainWildCards(), IRP_CONTEXT_FLAG_FULL_NAME, IRP_CONTEXT_FLAG_TRAIL_BACKSLASH, L, NULL, PAGED_CODE, SetFlag, TAG_FILE_NAME, UdfPagedPool, UdfUpcaseName(), UnopenedFileObject, UserDirectoryOpen, UserFileOpen, UserVolumeOpen, and USHORT. Referenced by UdfCommonCreate().
|
|
Definition at line 1522 of file udfs/create.c. References ASSERT_EXCLUSIVE_FCB, ASSERT_IRP_CONTEXT, ASSERT_OPTIONAL_CCB, CCB_FLAG_IGNORE_CASE, CCB_FLAG_OPEN_BY_ID, CCB_FLAG_OPEN_RELATIVE_BY_ID, FlagOn, NTSTATUS(), PAGED_CODE, SetFlag, Status, UdfCompleteFcbOpen(), and UdfIllegalFcbAccess(). Referenced by UdfCommonCreate().
|
|
Definition at line 1244 of file udfs/create.c. References ASSERT_IRP_CONTEXT, ASSERT_VCB, CCB_FLAG_OPEN_BY_ID, FALSE, FCB_STATE_INITIALIZED, _FCB::FcbReference, _FCB::FcbState, FILE_ID, _FCB::FileAttributes, _FCB::FileId, FlagOn, ICB_SEARCH_CONTEXT, IRP_CONTEXT_FLAG_WAIT, NODE_TYPE_CODE, NTSTATUS(), NULL, PAGED_CODE, Status, TRUE, try_leave, TYPE_OF_OPEN, UdfAcquireFcbExclusive, UdfCleanupIcbContext(), UdfCompleteFcbOpen(), UdfCreateFcb(), UdfDeleteFcb(), UdfExceptionFilter(), UdfGetFidReservedZero, UdfIllegalFcbAccess(), UdfInitializeFcbFromIcbContext(), UdfInitializeIcbContextFromFcb(), UdfIsFidDirectory, UdfLockVcb, UdfLookupActiveIcb(), UdfRaiseStatus(), UDFS_NTC_FCB_DATA, UDFS_NTC_FCB_INDEX, UdfUnlockVcb, UserDirectoryOpen, and UserFileOpen. Referenced by UdfCommonCreate().
|
|
Definition at line 1632 of file udfs/create.c. References CCB_FLAG_IGNORE_CASE, CCB_FLAG_OPEN_BY_ID, CCB_FLAG_OPEN_RELATIVE_BY_ID, Dbg, DebugTrace, FALSE, FCB_STATE_INITIALIZED, _FCB::FcbReference, _FCB::FcbState, _FCB::FcbUserReference, FILE_ID, FlagOn, NODE_TYPE_CODE, NSR_FID_F_DIRECTORY, NTSTATUS(), NULL, PAGED_CODE, _FCB::RootExtentLength, SetFlag, Status, TRUE, TYPE_OF_OPEN, UdfAcquireFcbExclusive, UdfCleanupIcbContext(), UdfCompleteFcbOpen(), UdfCreateFcb(), UdfDeleteFcb(), UdfIllegalFcbAccess(), UdfIncrementReferenceCounts, UdfInitializeFcbFromIcbContext(), UdfInitializeIcbContextFromFcb(), UdfInitializeLcbFromDirContext(), UdfInsertPrefix(), UdfLockVcb, UdfLookupActiveIcb(), UdfReleaseFcb, UDFS_NTC_FCB_DATA, UDFS_NTC_FCB_INDEX, UdfSetFidDirectory, UdfSetFidFromLbAddr, UdfUnlockVcb, UserDirectoryOpen, and UserFileOpen. Referenced by UdfCommonCreate().
|