Inetd.c sigpause() --> __xpg_sigpause() not in uClibc

Rob Landley rob at landley.net
Thu Nov 10 06:09:29 UTC 2005


On Wednesday 09 November 2005 23:36, John Z. Bohach wrote:

> I'm with you Rob...my patch would address the BSD vs. X/Open semantics, but
> its still deprecated.  So this again highlights the real problem:
> non-deprecated sigsuspend() was replaced with deprecated sigpause() (and
> lot's of other changes as Rob has pointed out), and there was no proper BSD
> vs. X/Open semantics usage considerations.
>
> In my opinion--and I mean no disrespect to the developers who made the
> slackware changes and patches since--revert the whole thing, add the
> two-line fix that Rob has alluded to before, and take the slackware porting
> off and put it on a branch until people can work out these issues, because
> at this point, the slackware inetd.c doesn't appear ready for public
> consumption in this busybox environment.

I agree with this, but for a different reason.

I like busybox apps to be small and simple.  If I was going to take a whack at 
inetd (which is unlikely because I simply don't use it), it would be to trim 
it down and make it smaller.  (There appear to be plenty of opportunities to 
do that.)  Resynching with the current BSD version seems to be a step in the 
other direction, and although it did get some new features (like ipv6 
support) it sucked in a lot of unrelated code.  The result is a mess, and it 
basically invalidates any testing or optimization anybody did on the previous 
version.

Heck, half the time we write our own versions of apps in the name of small and 
simple, often without many of the features of the mainline version.  A lot of 
times we _reimplement_ things (throw out the existing busybox version) 
because we can make them smaller, or pack more features in the same amount of 
space.  So resynching with the mainline version of some app inherently has no 
appeal for me whatsoever, and is a _bad_ thing if the older version is 
smaller and simpler.  Stuff naturally bloats with time unless keeping it 
streamlined is one of your primary design criteria.

Now it's quite possible that, in this case, resynching with the BSD version 
was the right thing to do.  But I never saw vodz make that case.  Instead I 
saw a big change resulting in really ugly code, which has had to be fixed up 
several times already, and I have no idea why it was done.

> --john

Rob



More information about the busybox mailing list