summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/fs/ctfs/ctfs_event.c
diff options
context:
space:
mode:
authorrsb <none@none>2007-03-26 17:41:06 -0700
committerrsb <none@none>2007-03-26 17:41:06 -0700
commitaa59c4cb15a6ac5d4e585dadf7a055b580abf579 (patch)
tree67105846ea7ea656699224cf37f3cf859c00cd6a /usr/src/uts/common/fs/ctfs/ctfs_event.c
parentaf2c4821c0a23e873f2a63bca4145080aa2183e3 (diff)
downloadillumos-joyent-aa59c4cb15a6ac5d4e585dadf7a055b580abf579.tar.gz
PSARC/2007/124 Strong Type-Checking for VFS Operation Registration Mechanism
6505923 Need better type checking for vnodeops 6531594 lxpr_readlink() is missing the "cred_t *cr" arg 6532559 vfs_strayops does not use the vnode/vfs operation registration mechanism
Diffstat (limited to 'usr/src/uts/common/fs/ctfs/ctfs_event.c')
-rw-r--r--usr/src/uts/common/fs/ctfs/ctfs_event.c44
1 files changed, 22 insertions, 22 deletions
diff --git a/usr/src/uts/common/fs/ctfs/ctfs_event.c b/usr/src/uts/common/fs/ctfs/ctfs_event.c
index 7fa7cfb608..ac4447e493 100644
--- a/usr/src/uts/common/fs/ctfs/ctfs_event.c
+++ b/usr/src/uts/common/fs/ctfs/ctfs_event.c
@@ -2,9 +2,8 @@
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
- * Common Development and Distribution License, Version 1.0 only
- * (the "License"). You may not use this file except in compliance
- * with the License.
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
*
* You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
* or http://www.opensolaris.org/os/licensing.
@@ -20,7 +19,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -31,6 +30,7 @@
#include <sys/time.h>
#include <sys/cred.h>
#include <sys/vfs.h>
+#include <sys/vfs_opreg.h>
#include <sys/gfs.h>
#include <sys/vnode.h>
#include <sys/systm.h>
@@ -304,15 +304,15 @@ ctfs_ev_poll(vnode_t *vp, short events, int anyyet, short *reventsp,
}
const fs_operation_def_t ctfs_tops_event[] = {
- { VOPNAME_OPEN, ctfs_ev_open },
- { VOPNAME_CLOSE, ctfs_close },
- { VOPNAME_IOCTL, ctfs_ev_ioctl },
- { VOPNAME_GETATTR, ctfs_ev_getattr },
- { VOPNAME_ACCESS, ctfs_ev_access },
- { VOPNAME_READDIR, fs_notdir },
- { VOPNAME_LOOKUP, fs_notdir },
- { VOPNAME_INACTIVE, (fs_generic_func_p) ctfs_ev_inactive },
- { VOPNAME_POLL, (fs_generic_func_p) ctfs_ev_poll },
+ { VOPNAME_OPEN, { .vop_open = ctfs_ev_open } },
+ { VOPNAME_CLOSE, { .vop_close = ctfs_close } },
+ { VOPNAME_IOCTL, { .vop_ioctl = ctfs_ev_ioctl } },
+ { VOPNAME_GETATTR, { .vop_getattr = ctfs_ev_getattr } },
+ { VOPNAME_ACCESS, { .vop_access = ctfs_ev_access } },
+ { VOPNAME_READDIR, { .error = fs_notdir } },
+ { VOPNAME_LOOKUP, { .error = fs_notdir } },
+ { VOPNAME_INACTIVE, { .vop_inactive = ctfs_ev_inactive } },
+ { VOPNAME_POLL, { .vop_poll = ctfs_ev_poll } },
{ NULL, NULL }
};
@@ -447,14 +447,14 @@ ctfs_bu_poll(vnode_t *vp, short events, int anyyet, short *reventsp,
}
const fs_operation_def_t ctfs_tops_bundle[] = {
- { VOPNAME_OPEN, ctfs_bu_open },
- { VOPNAME_CLOSE, ctfs_close },
- { VOPNAME_IOCTL, ctfs_bu_ioctl },
- { VOPNAME_GETATTR, ctfs_bu_getattr },
- { VOPNAME_ACCESS, ctfs_access_readonly },
- { VOPNAME_READDIR, fs_notdir },
- { VOPNAME_LOOKUP, fs_notdir },
- { VOPNAME_INACTIVE, (fs_generic_func_p) ctfs_bu_inactive },
- { VOPNAME_POLL, (fs_generic_func_p) ctfs_bu_poll },
+ { VOPNAME_OPEN, { .vop_open = ctfs_bu_open } },
+ { VOPNAME_CLOSE, { .vop_close = ctfs_close } },
+ { VOPNAME_IOCTL, { .vop_ioctl = ctfs_bu_ioctl } },
+ { VOPNAME_GETATTR, { .vop_getattr = ctfs_bu_getattr } },
+ { VOPNAME_ACCESS, { .vop_access = ctfs_access_readonly } },
+ { VOPNAME_READDIR, { .error = fs_notdir } },
+ { VOPNAME_LOOKUP, { .error = fs_notdir } },
+ { VOPNAME_INACTIVE, { .vop_inactive = ctfs_bu_inactive } },
+ { VOPNAME_POLL, { .vop_poll = ctfs_bu_poll } },
{ NULL, NULL }
};