]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - utils/mountd/cache.c
Fix silly bug with gid lookup
[nfs-utils.git] / utils / mountd / cache.c
index a14f4f2987369fe8ae299e99b3a6d118c1cf42ef..fbe829e2d3fc188fbe686fc78a820199b5951ac3 100644 (file)
@@ -455,6 +455,7 @@ static int dump_to_cache(FILE *f, char *domain, char *path, struct exportent *ex
                qword_printint(f, exp->e_anonuid);
                qword_printint(f, exp->e_anongid);
                qword_printint(f, exp->e_fsid);
+               write_fsloc(f, exp, path);
                if (exp->e_uuid == NULL) {
                        char u[16];
                        if (get_uuid(exp->e_path, NULL, 16, u)) {
@@ -465,7 +466,6 @@ static int dump_to_cache(FILE *f, char *domain, char *path, struct exportent *ex
                        qword_print(f, "uuid");
                        qword_printhex(f, exp->e_uuid, 16);
                }
-               write_fsloc(f, &exp, path);
        }
        return qword_eol(f);
 }
@@ -548,7 +548,7 @@ void cache_open(void)
        int i;
        for (i=0; cachelist[i].cache_name; i++ ) {
                char path[100];
-               if (!manage_gids && cachelist[i].f == auth_unix_gid)
+               if (!manage_gids && cachelist[i].cache_handle == auth_unix_gid)
                        continue;
                sprintf(path, "/proc/net/rpc/%s/channel", cachelist[i].cache_name);
                cachelist[i].f = fopen(path, "r+");