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