summaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
authorDenis Vlasenko2006-11-24 17:21:44 +0000
committerDenis Vlasenko2006-11-24 17:21:44 +0000
commitd6772501db451b5d7fd4001f5e9c4f1ad20c63d6 (patch)
tree30b4606de7dbbe62462ad7dc106e429a32e22272 /libbb
parentd398ecab9d6e42b1091d214df50bf938030d11a2 (diff)
downloadbusybox-d6772501db451b5d7fd4001f5e9c4f1ad20c63d6.zip
busybox-d6772501db451b5d7fd4001f5e9c4f1ad20c63d6.tar.gz
tar: fix and sanitize handling of long filenames/linknames
(GNU extensions 'K' and 'L'). We correctly handle them when untarring now, but unfortunately we still don't use them when tarring! That stupid 100 char limit is still there! The biggest problem is that we don't support 'pax' tar format. Linux kernel tarballs are in this format... shame
Diffstat (limited to 'libbb')
-rw-r--r--libbb/xfuncs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index e6f4e3a..1dbd752 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -74,6 +74,7 @@ char * xstrndup(const char *s, int n)
if (ENABLE_DEBUG && s == NULL)
bb_error_msg_and_die("xstrndup bug");
+ /* TODO: think about xstrndup("abc", 10000)!!! */
t = xmalloc(++n);
return safe_strncpy(t,s,n);