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