use sscanf to parse address

Originally committed as revision 9756 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Benoit Fouet 18 years ago
parent d04d5bcd0e
commit d72e7d0f24
  1. 13
      libavformat/os_support.c

@ -41,19 +41,10 @@
int inet_aton (const char * str, struct in_addr * add) int inet_aton (const char * str, struct in_addr * add)
{ {
const char * pch = str;
unsigned int add1 = 0, add2 = 0, add3 = 0, add4 = 0; unsigned int add1 = 0, add2 = 0, add3 = 0, add4 = 0;
add1 = atoi(pch); if (sscanf(str, "%d.%d.%d.%d", &add1, &add2, &add3, &add4) != 4)
pch = strpbrk(pch,"."); return 0;
if (!pch) return 0;
add2 = atoi(pch);
pch = strpbrk(pch,".");
if (!pch) return 0;
add3 = atoi(pch);
pch = strpbrk(pch,".");
if (!pch) return 0;
add4 = atoi(pch);
if (!add1 || (add1|add2|add3|add4) > 255) return 0; if (!add1 || (add1|add2|add3|add4) > 255) return 0;

Loading…
Cancel
Save