From owner-svn-src-all@FreeBSD.ORG Thu Nov 12 18:26:34 2009 Return-Path: Delivered-To: svn-src-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0943C106568B; Thu, 12 Nov 2009 18:26:34 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id A70818FC12; Thu, 12 Nov 2009 18:26:33 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id nACIFSjw060860; Thu, 12 Nov 2009 11:15:28 -0700 (MST) (envelope-from imp@bsdimp.com) Date: Thu, 12 Nov 2009 11:15:41 -0700 (MST) Message-Id: <20091112.111541.1310106669.imp@bsdimp.com> To: antoine@FreeBSD.org From: "M. Warner Losh" In-Reply-To: <20091112.105542.643508160.imp@bsdimp.com> References: <200911112130.nABLUw9b007768@svn.freebsd.org> <20091112.105542.643508160.imp@bsdimp.com> X-Mailer: Mew version 5.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, delphij@FreeBSD.org Subject: Re: svn commit: r199201 - in head: contrib/libpcap sbin/ifconfig share/man/man4 sys/kern sys/net sys/sys X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Nov 2009 18:26:34 -0000 In message: <20091112.105542.643508160.imp@bsdimp.com> "M. Warner Losh" writes: : In message: : Antoine Brodin writes: : : On Wed, Nov 11, 2009 at 10:30 PM, Xin LI wrot= e: : : > Author: delphij : : > Date: Wed Nov 11 21:30:58 2009 : : > New Revision: 199201 : : > URL: http://svn.freebsd.org/changeset/base/199201 : : > : : > Log: : : > =A0Add interface description capability as inspired by OpenBSD. : : > : : > =A0MFC after: =A0 =A03 months : : > : : > Modified: : : > =A0head/contrib/libpcap/inet.c : : > =A0head/sbin/ifconfig/ifconfig.8 : : > =A0head/sbin/ifconfig/ifconfig.c : : > =A0head/share/man/man4/netintro.4 : : > =A0head/sys/kern/kern_jail.c : : > =A0head/sys/net/if.c : : > =A0head/sys/net/if.h : : > =A0head/sys/net/if_var.h : : > =A0head/sys/sys/param.h : : > =A0head/sys/sys/priv.h : : > =A0head/sys/sys/sockio.h : : ... : : > Modified: head/sys/net/if_var.h : : > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D : : > --- head/sys/net/if_var.h =A0 =A0 =A0 Wed Nov 11 21:18:27 2009 =A0= =A0 =A0 =A0(r199200) : : > +++ head/sys/net/if_var.h =A0 =A0 =A0 Wed Nov 11 21:30:58 2009 =A0= =A0 =A0 =A0(r199201) : : > @@ -198,6 +198,7 @@ struct ifnet { : : > =A0 =A0 =A0 =A0void =A0 =A0*if_pf_kif; : : > =A0 =A0 =A0 =A0void =A0 =A0*if_lagg; =A0 =A0 =A0 =A0 =A0 =A0 =A0 = /* lagg glue */ : : > =A0 =A0 =A0 =A0u_char =A0 if_alloctype; =A0 =A0 =A0 =A0 =A0/* if_= type at time of allocation */ : : > + =A0 =A0 =A0 struct sbuf *if_description; =A0 =A0/* interface de= scription */ : : > : : > =A0 =A0 =A0 =A0/* : : > =A0 =A0 =A0 =A0 * Spare fields are added so that we can modify se= nsitive data : : > @@ -205,7 +206,7 @@ struct ifnet { : : > =A0 =A0 =A0 =A0 * be used with care where binary compatibility is= required. : : > =A0 =A0 =A0 =A0 */ : : > =A0 =A0 =A0 =A0char =A0 =A0 if_cspare[3]; : : > - =A0 =A0 =A0 void =A0 =A0*if_pspare[8]; : : > + =A0 =A0 =A0 void =A0 =A0*if_pspare[7]; : : > =A0 =A0 =A0 =A0int =A0 =A0 if_ispare[4]; : : > =A0}; : : = : : Hi Delphij, : : = : : Doesn't this break ABI gratuitously? (I think it changes the size = of : : struct ifnet) : = : In head this is OK (it doean't break the size). In -stable, it shoul= d Actually, I'm wrong. It does break the size due to the 3 characters of new padding... : instead look like: : = : =A0 =A0 =A0 =A0char =A0 =A0 if_cspare[3]; : - =A0 =A0 =A0 void =A0 =A0*if_pspare[8]; : + =A0 =A0 =A0 void =A0 =A0*if_pspare[7]; : + =A0 =A0 =A0 struct sbuf=A0*if_description; : = : of course, in -head it could look that way too and not force a : recompile of everything that groks ifnets...