From owner-freebsd-current Sun Mar 24 5: 3:54 2002 Delivered-To: freebsd-current@freebsd.org Received: from core.zp.ua (core.zp.ua [193.108.112.7]) by hub.freebsd.org (Postfix) with ESMTP id 01F4837B404; Sun, 24 Mar 2002 05:03:41 -0800 (PST) Received: (from oleg@localhost) by core.zp.ua with œ id g2OD3XE44357; Sun, 24 Mar 2002 15:03:33 +0200 (EET) (envelope-from oleg)œ Date: Sun, 24 Mar 2002 15:03:33 +0200 From: "Oleg V. Naumann" To: current@freebsd.org Cc: luigi@freebsd.org Subject: Re: is 'device ether' mandatory now? Message-ID: <20020324130333.GE25880@core.zp.ua> Mail-Followup-To: current@freebsd.org, luigi@FreeBSD.ORG References: <20020323204359.Y10340-100000@news1.macomnet.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <20020323204359.Y10340-100000@news1.macomnet.ru> User-Agent: Mutt/1.3.28i Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Sat, Mar 23, 2002 at 08:50:19PM +0300, Maxim Konovalov wrote: > > Hello, > > After this commit 'device ether' is mandatory if ever there is no any > ethernet or token-ring devices. The same problem in STABLE... from revision 1.85.2.15 of net/if.c: #ifdef INET /* * Also send gratuitous ARPs to notify other nodes about * the address change. */ TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if (ifa->ifa_addr != NULL && ifa->ifa_addr->sa_family == AF_INET) arp_ifinit((struct arpcom *)ifp, ifa); } #endif arp_ifinit defined in netinet/if_ether.c This makes 'device ether' mandatory for 'options INET', so kernel with 'options INET', but without 'device ether' failed to built: sh ../../conf/newvers.sh DIALUP cc -c -O -pipe -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions -ansi -nostdinc -I- -I. -I../.. -I../../../include -I../../contrib/ipfilter -D_KERNEL -include opt_global.h -elf -mpreferred-stack-boundary=2 vers.c linking kernel if.o: In function `if_setlladdr': if.o(.text+0x1ac8): undefined reference to `arp_ifinit' *** Error code 1 Stop in /usr/src/sys/compile/DIALUP. bash-2.05# uname -a FreeBSD core.zp.ua 4.5-STABLE FreeBSD 4.5-STABLE #2: Thu Mar 14 20:31:11 EET 2002 root@core.zp.ua:/usr/obj/usr/src/sys/core i386 (yes, my computer@home doesn't have any arp-capable devices, and connects with Internet via dialup) > > | luigi 2002/02/18 14:50:13 PST > | > | Modified files: > | sys/net if.c > | Log: > | When the local link address is changed, send out gratuitous ARPs > | to notify other nodes about the address change. Otherwise, they > | might try and keep using the old address until their arp table > | entry times out and the address is refreshed. > | > | Maybe this ought to be done for INET6 addresses as well but i have > | no idea how to do it. It should be pretty straightforward though. > | > | MFC-after: 10 days > | > | Revision Changes Path > | 1.128 +11 -0 src/sys/net/if.c > > -- > Maxim Konovalov, MAcomnet, Internet-Intranet Dept., system engineer > phone: +7 (095) 796-9079, mailto:maxim@macomnet.ru > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-current" in the body of the message -- With best wishes Oleg V. Nauman NO37-RIPE To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message