tmpfs_specops.h revision 1.5 1 1.5 christos /* $NetBSD: tmpfs_specops.h,v 1.5 2005/12/03 17:34:44 christos Exp $ */
2 1.1 jmmv
3 1.1 jmmv /*
4 1.1 jmmv * Copyright (c) 2005 The NetBSD Foundation, Inc.
5 1.1 jmmv * All rights reserved.
6 1.1 jmmv *
7 1.1 jmmv * This code is derived from software contributed to The NetBSD Foundation
8 1.2 jmmv * by Julio M. Merino Vidal, developed as part of Google's Summer of Code
9 1.2 jmmv * 2005 program.
10 1.1 jmmv *
11 1.1 jmmv * Redistribution and use in source and binary forms, with or without
12 1.1 jmmv * modification, are permitted provided that the following conditions
13 1.1 jmmv * are met:
14 1.1 jmmv * 1. Redistributions of source code must retain the above copyright
15 1.1 jmmv * notice, this list of conditions and the following disclaimer.
16 1.1 jmmv * 2. Redistributions in binary form must reproduce the above copyright
17 1.1 jmmv * notice, this list of conditions and the following disclaimer in the
18 1.1 jmmv * documentation and/or other materials provided with the distribution.
19 1.1 jmmv * 3. All advertising materials mentioning features or use of this software
20 1.1 jmmv * must display the following acknowledgement:
21 1.1 jmmv * This product includes software developed by the NetBSD
22 1.1 jmmv * Foundation, Inc. and its contributors.
23 1.1 jmmv * 4. Neither the name of The NetBSD Foundation nor the names of its
24 1.1 jmmv * contributors may be used to endorse or promote products derived
25 1.1 jmmv * from this software without specific prior written permission.
26 1.1 jmmv *
27 1.1 jmmv * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
28 1.1 jmmv * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
29 1.1 jmmv * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
30 1.1 jmmv * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
31 1.1 jmmv * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32 1.1 jmmv * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33 1.1 jmmv * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34 1.1 jmmv * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35 1.1 jmmv * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36 1.1 jmmv * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37 1.1 jmmv * POSSIBILITY OF SUCH DAMAGE.
38 1.1 jmmv */
39 1.1 jmmv
40 1.5 christos #ifndef _FS_TMPFS_TMPFS_SPECOPS_H_
41 1.5 christos #define _FS_TMPFS_TMPFS_SPECOPS_H_
42 1.1 jmmv
43 1.1 jmmv #if !defined(_KERNEL)
44 1.5 christos #error not supposed to be exposed to userland.
45 1.1 jmmv #endif
46 1.1 jmmv
47 1.1 jmmv #include <miscfs/specfs/specdev.h>
48 1.1 jmmv #include <fs/tmpfs/tmpfs_vnops.h>
49 1.1 jmmv
50 1.1 jmmv /* --------------------------------------------------------------------- */
51 1.1 jmmv
52 1.1 jmmv /*
53 1.1 jmmv * Declarations for tmpfs_specops.c.
54 1.1 jmmv */
55 1.1 jmmv
56 1.1 jmmv extern int (**tmpfs_specop_p)(void *);
57 1.1 jmmv
58 1.1 jmmv #define tmpfs_spec_lookup spec_lookup
59 1.1 jmmv #define tmpfs_spec_create spec_create
60 1.1 jmmv #define tmpfs_spec_mknod spec_mknod
61 1.1 jmmv #define tmpfs_spec_open spec_open
62 1.1 jmmv int tmpfs_spec_close (void *);
63 1.1 jmmv #define tmpfs_spec_access tmpfs_access
64 1.1 jmmv #define tmpfs_spec_getattr tmpfs_getattr
65 1.1 jmmv #define tmpfs_spec_setattr tmpfs_setattr
66 1.1 jmmv int tmpfs_spec_read (void *);
67 1.1 jmmv int tmpfs_spec_write (void *);
68 1.1 jmmv #define tmpfs_spec_fcntl tmpfs_fcntl
69 1.1 jmmv #define tmpfs_spec_ioctl spec_ioctl
70 1.1 jmmv #define tmpfs_spec_poll spec_poll
71 1.1 jmmv #define tmpfs_spec_kqfilter spec_kqfilter
72 1.1 jmmv #define tmpfs_spec_revoke spec_revoke
73 1.1 jmmv #define tmpfs_spec_mmap spec_mmap
74 1.1 jmmv #define tmpfs_spec_fsync spec_fsync
75 1.1 jmmv #define tmpfs_spec_seek spec_seek
76 1.1 jmmv #define tmpfs_spec_remove spec_remove
77 1.1 jmmv #define tmpfs_spec_link spec_link
78 1.1 jmmv #define tmpfs_spec_rename spec_rename
79 1.1 jmmv #define tmpfs_spec_mkdir spec_mkdir
80 1.1 jmmv #define tmpfs_spec_rmdir spec_rmdir
81 1.1 jmmv #define tmpfs_spec_symlink spec_symlink
82 1.1 jmmv #define tmpfs_spec_readdir spec_readdir
83 1.1 jmmv #define tmpfs_spec_readlink spec_readlink
84 1.1 jmmv #define tmpfs_spec_abortop spec_abortop
85 1.1 jmmv #define tmpfs_spec_inactive tmpfs_inactive
86 1.1 jmmv #define tmpfs_spec_reclaim tmpfs_reclaim
87 1.1 jmmv #define tmpfs_spec_lock tmpfs_lock
88 1.1 jmmv #define tmpfs_spec_unlock tmpfs_unlock
89 1.1 jmmv #define tmpfs_spec_bmap spec_bmap
90 1.1 jmmv #define tmpfs_spec_strategy spec_strategy
91 1.1 jmmv #define tmpfs_spec_print tmpfs_print
92 1.1 jmmv #define tmpfs_spec_pathconf spec_pathconf
93 1.1 jmmv #define tmpfs_spec_islocked tmpfs_islocked
94 1.1 jmmv #define tmpfs_spec_advlock spec_advlock
95 1.1 jmmv #define tmpfs_spec_lease tmpfs_lease
96 1.3 dyoung #define tmpfs_spec_bwrite vn_bwrite
97 1.1 jmmv #define tmpfs_spec_getpages spec_getpages
98 1.1 jmmv #define tmpfs_spec_putpages spec_putpages
99 1.1 jmmv
100 1.1 jmmv /* --------------------------------------------------------------------- */
101 1.1 jmmv
102 1.5 christos #endif /* _FS_TMPFS_TMPFS_SPECOPS_H_ */
103