add back ethercrc. Reference: /n/atom/patch/applied/ethercrcredux Date: Thu May 1 18:19:30 CES 2014 Signed-off-by: quanstro@quanstro.net --- /sys/src/nix/k10/devether.c Thu May 1 18:19:25 2014 +++ /sys/src/nix/k10/devether.c Thu May 1 18:19:25 2014 @@ -448,6 +448,26 @@ } } +#define POLY 0xedb88320 + +/* really slow 32 bit crc for ethers */ +u32int +ethercrc(uchar *p, int len) +{ + int i, j; + u32int crc, b; + + crc = 0xffffffff; + for(i = 0; i < len; i++){ + b = *p++; + for(j = 0; j < 8; j++){ + crc = (crc>>1) ^ (((crc^b) & 1) ? POLY : 0); + b >>= 1; + } + } + return crc; +} + Dev etherdevtab = { 'l', "ether",