git: 9front

ref: 8b87266cbc1c9c3d4e3c9629491ef57357a80943
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;
}