From 75b68ba59de0399b1479d134591281e39dd45dfd Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Fri, 28 Oct 2022 12:26:35 -0400 Subject: [PATCH] NTFS: Account for null-termination of strings when checking buffer sizes. May fix #18021. --- src/add-ons/kernel/file_systems/ntfs/kernel_interface.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/add-ons/kernel/file_systems/ntfs/kernel_interface.cpp b/src/add-ons/kernel/file_systems/ntfs/kernel_interface.cpp index 1022b4a9c2..5b7214d0f1 100644 --- a/src/add-ons/kernel/file_systems/ntfs/kernel_interface.cpp +++ b/src/add-ons/kernel/file_systems/ntfs/kernel_interface.cpp @@ -1223,7 +1223,7 @@ fs_read_dir(fs_volume* _volume, fs_vnode* _node, void* _cookie, uint32 count = 0; while (count < maxCount && bufferSize > sizeof(struct dirent)) { size_t length = bufferSize - offsetof(struct dirent, d_name); - if (length < cookie->current->name_length) { + if (length < (cookie->current->name_length + 1)) { // the remaining name buffer length is too small if (count == 0) return B_BUFFER_OVERFLOW;