Portability | portable |
---|---|
Maintainer | duncan@haskell.org |
Perform various checks on tar file entries.
- checkSecurity :: Entries -> Entries
- checkTarbomb :: FilePath -> Entries -> Entries
- checkPortability :: Entries -> Entries
Documentation
checkSecurity :: Entries -> EntriesSource
This function checks a sequence of tar entries for file name security problems. It checks that:
- file paths are not absolute
- file paths do not contain any path components that are "
..
" - file names are valid
These checks are from the perspective of the current OS. That means we check
for "C:blah
" files on Windows and "/blah" files on unix. For archive
entry types HardLink
and SymbolicLink
the same checks are done for the
link target. A failure in any entry terminates the sequence of entries with
an error.
checkTarbomb :: FilePath -> Entries -> EntriesSource