Glenn L McGrath
b028e08d35
Move setvbuf calls from gz_open() to calling functions, setvbuf is only supposed to be called prior to opening the stream, glibc tolerates later use, uclibc doesnt.
2001-07-13 06:43:03 +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
93febe672a
free coniditionally, just to make it play nice with dmalloc which is incompatable with standard free()
2001-07-11 07:25:01 +00:00
Glenn L McGrath
59e50f634a
Unpack the filename not the package name
2001-07-11 03:30:11 +00:00
Matt Kraai
5710f9f690
Read 20 512-byte blocks at a time (like GNU tar).
2001-07-10 15:05:39 +00:00
Eric Andersen
807bda4a24
Minor update to include file ordering
2001-07-07 08:13:02 +00:00
Matt Kraai
623cfa99e5
Remove a redundant call to mkdir.
2001-07-03 20:55:30 +00:00
Eric Andersen
3073dfbf30
Patch from Aaron Lehmann <aaronl@vitelus.com> to scrub a ton of
...
portability junk from gzip.c, making it a zillion times more readable.
2001-07-02 17:57:32 +00:00
Manuel Novoa III
a2949aa217
Add some missing includes to kill warnings when building with the default
...
Config.h and using gcc's -fno-builtin. There are probably other files
with the similar problems.
Also, if building against uClibc, don't include asm/unistd.h in syscalls.c
and module_syscalls.c.
2001-06-29 18:59:32 +00:00
Eric Andersen
0d8cc1670c
Fix a type promotion bug discivered and analyzed by Alan Modra
...
<amodra@bigpond.net.au>, which caused false checksum errors
2001-06-27 06:15:50 +00:00
Glenn L McGrath
f8736d251e
rpm2cpio applet by Laurence Anderson
2001-06-26 01:19:34 +00:00
Eric Andersen
24982c589b
Fix up some warnings that show up on ppc
2001-06-25 19:31:48 +00:00
Glenn L McGrath
2e6d3cfa82
Nore unarchive (and doc) fixes from Laurence Anderson
2001-06-24 12:36:54 +00:00
Glenn L McGrath
8f5b63edea
cpio applet, and changes to associated code
2001-06-22 09:22:06 +00:00
Tim Riker
837097648e
comment cleanup
2001-06-22 00:27:11 +00:00
Matt Kraai
ceeff73819
Rewrote mkdir (and touched lots of things in the process).
2001-06-21 19:41:37 +00:00
Eric Andersen
091781e20e
Support tar -C, per bug #1176
...
-Erik
2001-06-21 19:30:10 +00:00
Eric Andersen
ea4abff595
Add in (and ignore) tar -p, since we preserver permissions automatically.
...
closes bug #1185
-Erik
2001-06-21 15:17:59 +00:00
Eric Andersen
aff5e2eaef
it turs out, there was a nasty tar bug where bb tar would create leading dirs
...
with mode 0777 in all cases due to usask issues. Thanks to Matt Kraai for
noticing and spotting the culprit. This makes bb tar behave just like GNU
tar once again.
-Erik
2001-06-20 20:47:31 +00:00
Glenn L McGrath
06a71cced2
Initialise in_file to stdin, so it wont crash if no source specified
2001-06-20 08:07:34 +00:00
Glenn L McGrath
8e74bf94f3
Changed gz_open to ruturn a stream
2001-06-20 07:54:15 +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
Eric Andersen
cb2a372c9f
Revert the patch from Konstantin Boldyshev <konst@linuxassembly.org> to never
...
change permissions on existing directories. This behavior is contrary to SUSv2
and contrary to GNU tar. Thanks to Matt Kraai for pointing this out. I should
have been much more careful about accepting such a patch.
-Erik
2001-06-04 16:54:39 +00:00
Eric Andersen
5a9d441b2c
Fix up some signed char vs int issues that show up on powerpc.
2001-05-24 14:16:28 +00:00
Eric Andersen
77d9268892
Patch from larry to fix some grammar errors.
2001-05-23 20:32:09 +00:00
Matt Kraai
117231c44f
Make - read compressed data from stdin (thanks to Marius Groeger).
2001-05-22 14:23:02 +00:00
Matt Kraai
7f7348b7b2
Correctly remove leading slashes upon extraction (thanks to Marius Groeger).
2001-05-22 14:18:03 +00:00
Matt Kraai
7cedac567c
Remove unused function. If necessary, we can use remove_file instead.
2001-05-17 04:03:22 +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
Eric Andersen
a17b3631fe
Do not ever change permissions on existing directories, only
...
on directories we created while extracting a tarball. Fix
based on bug report and patch from Konstantin Boldyshev
<konst@linuxassembly.org>
-Erik
2001-05-13 15:39:30 +00:00
Eric Andersen
28355a36da
Per some comments from Lars Kellogg-Stedman <lars@larsshack.org>,
...
make xreadlink() return NULL on failure, and make sure everyone
uses the interface correctly.
-Erik
2001-05-07 17:48:28 +00:00
Glenn L McGrath
713b398700
woops, forgot the break statment
2001-05-07 12:06:37 +00:00
Glenn L McGrath
5bcfc9ba1a
Tolerate -q argument, if -q is passed give a warning and continue rather than just fail
2001-05-07 12:01:58 +00:00
Matt Kraai
e0244b0642
Skip headers with empty filenames, rather than stopping.
2001-05-01 21:12:31 +00:00
Mark Whitley
8a633268ef
Made new xreadlink function for libbb and changed applets to use it instead of
...
readlink(2).
2001-04-30 18:17:00 +00:00
Glenn L McGrath
af166e7ce0
Logic reversal for last_char_is
2001-04-29 00:50:33 +00:00
Eric Andersen
c1bdffe99b
Another nice cleanup from Larry. This adds a new last_char_is() function and
...
uses it to avoid possible buffer underruns whn strlen is zero, and avoid the
possible space-hogging inline of strlen() in several cases.
-Erik
2001-04-26 15:56:47 +00:00
Eric Andersen
04095e58fb
Move messages.c to libbb. Make each string in messages.c be its own .o file.
...
This way, we can new get rid of all that tedious #define rubbish we used to
need to enable specific messages. This way is enormously simpler, and as a
bonus also ends up saving us 96 bytes.
-Erik
2001-04-25 05:39:18 +00:00
Matt Kraai
53265546a6
Eliminate spurious warning, convert to getopt, and eliminate redundant check.
2001-04-18 16:05:34 +00:00
Matt Kraai
96dcd19b8a
Fix a number of problems with argument handling.
2001-04-18 15:54:09 +00:00
Matt Kraai
54652230d4
Eliminate a segfault when called on an existing file with out an extension:
...
touch foo && gunzip foo
2001-04-18 15:51:45 +00:00
Matt Kraai
b181056e06
Eliminated seeks so that we work correctly on pipes, and removed reliance on
...
undefined evaluation ordering. Thanks to Anthony Towns for explanation and
solution.
2001-04-18 14:49:55 +00:00
Glenn L McGrath
bcfeb2ac44
Fix zcat/gunzip when reading from stdin
2001-04-18 13:34:09 +00:00
Glenn L McGrath
ae1c704c44
Write full status file
2001-04-16 10:26:46 +00:00
Glenn L McGrath
33431ebb9a
dpkg improvements, use full package struct, avoid extracting to tmp dir, rename variable.
...
deb_extract, untar and dpkg_deb modified to make the above possible
2001-04-16 04:52:19 +00:00
Glenn L McGrath
445fb952b8
dpkg-deb -f and partial -I commands, adds 600 bytes
2001-04-13 04:02:57 +00:00
Glenn L McGrath
47fd219c95
Rename variable that shadows global
2001-04-12 16:37:13 +00:00
Glenn L McGrath
3e2ab88ee2
New dpkg-deb function -t, stands for --fsys-tarfile
2001-04-12 13:49:09 +00:00
Glenn L McGrath
6785b51280
dpkg-deb -c works now
2001-04-12 11:48:02 +00:00
Glenn L McGrath
359c106871
Fix dpkg-deb, enum's are cool
2001-04-12 10:19:08 +00:00
Glenn L McGrath
2975a34f23
readTarFile changed from exter nto static
2001-04-11 16:49:07 +00:00
Glenn L McGrath
4949faf4b2
copy_file_chunk uses streams now.
2001-04-11 16:23:35 +00:00
Glenn L McGrath
f70f6cef39
Disable sigterm
2001-04-11 15:09:30 +00:00
Glenn L McGrath
48081f81bd
replace getOctal with strtol( , NULL, 8)
...
saves 100 Bytes
2001-04-11 05:01:09 +00:00
Glenn L McGrath
528ef50a4a
Gzip is indepenedent of gunzip
2001-04-11 03:45:37 +00:00
Glenn L McGrath
7fd92949d0
Move unzip, gz_open, gz_close to libbb
2001-04-11 03:11:33 +00:00
Glenn L McGrath
d22e560ad6
Move deb_extract() to libbb, dpkg now independent of dpkg-deb
2001-04-11 02:12:08 +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
Eric Andersen
e5dfced23a
Apply Vladimir's latest cleanup patch.
...
-Erik
2001-04-09 22:48:12 +00:00
Glenn L McGrath
305fdfa755
Reorganise status field to use 3 chars instead of one bit shifted long int.
...
Generates status file properly now, not compatable with full dpkg yet.
2001-04-08 13:27:39 +00:00
Glenn L McGrath
37849f3320
Use create_path instead of mkdir
2001-04-08 07:23:53 +00:00
Glenn L McGrath
13e9c7ad82
It now correctly backs up the (still corrupt) status file
2001-04-08 07:18:08 +00:00
Glenn L McGrath
0e757a2f3f
Some fixes, but still broken... (cont)
...
Make better use of some libbb functions
New remove dir code to avoid depending on the rm applet
dont use copy_file() it doesnt fail elegantly
Use getopt.
Generate correct /var/lib/dpkg/info/ files
Status file is broken, working on it now
2001-04-08 05:27:18 +00:00
Glenn L McGrath
f608da4288
Ignore SIGTERM prior to gz_close()
2001-04-07 02:40:59 +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
4e2439ad27
It seems all the stdout munging was useless anyways, since
...
deb_extract and all its called functions do nothing with
stdout anyways. Axe that stuff.
-Erik
2001-04-05 18:30:38 +00:00
Eric Andersen
fdefbbbe85
dpkg_deb had not been updated for the new gunzip interface. Fix it.
...
-Erik
2001-04-05 06:04:11 +00:00
Eric Andersen
e76c3b08e1
A number of cleanups. Now compiles with libc5, glibc, and uClibc. Fix a few
...
shadowed variables. Move (almost) all syscalls to libbb/syscalls.c, so I can
handle them sanely and all at once.
-Erik
2001-04-05 03:14:39 +00:00
Eric Andersen
3a6da8c183
gz_open and gz_close were left in, even when BB_FEATURE_TAR_GZIP was disabled.
...
Fix that.
2001-03-29 14:22:45 +00:00
Glenn L McGrath
5f2ef46d6d
Fix zcat
2001-03-29 01:07:54 +00:00
Glenn L McGrath
ed7a776538
gunzip -c works again
2001-03-29 00:57:20 +00:00
Glenn L McGrath
ae8ad35590
Fixes from Robert Kaiser
2001-03-28 23:57:51 +00:00
Glenn L McGrath
02cebebc3b
Remove cruft
2001-03-28 07:37:48 +00:00
Glenn L McGrath
9233959940
Remove tar_unzip_init() not needed any more, uses gz_open instead
2001-03-28 07:31:37 +00:00
Glenn L McGrath
018e9e6799
Fix tar -z, calls gz_open now
2001-03-28 07:27:26 +00:00
Glenn L McGrath
0cbc8cf4c9
Gunzip changes broke tar -z support (woops)
2001-03-28 05:47:26 +00:00
Glenn L McGrath
58e42d5356
Major cleanup to better adhere to style guide and use standard busybox functions
2001-03-28 05:38:24 +00:00
Glenn L McGrath
f58efb57d1
Add functions that were shared with gunzip.c, gunzip about to change.
2001-03-28 05:35:16 +00:00
Eric Andersen
851895ab80
Clean up more local vars which shadow globals
...
-Erik
2001-03-21 21:52:25 +00:00
Mark Whitley
3bf60aa723
If only BB_DPKG was enabled in Config.h, busybox would not build; it'd say:
...
dpkg.c:18: #error It looks like you are using libc5, which does not support
dpkg.c:19: #error tfind(). tfind() is used by busybox dpkg.
dpkg.c:20: #error Please disable BB_DPKG. Sorry.
This was fixed by changing the || to an && in the preprocessor.
(We've changed the logic in there too many times.)
Found using multibuild.pl.
2001-03-15 17:39:29 +00:00
Eric Andersen
82d8502409
Fix from Manuel for a silly thinko on my part.
2001-03-14 17:15:45 +00:00
Eric Andersen
3c0b425cde
dpkg used tfind, which doesn't work with libc5. Print a friendy error
...
should someone try to use it...
-Erik
2001-03-14 01:31:11 +00:00
Eric Andersen
3e6ff9017f
A cleanup patch from Jeff Garzik to static-ify a number of
...
namespace polluting things that really should be static.
2001-03-09 21:24:12 +00:00
Eric Andersen
cbe31dace5
It turns out that DODMALLOC was broken when I reorganized busybox.h
...
header file usage before the 0.49 release. To fix it, I had to move
the '#include "busybox.h"' to the end of the list of #include files.
-Erik
2001-02-20 06:14:08 +00:00
Eric Andersen
b50d707633
fix a few mallocs to be xmallocs.
...
-Erik
2001-02-15 19:50:11 +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
3af1f88725
Closer integration with dpkg-deb and other busybox functions.
...
Hopefully simplified some code (works for me).
2001-02-12 11:33:09 +00:00
Glenn L McGrath
821fbf0f42
New option 'list' produces output that can be used for the packages .list file.
...
Will be used be bb dpkg
2001-02-12 11:16:26 +00:00
Glenn L McGrath
bc9afadecd
New function, deb-extract to be used by dpkg, code cleanups. saves some bytes
2001-02-11 03:32:41 +00:00
Glenn L McGrath
728875f340
Consmetic changes
2001-02-11 03:15:57 +00:00
Glenn L McGrath
631064613f
More style changes
2001-02-11 01:40:23 +00:00
Glenn L McGrath
0c9d77ccfd
Style changes; use get_line_from_file from utilities
2001-02-11 00:17:22 +00:00
Glenn L McGrath
510f0ddafa
Use copy_file from utilty.c, remove some char defines
2001-02-10 14:53:08 +00:00
Glenn L McGrath
649968ceb1
Bug fix, rename status file, cleanups
2001-02-10 14:26:48 +00:00
Glenn L McGrath
af8c65deaa
Replace status defines with const int to conform to sytle guide, adds 32 bytes
2001-02-10 03:19:51 +00:00
Glenn L McGrath
c900575dc4
Initial import
2001-02-10 02:05:24 +00:00
Matt Kraai
05e782ddd3
Fix wget error message and add (and use) chomp library function.
2001-02-01 16:49:30 +00:00
Matt Kraai
dd19c69904
Removed trailing \n from error_msg{,_and_die} messages.
2001-01-31 19:00:21 +00:00
Eric Andersen
8ec10a9483
Fix up copyright msgs. Bump version to 0.49 in preparation for
...
a release. Update the website with release details.
-Erik
2001-01-27 09:33:39 +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
Eric Andersen
d35c21587a
Commit Larry Doolittle's buffers-on-stack/buffers-via-malloc patch.
...
-Erik
2001-01-25 23:49:09 +00:00
Mark Whitley
59ab025363
#define -> static const int. Also got rid of some big static buffers.
2001-01-23 22:30:04 +00:00
Matt Kraai
3b3f5c364a
Use getopt (or getopt_long).
2001-01-22 20:49:00 +00:00
Matt Kraai
8f8dab94e5
Fixed listed files to extract to be more like GNU. Reported by Deon George.
2001-01-22 05:25:19 +00:00
Glenn L McGrath
f914a8af2b
Close files before exit
2001-01-20 06:23:54 +00:00
Glenn L McGrath
1d269432b1
Close unused pipe handle before fork (for tar -z).
2001-01-20 00:12:21 +00:00
Matt Kraai
541ffe30a2
Fix ownership of extracted directories.
2001-01-13 21:46:25 +00:00
Matt Kraai
be7499c83c
Behave like GNU tar when matching excluded files.
2001-01-03 17:22:10 +00:00
Glenn L McGrath
59c09d06e3
Fix warning for unused variable
2001-01-03 01:44:49 +00:00
Glenn L McGrath
58a408512b
really add dpkg-deb.c this time
2001-01-02 23:49:26 +00:00
Glenn L McGrath
7541e3a812
add dpkg-deb command
2001-01-02 23:41:50 +00:00
Matt Kraai
a9819b2908
Use busybox error handling functions wherever possible.
2000-12-22 01:48:07 +00:00
Matt Kraai
e80a2633bc
Be sure to read from the given path, not the one used in the header.
2000-12-19 20:45:49 +00:00
Matt Kraai
a1f9775981
Fix tar handling of absolute paths and excluded directories.
2000-12-19 06:24:08 +00:00
Matt Kraai
1fa1adea2a
Change calls to error_msg.* and strerror to use perror_msg.*.
2000-12-18 03:57:16 +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
Eric Andersen
02ced93ec2
Add GNU compatibile gzip -d
2000-12-13 17:55:11 +00:00
Eric Andersen
4836fd44f0
Patch from Matt Kraai:
...
The following patch makes the -X option to tar behave like GNU,
which reads one file per line. It also prevents the last file
from being appended to the list twice (though that has no
noticeable impact).
2000-12-13 15:28:48 +00:00
Eric Andersen
bd193a42a5
Fix from Matt Kraai -- a better way to NULL terminate strings for the
...
my_* passwd and group routines. I should have thought of doing it
this way...
2000-12-13 01:52:39 +00:00
Glenn L McGrath
46f44d24fc
Support for tar -z option for uncompressing only
2000-12-10 01:57:30 +00:00
Glenn L McGrath
00732b57c7
Introduce new function gunzip_init()
...
gunzip_init() will make it easier to use gunzip from other bb functions.
2000-12-10 00:51:42 +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
Eric Andersen
3d957c87b7
Patch from Jim Gleason <jimg@lineo.com> to fix tar so it no longer breaks hard
...
links, and no longer segfault in a certain wierd case.
2000-12-07 00:34:58 +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
Eric Andersen
8cede00b9e
Patch to add in the -X option and fix the --exclude bug, originally by
...
Sebastien Huet, and now ported to the latest and greatest by both Arne Bernin
<ab@netropol.de> and kent robotti <robotti@metconnect.com>.
2000-12-04 18:51:09 +00:00
Eric Andersen
02f3b2e0c8
Make tar shutup on compile
2000-12-01 19:04:52 +00:00
Matt Kraai
3e856ce428
Stop using TRUE and FALSE for exit status.
2000-12-01 02:55:13 +00:00
Matt Kraai
c119ab9e29
Note an error if we are unable to list/extract specified files.
2000-11-30 04:44:54 +00:00
Matt Kraai
ab8f9e286b
Check for archive errors even for files we aren't extracting.
2000-11-18 01:28:57 +00:00
Eric Andersen
3c5ee9a379
Grammer fix. Changed "longer then" to "longer than". Fix thanks to Jim
...
Gleason <jimg@lineo.com>.
2000-11-14 22:15:48 +00:00
Matt Kraai
7918e1fd54
Move flush_outbuf to the file in which it is used, and by doing so fix a
...
nasty error dealing with two different variables with the same name.
2000-11-08 06:52:57 +00:00
Matt Kraai
d8ad76cb31
Fix some bugs reported by Jim Gleason <jimg@lineo.com> and others I
...
introduced.
2000-11-08 02:35:47 +00:00
Eric Andersen
63a862272c
Cleanup of duplicated symbols -- found by compiling with
...
LDFLAGS += -Wl,-warn-common
2000-11-07 06:52:13 +00:00
Matt Kraai
207061ac0d
Fix error messages.
2000-10-23 18:03:46 +00:00
Eric Andersen
62f987e95f
Fix a thinko. Patch from Justus Pendleton <justus@acm.org>
2000-10-09 17:54:38 +00:00
Glenn L McGrath
c2bf5cad79
General cleanup of comments, defines, includes, and global variables, removed those that arent needed, grouped those remaining at the top.
...
Re-ordered functions to the order they are called.
Removed static crc table, it now generates the table once for itself.
Results in source reduced by 40%, so it should be a lot easier to work on in the future, binary size only reduced by under 2KB though.
2000-09-29 06:46:59 +00:00
Eric Andersen
3570a34de4
Renamed "internal.h" to the more sensible "busybox.h".
...
-Erik
2000-09-25 21:45:58 +00:00
Eric Andersen
1b1cfde1f8
Fix bug#1043 -- hanlde long filenames and links (in this case, by complaining
...
that thay exist and skipping such files when extracting and when archiving.
-Erik
2000-09-24 00:54:37 +00:00
Eric Andersen
0102a9fd48
Fix an obscure option parsing bug.
2000-09-23 22:36:24 +00:00
Matt Kraai
d995493987
Clean up error messages.
2000-09-22 03:36:27 +00:00
Eric Andersen
46a98dfb13
Reverted my conversion of tar to getopt to ensure tar can
...
handle traditional semantics (i.e. 'tar -xvf -' or 'tar xvf'
now both work).
-Erik
2000-09-19 21:35:14 +00:00
Glenn L McGrath
fd3741d712
Remove definition of basename.
...
It was defined out so that it would never be seen, and if it was ever seen it wasnt used for anything. It also stops gunzip compiling under the Hurd.
2000-09-18 10:20:16 +00:00
Matt Kraai
b2f36af157
Updated stdin/stdout treatment to match that of gnu tar.
2000-09-15 22:47:34 +00:00
Matt Kraai
6fc2a7d04d
Reorganize listing code.
2000-09-15 22:23:41 +00:00
Matt Kraai
82cfbad216
Allow non-verbose listing to work.
2000-09-15 21:18:43 +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
Matt Kraai
43c8c38bbf
Allow compilation when not using BB_FEATURE_TAR_EXCLUDE, and fix
...
handling of --exclude option.
2000-09-04 16:51:55 +00:00
Matt Kraai
b92223b6f5
Allow selective extraction and listing of files. And fix an unchecked
...
return value of realloc (with xrealloc).
2000-09-04 08:25:42 +00:00
Eric Andersen
73bdf13d35
Fixed a stupid thinko preventing zcat from doing its job, thanks
...
to Torbj�rn Axelsson <torax@cendio.se> for the fix.
-Erik
2000-09-01 16:25:33 +00:00
Matt Kraai
da542f3a0c
Argh. I *will* compile before checking in.
2000-09-01 02:53:01 +00:00
Matt Kraai
f446297afd
Don't unlink files if we are extracting to stdout.
2000-09-01 02:50:48 +00:00
Eric Andersen
e99674a70f
Correct the stdin/stdout behavior when no args are provided.
...
-Erik
2000-09-01 00:41:10 +00:00
Eric Andersen
5eb5912790
Sigh. Seems I screwed up last time. This fixed detecting
...
when on a console or not, and make default behavior compatible
with GNU gzip...
-Erik
2000-09-01 00:33:06 +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
Eric Andersen
88f50b6bf5
Some #include updates.
...
-Erik
2000-08-10 17:59:11 +00:00
Eric Andersen
fdd5103348
Merge in two patches from Dave Cinege:
...
the first is a cleanup of tar --exclude
the second changes mount so mtab works more as it should, and
also allows mount to use the traditional short form (i.e.
'mount / -o remount,rw' now works.
While inside tar, I changed it to use getopt...
-Erik
2000-08-02 18:48:26 +00:00
Eric Andersen
d5704686b1
Fix from Robert Kaiser for stdin behavior.
...
-Erik
2000-07-28 15:20:24 +00:00
Eric Andersen
ea824fb937
Fixed stdin/stdout paths so things like
...
tar cvf - /etc/* | gzip -c9 >test.tgz
will now work. Fix thanks to Dave Cinege <dcinege@psychosis.com>
with some adjustments by me to be mroe GNU-like.
-Erik
2000-07-21 22:17:39 +00:00
Matt Kraai
bf181b9338
Extract usage information into a separate file.
2000-07-16 20:57:15 +00:00
Matt Kraai
d537a95fdb
Use errorMsg rather than fprintf.
2000-07-14 01:51:25 +00:00
Matt Kraai
be84cd4ef6
Always report the applet name when doing error reporting.
2000-07-12 17:02:35 +00:00
Matt Kraai
e58771e73c
Use global applet_name instead of local versions.
2000-07-12 15:38:49 +00:00
Eric Andersen
8845adc545
* Fixed tar creation support when reading from stdin ('tar -cf - . ')
...
thanks to Daniel Quinlan <quinlan@transmeta.com>
-Erik
2000-07-06 22:51:35 +00:00
Eric Andersen
1e03add675
a few minor cleanups.
...
-Erik
2000-07-06 09:56: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
1c314ad655
* Fixed a _horrible_ bug where 'tar -tvf' could unlink
...
local files!!! Fix thanks to Marius Groeger <mgroeger@sysgo.de>
* Added support for "sh -c command args...", also thanks to
Marius Groeger <mgroeger@sysgo.de>
-Erik
2000-06-28 16:56:25 +00:00
Eric Andersen
3adffb7fc8
readlink(2) does not NULL terminate the buffer it reads in, but tar expected it
...
to do so. This caused symlinks stored in tarballs to likely have trailing
crap in the stored symlink named. Oops.
-Erik
2000-06-26 10:54:06 +00:00
Eric Andersen
b405dfa54d
'tar --help' wasn't working. Fixed it.
...
-Erik
2000-06-21 18:37:36 +00:00
Eric Andersen
b610615be9
Updates to a number of apps to remove warnings/compile errors under libc5.
...
Tested under both libc5 and libc6 and all seems well with these fixes.
-Erik
2000-06-19 17:25:40 +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
0c6a970eb2
* Fixed a small bug that could cause tar to emit warning messages
...
and not extract the first file in a directory in some cases
of nested directories. Thanks to Kevin Traas <kevin@netmaster.com>
for helping track this one down.
-Erik
2000-06-09 20:51:50 +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
Eric Andersen
108a44345c
Fixed tar option parsing segfault, and make "tar xv" and "tar -xv"
...
both work (i.e. it works with or w/o the "-").
-Erik
2000-05-30 19:05:57 +00:00
Erik Andersen
8ea7d8cdaf
First pass at fixing tar segfault, and more portability updates.
...
-Erik
2000-05-20 00:40:08 +00:00
Erik Andersen
330fd2b576
More libc portability updates, add in the website (which has not been
...
archived previously). Wrote 'which' during the meeting today.
-Erik
2000-05-19 05:35:19 +00:00
Erik Andersen
7ab9c7ee52
Lots of updates. Finished implementing BB_FEATURE_TRIVIAL_HELP
...
which lets you compile out most of the "--help" output, saving
up to 17k.
Renamed mnc to nc.
-Erik
2000-05-12 19:41:47 +00:00
Erik Andersen
59b9e87024
* cp -fa now works as expected for symlinks (it didn't before)
...
* zcat works again (wasn't working since option parsing was broken)
* more doc updates/more support for BB_FEATURE_SIMPLE_HELP
-Erik
2000-05-10 05:05:45 +00:00
Erik Andersen
923ef599f3
Fix tarball creation. In an attempt to accomodate the whiners
...
that wanted "tar cf foo.tar foo" (i.e. no "-" before options)
I broke creation of tarballs. Now fixed.
-Erik
2000-04-28 22:32:13 +00:00
Erik Andersen
4f3f757d56
Latest and greatest. Some effort at libc5 (aiming towards newlib)
...
compatability.
-Erik
2000-04-28 00:18:56 +00:00
Erik Andersen
1d1d95051a
More Doc updates. cmdedit and more termio fixes.
2000-04-21 01:26:49 +00:00
Erik Andersen
a3e57ca700
make ps accept (and ignore) all options (--help works of course).
...
tar now works with or without the leading "-" on the options.
-Erik
2000-04-19 03:38:01 +00:00
Erik Andersen
5e1189e187
More documentation updates, and minor fixes to make things sync
...
up with the docs.
-Erik
2000-04-15 16:34:54 +00:00
Erik Andersen
95c1c1e05f
Fix a tar bug: tar removed leading '/'s for symlink targets.
...
Fix a syslogd bug: Only the first sizeof(buffer) was read from the
/dev/log socket, causing (for most cases) only every other log item to be logged.
-Erik
2000-04-14 21:45:29 +00:00
Erik Andersen
61677feff7
Upates to include copyright 2000 to everything
...
-Erik
2000-04-13 01:18:56 +00:00
Erik Andersen
0817d1372c
This makes tar work perfectly, and adds in "--exclude" as an option
...
-Erik
2000-04-09 15:17:40 +00:00
Erik Andersen
84e09e4437
Fix tar checksum calculation bug.
...
-Erik
2000-04-08 20:58:35 +00:00
Erik Andersen
ecd512453c
Latest and greatest
...
-Erik
2000-04-08 03:08:21 +00:00
Erik Andersen
6a34b539db
Slightly better fringe case handling and GNU tar like error messages.
...
-Erik
2000-04-07 06:55:38 +00:00
Erik Andersen
825aead68b
Patch to make killall actually kill all PIDs with the specified name,
...
rather then busylooping trying to kill the first one until it dies.
Should be more efficient now, and will only send one signal to each
specified process.
-Erik
2000-04-07 06:00:07 +00:00
Erik Andersen
5661fe078e
Tar now works perfectly. It behaves much better now then it
...
used to. Only thing left to do is add in exclude (-X) option.
-Erik
2000-04-05 01:00:52 +00:00
Erik Andersen
68a9ea4208
Update tar so creation of tarballs is much closer to working...
...
-Erik
2000-04-04 18:39:50 +00:00
Erik Andersen
3364d78b18
Yet another installment in the ongoing tar saga
...
-Erik
2000-03-28 00:58:14 +00:00
Erik Andersen
6acaa40f27
First stages of (re-)writing busybox's tar creation support.
...
-Erik
2000-03-26 14:03:20 +00:00
Erik Andersen
deea048bec
Latest and greatest
...
-Erik
2000-03-25 23:09:29 +00:00
Erik Andersen
1ad302ac90
The new tar for busybox is now done, and works just fine
...
for extracting files. Creation of tarballs is next...
-Erik
2000-03-24 00:54:46 +00:00
Erik Andersen
e454fb68a3
More changes that are broken. It doesn't compile
...
yet, but is closer.
-Erik
2000-03-23 04:27:58 +00:00
Erik Andersen
298854f029
My latest ramblings.
...
-Erik
2000-03-23 01:09:18 +00:00
Erik Andersen
1dbe340eba
more minor fixes
...
-Erik
2000-03-19 10:46:06 +00:00
Erik Andersen
e272915e1f
Some updates for the day,
...
-Erik
2000-02-18 21:34:17 +00:00
Erik Andersen
9ffdaa647e
Updates
...
-Erik
2000-02-11 21:55:04 +00:00
Erik Andersen
e49d5ecbbe
Some formatting updates (ran the code through indent)
...
-Erik
2000-02-08 19:58:47 +00:00
Erik Andersen
fac10d7c59
A few minor updates. ;-)
...
Seriously though, read the Changelog for busybox 0.42,
which this is about to become...
-Erik
2000-02-07 05:29:42 +00:00
Erik Andersen
ce5b466bcc
copyFile could call chmod on a symlink, changing the perms
...
of the pointed to file. Minor fix to tar for directory handling.
-Erik
2000-01-27 19:50:47 +00:00
Erik Andersen
3fe39dce5d
Some busybox updates. See the changelog for details if you care.
...
-Erik
2000-01-25 18:13:53 +00:00
Erik Andersen
5509af7073
* added (and documented) "-n" option for head -
...
contributed Friedrich Vedder <fwv@myrtle.lahn.de>
* Cleanup for a number of usage messages -- also
contributed Friedrich Vedder <fwv@myrtle.lahn.de>
-Erik
2000-01-23 18:19:02 +00:00
Erik Andersen
06936df164
Fix a bug where tar could change perms and ownership of dirs pointed
...
to by symlink within a tarball.
-Erik
2000-01-23 02:14:20 +00:00
Erik Andersen
de552874d2
Some busybox updates. You no longer _have_ to put a "-" in front of tar
...
options, logger is better behaved and has a "-t" option now. init now supports
the kernel chroot patch, so you can chroot to a new device and umount the old
root.
-Erik
2000-01-23 01:34:05 +00:00
Erik Andersen
05100cd477
tar creation support is now optional.
...
-Erik
2000-01-16 01:30:52 +00:00
Erik Andersen
7dc160721e
Bunches of fixes. Typos, bugs, etc.
...
Added 'gunzip -t'. inittab support _almost_ works (but it isn't
ready for prime time useage yet).
-Erik
2000-01-04 01:10:25 +00:00
Erik Andersen
00266d3df6
Fixed a bug where tar would not set the user and group on device
...
special files.
-Erik
1999-12-28 00:17:46 +00:00
Erik Andersen
98f67e35d8
chown(2) clears S_ISUID and S_ISGID, even when chown is
...
called as root. Changed ordering of chown and chmod so
SGID and SUID file permissions don't get munged.
-Erik
1999-12-27 23:48:33 +00:00
Erik Andersen
4d1d0113fd
Reworked the source so it will compile and run under glibc 2.0.7
...
and linux kernel 2.0.36 (though the dubious reasons why someone
would want to do that defy imagination ;)
-Erik
1999-12-17 18:44:15 +00:00
Eric Andersen
03018f7551
Fixed tar so uid/gud/permissions on extracted tarballs will be correct.
...
-Erik
1999-11-29 04:29:13 +00:00
Eric Andersen
08b1034f4f
Stuf
1999-11-19 02:38:58 +00:00
Eric Andersen
b052b47722
Forgot this.
1999-11-18 00:21:59 +00:00
Eric Andersen
d80e851dc0
Stuf
1999-11-16 00:46:00 +00:00
Eric Andersen
b6a44b8d39
updates for the day
1999-11-13 04:47:09 +00:00
Eric Andersen
96bcfd346b
Latest and greatest
...
-Erik
1999-11-12 01:30:18 +00:00
Eric Andersen
0dfac6b9ce
Stuff
1999-11-11 05:46:32 +00:00
Eric Andersen
c296b54827
Stuf
1999-11-11 01:36:55 +00:00
Eric Andersen
d73dc5b073
Updates to usage, and made tar work.
...
-Erik
1999-11-10 23:13:02 +00:00
Eric Andersen
5556c1874b
Maybe works now...
...
-Erik
1999-11-10 19:27:58 +00:00
Eric Andersen
50d6360771
Stuff
1999-11-09 01:47:36 +00:00
Eric Andersen
350577c5a0
Minor stuf
1999-11-06 06:34:20 +00:00
Eric Andersen
be971d6b69
More init fixes. Fixed sync segfault.
...
-Erik
1999-11-03 16:52:50 +00:00
Eric Andersen
d143e8f2bd
Stuf
1999-10-23 07:09:58 +00:00
Eric Andersen
c49960189a
Fixed up copyright notices and such
1999-10-20 22:08:37 +00:00
Eric Andersen
e77ae3a2c0
Added sfdisk. Ststic-ified a bunch of stuff.
1999-10-19 20:03:34 +00:00
Eric Andersen
cb6e25655f
More stuff
1999-10-16 15:48:40 +00:00
Eric Andersen
f6be944a6a
More stuff
1999-10-13 21:12:06 +00:00
Eric Andersen
1b61f41f57
More stuff
1999-10-13 18:56:42 +00:00
Eric Andersen
3cf52d1958
More stuff...
1999-10-12 22:26:06 +00:00
Eric Andersen
f811e07b07
More stuff.
1999-10-09 00:25:00 +00:00
Eric Andersen
17d49efd8c
More stuff.
1999-10-06 20:25:32 +00:00
Eric Andersen
cc8ed39b24
Initial revision
1999-10-05 16:24:54 +00:00