summaryrefslogtreecommitdiff
path: root/archival/tar.c
AgeCommit message (Collapse)Author
2006-09-10Cleanup headers and replace the zero padding with an even smaller version.Rob Landley
One of the pads turned out to be unnecessary: sizeof(struct TarHeader) is TAR_BLOCK_SIZE, the padding's in the struct. The others could be done inline with bb_common_bufsiz1. This is a cleanup I did to Denis' patch long ago, but got sidetracked by what turned into svn 15660.
2006-09-09tar: fix "xopen with O_CREAT" warning, improve zero padding writeDenis Vlasenko
(was doing zillions of 1-byte write syscalls)
2006-09-03tar: revert older fix (non-portable), added new one.Denis Vlasenko
testsuite tar-extracts-all-subdirs now passes.
2006-08-29Svn 16007 broke the build under gcc 4.0.3. This fixes up some of the damageRob Landley
(the e2fsprogs directory is too twisty and evil to easily fix, but I plan to rewrite it anyway so I'll just bump that up in priority a bit).
2006-08-03These should have been part of 15767 too.Rob Landley
2006-07-16Cleaup read() and write() variants, plus a couple of new functions likeRob Landley
xlseek and fdlength() for the new mkswap.
2006-06-25A few patches from Erik Hovland, turning strncpy() into safe_strncpy() andRob Landley
removing some unnecessary code.
2006-05-26Change llist_add_* to take the address of the list rather than returning the newRob Landley
head, and change all the callers.
2006-04-18- typo: s/derefernce/dereference/gBernhard Reutner-Fischer
Thanks to P.J. Day.
2006-04-12- patch from Denis Vlasenko to add and use bb_xchdir()Bernhard Reutner-Fischer
2006-04-02- typos: s/compatability/compatibility/g;s/compatable/compatible/g;Bernhard Reutner-Fischer
2006-01-25just whitespaceTim Riker
2006-01-20Patch from Aurelien Jacobs to add unlzma. (A new decompression type,Rob Landley
see www.7-zip.org)
2006-01-09Bug 547: writing out the tar file header before we confirm we can actuallyRob Landley
open and read from the file isn't something we can recover from after the fact. Resequence things to check first, write second.
2005-12-16Bug 601: When we fork an archiver and feed stuff to it through a pipe, ifRob Landley
we don't close the pipe the child process won't exit, and we'll hang in waitpid().
2005-12-12- typo: s/sucess/success/gBernhard Reutner-Fischer
What's up with loginutils/su.c line 42: "SYSLOG_SUCESS" ? Please have a look..
2005-12-06reduce 3 warning if compile with -W"Vladimir N. Oleynik"
2005-10-27Add --no-same-owner and --no-same-permissions options to tar.Rob Landley
2005-10-16The fact "tar tvjf thing.tbz" didn't work was due to the "-1" in -r11859,Rob Landley
which was apparently never tested. That meant that there always had to be at least one unparsed argument left over, which is not the case for tar.
2005-10-16Whitespace and curly bracket cleanup (our tabstop is 4 in busybox),Rob Landley
and switch more stuff from CONFIG to ENABLE.
2005-10-15llist must initialize, add loses ifdef, small indent correction"Vladimir N. Oleynik"
2005-10-15Add --exclude option (to make uClibc-0.9.28 headers install using busybox tar).Rob Landley
I have no idea how to apply bb_getopt_complementally to a --longopt that has no short option. The documentation from vodz has a bad case of babelfish poisoning, and I can't understand it. It sort of seems to suggest there is a way, but what it is I have no idea. So I used \n as the short option, which is fairly unlikely to be used for something else. :)
2005-10-14- new bb_opt_complementally syntax, use [-:?] only - 'free' chars"Vladimir N. Oleynik"
- new bb_getopt_ulflags features: check max and min args, convert first argv to options special for ar and tar applets - use bb_default_error_retval for env applet
2005-10-12new featured bb_opt_complementally, correct argc checking"Vladimir N. Oleynik"
2005-10-11- use complementally '!' to '?' - 'ask' is best 'free' char for this."Vladimir N. Oleynik"
- more long opt compatibility, can set flag for long opt struct now - more logic: check opt-depend requires and global requires, special for 'id' and 'start-stop-daemon' applets.
2005-09-29change interface to bb_xasprintf() - more perfect for me."Vladimir N. Oleynik"
ln.c: error_msg(str)->error_msg(%s, str) - remove standart "feature" for hackers reduce 100 bytes don't care in sum
2005-09-20- rename libbb's password helpers as suggested in libbb.hBernhard Reutner-Fischer
my_getpwnam -> bb_xgetpwnam /* dies on error */ my_getgrnam -> bb_xgetgrnam /* dies on error */ my_getgrgid -> bb_getgrgid my_getpwuid -> bb_getpwuid my_getug -> bb_getug
2005-09-051) bb_opt_complementaly -> bb_opt_complementally"Vladimir N. Oleynik"
2) better support long options 3) new flag '!' for bb_opt_complementally: produce bb_show_usage() if BB_GETOPT_ERROR internally
2005-09-01Fix for bug 383: attempting to "tar c /" would error out because strippingRob Landley
trailing / turns that into an empty string.
2005-08-30Dirk Clemens pointed out how easy it is to support bzip2 compression, since weRob Landley
shell out to an external program to handle gzip anyway...
2005-05-11change the hardcoded error constant (0x80000000UL) to a nice flexible define ↵Mike Frysinger
(BB_GETOPT_ERROR)
2004-08-26Tito writes:Eric Andersen
Hi, I've spent the half night staring at the devilish my_getpwuid and my_getgrgid functions trying to find out a way to avoid actual and future potential buffer overflow problems without breaking existing code. Finally I've found a not intrusive way to do this that surely doesn't break existing code and fixes a couple of problems too. The attached patch: 1) changes the behaviour of my_getpwuid and my_getgrgid to avoid potetntial buffer overflows 2) fixes all occurences of this function calls in tar.c , id.c , ls.c, whoami.c, logger.c, libbb.h. 3) The behaviour of tar, ls and logger is unchanged. 4) The behavior of ps with somewhat longer usernames messing up output is fixed. 5) The only bigger change was the increasing of size of the buffers in id.c to avoid false negatives (unknown user: xxxxxx) with usernames longer than 8 chars. The value i used ( 32 chars ) was taken from the tar header ( see gname and uname). Maybe this buffers can be reduced a bit ( to 16 or whatever ), this is up to you. 6) The increase of size of the binary is not so dramatic: size busybox text data bss dec hex filename 239568 2300 36816 278684 4409c busybox size busybox_fixed text data bss dec hex filename 239616 2300 36816 278732 440cc busybox 7) The behaviour of whoami changed: actually it prints out an username cut down to the size of the buffer. This could be fixed by increasing the size of the buffer as in id.c or avoid the use of my_getpwuid and use getpwuid directly instead. Maybe this colud be also remain unchanged...... Please apply if you think it is ok to do so. The diff applies on today's cvs tarball (2004-08-25). Thanks in advance, Ciao, Tito
2004-07-26BusyBox has no business hard coding the number of major and minor bits for aEric Andersen
dev_t. This is especially important now that the user space concept of a dev_t and the kernel concept of a dev_t are divergant. The only bit of user space allowed to know the number of major and minor bits is include/sys/sysmacros.h (i.e. part of libc). When used with a current C library and a 2.6.x kernel, this fix should allow BusyBox to support wide device major/minor numbers. -Erik
2004-07-21Fixup -T (--files-from) option, works for non-directories nowGlenn L McGrath
2004-05-05Steve Grubb writes:Eric Andersen
Hello, I found and patched 2 more bugs. The first is a misplaced semi-colon. The second one is a buffer overflow. I doubt the buffer overflow is triggered in real life. But you never know what those wily hackers are up to. Thanks, Steve Grubb
2004-04-25Update my email address, document some of my tasks in the AUTHORS fileGlenn L McGrath
2004-04-14Larry Doolittle writes:Eric Andersen
This is a bulk spelling fix patch against busybox-1.00-pre10. If anyone gets a corrupted copy (and cares), let me know and I will make alternate arrangements. Erik - please apply. Authors - please check that I didn't corrupt any meaning. Package importers - see if any of these changes should be passed to the upstream authors. I glossed over lots of sloppy capitalizations, missing apostrophes, mixed American/British spellings, and German-style compound words. What is "pretect redefined for test" in cmdedit.c? Good luck on the 1.00 release! - Larry
2004-03-27s/fileno\(stdin\)/STDIN_FILENO/gEric Andersen
s/fileno\(stdout\)/STDOUT_FILENO/g
2004-03-15Remove trailing whitespace. Update copyright to include 2004.Eric Andersen
2004-01-25Add the -h, --dereference option for archive creation.Glenn L McGrath
2003-12-26Isolate code better for unused options, config option to enable longGlenn L McGrath
options, add some conditions to the tar tests in testsuite.
2003-11-21As we no longer use function pointers for read in common archiving codeGlenn L McGrath
archive_xread can be replaced with bb_full_read, and archive_copy_file with bb_copyfd* bb_copyfd is split into two functions bb_copyfd_size and bb_copyfd_eof, they share a common backend.
2003-11-20Fix tar-handles-nested-exclude testcaseGlenn L McGrath
2003-11-20Check at least one context is specifiedGlenn L McGrath
2003-11-20Check there are files to add the archive before removing a specifiedGlenn L McGrath
tar file.
2003-11-18tar -Z, uncompress supportGlenn L McGrath
2003-11-18Make unlink old files default behaviour and add a new option -k toGlenn L McGrath
prevent overwritting existing files
2003-11-14Catch unsupported featuresGlenn L McGrath
2003-10-02Fix -C option when creating tar files.Glenn L McGrath
Need to chdir after the tar file is opened, so make common tar filename parsing and send the file descriptor rather than filename to writeTarFile. Modify the verboseFlag operation to determine wether to display on stderr or stdout at display time, simpler than doing it in tar_main.
2003-07-14Update a bunch of docs. Run a script to update my email addr.Eric Andersen