X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=utils%2Fmountd%2Fcache.c;h=fa154725b95b809dfe88c9a727fd98e4e1160e8b;hb=124b74413e943ab9c02cdff2832d1d81dc9fda87;hp=23e2344559bb3bec48583c3a15d0187c44c03a3d;hpb=8d52fc2691783dc9ef5bd9d9a1fa4c0ec33b20bc;p=nfs-utils.git diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c index 23e2344..fa15472 100644 --- a/utils/mountd/cache.c +++ b/utils/mountd/cache.c @@ -215,8 +215,17 @@ int get_uuid(char *path, char *uuid, int uuidlen, char *u) if (path) { val = get_uuid_blkdev(path); - if (!val) - return 0; + if (!val) { + struct statfs64 st; + + if (statfs64(path, &st)) + return 0; + if (!st.f_fsid.__val[0] && !st.f_fsid.__val[1]) + return 0; + snprintf(fsid_val, 17, "%08x%08x", + st.f_fsid.__val[0], st.f_fsid.__val[1]); + val = fsid_val; + } } else { val = uuid; }