FsRtlRemoveDotsFromPath function (ntifs.h)
The FsRtlRemoveDotsFromPath routine removes unnecessary occurrences of '.' and '..' from the specified path.
Syntax
NTSTATUS FsRtlRemoveDotsFromPath(
[in, out] PWSTR OriginalString,
[in] USHORT PathLength,
[out] USHORT *NewLength
);
Parameters
[in, out] OriginalString
A pointer to the buffer to be processed.
[in] PathLength
The length of buffer (in bytes).
[out] NewLength
A pointer to the new length of the buffer, after processing.
Return value
The FsRtlRemoveDotsFromPath routine returns either STATUS_SUCCESS value for success or STATUS_IO_REPARSE_DATA_INVALID if the operation could not be completed.
Remarks
This routine would take a path as OriginalString like the following example:
\dir1\dir2\..\dir3\.\file.txt
The routine would modify OriginalString as follows:
\dir1\dir3\file.txt
The routine will fail with STATUS_IO_REPARSE_DATA_INVALID if any of the following strings are passed as OriginalString:
\..
..
..\anyOtherContent
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows Vista |
Target Platform | Universal |
Header | ntifs.h (include FltKernel.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI compliance rules | HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm) |