auth: Set correct flags in token_extractRxkad
authorAndrew Deason <adeason@sinenomine.net>
Thu, 14 Apr 2011 19:36:36 +0000 (14:36 -0500)
committerDerrick Brashear <shadow@dementia.org>
Mon, 18 Apr 2011 12:17:26 +0000 (05:17 -0700)
The flags that token_extractRxkad returns are flags that are passed to
ktc_SetToken, not the flags that are passed directly to the PSetTokens
pioctl. So, we should be setting AFS_SETTOK_SETPAG, which is
interpreted by ktc_SetToken.

Change-Id: Id63ba4d5874e43c8d1f02817bf33975516a974be
Reviewed-on: http://gerrit.openafs.org/4480
Reviewed-by: Simon Wilkinson <sxw@inf.ed.ac.uk>
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>

src/auth/token.c

index 3e884f2..bf0d351 100644 (file)
@@ -276,8 +276,12 @@ token_extractRxkad(struct ktc_setTokenData *token,
           uToken.ktc_tokenUnion_u.at_kad.rk_ticket.rk_ticket_val,
           rxkadToken->ticketLen);
 
-    if (flags)
-       *flags = uToken.ktc_tokenUnion_u.at_kad.rk_primary_flag & ~0x8000;
+    if (flags) {
+       *flags = 0;
+       if ((token->flags & AFSTOKEN_EX_SETPAG)) {
+           *flags |= AFS_SETTOK_SETPAG;
+       }
+    }
 
     if (aclient) {
        strncpy(aclient->cell, token->cell, MAXKTCREALMLEN-1);