svn commit: r368045 - in head: . etc/mtree rescue/rescue sbin sbin/ping sbin/ping/tests sbin/ping6 sbin/ping6/tests tools/build/mk

Alan Somers asomers at freebsd.org
Fri Nov 27 14:32:42 UTC 2020


On Fri, Nov 27, 2020 at 5:08 AM Bjoern A. Zeeb <
bzeeb-lists at lists.zabbadoz.net> wrote:

> On 26 Nov 2020, at 18:51, Alan Somers wrote:
>
> > On Thu, Nov 26, 2020 at 2:16 AM Bjoern A. Zeeb <
> > bzeeb-lists at lists.zabbadoz.net> wrote:
> >
> >> On 26 Nov 2020, at 4:29, Alan Somers wrote:
> >>
> >>> Author: asomers
> >>> Date: Thu Nov 26 04:29:30 2020
> >>> New Revision: 368045
> >>> URL: https://svnweb.freebsd.org/changeset/base/368045
> >>>
> >>> Log:
> >>>   Merge ping6 to ping
> >>>
> >>>   There is now a single ping binary, which chooses to use ICMP or
> >>> ICMPv4
> >>>   based on the -4 and -6 options, and the format of the address.
> >>>
> >>>   Submitted by:       Ján Sučan <sucanjan at gmail.com>
> >>>   Sponsored by:       Google LLC (Google Summer of Code 2019)
> >>>   MFC after:  Never
> >>>   Differential Revision:      https://reviews.freebsd.org/D21377
> >>
> >> I don’t have IPv4 anymore.
> >> I don’t see any WITHOUT_INET or -DINET checks.
> >> How can I compile INET out now?
> >>
> >
> > I don't see any such checks before, either.  Was it ever possible to
> > exclude ping by building WITHOUT_INET?
>
> No, for various reasons including startup scripts relying on it etc.
> I think no one ever bothered to fully find it all.
>
> But it was possible to just ditch the binary (not installing it into
> custom images, or rm -f it post-install along with other things).
>
>
> Now it’s a “dual-stack handling” binary and those we’ve tried
> with a lot of care to make sure they grow compiling out both ways as you
> cannot throw away the binary anymore.
>
> I don’t know how hard it is to do this now.  I’ll be happy to have a
> look and help if it’s not a 5 minute job for you knowing the code and
> split up.   Would we just have to handle main.c with #ifdefs and the old
> ping[4] files from the Makefile or is ping6 also using shared code from
> the former ping[4]?
>
>
> /bz
>

Yes, that's about right.  ping.c is the old ping.c, and ping6.c is the old
ping6.c, with main() removed from both.  So it should be pretty easy to
compile out INET.
-Alan


More information about the svn-src-head mailing list