svcrpc: fix error-handling on badd gssproxy downcall
authorJ. Bruce Fields <bfields@redhat.com>
Tue, 8 Oct 2013 19:53:07 +0000 (15:53 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Tue, 8 Oct 2013 19:56:23 +0000 (15:56 -0400)
For every other problem here we bail out with an error, but here for
some reason we're setting a negative cache entry (with, note, an
undefined expiry).

It seems simplest just to bail out in the same way as we do in other
cases.

Cc: Simo Sorce <simo@redhat.com>
Reported-by: Andi Kleen <andi@firstfloor.org>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
net/sunrpc/auth_gss/svcauth_gss.c

index 09fb638..008cdad 100644 (file)
@@ -1167,8 +1167,8 @@ static int gss_proxy_save_rsc(struct cache_detail *cd,
        if (!ud->found_creds) {
                /* userspace seem buggy, we should always get at least a
                 * mapping to nobody */
-               dprintk("RPC:       No creds found, marking Negative!\n");
-               set_bit(CACHE_NEGATIVE, &rsci.h.flags);
+               dprintk("RPC:       No creds found!\n");
+               goto out;
        } else {
 
                /* steal creds */