summaryrefslogtreecommitdiff
path: root/sbin
diff options
context:
space:
mode:
authorTed Unangst <tedu@cvs.openbsd.org>2003-04-18 22:16:25 +0000
committerTed Unangst <tedu@cvs.openbsd.org>2003-04-18 22:16:25 +0000
commit43e116b7c3a8173786c161807ae5c036eaf6bb4e (patch)
tree535d2e471f07af3e3160a450a6ecd4539ef65d72 /sbin
parent59eafc15443d17f49106e364f0e04f3f9a8385de (diff)
support for making directories executable if readable.
to use this, you want to run mount_msdos with -m 0644 -x or so. ok millert@
Diffstat (limited to 'sbin')
-rw-r--r--sbin/mount_msdos/mount_msdos.85
-rw-r--r--sbin/mount_msdos/mount_msdos.c9
2 files changed, 10 insertions, 4 deletions
diff --git a/sbin/mount_msdos/mount_msdos.8 b/sbin/mount_msdos/mount_msdos.8
index ec38a1131d3..0b6c46817f1 100644
--- a/sbin/mount_msdos/mount_msdos.8
+++ b/sbin/mount_msdos/mount_msdos.8
@@ -1,4 +1,4 @@
-.\" $OpenBSD: mount_msdos.8,v 1.16 2003/02/09 07:26:45 jmc Exp $
+.\" $OpenBSD: mount_msdos.8,v 1.17 2003/04/18 22:16:24 tedu Exp $
.\" $NetBSD: mount_msdos.8,v 1.10 1996/01/19 21:14:43 leo Exp $
.\"
.\" Copyright (c) 1993,1994 Christopher G. Demetriou
@@ -45,6 +45,7 @@
.Op Fl l
.Op Fl 9
.Op Fl G
+.Op Fl x
.Ar special
.Ar node
.Sh DESCRIPTION
@@ -139,6 +140,8 @@ The differences to the msdos filesystem are minimal and
limited to the boot block.
This option enforces
.Fl s .
+.It Fl x
+If a directory is readable, it inherits the x attribute as well.
.El
.Sh SEE ALSO
.Xr mount 2 ,
diff --git a/sbin/mount_msdos/mount_msdos.c b/sbin/mount_msdos/mount_msdos.c
index 80c42abf239..d7aa882386c 100644
--- a/sbin/mount_msdos/mount_msdos.c
+++ b/sbin/mount_msdos/mount_msdos.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mount_msdos.c,v 1.14 2002/04/23 18:54:12 espie Exp $ */
+/* $OpenBSD: mount_msdos.c,v 1.15 2003/04/18 22:16:24 tedu Exp $ */
/* $NetBSD: mount_msdos.c,v 1.16 1996/10/24 00:12:50 cgd Exp $ */
/*
@@ -32,7 +32,7 @@
*/
#ifndef lint
-static char rcsid[] = "$OpenBSD: mount_msdos.c,v 1.14 2002/04/23 18:54:12 espie Exp $";
+static char rcsid[] = "$OpenBSD: mount_msdos.c,v 1.15 2003/04/18 22:16:24 tedu Exp $";
#endif /* not lint */
#include <sys/cdefs.h>
@@ -76,7 +76,7 @@ main(argc, argv)
mntflags = set_gid = set_uid = set_mask = 0;
(void)memset(&args, '\0', sizeof(args));
- while ((c = getopt(argc, argv, "Gsl9u:g:m:o:")) != -1) {
+ while ((c = getopt(argc, argv, "Gsl9xu:g:m:o:")) != -1) {
switch (c) {
case 'G':
args.flags |= MSDOSFSMNT_GEMDOSFS;
@@ -90,6 +90,9 @@ main(argc, argv)
case '9':
args.flags |= MSDOSFSMNT_NOWIN95;
break;
+ case 'x':
+ args.flags |= MSDOSFSMNT_ALLOWDIRX;
+ break;
case 'u':
args.uid = a_uid(optarg);
set_uid = 1;