summaryrefslogtreecommitdiff
path: root/src/port/getaddrinfo.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/port/getaddrinfo.h')
-rwxr-xr-xsrc/port/getaddrinfo.h21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/port/getaddrinfo.h b/src/port/getaddrinfo.h
index 4582ef0..746ac47 100755
--- a/src/port/getaddrinfo.h
+++ b/src/port/getaddrinfo.h
@@ -27,6 +27,12 @@
#include "port/sys_internal.h"
+#if !defined HAVE_GETADDRINFO || defined TEST_GETADDRINFO
+
+#include <sys/types.h> /* for size_t */
+#include <sys/socket.h> /* for AF_UNSPEC */
+#include <arpa/inet.h> /* for TCPPROTO and others */
+
/* for errors returned by getaddrinfo */
#if !defined EAI_NONAME
#define EAI_NONAME -2 /**< NAME or SERVICE is unknown */
@@ -43,7 +49,12 @@
#define AI_NUMERICHOST 4 /**< don't use name resolution */
#endif
-#if !defined HAVE_GETADDRINFO || defined TEST_GETADDRINFO
+/* for flags in getnameinfo */
+#if !defined NI_NUMERICHOST
+#define NI_NUMERICHOST 1 /**< don't try to look up hostname. */
+#define NI_NUMERICSERV 2 /**< don't convert port number to name. */
+#endif
+
struct wolf_port_addrinfo
{
int ai_flags;
@@ -60,14 +71,20 @@ extern int wolf_port_getaddrinfo( const char *host_name,
const char *service_name,
const struct wolf_port_addrinfo *hints,
struct wolf_port_addrinfo **result );
-
extern void wolf_port_freeaddrinfo( struct wolf_port_addrinfo *result );
+
+extern int wolf_port_getnameinfo( const struct sockaddr *sa, socklen_t salen,
+ char *host, size_t hostlen,
+ char *serv, size_t servlen,
+ int flags );
+
extern const char *wolf_port_gai_strerror( int errcode );
#if !defined HAVE_GETADDRINFO
#define addrinfo wolf_port_addrinfo
#define getaddrinfo( host_name, service_name, hints, result ) wolf_port_getaddrinfo( host_name, service_name, hints, result )
#define freeaddrinfo( result ) wolf_port_freeaddrinfo( result )
+#define getnameinfo( sa, salen, host, hostlen, serv, servlen, flags ) wolf_port_getnameinfo( sa, salen, host, hostlen, serv, servlen, flags )
#define gai_strerror( errcode ) wolf_port_gai_strerror( errcode )
#endif