libowfat/socket/scan_ip6_flat.c

17 lines
333 B
C
Raw Normal View History

#include "scan.h"
2001-11-25 23:50:09 +00:00
2014-03-14 19:42:54 +00:00
size_t scan_ip6_flat(const char *s,char ip[16])
2001-11-25 23:50:09 +00:00
{
2014-03-14 19:42:54 +00:00
size_t i;
2001-11-25 23:50:09 +00:00
for (i=0; i<16; i++) {
int tmp;
2014-03-14 19:42:54 +00:00
tmp=scan_fromhex((unsigned char)*s++);
2001-11-25 23:50:09 +00:00
if (tmp<0) return 0;
2014-03-14 19:42:54 +00:00
ip[i]=(char)(tmp << 4);
tmp=scan_fromhex((unsigned char)*s++);
2001-11-25 23:50:09 +00:00
if (tmp<0) return 0;
2014-03-14 19:42:54 +00:00
ip[i] = ip[i] | (char)tmp;
2001-11-25 23:50:09 +00:00
}
return 32;
}