From owner-freebsd-net Tue Jun 29 9:19:45 1999 Delivered-To: freebsd-net@freebsd.org Received: from alpo.whistle.com (alpo.whistle.com [207.76.204.38]) by hub.freebsd.org (Postfix) with ESMTP id EBA2615267 for ; Tue, 29 Jun 1999 09:19:42 -0700 (PDT) (envelope-from julian@whistle.com) Received: from current1.whistle.com (current1.whistle.com [207.76.205.22]) by alpo.whistle.com (8.9.1a/8.9.1) with SMTP id JAA72335; Tue, 29 Jun 1999 09:19:39 -0700 (PDT) Date: Tue, 29 Jun 1999 09:19:38 -0700 (PDT) From: Julian Elischer To: Kevin Bracey Cc: freebsd-net@FreeBSD.ORG Subject: Re: Old IP addresses hanging around in routes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org well yes, if you delete an interface, why would you keep a route that points through it? You want to re-evaluate that route next time you try to reach that destination. These changes are aimed evemtially at making interfaced dynamic. (e.g. if you add a frame relay circuit, it will gnerate a new interface to represent that circuit, but if you turn off that PVC, you cannot at the moment EVER delete that interface again, because there may be (an unknown number of) routes floating out there on sockets, that will reference that interface.) your problems are a subset of this problem You want On Tue, 29 Jun 1999, Kevin Bracey wrote: > In message > Julian Elischer wrote: > > > I checked in a set of changes for this back in 1997 > > they are in a branch marked "WHISTLE_NET_BRANCH" or something similar. > > > > use the CVS web interface to check some of teh files (like if.c) > > to find the tag and then exctact out the differences.. > > I have decided that I will resurect those changes some day and apply the m > > to current.. > > what they do is: > > > > reference count a lot more networking structures. > > remove all references from routes directly to interfaces (they go via the > > ifaddrs only) > > > > add code to notice when ifaddrs are invalid and remove the reference. > > (the ifaddr is freed when it's last reference goes away) > > > > I've had a little look at this. It seems a little severe - if I understand > it correctly then any static routes through an interface will be totally > deleted if that interface route is deleted. Is this interpretation correct? > > -- > Kevin Bracey, Senior Software Engineer > Pace Micro Technology plc Tel: +44 (0) 1223 725228 > 645 Newmarket Road Fax: +44 (0) 1223 725328 > Cambridge, CB5 8PB, United Kingdom WWW: http://www.acorn.co.uk/ > > > To Unsubscribe: send mail to majordomo@FreeBSD.org > with "unsubscribe freebsd-net" in the body of the message > To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message