summaryrefslogtreecommitdiffstats
path: root/sys/miscfs/fdesc
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1995-11-09 08:17:23 +0000
committerbde <bde@FreeBSD.org>1995-11-09 08:17:23 +0000
commit449a11eb8852c894681575cf4226b1c639a2f9bc (patch)
treed1df2f42cd1cf04bc5757d3dff0d353c3e6a3a58 /sys/miscfs/fdesc
parent7b39ff1acd679291e1eaa968c4a256d7c6e3b22f (diff)
downloadFreeBSD-src-449a11eb8852c894681575cf4226b1c639a2f9bc.zip
FreeBSD-src-449a11eb8852c894681575cf4226b1c639a2f9bc.tar.gz
Introduced a type `vop_t' for vnode operation functions and used
it 1138 times (:-() in casts and a few more times in declarations. This change is null for the i386. The type has to be `typedef int vop_t(void *)' and not `typedef int vop_t()' because `gcc -Wstrict-prototypes' warns about the latter. Since vnode op functions are called with args of different (struct pointer) types, neither of these function types is any use for type checking of the arg, so it would be preferable not to use the complete function type, especially since using the complete type requires adding 1138 casts to avoid compiler warnings and another 40+ casts to reverse the function pointer conversions before calling the functions.
Diffstat (limited to 'sys/miscfs/fdesc')
-rw-r--r--sys/miscfs/fdesc/fdesc.h4
-rw-r--r--sys/miscfs/fdesc/fdesc_vnops.c88
2 files changed, 46 insertions, 46 deletions
diff --git a/sys/miscfs/fdesc/fdesc.h b/sys/miscfs/fdesc/fdesc.h
index 4c682e7..3214004 100644
--- a/sys/miscfs/fdesc/fdesc.h
+++ b/sys/miscfs/fdesc/fdesc.h
@@ -35,7 +35,7 @@
*
* @(#)fdesc.h 8.5 (Berkeley) 1/21/94
*
- * $Id: fdesc.h,v 1.8 1993/04/06 15:28:33 jsp Exp $
+ * $Id: fdesc.h,v 1.1.1.1 1994/05/24 10:04:59 rgrimes Exp $
*/
#ifdef KERNEL
@@ -77,6 +77,6 @@ extern dev_t devctty;
extern int fdesc_init __P((void));
extern int fdesc_root __P((struct mount *, struct vnode **));
extern int fdesc_allocvp __P((fdntype, int, struct mount *, struct vnode **));
-extern int (**fdesc_vnodeop_p)();
+extern vop_t **fdesc_vnodeop_p;
extern struct vfsops fdesc_vfsops;
#endif /* KERNEL */
diff --git a/sys/miscfs/fdesc/fdesc_vnops.c b/sys/miscfs/fdesc/fdesc_vnops.c
index 3c334bb..5f2010b 100644
--- a/sys/miscfs/fdesc/fdesc_vnops.c
+++ b/sys/miscfs/fdesc/fdesc_vnops.c
@@ -35,7 +35,7 @@
*
* @(#)fdesc_vnops.c 8.9 (Berkeley) 1/21/94
*
- * $Id: fdesc_vnops.c,v 1.10 1995/09/02 20:19:12 mpp Exp $
+ * $Id: fdesc_vnops.c,v 1.11 1995/11/07 13:39:20 phk Exp $
*/
/*
@@ -936,50 +936,50 @@ fdesc_nullop()
#define fdesc_update ((int (*) __P((struct vop_update_args *)))fdesc_enotsupp)
#define fdesc_bwrite ((int (*) __P((struct vop_bwrite_args *)))fdesc_enotsupp)
-static int (**fdesc_vnodeop_p)();
+static vop_t **fdesc_vnodeop_p;
static struct vnodeopv_entry_desc fdesc_vnodeop_entries[] = {
- { &vop_default_desc, vn_default_error },
- { &vop_lookup_desc, fdesc_lookup }, /* lookup */
- { &vop_create_desc, fdesc_create }, /* create */
- { &vop_mknod_desc, fdesc_mknod }, /* mknod */
- { &vop_open_desc, fdesc_open }, /* open */
- { &vop_close_desc, fdesc_close }, /* close */
- { &vop_access_desc, fdesc_access }, /* access */
- { &vop_getattr_desc, fdesc_getattr }, /* getattr */
- { &vop_setattr_desc, fdesc_setattr }, /* setattr */
- { &vop_read_desc, fdesc_read }, /* read */
- { &vop_write_desc, fdesc_write }, /* write */
- { &vop_ioctl_desc, fdesc_ioctl }, /* ioctl */
- { &vop_select_desc, fdesc_select }, /* select */
- { &vop_mmap_desc, fdesc_mmap }, /* mmap */
- { &vop_fsync_desc, fdesc_fsync }, /* fsync */
- { &vop_seek_desc, fdesc_seek }, /* seek */
- { &vop_remove_desc, fdesc_remove }, /* remove */
- { &vop_link_desc, fdesc_link }, /* link */
- { &vop_rename_desc, fdesc_rename }, /* rename */
- { &vop_mkdir_desc, fdesc_mkdir }, /* mkdir */
- { &vop_rmdir_desc, fdesc_rmdir }, /* rmdir */
- { &vop_symlink_desc, fdesc_symlink }, /* symlink */
- { &vop_readdir_desc, fdesc_readdir }, /* readdir */
- { &vop_readlink_desc, fdesc_readlink }, /* readlink */
- { &vop_abortop_desc, fdesc_abortop }, /* abortop */
- { &vop_inactive_desc, fdesc_inactive }, /* inactive */
- { &vop_reclaim_desc, fdesc_reclaim }, /* reclaim */
- { &vop_lock_desc, fdesc_lock }, /* lock */
- { &vop_unlock_desc, fdesc_unlock }, /* unlock */
- { &vop_bmap_desc, fdesc_bmap }, /* bmap */
- { &vop_strategy_desc, fdesc_strategy }, /* strategy */
- { &vop_print_desc, fdesc_print }, /* print */
- { &vop_islocked_desc, fdesc_islocked }, /* islocked */
- { &vop_pathconf_desc, fdesc_pathconf }, /* pathconf */
- { &vop_advlock_desc, fdesc_advlock }, /* advlock */
- { &vop_blkatoff_desc, fdesc_blkatoff }, /* blkatoff */
- { &vop_valloc_desc, fdesc_valloc }, /* valloc */
- { &vop_vfree_desc, fdesc_vfree }, /* vfree */
- { &vop_truncate_desc, fdesc_truncate }, /* truncate */
- { &vop_update_desc, fdesc_update }, /* update */
- { &vop_bwrite_desc, fdesc_bwrite }, /* bwrite */
- { (struct vnodeop_desc*)NULL, (int(*)())NULL }
+ { &vop_default_desc, (vop_t *)vn_default_error },
+ { &vop_lookup_desc, (vop_t *)fdesc_lookup }, /* lookup */
+ { &vop_create_desc, (vop_t *)fdesc_create }, /* create */
+ { &vop_mknod_desc, (vop_t *)fdesc_mknod }, /* mknod */
+ { &vop_open_desc, (vop_t *)fdesc_open }, /* open */
+ { &vop_close_desc, (vop_t *)fdesc_close }, /* close */
+ { &vop_access_desc, (vop_t *)fdesc_access }, /* access */
+ { &vop_getattr_desc, (vop_t *)fdesc_getattr }, /* getattr */
+ { &vop_setattr_desc, (vop_t *)fdesc_setattr }, /* setattr */
+ { &vop_read_desc, (vop_t *)fdesc_read }, /* read */
+ { &vop_write_desc, (vop_t *)fdesc_write }, /* write */
+ { &vop_ioctl_desc, (vop_t *)fdesc_ioctl }, /* ioctl */
+ { &vop_select_desc, (vop_t *)fdesc_select }, /* select */
+ { &vop_mmap_desc, (vop_t *)fdesc_mmap }, /* mmap */
+ { &vop_fsync_desc, (vop_t *)fdesc_fsync }, /* fsync */
+ { &vop_seek_desc, (vop_t *)fdesc_seek }, /* seek */
+ { &vop_remove_desc, (vop_t *)fdesc_remove }, /* remove */
+ { &vop_link_desc, (vop_t *)fdesc_link }, /* link */
+ { &vop_rename_desc, (vop_t *)fdesc_rename }, /* rename */
+ { &vop_mkdir_desc, (vop_t *)fdesc_mkdir }, /* mkdir */
+ { &vop_rmdir_desc, (vop_t *)fdesc_rmdir }, /* rmdir */
+ { &vop_symlink_desc, (vop_t *)fdesc_symlink }, /* symlink */
+ { &vop_readdir_desc, (vop_t *)fdesc_readdir }, /* readdir */
+ { &vop_readlink_desc, (vop_t *)fdesc_readlink }, /* readlink */
+ { &vop_abortop_desc, (vop_t *)fdesc_abortop }, /* abortop */
+ { &vop_inactive_desc, (vop_t *)fdesc_inactive }, /* inactive */
+ { &vop_reclaim_desc, (vop_t *)fdesc_reclaim }, /* reclaim */
+ { &vop_lock_desc, (vop_t *)fdesc_lock }, /* lock */
+ { &vop_unlock_desc, (vop_t *)fdesc_unlock }, /* unlock */
+ { &vop_bmap_desc, (vop_t *)fdesc_bmap }, /* bmap */
+ { &vop_strategy_desc, (vop_t *)fdesc_strategy }, /* strategy */
+ { &vop_print_desc, (vop_t *)fdesc_print }, /* print */
+ { &vop_islocked_desc, (vop_t *)fdesc_islocked }, /* islocked */
+ { &vop_pathconf_desc, (vop_t *)fdesc_pathconf }, /* pathconf */
+ { &vop_advlock_desc, (vop_t *)fdesc_advlock }, /* advlock */
+ { &vop_blkatoff_desc, (vop_t *)fdesc_blkatoff }, /* blkatoff */
+ { &vop_valloc_desc, (vop_t *)fdesc_valloc }, /* valloc */
+ { &vop_vfree_desc, (vop_t *)fdesc_vfree }, /* vfree */
+ { &vop_truncate_desc, (vop_t *)fdesc_truncate }, /* truncate */
+ { &vop_update_desc, (vop_t *)fdesc_update }, /* update */
+ { &vop_bwrite_desc, (vop_t *)fdesc_bwrite }, /* bwrite */
+ { NULL, NULL }
};
static struct vnodeopv_desc fdesc_vnodeop_opv_desc =
{ &fdesc_vnodeop_p, fdesc_vnodeop_entries };
OpenPOWER on IntegriCloud