xref: /csrg-svn/sys/miscfs/fifofs/fifo.h (revision 48013)
1*48013Smckusick /*
2*48013Smckusick  * Copyright (c) 1991 The Regents of the University of California.
3*48013Smckusick  * All rights reserved.
4*48013Smckusick  *
5*48013Smckusick  * %sccs.include.redist.c%
6*48013Smckusick  *
7*48013Smckusick  *	@(#)fifo.h	7.1 (Berkeley) 04/15/91
8*48013Smckusick  */
9*48013Smckusick 
10*48013Smckusick #ifdef FIFO
11*48013Smckusick /*
12*48013Smckusick  * Prototypes for fifo operations on vnodes.
13*48013Smckusick  */
14*48013Smckusick int	fifo_badop(),
15*48013Smckusick 	fifo_ebadf();
16*48013Smckusick 
17*48013Smckusick int	fifo_lookup __P((
18*48013Smckusick 		struct vnode *vp,
19*48013Smckusick 		struct nameidata *ndp,
20*48013Smckusick 		struct proc *p));
21*48013Smckusick #define fifo_create ((int (*) __P(( \
22*48013Smckusick 		struct nameidata *ndp, \
23*48013Smckusick 		struct vattr *vap, \
24*48013Smckusick 		struct proc *p))) fifo_badop)
25*48013Smckusick #define fifo_mknod ((int (*) __P(( \
26*48013Smckusick 		struct nameidata *ndp, \
27*48013Smckusick 		struct vattr *vap, \
28*48013Smckusick 		struct ucred *cred, \
29*48013Smckusick 		struct proc *p))) fifo_badop)
30*48013Smckusick int	fifo_open __P((
31*48013Smckusick 		struct vnode *vp,
32*48013Smckusick 		int mode,
33*48013Smckusick 		struct ucred *cred,
34*48013Smckusick 		struct proc *p));
35*48013Smckusick int	fifo_close __P((
36*48013Smckusick 		struct vnode *vp,
37*48013Smckusick 		int fflag,
38*48013Smckusick 		struct ucred *cred,
39*48013Smckusick 		struct proc *p));
40*48013Smckusick #define fifo_access ((int (*) __P(( \
41*48013Smckusick 		struct vnode *vp, \
42*48013Smckusick 		int mode, \
43*48013Smckusick 		struct ucred *cred, \
44*48013Smckusick 		struct proc *p))) fifo_ebadf)
45*48013Smckusick #define fifo_getattr ((int (*) __P(( \
46*48013Smckusick 		struct vnode *vp, \
47*48013Smckusick 		struct vattr *vap, \
48*48013Smckusick 		struct ucred *cred, \
49*48013Smckusick 		struct proc *p))) fifo_ebadf)
50*48013Smckusick #define fifo_setattr ((int (*) __P(( \
51*48013Smckusick 		struct vnode *vp, \
52*48013Smckusick 		struct vattr *vap, \
53*48013Smckusick 		struct ucred *cred, \
54*48013Smckusick 		struct proc *p))) fifo_ebadf)
55*48013Smckusick int	fifo_read __P((
56*48013Smckusick 		struct vnode *vp,
57*48013Smckusick 		struct uio *uio,
58*48013Smckusick 		int ioflag,
59*48013Smckusick 		struct ucred *cred));
60*48013Smckusick int	fifo_write __P((
61*48013Smckusick 		struct vnode *vp,
62*48013Smckusick 		struct uio *uio,
63*48013Smckusick 		int ioflag,
64*48013Smckusick 		struct ucred *cred));
65*48013Smckusick int	fifo_ioctl __P((
66*48013Smckusick 		struct vnode *vp,
67*48013Smckusick 		int command,
68*48013Smckusick 		caddr_t data,
69*48013Smckusick 		int fflag,
70*48013Smckusick 		struct ucred *cred,
71*48013Smckusick 		struct proc *p));
72*48013Smckusick int	fifo_select __P((
73*48013Smckusick 		struct vnode *vp,
74*48013Smckusick 		int which,
75*48013Smckusick 		int fflags,
76*48013Smckusick 		struct ucred *cred,
77*48013Smckusick 		struct proc *p));
78*48013Smckusick #define fifo_mmap ((int (*) __P(( \
79*48013Smckusick 		struct vnode *vp, \
80*48013Smckusick 		int fflags, \
81*48013Smckusick 		struct ucred *cred, \
82*48013Smckusick 		struct proc *p))) fifo_badop)
83*48013Smckusick #define fifo_fsync ((int (*) __P(( \
84*48013Smckusick 		struct vnode *vp, \
85*48013Smckusick 		int fflags, \
86*48013Smckusick 		struct ucred *cred, \
87*48013Smckusick 		int waitfor, \
88*48013Smckusick 		struct proc *p))) nullop)
89*48013Smckusick #define fifo_seek ((int (*) __P(( \
90*48013Smckusick 		struct vnode *vp, \
91*48013Smckusick 		off_t oldoff, \
92*48013Smckusick 		off_t newoff, \
93*48013Smckusick 		struct ucred *cred))) fifo_badop)
94*48013Smckusick #define fifo_remove ((int (*) __P(( \
95*48013Smckusick 		struct nameidata *ndp, \
96*48013Smckusick 		struct proc *p))) fifo_badop)
97*48013Smckusick #define fifo_link ((int (*) __P(( \
98*48013Smckusick 		struct vnode *vp, \
99*48013Smckusick 		struct nameidata *ndp, \
100*48013Smckusick 		struct proc *p))) fifo_badop)
101*48013Smckusick #define fifo_rename ((int (*) __P(( \
102*48013Smckusick 		struct nameidata *fndp, \
103*48013Smckusick 		struct nameidata *tdnp, \
104*48013Smckusick 		struct proc *p))) fifo_badop)
105*48013Smckusick #define fifo_mkdir ((int (*) __P(( \
106*48013Smckusick 		struct nameidata *ndp, \
107*48013Smckusick 		struct vattr *vap, \
108*48013Smckusick 		struct proc *p))) fifo_badop)
109*48013Smckusick #define fifo_rmdir ((int (*) __P(( \
110*48013Smckusick 		struct nameidata *ndp, \
111*48013Smckusick 		struct proc *p))) fifo_badop)
112*48013Smckusick #define fifo_symlink ((int (*) __P(( \
113*48013Smckusick 		struct nameidata *ndp, \
114*48013Smckusick 		struct vattr *vap, \
115*48013Smckusick 		char *target, \
116*48013Smckusick 		struct proc *p))) fifo_badop)
117*48013Smckusick #define fifo_readdir ((int (*) __P(( \
118*48013Smckusick 		struct vnode *vp, \
119*48013Smckusick 		struct uio *uio, \
120*48013Smckusick 		struct ucred *cred, \
121*48013Smckusick 		int *eofflagp))) fifo_badop)
122*48013Smckusick #define fifo_readlink ((int (*) __P(( \
123*48013Smckusick 		struct vnode *vp, \
124*48013Smckusick 		struct uio *uio, \
125*48013Smckusick 		struct ucred *cred))) fifo_badop)
126*48013Smckusick #define fifo_abortop ((int (*) __P(( \
127*48013Smckusick 		struct nameidata *ndp))) fifo_badop)
128*48013Smckusick #define fifo_inactive ((int (*) __P(( \
129*48013Smckusick 		struct vnode *vp, \
130*48013Smckusick 		struct proc *p))) nullop)
131*48013Smckusick #define fifo_reclaim ((int (*) __P(( \
132*48013Smckusick 		struct vnode *vp))) nullop)
133*48013Smckusick int	fifo_lock __P((
134*48013Smckusick 		struct vnode *vp));
135*48013Smckusick int	fifo_unlock __P((
136*48013Smckusick 		struct vnode *vp));
137*48013Smckusick int	fifo_bmap __P((
138*48013Smckusick 		struct vnode *vp,
139*48013Smckusick 		daddr_t bn,
140*48013Smckusick 		struct vnode **vpp,
141*48013Smckusick 		daddr_t *bnp));
142*48013Smckusick #define fifo_strategy ((int (*) __P(( \
143*48013Smckusick 		struct buf *bp))) fifo_badop)
144*48013Smckusick int	fifo_print __P((
145*48013Smckusick 		struct vnode *vp));
146*48013Smckusick #define fifo_islocked ((int (*) __P(( \
147*48013Smckusick 		struct vnode *vp))) nullop)
148*48013Smckusick int	fifo_advlock __P((
149*48013Smckusick 		struct vnode *vp,
150*48013Smckusick 		caddr_t id,
151*48013Smckusick 		int op,
152*48013Smckusick 		struct flock *fl,
153*48013Smckusick 		int flags));
154*48013Smckusick #endif /* FIFO */
155