diff options
author | David Woodhouse <David.Woodhouse@intel.com> | 2008-08-28 10:29:54 -0400 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2008-08-28 10:29:54 -0400 |
commit | 0ae97c5b87a56870e74a74ae50aeb2ae0e496907 (patch) | |
tree | 5b7641804cac2adee510efd507cbd6859d1059b0 /utils/mountd | |
parent | 86c3a79a108091fe08869a887438cc2d4e1126ed (diff) | |
download | nfs-utils-0ae97c5b87a56870e74a74ae50aeb2ae0e496907.tar.gz nfs-utils-0ae97c5b87a56870e74a74ae50aeb2ae0e496907.tar.xz nfs-utils-0ae97c5b87a56870e74a74ae50aeb2ae0e496907.zip |
Fix handling of explicit uuid
Fix a couple of bugs which show up if you try to explicitly set a
16-byte UUID when exporting a file system. First, exportfs cuts the
first two bytes off the UUID and writes something invalid to etab.
Second, mountd writes the _ascii_ form of the UUID to the kernel,
instead of converting it to hex.
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'utils/mountd')
-rw-r--r-- | utils/mountd/cache.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/utils/mountd/cache.c b/utils/mountd/cache.c index 609c6e3..2ebdd45 100644 --- a/utils/mountd/cache.c +++ b/utils/mountd/cache.c @@ -592,8 +592,10 @@ static int dump_to_cache(FILE *f, char *domain, char *path, struct exportent *ex qword_printhex(f, u, 16); } } else { + char u[16]; + get_uuid(NULL, exp->e_uuid, 16, u); qword_print(f, "uuid"); - qword_printhex(f, exp->e_uuid, 16); + qword_printhex(f, u, 16); } #endif } |