xref: /plan9-contrib/sys/src/9k/ip/nullmedium.c (revision 9ef1f84b659abcb917c5c090acbce0772e494f21)
1*9ef1f84bSDavid du Colombier #include "u.h"
2*9ef1f84bSDavid du Colombier #include "../port/lib.h"
3*9ef1f84bSDavid du Colombier #include "mem.h"
4*9ef1f84bSDavid du Colombier #include "dat.h"
5*9ef1f84bSDavid du Colombier #include "fns.h"
6*9ef1f84bSDavid du Colombier #include "../port/error.h"
7*9ef1f84bSDavid du Colombier 
8*9ef1f84bSDavid du Colombier #include "ip.h"
9*9ef1f84bSDavid du Colombier 
10*9ef1f84bSDavid du Colombier static void
nullbind(Ipifc *,int,char **)11*9ef1f84bSDavid du Colombier nullbind(Ipifc*, int, char**)
12*9ef1f84bSDavid du Colombier {
13*9ef1f84bSDavid du Colombier 	error("cannot bind null device");
14*9ef1f84bSDavid du Colombier }
15*9ef1f84bSDavid du Colombier 
16*9ef1f84bSDavid du Colombier static void
nullunbind(Ipifc *)17*9ef1f84bSDavid du Colombier nullunbind(Ipifc*)
18*9ef1f84bSDavid du Colombier {
19*9ef1f84bSDavid du Colombier }
20*9ef1f84bSDavid du Colombier 
21*9ef1f84bSDavid du Colombier static void
nullbwrite(Ipifc *,Block *,int,uchar *)22*9ef1f84bSDavid du Colombier nullbwrite(Ipifc*, Block*, int, uchar*)
23*9ef1f84bSDavid du Colombier {
24*9ef1f84bSDavid du Colombier 	error("nullbwrite");
25*9ef1f84bSDavid du Colombier }
26*9ef1f84bSDavid du Colombier 
27*9ef1f84bSDavid du Colombier Medium nullmedium =
28*9ef1f84bSDavid du Colombier {
29*9ef1f84bSDavid du Colombier .name=		"null",
30*9ef1f84bSDavid du Colombier .bind=		nullbind,
31*9ef1f84bSDavid du Colombier .unbind=	nullunbind,
32*9ef1f84bSDavid du Colombier .bwrite=	nullbwrite,
33*9ef1f84bSDavid du Colombier };
34*9ef1f84bSDavid du Colombier 
35*9ef1f84bSDavid du Colombier void
nullmediumlink(void)36*9ef1f84bSDavid du Colombier nullmediumlink(void)
37*9ef1f84bSDavid du Colombier {
38*9ef1f84bSDavid du Colombier 	addipmedium(&nullmedium);
39*9ef1f84bSDavid du Colombier }
40