dosfstools/dosfstools-3.0.9-fix-alloc-rootdir-entry.patch
Jaroslav Škarvada 8de1eb801e - Fixed buffer overflow in alloc_rootdir_entry (#674095)
- Dropped fix-reclaim-file patch, obsoleted by fix-alloc-rootdir-entry patch
2011-02-14 15:43:34 +01:00

15 lines
583 B
Diff

--- dosfstools-3.0.9/src/check.c.old 2010-01-23 10:13:17.000000000 +0100
+++ dosfstools-3.0.9/src/check.c 2011-01-31 17:43:31.462674941 +0100
@@ -174,7 +174,10 @@
offset = fs->root_start+next_free*sizeof(DIR_ENT);
memset(de,0,sizeof(DIR_ENT));
while (1) {
- sprintf(de->name,pattern,curr_num);
+ char expanded[12];
+ sprintf(expanded, pattern, curr_num);
+ memcpy(de->name, expanded, 8);
+ memcpy(de->ext, expanded+8, 3);
for (scan = 0; scan < fs->root_entries; scan++)
if (scan != next_free &&
!strncmp(root[scan].name,de->name,MSDOS_NAME))