aboutsummaryrefslogtreecommitdiff
path: root/archival
AgeCommit message (Collapse)Author
2003-12-21Don't hose up perms for files that happen to have symlinksEric Andersen
in the tarball that point to them. -Erik
2003-12-05Fix a compile error when only using ar, patch by Paul van GoolGlenn L McGrath
2003-11-28Patch from Ian Campbell, fix or'ed dependencies and handle virtualGlenn L McGrath
dependencies.
2003-11-27Fix tar hard linksGlenn L McGrath
2003-11-26Important bugfixes from Ian Campbell.Glenn L McGrath
init_archive_deb_data() We want to filter for data.tar.* in the AR file not the TAR file, else we get nothing. all_control_list() Make the 'extensions' array of control file names a global so it can be used in unpack_package as well. Name the global all_control_files. Don't hard code the length of all_control_files but instead used sizeof. unpack_package() Only unpack the control files we are interested in (from all_control_files). Extract the data.tar.gz into / rather than the current directory. dpkg_main() Configure packages in a second pass so all the packages being installed are unpacked before configuring. Some purely cosmetic changes: header update list of differences since two of them are no longer true. The .control file is no longer stored as a result of this patch -- it was redundant since the info is in status. New packages appear to be added to the end of the status file now rather than the start. remove_package() Make message printing optional, so we can avoid a redundant message when replacing/upgrading a package. When we do print stuff then include the version number. purge_package() Print "Purging xxx (yyy) ..." message like the other actions. configure_package() Add "..." to "Setting up" message to be consistent with other actions.
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-21Use safe readGlenn L McGrath
2003-11-20Remove unused functionGlenn L McGrath
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-20Dont attempt to unlink directoriesGlenn L McGrath
2003-11-18tar -Z, uncompress supportGlenn L McGrath
2003-11-18Dont close original file handle, we may need it later.Glenn 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-17Dont free filename, its needed in the extracted files list.Glenn L McGrath
2003-11-15Fix a bug where cpio wouldnt work unless -u was specifiedGlenn L McGrath
2003-11-15Move from read_gz to the pipe()+fork() method.Glenn L McGrath
open_transformer(), common code for pipe+fork. Function pointer for read() no longer needed. Allow inflate to be initialised with a specified buffer size to avoid over-reading. Reset static variables in inflate_get_next_window to fix a bug where only the first file in a .zip would be be extracted.
2003-11-15Fix memory leaksGlenn L McGrath
2003-11-14Keep trying to find a good header, if we exit it will cause .tar.gzGlenn L McGrath
files to compute incorrect crc and length for gzip
2003-11-14Catch unsupported featuresGlenn L McGrath
2003-11-14Fix build error with tar -jGlenn L McGrath
2003-11-14Remove some tar_gz stuff that get dragged inGlenn L McGrath
2003-11-14Remove debugging noise.Glenn L McGrath
2003-11-14Read in blocks rather than one char at a time, greatly improves speedGlenn L McGrath
2003-11-14Vladimir N. Oleynik (vodz) writes:Eric Andersen
Hi Glenn. I analysed BSS size gzip applet and found may be mistake: updcrc() checking if (crc_table_empty) but not resetted this var. This do make slow gzip applet ;-) --w vodz
2003-11-07This appears to be the correct fix to make CONFIG_FEATURE_DEB_TAR_BZ2Eric Andersen
support compile. Glenn, you may want to verify this. -Erik
2003-11-07fix commentEric Andersen
2003-11-05Fix tar -j supportGlenn L McGrath
Use the old fork() method of tar compression support, rather than read_bz2.... - (*uncompress)(int in, int out) seems like a more natural interface for compression code. - it might improve performance by seperating the work into one cpu bound and one io bound process. - There is extra code required to do read_[gz|bunzip] since (*uncompress)(int in, int out) will normally be used by the standalone compression applet. There have been problems with this method so if you see a "Short read" error let me know.
2003-10-31Put back the tar support stubs (and warnings) for now.Eric Andersen
2003-10-31Fix stupid typoEric Andersen
2003-10-29make CONFIG_FEATURE_UNARCHIVE_TAPE common between itar and cpio, patchGlenn L McGrath
by Arthur Othieno
2003-10-29Use the return value from uncompress_bunzip, fix some typoGlenn L McGrath
2003-10-28Add some error messages, use xmalloc instead of mallocGlenn L McGrath
2003-10-28Fix a logic error, the old bunzip code returned non-zero for success,Glenn L McGrath
new code returns 0 for success.
2003-10-28Conditionally compile some files.Glenn L McGrath
This hides a bug related to the new bunzip code in the tar and dpkg[-deb] applets. It will also reduce compile time a little as some unused files wont be compiled.
2003-10-23Another bzip2 update and speedup from Manuel Novoa III, with someEric Andersen
additional changes (primarily lots of comments) from Rob Landley.
2003-10-22Andreas Mohr writes:Eric Andersen
the busybox menuconfig triggered my "inacceptable number of spelling mistakes" upper level, so I decided to make a patch ;-) I also improved some wording to describe some things in a better way. Many thanks for an incredible piece of software! Andreas Mohr, random OSS developer
2003-10-18Manuel Novoa III writes:Eric Andersen
Hello Rob, Here's a patch to your bunzip-3.c file. Nice work btw. One minor bug fix... checking for error return when read()ing. Some size/performance optimizations as well. One instance of memset() seems unnecssary. You might want to take a look. Anyway, on my machine, decompressing linux-2.6.0-test7.tar.bz2 to /dev/null gave the following times: bunzip-3.c bzcat (system) bunzip-3.c (patched) real 0m24.420s 0m22.725s 0m20.701s user 0m23.930s 0m22.170s 0m20.180s sys 0m0.070s 0m0.080s 0m0.140s Size of the patched version is comparable (slightly larger or smaller depending on compiler flags). Manuel
2003-10-18Rob Landley's new micro-bunzip version 3. Rob writes:Eric Andersen
The API for using partial writes, as described in my last message, sucked. So here's a patch against my last patch that changes things so that write_bunzip_data calls read_bunzip_data itself behind the scenes whenever necessary. So usage is now just start_bunzip(), write_bunzip_data() until it returns a negative number, and then the cleanup at the end of uncompressStream. It adds 32 bytes to the executable, but it should allow the caller (tar) to be simplified enough to compensate. Total -Os stripped exe size now 6856 bytes. Rob P.S. I attached the whole C file so you don't have to keep incremental patches straight if you don't want to. :) P.S. In the version I'm banging on now, I've simplified the license to just LGPL. I read the OSL a bit more closely and the patent termination clause would have bit IBM in their counter-suit of SCO if the code in question had been OSL instead of GPL, and I've decided I just don't want to beta-test legal code right now.
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-09-15Do not shadow the global name 'accept'Eric Andersen
2003-09-12Fix handling of hardlinks when OLDGNU and GNU extensions arent enabled.Glenn L McGrath
2003-09-12Use the typeflag to identify if its a hardlink on OLD and GNU posixGlenn L McGrath
modes, fixes a bug extracting hardlinks to symlinks.
2003-09-11Marc A. Lehmann writes:Eric Andersen
The tar -x command in busybox does not restore the file mode correctly. The reason is most probably this code in archival/libunarachive/data_extract_all.c: chmod(file_header->name, file_header->mode); chown(file_header->name, file_header->uid, file_header->gid); chown clears the set*id bits (on current versions of linux :). Flipping the order around fixes the problem. (tested with 1.00pre3 from cvs).
2003-09-09If a tar entry is a regualr file ending in a '/' then its really aGlenn L McGrath
directory. From http://www.gnu.org/manual/tar/html_node/tar_123.html REGTYPE AREGTYPE These flags represent a regular file. In order to be compatible with older versions of tar, a typeflag value of AREGTYPE should be silently recognized as a regular file. New archives should be created using REGTYPE. Also, for backward compatibility, tar treats a regular file whose name ends with a slash as a directory.
2003-08-28Dont unlink when testing !Glenn L McGrath
Always preserve creation date Disable the -p option its for modification date Remove some cpio header debugging noise Syncronise file listing behaviour with upstream.
2003-08-22trivial doc fixEric Andersen
2003-08-14Change hardlink handling for tar to work the same way as cpioGlenn L McGrath
2003-07-31Fix bug when handling debian packages.Glenn L McGrath
If we read the contents of compressed files within the ar archive, e.g. control.tar.gz, then file position gets all out of whack, so it has to be reset before reading thenext header.