From owner-freebsd-arch Thu Sep 13 20: 2:34 2001 Delivered-To: freebsd-arch@freebsd.org Received: from odin.ac.hmc.edu (Odin.AC.HMC.Edu [134.173.32.75]) by hub.freebsd.org (Postfix) with ESMTP id 1A75837B401; Thu, 13 Sep 2001 20:02:22 -0700 (PDT) Received: (from brdavis@localhost) by odin.ac.hmc.edu (8.11.0/8.11.0) id f8E32La12637; Thu, 13 Sep 2001 20:02:21 -0700 Date: Thu, 13 Sep 2001 20:02:21 -0700 From: Brooks Davis To: net@freebsd.org, arch@freebsd.org Subject: review request: creating cloneable interfaces at boot Message-ID: <20010913200221.A11788@Odin.AC.HMC.Edu> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="UugvWAfsgieZRqgk" Content-Disposition: inline User-Agent: Mutt/1.2.5i Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --UugvWAfsgieZRqgk Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable I'd like to commit something like the following patch to create clonable interfaces at boot so they can be configured the normal way. Any one have comments or suggestions? -- Brooks Index: etc/rc.network =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 RCS file: /usr/cvs/src/etc/rc.network,v retrieving revision 1.102 diff -u -r1.102 rc.network --- etc/rc.network 30 Jul 2001 23:12:02 -0000 1.102 +++ etc/rc.network 14 Sep 2001 02:54:15 -0000 @@ -127,6 +127,11 @@ ;; esac =20 + # Attempt to create cloned interfaces. + for ifn in ${cloned_interfaces}; do + ifconfig ${ifn} create + done + # Special options for sppp(4) interfaces go here. These need # to go _before_ the general ifconfig section, since in the case # of hardwired (no link1 flag) but required authentication, you @@ -151,6 +156,9 @@ [Aa][Uu][Tt][Oo]) network_interfaces=3D"`ifconfig -l`" ;; + *) + network_interfaces=3D"${network_interfaces} ${cloned_interfaces}" + ;; esac =20 dhcp_interfaces=3D"" @@ -796,7 +804,8 @@ continue ;; *) - ifconfig $i create tunnel ${peers} + ifconfig $i create >/dev/null 2>&1 + ifconfig $i tunnel ${peers} ;; esac done Index: etc/defaults/rc.conf =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 RCS file: /usr/cvs/src/etc/defaults/rc.conf,v retrieving revision 1.122 diff -u -r1.122 rc.conf --- etc/defaults/rc.conf 2 Sep 2001 23:34:19 -0000 1.122 +++ etc/defaults/rc.conf 12 Sep 2001 20:54:50 -0000 @@ -85,6 +85,8 @@ icmp_drop_redirect=3D"NO" # Set to YES to ignore ICMP REDIRECT packets icmp_log_redirect=3D"NO" # Set to YES to log ICMP REDIRECT packets network_interfaces=3D"auto" # List of network interfaces (or "auto"). +cloned_interfaces=3D"" # List of cloned network interfaces to create. +#cloned_interfaces=3D"gif0" # Restore pre-cloning GENERIC config. ifconfig_lo0=3D"inet 127.0.0.1" # default loopback device configuration. #ifconfig_lo0_alias0=3D"inet 127.0.0.254 netmask 0xffffffff" # Sample alia= s entry. #ifconfig_ed0_ipx=3D"ipx 0x00010010" # Sample IPX address family entry. Index: share/man/man5/rc.conf.5 =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 RCS file: /usr/cvs/src/share/man/man5/rc.conf.5,v retrieving revision 1.133 diff -u -r1.133 rc.conf.5 --- share/man/man5/rc.conf.5 29 Aug 2001 05:39:06 -0000 1.133 +++ share/man/man5/rc.conf.5 14 Sep 2001 02:45:31 -0000 @@ -598,6 +598,14 @@ .Bd -literal ifconfig_ed0=3D"DHCP" .Ed +.It Va cloned_interfaces +.Pq Vt str +Set to the list of clonable network interfaces to create on this host. +Entries in +.Va cloned_interfaces +are automaticly appended to +.Va network_interfaces +for configuration. .It Va ppp_enable .Pq Vt bool If set to --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --UugvWAfsgieZRqgk Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE7oXM7XY6L6fI4GtQRAjUyAJ4oaqm5nzuq8eOHng6zbeis6CwhjgCdH2aY phfrNOAdiB/5ZqufZKqG1Bg= =fyDE -----END PGP SIGNATURE----- --UugvWAfsgieZRqgk-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message