Date: Tue, 5 Dec 1995 21:21:39 +0200 (SAT) From: John Hay <jhay@mikom.csir.co.za> To: supervisor@alb.asctmd.com Cc: hackers@FreeBSD.ORG (FreeBSD-hackers), wollman@FreeBSD.ORG Subject: Re: ipx on 802.3 -Reply Message-ID: <199512051921.VAA11747@zibbi.mikom.csir.co.za> In-Reply-To: <s0c405b9.015@alb.asctmd.com> from "supervisor@alb.asctmd.com" at Dec 5, 95 08:40:37 am
next in thread | previous in thread | raw e-mail | index | archive | help
> > > >>>>>>>>>>>>>>> > Garrett's suggestion: > > > > So, do everyone a favor and re-write them to use the if_phys entry in > > the ifnet struct I added for specifically this purpose. Then you can > > use the IFF_LINK flags for this purpose. (Given that they were called > > IFF_LLC* in Net/2, well, you guess why they were originally added.) > > Terry's suggestion: > > > I believe it is possible to compare the address family in the file > > /sys/net/if.c in the function ifioctl() for "case SIOCSIFFLAGS" > > (at about line 531) to determin if AF_IPX is being used, and if so, > > interpret the values of IFF_LINK[0-2] differently. > > > This would be a simple hack compared to fixing all the code to > > do the right thing for the interface flags. > > > > Having read both Terry's and Garrett's sugestions, here are my thoughts > for Terry's suggestion: > > This does mean that if you want to use the IFF_LINK in a device driver, > you will have to do two ifconfig's, one "ifconfig xxx ipx xxxxx linkx" to set > 802.3 mode and one without the ipx to set a link option inside the device > driver. > > At the moment the only device drivers that use all three IFF_LINK options > are /sys/i386/isa/if_ep.c and /sys/pci/if_vx.c. The rest are only using one > and in some cases two of the IFF_LINK options. So maybe we can > change those that only use one, to use IFF_LINK2 which allready have an > alias > IFF_ALTPHYS in /sys/net/if.c? > > And here are my thoughts to Garrett's suggestion: > > This sounds like the cleanest option, but I would first like to figure out how > much work this will be. I can think of at least one user-level program > ifconfig that will have to be changed. Are there others? And what should > the option for ifconfig be called? > <<<<<<<<<<<<<<< > Sorry, I have not been closely following this thread for a while. I see a bit > of activity has transpired. Just a quick question, does your design > allow running with 802.3 AND Ethernet_II frame types on the same > interface at the same time? This should be possible... Well to be honest, I haven't designed it yet. I have only had a look in the sources especialy if_ethersubr.c and decided that by using one of the IFF_LINK flags it should be easy to add it to if_ethersubr.c. That way wouldn't cater for both frame types on the same interface. > > I was thinking about implementing something like this internal to the kernel > in the if_ethersubr.c module. I was going to extend the IPX structure to > contain a flag that was set on input as to the frame type and then convert > it internally to Ethernet_II. Then on output, I was going to format the packet > correctly and send it out to the ethernet interface. A modification like this > would then let the NS code be "folded" back in and the netns directory > could be eliminated... > If you want to do it, you are most welcome. I only wanted to do it because some of our customers wants it and I thought that I could get the capability into the FreeBSD tree at the same time. John -- John Hay -- John.Hay@csir.co.za
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199512051921.VAA11747>