From owner-cvs-sbin Fri Jun 13 16:11:07 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id QAA26238 for cvs-sbin-outgoing; Fri, 13 Jun 1997 16:11:07 -0700 (PDT) Received: from unique.usn.blaze.net.au (unique.usn.blaze.net.au [203.17.53.17]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id QAA26208; Fri, 13 Jun 1997 16:10:01 -0700 (PDT) Received: from usn.blaze.net.au (sdev.usn.blaze.net.au [203.17.53.19]) by unique.usn.blaze.net.au (8.8.5/8.8.5) with SMTP id JAA27755; Sat, 14 Jun 1997 09:09:46 +1000 (EST) Date: Sat, 14 Jun 1997 09:09:46 +1100 (EDT) From: David Nugent To: Bruce Evans cc: charnier@FreeBSD.ORG, peter@spinner.dialix.com.au, cvs-all@FreeBSD.ORG, cvs-committers@FreeBSD.ORG, cvs-sbin@FreeBSD.ORG Subject: Re: cvs commit: src/sbin/init init.c In-Reply-To: <199706131345.XAA25294@godzilla.zeta.org.au> Message-ID: X-X-Sender: davidn@unique.usn.blaze.net.au MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-cvs-sbin@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Fri, 13 Jun 1997, Bruce Evans wrote: > >Just as a BTW, it looks like the reason it wasn't using err(3) was that it > >was attempting to avoid stdio. Calling err etc will zap this, assuming > >that stdio hasn't been pulled in by something else already... > > Erm, it calls fprintf() in the first (compound) statement in main(). > > The 1.1.5 init.c really attempts to avoid stdio. It succeeded in 1.1.5, > but fails when linked to -current libraries. The executable is a measly > 112K bytes of text. It is bloated mainly by calling logwtmp(), which > drags in gethostbyname(), which costs 88K bytes of text. The bloat in > logwtmp.c dates from 1996/06/17. It is just to convert long hostnames > to numeric addresses so that they don't get truncated when stored into > wtmp. Not to mention the bloat caused by including the db library due to handling secure console in single user mode. This could be better handled by having /sbin/sulogin as in other unices, but unfortunately wouldn't gain anything because getcap(3) also uses it (included because login_cap uses it). David