ref: 0037c93433cdda1dccd35d5fc57682fe1c86eb6d
dir: /sys/src/cmd/nusb/ether/dat.h/
typedef struct Block Block;
struct Block
{
Ref;
Block *next;
uchar *rp;
uchar *wp;
uchar *lim;
uchar base[];
};
#define BLEN(s) ((s)->wp - (s)->rp)
Block* allocb(int size);
void freeb(Block*);
Block* copyblock(Block*, int);
typedef struct Ehdr Ehdr;
struct Ehdr
{
uchar d[6];
uchar s[6];
uchar type[2];
};
enum {
Ehdrsz = 6+6+2,
Maxpkt = 2000,
};
enum
{
Cdcunion = 6,
Scether = 6,
Fnether = 15,
};
int debug;
int setmac;
/* to be filled in by *init() */
uchar macaddr[6];
void etheriq(Block*, int wire);
int (*epreceive)(Dev*);
void (*eptransmit)(Dev*, Block*);