Following Brian's suggestion, I've modified gif to create a /dev/if_gif
device with is controlled by the IOCIFMANAGE ioctl which allows creation
and deletion of specific devices and creation of wildcard devices.  I've
hacked ifconfig to support this in a general manner.  If you know which
one you want to use you can do something like

ifconfig gif783 10.0.0.1 10.0.0.2
# gifconfig has to come second because I didn't add creation support to
# it because I want to kill it off in favor of ifconfig "tsrc" and
# "tdst" parameters like Solaris uses.
gifconfig gif783 blah

or if you don't care which one you use you can do

newgif=`ifconfig gif#`
gifconfig ${newgif} blah 
ifconfig ${newgif} 10.0.0.1 10.0.0.2

You can also delete interfaces:

ifconfig -D gif783

Additionaly, I removed all the annoying refrences to gif.h and NGIF, and
moved things around so gif can be loaded and unloaded as a module.

A copy of the diff as avaiable at the URL below and I'm submitting a PR
titled "[PATCH] make gif fully dynamic".

http://www.one-eyed-alien.net/~brooks/FreeBSD/gif.diff

-- Brooks

-- 
Any statement of the form "X is the one, true Y" is FALSE.
PGP fingerprint 655D 519C 26A7 82E7 2529  9BF0 5D8E 8BE9 F238 1AD4

PGP signature

Reply via email to