summaryrefslogtreecommitdiffstats
path: root/usr.sbin/mtree/spec.c
diff options
context:
space:
mode:
authorjoe <joe@FreeBSD.org>1999-12-09 20:38:36 +0000
committerjoe <joe@FreeBSD.org>1999-12-09 20:38:36 +0000
commit2d2f34a6b0d504ee514ce90ee4680797ca32254c (patch)
tree67ed32cdc7f451c6623d8ec3550f32874bffbf70 /usr.sbin/mtree/spec.c
parentc6d289b2ad57b3e51ea70ee85c86808035d1e10f (diff)
downloadFreeBSD-src-2d2f34a6b0d504ee514ce90ee4680797ca32254c.zip
FreeBSD-src-2d2f34a6b0d504ee514ce90ee4680797ca32254c.tar.gz
Added support for file flags, mostly merged from the NetBSD version.
The way is now open to schg and sappnd key files and directories in our tree. There are recommendations in bin/15229. PR: bin/15229 Reviewed by: imp, brian
Diffstat (limited to 'usr.sbin/mtree/spec.c')
-rw-r--r--usr.sbin/mtree/spec.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/usr.sbin/mtree/spec.c b/usr.sbin/mtree/spec.c
index 4a23073..3fa9e7c 100644
--- a/usr.sbin/mtree/spec.c
+++ b/usr.sbin/mtree/spec.c
@@ -172,10 +172,10 @@ noparent: errx(1, "line %d: no parent node", lineno);
static void
set(t, ip)
char *t;
- register NODE *ip;
+ NODE *ip;
{
register int type;
- register char *kw, *val = NULL;
+ char *kw, *val = NULL;
struct group *gr;
struct passwd *pw;
mode_t *m;
@@ -211,6 +211,12 @@ set(t, ip)
errx(1, "strdup");
}
break;
+ case F_FLAGS:
+ if (strcmp("none", val) == 0)
+ ip->st_flags = 0;
+ else if (string_to_flags(&val, &ip->st_flags,NULL) != 0)
+ errx(1, "line %d: invalid flag %s",lineno, val);
+ break;
case F_GID:
ip->st_gid = strtoul(val, &ep, 10);
if (*ep)
OpenPOWER on IntegriCloud