From 4d465b3c2ba1a0c981191da89e411e055e1602ef Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Mon, 25 Jun 2007 05:59:40 +0000 Subject: [PATCH] DEVEL15-windows-get-server-list-20070625 return an error when the cm_fid_t * is NULL since we can't look up the volume to obtain a server list without knowing which volume we should be looking up if the fidp is known to be NULL, don't call cm_GetServerList() (cherry picked from commit 3eb7be5c5e63fbf5cbd978c29f155f3e0de856bb) --- src/WINNT/afsd/cm_conn.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/WINNT/afsd/cm_conn.c b/src/WINNT/afsd/cm_conn.c index 20c39cd66..ff3743edc 100644 --- a/src/WINNT/afsd/cm_conn.c +++ b/src/WINNT/afsd/cm_conn.c @@ -119,7 +119,7 @@ static long cm_GetServerList(struct cm_fid *fidp, struct cm_user *userp, if (!fidp) { *serversppp = NULL; - return 0; + return CM_ERROR_INVAL; } cellp = cm_FindCellByID(fidp->cell); @@ -362,7 +362,7 @@ cm_Analyze(cm_conn_t *connp, cm_user_t *userp, cm_req_t *reqp, /* special codes: VBUSY and VRESTARTING */ else if (errorCode == VBUSY || errorCode == VRESTARTING) { - if (!serversp) { + if (!serversp && fidp) { code = cm_GetServerList(fidp, userp, reqp, &serverspp); if (code == 0) { serversp = *serverspp; @@ -464,7 +464,7 @@ cm_Analyze(cm_conn_t *connp, cm_user_t *userp, cm_req_t *reqp, #endif /* Mark server offline for this volume */ - if (!serversp) { + if (!serversp && fidp) { code = cm_GetServerList(fidp, userp, reqp, &serverspp); if (code == 0) { serversp = *serverspp; -- 2.39.5