Fix fallback processing for ktc_GetTokenEx()
authorJeffrey Altman <jaltman@your-file-system.com>
Sat, 18 Dec 2010 23:27:49 +0000 (18:27 -0500)
committerJeffrey Altman <jaltman@openafs.org>
Sun, 19 Dec 2010 01:54:02 +0000 (17:54 -0800)
The fallback processing after ktc_GetToken() generates
a token set or fails.  Immediately return 'code' to the
caller after freeing ktcToken.

Change-Id: If82c5c94b75152eaa4d077b428238e8f77478d05
Reviewed-on: http://gerrit.openafs.org/3544
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>

src/auth/ktc.c
src/auth/ktc_nt.c

index a4ee597..25c2e37 100644 (file)
@@ -523,6 +523,7 @@ ktc_GetTokenEx(char *cellName, struct ktc_setTokenData **tokenSet) {
            memset(ktcToken, 0, sizeof(struct ktc_token));
        }
        free(ktcToken);
+        return code;
     }
     if (code)
        return KTC_PIOCTLFAIL;
index b63c9bd..e5032bb 100644 (file)
@@ -714,7 +714,7 @@ ktc_GetTokenEx(char *cellName, struct ktc_setTokenData **tokenSet) {
            memset(ktcToken, 0, sizeof(struct ktc_token));
        }
        free(ktcToken);
-       return 0;
+       return code;
     }
     if (code)
        return KTC_PIOCTLFAIL;