git: 9front

ref: 72a8af8a0d1405295f0901d30bee3b95ff239dd2
dir: /sys/src/libip/parseether.c/

View raw version
#include <u.h>
#include <libc.h>

int
parseether(uchar *to, char *from)
{
	char nip[4];
	char *p;
	int i;

	p = from;
	for(i = 0; i < 6; i++){
		if(*p == 0)
			return -1;
		nip[0] = *p++;
		if(*p == 0)
			return -1;
		nip[1] = *p++;
		nip[2] = 0;
		to[i] = strtoul(nip, 0, 16);
		if(*p == ':')
			p++;
	}
	return 0;
}