[OpenAFS-devel] N800, Mobile AFS, and changing IP addresses

Derrick Brashear shadow@gmail.com
Sun, 27 Apr 2008 09:13:13 -0400


>
>  You need to find a way to get afsd to notice interface event changes on
> Linux. As I said on IRC, I think that DBus, combined with Network Manager
> can help with this. It may also be that there are events available to the
> kernel module that notify it of interface change. I'm not sure which of
> these will be available on the N800.
>

Long long ago jhutz and I argued on zephyr about dbus. He said:
- compute the set of interfaces
- apply netinfo/netrestrict
- call VIOC_GETCPREFS and remove any not listed there
- add back in the interface that actually just went up

The dbus script will know which interface is new.
Basically, your binary should take an optional argument which is the name
or IP address (I don't care which) of the new interface.  If the argument
is not given, then you don't treat any interface specially.

Also a -reset switch which causes it to ignore VIOC_GETCPREFS and just do
what afsd would have done.

The binary I had at the time was a very stripped afsd.

/afs/andrew.cmu.edu/usr/shadow/diff.adviseaddr

It needs command line argument parsing to do what's suggested above,
and a call to VIOC_GETCPREFS.