xref: /netbsd/sys/miscfs/fifofs/fifo.h (revision bf9ec67e)
1 /*	$NetBSD: fifo.h,v 1.18 2001/12/06 04:27:41 chs Exp $	*/
2 
3 /*
4  * Copyright (c) 1991, 1993
5  *	The Regents of the University of California.  All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without
8  * modification, are permitted provided that the following conditions
9  * are met:
10  * 1. Redistributions of source code must retain the above copyright
11  *    notice, this list of conditions and the following disclaimer.
12  * 2. Redistributions in binary form must reproduce the above copyright
13  *    notice, this list of conditions and the following disclaimer in the
14  *    documentation and/or other materials provided with the distribution.
15  * 3. All advertising materials mentioning features or use of this software
16  *    must display the following acknowledgement:
17  *	This product includes software developed by the University of
18  *	California, Berkeley and its contributors.
19  * 4. Neither the name of the University nor the names of its contributors
20  *    may be used to endorse or promote products derived from this software
21  *    without specific prior written permission.
22  *
23  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
24  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
27  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
28  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
29  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
30  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
31  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
32  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
33  * SUCH DAMAGE.
34  *
35  *	@(#)fifo.h	8.6 (Berkeley) 5/21/95
36  */
37 
38 /*
39  * Prototypes for fifo operations on vnodes.
40  */
41 int	fifo_lookup	__P((void *));
42 #define fifo_create	genfs_badop
43 #define fifo_mknod	genfs_badop
44 int	fifo_open	__P((void *));
45 int	fifo_close	__P((void *));
46 #define fifo_access	genfs_ebadf
47 #define fifo_getattr	genfs_ebadf
48 #define fifo_setattr	genfs_ebadf
49 int	fifo_read	__P((void *));
50 int	fifo_write	__P((void *));
51 #define fifo_lease_check genfs_nullop
52 int	fifo_ioctl	__P((void *));
53 int	fifo_poll	__P((void *));
54 #define fifo_revoke	genfs_revoke
55 #define fifo_mmap	genfs_badop
56 #define fifo_fsync	genfs_nullop
57 #define fifo_seek	genfs_badop
58 #define fifo_remove	genfs_badop
59 #define fifo_link	genfs_badop
60 #define fifo_rename	genfs_badop
61 #define fifo_mkdir	genfs_badop
62 #define fifo_rmdir	genfs_badop
63 #define fifo_symlink	genfs_badop
64 #define fifo_readdir	genfs_badop
65 #define fifo_readlink	genfs_badop
66 #define fifo_abortop	genfs_badop
67 #define fifo_reclaim	genfs_nullop
68 #define	fifo_lock	genfs_nolock
69 #define	fifo_unlock	genfs_nounlock
70 int	fifo_inactive	__P((void *));
71 int	fifo_bmap	__P((void *));
72 #define fifo_strategy	genfs_badop
73 int	fifo_print	__P((void *));
74 #define fifo_islocked	genfs_noislocked
75 int	fifo_pathconf	__P((void *));
76 #define	fifo_advlock	genfs_einval
77 #define fifo_blkatoff	genfs_badop
78 #define fifo_valloc	genfs_badop
79 #define fifo_reallocblks genfs_badop
80 #define fifo_vfree	genfs_badop
81 #define fifo_truncate	genfs_nullop
82 #define fifo_update	genfs_nullop
83 #define fifo_bwrite	genfs_nullop
84 #define	fifo_putpages	genfs_null_putpages
85 
86 void 	fifo_printinfo __P((struct vnode *));
87 
88 extern int (**fifo_vnodeop_p) __P((void *));
89