|
|
memcpy(SearchRecord->Filename, Entry->Filename, Entry->FilenameLength); | memcpy(SearchRecord->Filename, Entry->Filename, Entry->FilenameLength); |
SearchRecord->Filename[Entry->FilenameLength] = 0; | SearchRecord->Filename[Entry->FilenameLength] = 0; |
| |
|
if (strstr(SearchRecord->Filename,"..") || |
|
strchr(SearchRecord->Filename, '/') || |
|
strchr(SearchRecord->Filename, '\\')) |
|
{ |
|
printf("Filename contains invalid characters\n"); |
|
exit(1); |
|
} |
|
|
// Copy file parameters in the search_rec | // Copy file parameters in the search_rec |
SearchRecord->Attributes = Entry->FileAttributes; | SearchRecord->Attributes = Entry->FileAttributes; |
SearchRecord->FileSize = ENDIAN_SAFE32(Entry->FileSize); | SearchRecord->FileSize = ENDIAN_SAFE32(Entry->FileSize); |