aboutsummaryrefslogtreecommitdiff
path: root/libbb/xfuncs.c
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2006-11-24 17:21:44 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2006-11-24 17:21:44 +0000
commitd6772501db451b5d7fd4001f5e9c4f1ad20c63d6 (patch)
tree30b4606de7dbbe62462ad7dc106e429a32e22272 /libbb/xfuncs.c
parentd398ecab9d6e42b1091d214df50bf938030d11a2 (diff)
downloadbusybox-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/xfuncs.c')
-rw-r--r--libbb/xfuncs.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index e6f4e3a48..1dbd7521b 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);