It is possible for GetVolObject to return success, but result in a NULL
fs_tv. In particular, when the fileserver responds with FSYNC_WRONG_PART
or FSYNC_UNKNOWN_VOLID. It is possible, though difficult, for the
fileserver to respond with FSYNC_UNKNOWN_VOLID if the requested volume
hasn't been preattached on the fileserver yet.
So, in GetVolInfo, also check fs_tv, so we don't try to dereference it
later.
Reviewed-on: http://gerrit.openafs.org/562
Tested-by: Derrick Brashear <shadow@dementia.org>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
#ifdef AFS_DEMAND_ATTACH_FS
/* If using DAFS, get volume from fsserver */
- if (GetVolObject(volumeId, pname, &fs_tv) != SYNC_OK) {
+ if (GetVolObject(volumeId, pname, &fs_tv) != SYNC_OK || fs_tv == NULL) {
+
goto drop;
}