diff options
-rw-r--r-- | include/arpa/inet.h | 2 | ||||
-rw-r--r-- | libc/inet/addr.c | 4 |
2 files changed, 5 insertions, 1 deletions
diff --git a/include/arpa/inet.h b/include/arpa/inet.h index fe3373b88..02233d4e7 100644 --- a/include/arpa/inet.h +++ b/include/arpa/inet.h @@ -52,6 +52,8 @@ extern in_addr_t inet_network (__const char *__cp) __THROW; /* Convert Internet number in IN to ASCII representation. The return value is a pointer to an internal array containing the string. */ extern char *inet_ntoa (struct in_addr __in) __THROW; +/* Recursion-safe flavor */ +extern char *inet_ntoa_r (struct in_addr __in, char *__buf) __THROW; /* Convert from presentation format of an Internet number in buffer starting at CP to the binary network format and store result for diff --git a/libc/inet/addr.c b/libc/inet/addr.c index cbe3d6893..93ef63fc8 100644 --- a/libc/inet/addr.c +++ b/libc/inet/addr.c @@ -122,7 +122,8 @@ libc_hidden_def(inet_addr) #define INET_NTOA_MAX_LEN 16 /* max 12 digits + 3 '.'s + 1 nul */ -static char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) +libc_hidden_proto(inet_ntoa_r) +char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) { in_addr_t addr = ntohl(in.s_addr); int i; @@ -141,6 +142,7 @@ static char *inet_ntoa_r(struct in_addr in, char buf[INET_NTOA_MAX_LEN]) return p+1; } +libc_hidden_def(inet_ntoa_r) libc_hidden_proto(inet_ntoa) char *inet_ntoa(struct in_addr in) |