MCPcopy Create free account
hub / github.com/bobranten/Ext4Fsd / Ext2InitializeReparseData

Function Ext2InitializeReparseData

Ext4Fsd/fsctl.c:1343–1359  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1341}
1342
1343VOID
1344Ext2InitializeReparseData(IN PREPARSE_DATA_BUFFER RDB, USHORT PathBufferLength)
1345{
1346 ASSERT(FIELD_OFFSET(REPARSE_DATA_BUFFER, SymbolicLinkReparseBuffer.SubstituteNameOffset) ==
1347 REPARSE_DATA_BUFFER_HEADER_SIZE);
1348 RDB->ReparseTag = IO_REPARSE_TAG_SYMLINK;
1349 RDB->ReparseDataLength = FIELD_OFFSET(REPARSE_DATA_BUFFER, SymbolicLinkReparseBuffer.PathBuffer) -
1350 FIELD_OFFSET(REPARSE_DATA_BUFFER, GenericReparseBuffer.DataBuffer) +
1351 PathBufferLength * sizeof(WCHAR);
1352 RDB->Reserved = 0;
1353 RDB->SymbolicLinkReparseBuffer.SubstituteNameOffset = PathBufferLength;
1354 RDB->SymbolicLinkReparseBuffer.SubstituteNameLength = PathBufferLength;
1355 RDB->SymbolicLinkReparseBuffer.PrintNameOffset = 0;
1356 RDB->SymbolicLinkReparseBuffer.PrintNameLength = PathBufferLength;
1357 RDB->SymbolicLinkReparseBuffer.Flags = SYMLINK_FLAG_RELATIVE;
1358 RtlZeroMemory(&RDB->SymbolicLinkReparseBuffer.PathBuffer, PathBufferLength * 2);
1359}
1360
1361NTSTATUS
1362Ext2ReadSymlink (

Callers 1

Ext2GetReparsePointFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected