summaryrefslogtreecommitdiff
path: root/tar
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-12-09 15:52:38 +0100
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2019-12-09 15:56:01 +0100
commitdad9228494e3cc03dc477e8109f43119390b53c4 (patch)
tree17d4c2729d331e3858f5184703bd85744448b6d1 /tar
parent6d7db2bd7ce39621f27f9f669690ab606ddc1787 (diff)
Only check for OS specific bad filenames when unpacking
When converting a SquashFS image to a tarball, it makes no sense to refuse conversion if the filename is considered evil by the OS. This patch adds an option to is_filename_sane to check if the OS has a problem with the given file name. sqfs2tar sets it to false and converts everything while rdsquashfs sets it to true when unpacking. Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'tar')
-rw-r--r--tar/sqfs2tar.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tar/sqfs2tar.c b/tar/sqfs2tar.c
index 8cfad62..6767b95 100644
--- a/tar/sqfs2tar.c
+++ b/tar/sqfs2tar.c
@@ -311,7 +311,7 @@ static int write_tree_dfs(const sqfs_tree_node_t *n)
name[len] = '/';
name[len + 1] = '\0';
} else {
- if (!is_filename_sane((const char *)n->name)) {
+ if (!is_filename_sane((const char *)n->name, false)) {
fprintf(stderr, "Found a file named '%s', skipping.\n",
n->name);
if (dont_skip) {