git: 9front

ref: 40ca5d99be0d0de90b97e934ef34cc541f0de041
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;
}