tech-net archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Bumping up routing socket's RTM_VERSION from 3 to 4
One of the problem with the current protocol used by the routing socket (and
thusly by sysctl) is that it's not 64bit clean. That means program under
COMPAT_NETBSD32 can't use it and things like ifconfig/route fail.
While a netbsd32 shim could be written, it wouldn't be easy. It seemed to me
that it would wiser to spend that time and effort to make the routing socket
protocol so that it only uses fixed sized types.
With the changes in http://www.netbsd.org/~matt/rtm4-diffs.txt (which are for
netbsd-5), ifconfig, route,
and getifaddrs(3) all work in COMPAT_NETBSD32 as well as in the native NetBSD
emulation.
This change requires any program that uses the routing socket to be recompiled.
There can be no compatibility between RTM3 and RTM4, the structures are just
too different.
If you want to run a 32bit userland on a 64bit kernel, having a working
ifconfig(8) and route(8) is not optional. And this seems the best method to
get there.
Home |
Main Index |
Thread Index |
Old Index