diff options
author | 2013-06-02 15:35:18 +0000 | |
---|---|---|
committer | 2013-06-02 15:35:18 +0000 | |
commit | bb394a57bb2b7acd054a21cd8392b1f33a41e31a (patch) | |
tree | 73f89ca5acc6af08dfac367899af1aec8101904e | |
parent | trailing whitespace makes 'make depend' sad. ok mpi@ (diff) | |
download | wireguard-openbsd-bb394a57bb2b7acd054a21cd8392b1f33a41e31a.tar.xz wireguard-openbsd-bb394a57bb2b7acd054a21cd8392b1f33a41e31a.zip |
repair and activate pathconf support
ok guenther
-rw-r--r-- | sys/isofs/udf/udf_extern.h | 3 | ||||
-rw-r--r-- | sys/isofs/udf/udf_vnops.c | 16 |
2 files changed, 13 insertions, 6 deletions
diff --git a/sys/isofs/udf/udf_extern.h b/sys/isofs/udf/udf_extern.h index 90adb2aabd6..07859f3fc4b 100644 --- a/sys/isofs/udf/udf_extern.h +++ b/sys/isofs/udf/udf_extern.h @@ -1,4 +1,4 @@ -/* $OpenBSD: udf_extern.h,v 1.12 2013/03/23 17:12:57 deraadt Exp $ */ +/* $OpenBSD: udf_extern.h,v 1.13 2013/06/02 15:35:18 deraadt Exp $ */ /* * Written by Pedro Martelletto <pedro@ambientworks.net> in February 2005. @@ -50,6 +50,7 @@ int udf_inactive(void *v); int udf_reclaim(void *v); int udf_lock(void *v); int udf_unlock(void *v); +int udf_pathconf(void *); int udf_islocked(void *v); int udf_print(void *v); int udf_transname(char *, char *, int, struct umount *); diff --git a/sys/isofs/udf/udf_vnops.c b/sys/isofs/udf/udf_vnops.c index 5923638ddf8..71dfd3d6521 100644 --- a/sys/isofs/udf/udf_vnops.c +++ b/sys/isofs/udf/udf_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: udf_vnops.c,v 1.47 2013/05/30 17:35:01 guenther Exp $ */ +/* $OpenBSD: udf_vnops.c,v 1.48 2013/06/02 15:35:18 deraadt Exp $ */ /* * Copyright (c) 2001, 2002 Scott Long <scottl@freebsd.org> @@ -72,6 +72,7 @@ struct vops udf_vops = { .vop_strategy = udf_strategy, .vop_lock = udf_lock, .vop_unlock = udf_unlock, + .vop_pathconf = udf_pathconf, .vop_islocked = udf_islocked, .vop_print = udf_print }; @@ -388,10 +389,10 @@ udf_ioctl(void *v) * I'm not sure that this has much value in a read-only filesystem, but * cd9660 has it too. */ -#if 0 -static int -udf_pathconf(struct vop_pathconf_args *a) +int +udf_pathconf(void *v) { + struct vop_pathconf_args *ap = v; int error = 0; switch (ap->a_name) { @@ -401,9 +402,15 @@ udf_pathconf(struct vop_pathconf_args *a) case _PC_NAME_MAX: *ap->a_retval = NAME_MAX; break; + case _PC_CHOWN_RESTRICTED: + *ap->a_retval = 1; + break; case _PC_NO_TRUNC: *ap->a_retval = 1; break; + case _PC_TIMESTAMP_RESOLUTION: + *ap->a_retval = 1000; /* 1 microsecond */ + break; default: error = EINVAL; break; @@ -411,7 +418,6 @@ udf_pathconf(struct vop_pathconf_args *a) return (error); } -#endif int udf_read(void *v) |