diff options
author | Garrett Wollman <wollman@FreeBSD.org> | 1995-06-13 17:42:07 +0000 |
---|---|---|
committer | Garrett Wollman <wollman@FreeBSD.org> | 1995-06-13 17:42:07 +0000 |
commit | f73b709a01e2b21c62b7f980e8b338428e424a42 (patch) | |
tree | e57647e5c99f79289dd6071145c1e50ad834684e /sbin/mount_umapfs/mount_umapfs.c | |
parent | 3589d0dfc6a6358b0820ebea95b74975fd657e61 (diff) | |
download | src-f73b709a01e2b21c62b7f980e8b338428e424a42.tar.gz src-f73b709a01e2b21c62b7f980e8b338428e424a42.zip |
Use the correct file pointer when reading the group id map file. The old
code tried to read the group id map from the user id file, and thus would
never actually allow a umapfs to be mounted. (!)
Notes
Notes:
svn path=/head/; revision=9206
Diffstat (limited to 'sbin/mount_umapfs/mount_umapfs.c')
-rw-r--r-- | sbin/mount_umapfs/mount_umapfs.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/sbin/mount_umapfs/mount_umapfs.c b/sbin/mount_umapfs/mount_umapfs.c index c7e31c6fc3bb..f8e229b4de68 100644 --- a/sbin/mount_umapfs/mount_umapfs.c +++ b/sbin/mount_umapfs/mount_umapfs.c @@ -190,7 +190,7 @@ main(argc, argv) errx(1, "%s does not belong to root%s", gmapfile, not); #endif /* MAPSECURITY */ - if ((fscanf(fp, "%d\n", &gnentries)) != 1) + if ((fscanf(gfp, "%d\n", &gnentries)) != 1) errx(1, "nentries not found%s", gmapfile, not); if (gnentries > MAPFILEENTRIES) errx(1, @@ -200,11 +200,11 @@ main(argc, argv) #endif for (count = 0; count < gnentries; ++count) - if ((fscanf(fp, "%lu %lu\n", + if ((fscanf(gfp, "%lu %lu\n", &(gmapdata[count][0]), &(gmapdata[count][1]))) != 2) { - if (ferror(fp)) + if (ferror(gfp)) err(1, "%s%s", gmapfile, not); - if (feof(fp)) + if (feof(gfp)) errx(1, "%s: unexpected end-of-file%s", gmapfile, not); errx(1, "%s: illegal format (line %d)%s", @@ -226,8 +226,11 @@ main(argc, argv) endvfsent(); /* flush cache */ vfc = getvfsbyname("umap"); } + if (!vfc) { + errx(1, "umap filesystem not available"); + } - if (mount(vfc ? vfc->vfc_index : MOUNT_UMAP, argv[1], mntflags, &args)) + if (mount(vfc->vfc_index, argv[1], mntflags, &args)) err(1, NULL); exit(0); } |