Index: native_client_sdk/src/libraries/nacl_io/syscalls/inet_addr.c |
diff --git a/native_client_sdk/src/libraries/nacl_io/h_errno.cc b/native_client_sdk/src/libraries/nacl_io/syscalls/inet_addr.c |
similarity index 57% |
copy from native_client_sdk/src/libraries/nacl_io/h_errno.cc |
copy to native_client_sdk/src/libraries/nacl_io/syscalls/inet_addr.c |
index 5f328edd1696b41b848d451bca43b3581a70371d..604f07fcfa1edf98377cce88cd51ff20084fe848 100644 |
--- a/native_client_sdk/src/libraries/nacl_io/h_errno.cc |
+++ b/native_client_sdk/src/libraries/nacl_io/syscalls/inet_addr.c |
@@ -6,10 +6,15 @@ |
#if defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) |
-static __thread int __h_errno__; |
+#include <string.h> |
-extern "C" int *__h_errno_location() { |
- return &__h_errno__; |
+in_addr_t inet_addr(const char* addr) { |
+ struct in_addr rtn = { 0 }; |
+ int ret = inet_aton(addr, &rtn); |
+ // inet_ntoa returns zero if addr is not valid |
+ if (ret == 0) |
+ return INADDR_NONE; |
+ return rtn.s_addr; |
} |
#endif // defined(PROVIDES_SOCKET_API) && !defined(__GLIBC__) |