12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- /*
- * ATA-over-Ethernet
- */
- enum {
- ACata,
- ACconfig,
- };
- enum {
- AQCread,
- AQCtest,
- AQCprefix,
- AQCset,
- AQCfset,
- };
- enum {
- AEcmd = 1,
- AEarg,
- AEdev,
- AEcfg,
- AEver,
- };
- enum {
- Aoetype = 0x88a2,
- Aoever = 1,
- AFerr = 1<<2,
- AFrsp = 1<<3,
- AAFwrite= 1,
- AAFext = 1<<6,
- };
- enum {
- Crd = 0x20,
- Crdext = 0x24,
- Cwr = 0x30,
- Cwrext = 0x34,
- Cid = 0xec,
- };
- typedef struct {
- uchar dst[Eaddrlen];
- uchar src[Eaddrlen];
- uchar type[2];
- uchar verflag;
- uchar error;
- uchar major[2];
- uchar minor;
- uchar cmd;
- uchar tag[4];
- } Aoehdr;
- typedef struct {
- Aoehdr;
- uchar aflag;
- uchar errfeat;
- uchar scnt;
- uchar cmdstat;
- uchar lba[6];
- uchar res[2];
- } Aoeata;
- typedef struct {
- Aoehdr;
- uchar bufcnt[2];
- uchar fwver[2];
- uchar scnt;
- uchar verccmd;
- uchar cslen[2];
- } Aoeqc;
- extern char Echange[];
- extern char Enotup[];
|