From: Derrick Brashear Date: Thu, 4 Mar 2010 17:23:14 +0000 (-0500) Subject: evalmount copy out volid for sure X-Git-Tag: openafs-devel-1_5_73~100 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=ee340811a6f225d1cc81f651530fb9bfc892e916;p=packages%2Fo%2Fopenafs.git evalmount copy out volid for sure make sure we really have a volid and avoid dereferencing tvp if there's none Change-Id: Iec6e7cba4d43e2d9c9af296bd6a1574e290bd118 Reviewed-on: http://gerrit.openafs.org/1512 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/afs/VNOPS/afs_vnop_lookup.c b/src/afs/VNOPS/afs_vnop_lookup.c index d93f5df78..2086e1717 100644 --- a/src/afs/VNOPS/afs_vnop_lookup.c +++ b/src/afs/VNOPS/afs_vnop_lookup.c @@ -223,6 +223,8 @@ EvalMountData(char type, char *data, afs_uint32 states, afs_uint32 cellnum, *cpos = ':'; if (!tvp) return ENODEV; /* Couldn't find the volume */ + else + volid = tvp->volume; /* Don't cross mountpoint from a BK to a BK volume */ if ((states & CBackup) && (tvp->states & VBackup)) { @@ -256,7 +258,7 @@ done: if (acellidxp) *acellidxp = cellidx; if (avolnump) - *avolnump = tvp->volume; + *avolnump = volid; if (avnoidp) *avnoidp = vnoid; if (auniqp)