[4/5] fs/ntfs3: Fixed overflow check in mi_enum_attr()

Message ID 92465892-aad4-428d-bcfe-03584d302bb5@paragon-software.com
State New
Headers
Series fs/ntfs3: Bugfix |

Commit Message

Konstantin Komarov Jan. 29, 2024, 8:09 a.m. UTC
  Reported-by: Robert Morris <rtm@csail.mit.edu>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
---
  fs/ntfs3/record.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

          t32 = sizeof(short) * attr->name_len;
  

Patch

diff --git a/fs/ntfs3/record.c b/fs/ntfs3/record.c
index 7b6423584eae..6aa3a9d44df1 100644
--- a/fs/ntfs3/record.c
+++ b/fs/ntfs3/record.c
@@ -279,7 +279,7 @@  struct ATTRIB *mi_enum_attr(struct mft_inode *mi, 
struct ATTRIB *attr)
          if (t16 > asize)
              return NULL;

-        if (t16 + le32_to_cpu(attr->res.data_size) > asize)
+        if (le32_to_cpu(attr->res.data_size) > asize - t16)
              return NULL;