summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>2013-06-02 15:35:18 +0000
committerderaadt <deraadt@openbsd.org>2013-06-02 15:35:18 +0000
commitbb394a57bb2b7acd054a21cd8392b1f33a41e31a (patch)
tree73f89ca5acc6af08dfac367899af1aec8101904e
parenttrailing whitespace makes 'make depend' sad. ok mpi@ (diff)
downloadwireguard-openbsd-bb394a57bb2b7acd054a21cd8392b1f33a41e31a.tar.xz
wireguard-openbsd-bb394a57bb2b7acd054a21cd8392b1f33a41e31a.zip
repair and activate pathconf support
ok guenther
-rw-r--r--sys/isofs/udf/udf_extern.h3
-rw-r--r--sys/isofs/udf/udf_vnops.c16
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)