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