Release synfig_0_61_03
[synfig.git] / synfig-core / tags / synfig_0_61_03 / synfig-core / src / modules / mod_libavcodec / libavformat / barpainet.c
diff --git a/synfig-core/tags/synfig_0_61_03/synfig-core/src/modules/mod_libavcodec/libavformat/barpainet.c b/synfig-core/tags/synfig_0_61_03/synfig-core/src/modules/mod_libavcodec/libavformat/barpainet.c
new file mode 100644 (file)
index 0000000..c1e8877
--- /dev/null
@@ -0,0 +1,25 @@
+
+#include <stdlib.h>
+#include <strings.h>
+#include "barpainet.h"
+
+int inet_aton (const char * str, struct in_addr * add) {
+       const char * pch = str;
+       unsigned int add1 = 0, add2 = 0, add3 = 0, add4 = 0;
+       
+       add1 = atoi(pch);
+       pch = strpbrk(pch,".");
+       if (pch == 0 || ++pch == 0) goto done;
+       add2 = atoi(pch);
+       pch = strpbrk(pch,".");
+       if (pch == 0 || ++pch == 0) goto done;
+       add3 = atoi(pch);
+       pch = strpbrk(pch,".");
+       if (pch == 0 || ++pch == 0) goto done;
+       add4 = atoi(pch);
+
+done:
+       add->s_addr=(add4<<24)+(add3<<16)+(add2<<8)+add1;
+       
+       return 1;       
+}