]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
vol: Pay attention to specialStatus after VAVByVp
authorAndrew Deason <adeason@sinenomine.net>
Wed, 2 May 2012 17:07:49 +0000 (12:07 -0500)
committerDerrick Brashear <shadow@dementix.org>
Mon, 28 May 2012 14:43:31 +0000 (07:43 -0700)
attach2/VAttachVolumeByVp_r do not alter the yielded error code
according to specialStatus. So, pay attention to specialStatus after
receiving an error from VAttachVolumeByVp_r, to ensure we respond with
the correct error code.

Reviewed-on: http://gerrit.openafs.org/7303
Reviewed-by: Tom Keiser <tkeiser@sinenomine.net>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
(cherry picked from commit a81f9237bfa7b2e3a0567a930f3c49234b9a4376)

Change-Id: I1d0cb429b9cd875fa43a3af2e8c5d5d96ee12f85
Reviewed-on: http://gerrit.openafs.org/7491
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
src/vol/volume.c

index 9aa4a4fe5855d490e7fff0e771abe9ed1e71f511..8599c59de625299ba8e813ebe29568c2ff1c7fb6 100644 (file)
@@ -4044,9 +4044,17 @@ GetVolume(Error * ec, Error * client_ec, VolId volumeId, Volume * hint,
                    if (!vp->pending_vol_op) {
                        endloop = 1;
                    }
+                   if (vp->specialStatus) {
+                       *ec = vp->specialStatus;
+                   }
                    break;
+
                default:
-                   *ec = VNOVOL;
+                   if (vp->specialStatus) {
+                       *ec = vp->specialStatus;
+                   } else {
+                       *ec = VNOVOL;
+                   }
                    endloop = 1;
                }
                if (endloop) {