From: Pierre Schweitzer Date: Sat, 9 Dec 2017 11:45:16 +0000 (+0100) Subject: [FASTFAT] Fix size checking in VfatGetFileNameInformation() X-Git-Tag: 0.4.9-dev~717 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=28343c6c0c5ca7a91778fcf46f08e1cc6213272c;hp=9f3c80193e5f5d9c0497033322c515cdb3690e8c [FASTFAT] Fix size checking in VfatGetFileNameInformation() --- diff --git a/drivers/filesystems/fastfat/dir.c b/drivers/filesystems/fastfat/dir.c index 284c04bca10..1e657f19fda 100644 --- a/drivers/filesystems/fastfat/dir.c +++ b/drivers/filesystems/fastfat/dir.c @@ -101,17 +101,17 @@ VfatGetFileNameInformation( *Written = 0; Status = STATUS_BUFFER_OVERFLOW; - if (FIELD_OFFSET(FILE_NAMES_INFORMATION, FileName) > BufferLength) + if (FIELD_OFFSET(FILE_NAME_INFORMATION, FileName) > BufferLength) return Status; - if (First || (BufferLength >= FIELD_OFFSET(FILE_NAMES_INFORMATION, FileName) + DirContext->LongNameU.Length)) + if (First || (BufferLength >= FIELD_OFFSET(FILE_NAME_INFORMATION, FileName) + DirContext->LongNameU.Length)) { pInfo->FileNameLength = DirContext->LongNameU.Length; - *Written = FIELD_OFFSET(FILE_NAMES_INFORMATION, FileName); - if (BufferLength > FIELD_OFFSET(FILE_NAMES_INFORMATION, FileName)) + *Written = FIELD_OFFSET(FILE_NAME_INFORMATION, FileName); + if (BufferLength > FIELD_OFFSET(FILE_NAME_INFORMATION, FileName)) { - BytesToCopy = min(DirContext->LongNameU.Length, BufferLength - FIELD_OFFSET(FILE_NAMES_INFORMATION, FileName)); + BytesToCopy = min(DirContext->LongNameU.Length, BufferLength - FIELD_OFFSET(FILE_NAME_INFORMATION, FileName)); RtlCopyMemory(pInfo->FileName, DirContext->LongNameU.Buffer, BytesToCopy);