diff options
author | phk <phk@FreeBSD.org> | 1999-10-09 11:54:14 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 1999-10-09 11:54:14 +0000 |
commit | 41c4f3920e76ddd3b3a183fc18e6e0834a26086b (patch) | |
tree | 90d36f2866e2e9c8c9fe890230d8240ed54253f1 /sbin/mount_umap | |
parent | 977cb3153eec3286210df53421e8494748c21d3a (diff) | |
download | FreeBSD-src-41c4f3920e76ddd3b3a183fc18e6e0834a26086b.zip FreeBSD-src-41c4f3920e76ddd3b3a183fc18e6e0834a26086b.tar.gz |
mount* fixes from Martin Blapp <mb@imp.ch>:
Made mount more userfriendly (bad slashes are now filtered out)
and we remove in mount_nfs trailing slashes if there are any.
Fixed mount_xxx binarys to resolve with realpath(3)
the mountpoint.
Translate the deprecated nfs-syntax with '@' to ':' .
The ':' syntax has now precedence, but '@' still works.
Notify the user that the '@' syntax should not be used.
PR: 7846
PR: 13692
Submitted by: Martin Blapp <mb@imp.ch>
Reviewed by: phk
Diffstat (limited to 'sbin/mount_umap')
-rw-r--r-- | sbin/mount_umap/mount_umap.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sbin/mount_umap/mount_umap.c b/sbin/mount_umap/mount_umap.c index 888682c..0aa7b8c 100644 --- a/sbin/mount_umap/mount_umap.c +++ b/sbin/mount_umap/mount_umap.c @@ -98,7 +98,8 @@ main(argc, argv) FILE *fp, *gfp; u_long gmapdata[GMAPFILEENTRIES][2], mapdata[MAPFILEENTRIES][2]; int ch, count, gnentries, mntflags, nentries; - char *gmapfile, *mapfile, *source, *target, buf[20]; + char *gmapfile, *mapfile, buf[20]; + char source[MAXPATHLEN], target[MAXPATHLEN]; struct vfsconf vfc; int error; @@ -125,8 +126,9 @@ main(argc, argv) if (argc != 2 || mapfile == NULL || gmapfile == NULL) usage(); - source = argv[0]; - target = argv[1]; + /* resolve both target and source with realpath(3) */ + (void)checkpath(argv[0], source); + (void)checkpath(argv[1], target); /* Read in uid mapping data. */ if ((fp = fopen(mapfile, "r")) == NULL) |