Glenn L McGrath
7ffe133864
As we no longer use function pointers for read in common archiving code
...
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-21 22:24:57 +00:00
Manuel Novoa III
cad5364599
Major coreutils update.
2003-03-19 09:13:01 +00:00
Glenn L McGrath
66125c8065
Move add_to_list from libunarchive to libbb so it can be of more general use (eg ifupdown). Changed the name to llist_add_to as i plan on adding more llist_ functions as needed (e.g. llist_free).
2002-12-08 00:54:33 +00:00
Glenn L McGrath
237ae42fc9
Abstract read and seek in unarchiving code, convert bunzip to file descriptors, support tar -j
2002-11-03 14:05:15 +00:00
Glenn L McGrath
a47a3eada6
Fix simple define problem
2002-09-26 16:01:21 +00:00
Glenn L McGrath
7ca04f328e
New common unarchive code.
2002-09-25 02:47:48 +00:00
Glenn L McGrath
ef0eab514d
Recovering from my previous commit
2001-10-25 14:49:48 +00:00
Glenn L McGrath
4bef7b4186
unarchive function changed to support both exclude and include lists, applets that use unarchive changed to match.
2001-10-13 19:43:46 +00:00
Glenn L McGrath
a868ec89e8
Allow the unarchive() extract_list variable to be NULL, meaning extract all
2001-07-14 08:49:53 +00:00
Glenn L McGrath
c127008840
Allow unarchive to redirect stdout (tobe used by dpkg applet)
2001-07-11 17:32:14 +00:00
Glenn L McGrath
8f5b63edea
cpio applet, and changes to associated code
2001-06-22 09:22:06 +00:00
Glenn L McGrath
eb1c94078f
Reorganise unarchiving functions, more code re-use, only does single pass(no more linked lists), basis for supporting a cpio (and cheaper untar) applet, but cpio applet isnt included in this.
...
It effects ar, dpkg-deb applets only
2001-06-20 07:48:00 +00:00
Glenn L McGrath
9aff903603
Reorganise archive extraction code
2001-06-13 07:26:39 +00:00
Matt Kraai
59df6f7398
Change 'printf("%s\n", ...)' into 'puts(...)'. Noted and patched in hostname.c
...
by Larry Doolittle.
2001-05-16 14:21:09 +00:00
Glenn L McGrath
47fd219c95
Rename variable that shadows global
2001-04-12 16:37:13 +00:00
Glenn L McGrath
4949faf4b2
copy_file_chunk uses streams now.
2001-04-11 16:23:35 +00:00
Glenn L McGrath
9d53c8ab74
Move get_ar_headers to libbb, make dpkg_deb.c independent of ar.c
2001-04-11 01:37:03 +00:00
Glenn L McGrath
e5f3957665
Fix warning
2001-04-07 02:17:36 +00:00
Eric Andersen
83f173b61e
A first pass at making D_FILE_OFFSET_BITS=64 work, from
...
Jari Ruusu <jari.ruusu@pp.inet.fi>
2001-04-05 23:07:25 +00:00
Eric Andersen
67991cf824
This patch, put together by Manuel Novoa III, is a merge of work
...
done by Evin Robertson (bug#1105) and work from Manuel to make
usage messages occupy less space and simplify how usage messages
are displayed.
2001-02-14 21:23:06 +00:00
Glenn L McGrath
728875f340
Consmetic changes
2001-02-11 03:15:57 +00:00
Matt Kraai
dd19c69904
Removed trailing \n from error_msg{,_and_die} messages.
2001-01-31 19:00:21 +00:00
Eric Andersen
ed3ef50c23
Fix header file usage -- there were many unnecessary header files included in
...
busybox.h which slowed compiles. I left only what was needed and then fixed up
all the apps to include their own header files. I also fixed naming for pwd.h
and grp.h functions. Tested to compile and run with libc5, glibc, and uClibc.
-Erik
2001-01-27 08:24:39 +00:00
Glenn L McGrath
7541e3a812
add dpkg-deb command
2001-01-02 23:41:50 +00:00
Glenn L McGrath
4f1b0124c7
Rewrite, fix a bug with multiple long filenames, simplify structure, remove cruft, make code conform closer to style guide, saves 350 Bytes.
2000-12-15 06:50:09 +00:00
Mark Whitley
f57c944e09
Changed names of functions in utility.c and all affected files, to make
...
compliant with the style guide. Everybody rebuild your tags file!
2000-12-07 19:56:48 +00:00
Mark Whitley
4758368505
Fixed the comments to match the code and renamed the function to a (hopefully)
...
more descriptive name, and as per the style guide.
2000-12-05 20:03:17 +00:00
Matt Kraai
3e856ce428
Stop using TRUE and FALSE for exit status.
2000-12-01 02:55:13 +00:00
Eric Andersen
3570a34de4
Renamed "internal.h" to the more sensible "busybox.h".
...
-Erik
2000-09-25 21:45:58 +00:00
Matt Kraai
d995493987
Clean up error messages.
2000-09-22 03:36:27 +00:00
Matt Kraai
322ae93a5e
Fix calls to {m,c,re}alloc so that they use x{m,c,re}alloc instead of
...
segfaulting or handling errors the same way themselves.
2000-09-13 02:46:14 +00:00
Glenn L McGrath
fca8050f0f
Fix .deb unpack and experimental TAR support
...
The previous ar.c fialed to recognise one record in .debs
Experimental tar support, this is currently *very* cheap because ar and
tar are functionally similar. It will need lots of testing so by
default tar support code is defined out.
To test uncomment the line "#define BB_AR_EXPERIMENTAL_UNTAR"
2000-09-11 05:25:39 +00:00
Eric Andersen
49352adf9c
Simplify a few little things, and merge in a patch from
...
robotti@metconnect.com so that 'ar -xv' and 'ar -x -v'
both work.
-Erik
2000-09-11 04:55:31 +00:00
Glenn L McGrath
bd7c67136a
remove some printf statements i forgot about
2000-09-09 15:04:34 +00:00
Glenn L McGrath
e2b345a6d8
Implemented new ar functionality unique to busybox ar (i think), the -R
...
option enable a Recursive extraction (or listing) to take place.
i.e. if any files being extracted are themselves ar archives then
busybox ar will extract their contents as well.
e.g. take bar.deb and do (with GNU ar) ar -q foo.deb b.ar
then with busybox ar can do ar -x b.ar data.tar.gz
-R isnt used for anything in GNU ar so i think it should be ok, could
have used long options
This functionality will become (more) usufull with tar, gz support.
2000-09-09 14:50:04 +00:00
Glenn L McGrath
437bf72785
Changed getopt so that options can be grouped together, the source
...
archive is now assumed to be the first non parameter.
This is how GNU ar behaves.
2000-09-09 13:38:26 +00:00
Glenn L McGrath
6fb88e73f7
Fix permisions
2000-09-09 12:48:40 +00:00
Glenn L McGrath
8324b9f1aa
Now supports GNU style long filenames.
...
If no filenames are specifed to be (extracted/listed) it will act on
all files in the archive (i dont think the old version did this)
Code is structured to better support upcoming recursive extraction
functionality.
The old code was a bit strange in places, dont know what i was thinking.
2000-09-09 08:35:45 +00:00
Glenn L McGrath
06aeb6c417
ar.c now uses a linked list to process headers, uses getopt, new internal function extractAr(srcFD, dstFd, filename) to make it easily accessable to other busybox functions.
...
moved copySubFile from ar.c to utilities.c
modified dd.c to use fullWrite
modified copyFile in utilities.c to use copySubFile
2000-08-25 03:50:10 +00:00
Eric Andersen
6ac18a3d83
Fix to make 'ar xv' work, thanks to Kent Robotti <robotti@metconnect.com>
...
-Erik
2000-08-11 20:11:35 +00:00
Matt Kraai
bf181b9338
Extract usage information into a separate file.
2000-07-16 20:57:15 +00:00
Matt Kraai
be84cd4ef6
Always report the applet name when doing error reporting.
2000-07-12 17:02:35 +00:00
Eric Andersen
57ebebfb01
Patch from Matt Kraai <kraai@alumni.carnegiemellon.edu> to
...
simplify ar.c and make it more readable.
-Erik
2000-07-05 17:21:58 +00:00
Eric Andersen
852ff13fc4
Update to ar.c from Glenn McGrath. His comments follow:
...
------------------------------
the attached diff applies to the ar.c i originally submitted
Changes
Preserve dates now works.
Extracted files are set to the uid, gid and mode specified in the
archive.
Checks for valid end of header marker.
Correctly unpacks newer debian files. (has a '\n' character between
entries)
Added more comments.
Cleaned up code.
Added a last modified date to help keep track of versions.
TODO
Common functionality in ar.c are in tar.c should be merged, in
particular getOctal and extractSubFile.
Should all functions that are used by multiple file go in utilities.c ?
2000-06-16 04:56:40 +00:00
Eric Andersen
86ab8a32bd
A number of additional fixed from Pavel Roskin, note some more bugs in the
...
TODO list. Add Glenn to the Authors list for writing a mini ar for BusyBox,
which is now included.
-Erik
2000-06-02 03:21:42 +00:00