vlserver: always use the hostaddress table in GetAddrsU
authorMichael Meffie <mmeffie@sinenomine.net>
Fri, 22 Jun 2012 03:44:31 +0000 (23:44 -0400)
committerDerrick Brashear <shadow@dementix.org>
Thu, 26 Jul 2012 18:42:42 +0000 (11:42 -0700)
commit24d2d3ea83bdadee3d8a8b477be10e9ced178b6d
treeda3213cb7dba0f8553921256db830fdac74dec1c
parent7649a66a6193e2fd8a709bf701fcbb07774d2d33
vlserver: always use the hostaddress table in GetAddrsU

Use the hostaddress (IpMappedAddr) table when looking up hosts by IP
address and when listing addresses by index, instead of accessing
the multi-homed extensions directly.

The existing vos client calls the old GetAddrs rpc to first retrieve
a count of the number of addresses expected. This count is the
number of addresses in the hostaddress table.  If there are
unreferenced entries in the mh extension blocks, then vos can return
an incorrect or incomplete list of addresses.

To be consistent with the rest of the host address processing, use
the hostaddress table in GetAddrsU to lookup hosts by index or by IP
address.

The hostaddress table is already used when looking up addresses by
UUID.

Change-Id: I01aa29ae7d24d48bcd245f0320e329435f61548e
Reviewed-on: http://gerrit.openafs.org/7878
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
src/vlserver/vlprocs.c