Subject: Re: net/if.c fix for netatalk
To: Christian E. Hopps <chopps@merit.edu>
From: Bill Studenmund <wrstuden@nas.nasa.gov>
List: tech-net
Date: 07/02/1999 09:34:05
On 2 Jul 1999, Christian E. Hopps 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.
> 
> Ok well I don't get this but I'll except it as is (I actually have an
> appletalk book so I could go look it up if it was really important).  In 
> any case the second suggestion sounds better to me after thinking about
> it more.  It also sounds like you agree.

We agree that a protocol callback would be best. I'm not sure where it
should go (it's been a while since I broke networking code).

The thing with the routes is that NetBSD's routing uses a bit mask based
binary tree (the radix stuff). That works great with IP, where regions are
allocated in powers of two (i.e. you've got a foo/X address where X is a
number of bits).

Appletalk's routing is based on number ranges, which don't have to lie on
binary boundries. It's the interaction of the two which is causing
problems. :-)

In some sort of native Appletalk routing table, the example above would
just be a route of 500->510. :-)

Take care,

Bill