Windows: cm_SetServerBusyState use cm_ServerEqual
authorJeffrey Altman <jaltman@your-file-system.com>
Sun, 6 May 2012 13:54:55 +0000 (09:54 -0400)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Sun, 6 May 2012 15:52:42 +0000 (08:52 -0700)
When the busy state of a server is set it must apply to all
server references if the server is multi-homed.  Use cm_ServerEqual()
to do so.

Change-Id: I76c07746eb396af988a5270804e221e7a641db66
Reviewed-on: http://gerrit.openafs.org/7355
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>

src/WINNT/afsd/cm_conn.c

index 15f0f50..2d3623a 100644 (file)
@@ -250,7 +250,7 @@ cm_SetServerBusyStatus(cm_serverRef_t *serversp, cm_server_t *serverp)
     for (tsrp = serversp; tsrp; tsrp=tsrp->next) {
         if (tsrp->status == srv_deleted)
             continue;
-        if (tsrp->server == serverp && tsrp->status == srv_not_busy) {
+        if (cm_ServerEqual(tsrp->server, serverp) && tsrp->status == srv_not_busy) {
             tsrp->status = srv_busy;
             break;
         }