summaryrefslogtreecommitdiff
path: root/archival
diff options
context:
space:
mode:
authorRob Landley2006-07-06 20:30:19 +0000
committerRob Landley2006-07-06 20:30:19 +0000
commitff6e21c2ce9d20330cd3a2cf4c7446749a06d364 (patch)
tree96a13b88d8b5666ebaa0a01b15187dee404dc7f5 /archival
parent9ebd1bd46838586e9ebfd4dd190494e6226458d9 (diff)
downloadbusybox-ff6e21c2ce9d20330cd3a2cf4c7446749a06d364.zip
busybox-ff6e21c2ce9d20330cd3a2cf4c7446749a06d364.tar.gz
Fix tar so it can extract git-generated tarballs, based on a suggestion
from Erik Frederiksen.
Diffstat (limited to 'archival')
-rw-r--r--archival/libunarchive/get_header_tar.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/archival/libunarchive/get_header_tar.c b/archival/libunarchive/get_header_tar.c
index 3302d93..1cbde95 100644
--- a/archival/libunarchive/get_header_tar.c
+++ b/archival/libunarchive/get_header_tar.c
@@ -137,10 +137,6 @@ char get_header_tar(archive_handle_t *archive_handle)
case '1':
file_header->mode |= S_IFREG;
break;
- case 'x':
- case 'g':
- bb_error_msg_and_die("pax is not tar");
- break;
case '7':
/* Reserved for high performance files, treat as normal file */
case 0:
@@ -188,8 +184,11 @@ char get_header_tar(archive_handle_t *archive_handle)
case 'N': /* Old GNU for names > 100 characters */
case 'S': /* Sparse file */
case 'V': /* Volume header */
- bb_error_msg("Ignoring GNU extension type %c", tar.formated.typeflag);
#endif
+ case 'g': /* pax global header */
+ case 'x': /* pax extended header */
+ bb_error_msg("Ignoring extension type %c", tar.formated.typeflag);
+ break;
default:
bb_error_msg("Unknown typeflag: 0x%x", tar.formated.typeflag);
}