summaryrefslogtreecommitdiff
path: root/archival/tar.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* tar: fix multiple -t and/or -v options handling.Denis Vlasenko2006-11-241-36/+21
| | | | do not process list of files to tar up in reverse order.
* tar: sanitize option handlingDenis Vlasenko2006-11-241-123/+85
|
* tar: small fixes:Denis Vlasenko2006-11-241-23/+23
| | | | | * size-optimize mapping code * kill double close
* tar: cache [ug]id->username/groupname mappings. Cuts down amountDenis Vlasenko2006-11-241-6/+3
| | | | | of open/read/close of /etc/passwd and /etc/group dramatically (we were rereading those for each untarred file!!!)
* tar: cry murder and bail out if file shrinks under us while we tar it upDenis Vlasenko2006-11-241-2/+12
|
* header_verbose_list: stop truncating file size in listingDenis Vlasenko2006-11-241-3/+3
|
* tar:Denis Vlasenko2006-11-241-105/+127
| | | | | | | | | * unpack: handle tar header fields which are not NUL terminated * pack: handle 4+GB files correctly * pack: refuse to store 101+ softlinks (was truncating link target name) * pack: mask mode with 07777
* recursive_action: add depth paramDenis Vlasenko2006-10-271-2/+2
| | | | chmod: match coreutils versus following links
* message string changes, mostly for consistency, also -32 bytes in .rodataDenis Vlasenko2006-10-201-3/+3
|
* add open_read_close() and similar stuffDenis Vlasenko2006-10-141-1/+1
|
* bb_get_[chomped]line_from_file wasn't descriptive enough.Denis Vlasenko2006-10-121-1/+1
| | | | Renaming...
* small style fixesDenis Vlasenko2006-10-121-1/+1
|
* correct largefile support, add comments about it.Denis Vlasenko2006-10-081-1/+1
|
* attempt to regularize atoi mess.Denis Vlasenko2006-10-081-2/+2
|
* getopt_ulflags -> getopt32.Denis Vlasenko2006-10-031-4/+4
| | | | | | | | It is impossible to formulate sane ABI based on size of ulong because it can be 32-bit or 64-bit. Basically it means that you cannot portably use more that 32 option chars in one call anyway... Make it explicit.
* bb_askpass: shorten static password buffer. 256 is way too large.Denis Vlasenko2006-09-231-1/+1
| | | | | simplify code a bit.
* Cleanup headers and replace the zero padding with an even smaller version.Rob Landley2006-09-101-46/+10
| | | | | | | | | 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.
* tar: fix "xopen with O_CREAT" warning, improve zero padding writeDenis Vlasenko2006-09-091-51/+67
| | | | | (was doing zillions of 1-byte write syscalls)
* tar: revert older fix (non-portable), added new one.Denis Vlasenko2006-09-031-1/+5
| | | | | testsuite tar-extracts-all-subdirs now passes.
* Svn 16007 broke the build under gcc 4.0.3. This fixes up some of the damageRob Landley2006-08-291-5/+5
| | | | | (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).
* These should have been part of 15767 too.Rob Landley2006-08-031-3/+3
|
* Cleaup read() and write() variants, plus a couple of new functions likeRob Landley2006-07-161-6/+6
| | | | xlseek and fdlength() for the new mkswap.
* A few patches from Erik Hovland, turning strncpy() into safe_strncpy() andRob Landley2006-06-251-7/+2
| | | | removing some unnecessary code.
* Change llist_add_* to take the address of the list rather than returning the newRob Landley2006-05-261-2/+2
| | | | head, and change all the callers.
* - typo: s/derefernce/dereference/gBernhard Reutner-Fischer2006-04-181-2/+3
| | | | Thanks to P.J. Day.
* - patch from Denis Vlasenko to add and use bb_xchdir()Bernhard Reutner-Fischer2006-04-121-4/+3
|
* - typos: s/compatability/compatibility/g;s/compatable/compatible/g;Bernhard Reutner-Fischer2006-04-021-1/+1
|
* just whitespaceTim Riker2006-01-251-7/+7
|
* Patch from Aurelien Jacobs to add unlzma. (A new decompression type,Rob Landley2006-01-201-4/+20
| | | | see www.7-zip.org)
* Bug 547: writing out the tar file header before we confirm we can actuallyRob Landley2006-01-091-11/+14
| | | | | open and read from the file isn't something we can recover from after the fact. Resequence things to check first, write second.
* Bug 601: When we fork an archiver and feed stuff to it through a pipe, ifRob Landley2005-12-161-3/+4
| | | | | we don't close the pipe the child process won't exit, and we'll hang in waitpid().
* - typo: s/sucess/success/gBernhard Reutner-Fischer2005-12-121-1/+1
| | | | What's up with loginutils/su.c line 42: "SYSLOG_SUCESS" ? Please have a look..
* reduce 3 warning if compile with -W"Vladimir N. Oleynik"2005-12-061-2/+5
|
* Add --no-same-owner and --no-same-permissions options to tar.Rob Landley2005-10-271-35/+52
|
* The fact "tar tvjf thing.tbz" didn't work was due to the "-1" in -r11859,Rob Landley2005-10-161-2/+2
| | | | | | 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.
* Whitespace and curly bracket cleanup (our tabstop is 4 in busybox),Rob Landley2005-10-161-188/+146
| | | | and switch more stuff from CONFIG to ENABLE.
* llist must initialize, add loses ifdef, small indent correction"Vladimir N. Oleynik"2005-10-151-30/+33
|
* Add --exclude option (to make uClibc-0.9.28 headers install using busybox tar).Rob Landley2005-10-151-20/+24
| | | | | | | | 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. :)
* - new bb_opt_complementally syntax, use [-:?] only - 'free' chars"Vladimir N. Oleynik"2005-10-141-6/+4
| | | | | - 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
* new featured bb_opt_complementally, correct argc checking"Vladimir N. Oleynik"2005-10-121-14/+6
|
* - use complementally '!' to '?' - 'ask' is best 'free' char for this."Vladimir N. Oleynik"2005-10-111-1/+1
| | | | | - 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.
* change interface to bb_xasprintf() - more perfect for me."Vladimir N. Oleynik"2005-09-291-6/+2
| | | | | ln.c: error_msg(str)->error_msg(%s, str) - remove standart "feature" for hackers reduce 100 bytes don't care in sum
* - rename libbb's password helpers as suggested in libbb.hBernhard Reutner-Fischer2005-09-201-2/+2
| | | | | | | | 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
* 1) bb_opt_complementaly -> bb_opt_complementally"Vladimir N. Oleynik"2005-09-051-5/+1
| | | | | 2) better support long options 3) new flag '!' for bb_opt_complementally: produce bb_show_usage() if BB_GETOPT_ERROR internally
* Fix for bug 383: attempting to "tar c /" would error out because strippingRob Landley2005-09-011-1/+1
| | | | trailing / turns that into an empty string.
* Dirk Clemens pointed out how easy it is to support bzip2 compression, since weRob Landley2005-08-301-18/+15
| | | | shell out to an external program to handle gzip anyway...
* change the hardcoded error constant (0x80000000UL) to a nice flexible define ↵Mike Frysinger2005-05-111-1/+1
| | | | (BB_GETOPT_ERROR)
* Tito writes:Eric Andersen2004-08-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* BusyBox has no business hard coding the number of major and minor bits for aEric Andersen2004-07-261-9/+5
| | | | | | | | | 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
* Fixup -T (--files-from) option, works for non-directories nowGlenn L McGrath2004-07-211-3/+6
|