Subject: Re: net/if.c fix for netatalk
To: Bill Studenmund <wrstuden@nas.nasa.gov>
From: Manuel Bouyer <bouyer@antioche.lip6.fr>
List: tech-net
Date: 07/02/1999 18:34:50
On Thu, Jul 01, 1999 at 05:28:00PM -0700, Bill Studenmund wrote:
> But you only have one address. My netatalk machine's down, so I can't
> demonstrate, but typically it'd be something like
> 
> 502.32   in a range from 500->510
> 
> If I did the math right, we'd have routes 500->503 (0x1f4->0x1f7),
> 504->507 (0x1f8->0x1fb), 508->509 (0x1fc->0x1fd), and 510.

That's my situation as well.

> 
> If I understood you right (which I might not have) you're sugegsting
> adding extra addresses in that range. That's wrong in that other machines
> on the wire might have those addresses. :-)
> 
> > The other suggestion I have would be to add a protocol or ifnet specific
> > match function which if_withnet could use to locate the ifaddr.
> 
> I think some sort of family-specific call would be best.
> 

Ok, so how should it be done ? Add a funtion pointer to, maybe, struct domain ?
Or just a 'switch' case in if.c, calling the rigth function (mostly as is
done in if_ethersubr.c).
I guess the function pointer in struct domain will also allow to fix the
multiple route entries, but a call through a function pointer in
a critical path is not necessarely a good idea. Also we'd need to walk throuh
the doamin list to find the rigth one.

What do your network gurus thinks ?

If we're going struct domain function pointer route, is there any other stuffs
worth adding to struct domain ?

--
Manuel Bouyer, LIP6, Universite Paris VI.           Manuel.Bouyer@lip6.fr
--