[BusyBox] Re: udpkg in busybox

Glenn McGrath bug1 at optushome.com.au
Sat Feb 17 00:16:26 UTC 2001


Erik Andersen wrote:
> 
> On Fri Feb 16, 2001 at 11:01:14AM -0700, Randolph Chung wrote:
> >
> > re merging with busybox, as long as Erik is ok with it I have no issues
> > with it. Looks like Glenn has already done quite a bit of work here, but
> > if I need to do something let me know...
> 
> Hi Randolph,
> 
> Genn has merged it into the busybox CVS tree, but has some real concerns about
> its functionality.  I am trying to get BusyBox 0.50 released today (or possibly
> tomorrow).  Glenn thinks the problems are serious enough that he recommended
> that it be disabled for the release.  I have a few other bugs to fix, so I
> won't have a chance to dig into it.  If you (or anyone else) have a bit of time
> to look into fixing it up today, that would be great!
> 
>  -Erik
> 

The big problem i had is that tar -z exit()'s if there is an error in
the gzip data stream.

The control.tar.gz and data.tar.gz files are inside anotehr data file,
so when gzip gets to the end of the .tar.gz it sees more data and tries
to keep going, but fails as it should. The point of failure is correct
and tar handles the data correctly, BUT SIGCHLD from child_died() in tar
exit()'s if there are errors so dpkg and dpkg-deb both just terminate as
well.

We need normall program flow to continue in dpkg and dpkg-deb if gzip
dies because it has to do other stuff. To do this i could just change
the exit() in child_died() to a return(), but im not sure, does that
defeat the purpose of catching SIGCHLD ?

Other things i want to do are move get_ar_headers from ar.c to
utilities.c which means we can compile busybox with just dpkg or
dpkg-deb but without ar, this save a couple of KB by eliminating
ar_main.

Can do a similar thing with deb_extract in dpkg_deb.c, by moving it to
utilities and save another couple of KB, this would mean we could
compile busybox with dpkg but not needing dpkg-deb or ar.

I will wait till after 0.50 is released before committing any
significant changes such as these.


Glenn





More information about the busybox mailing list