summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog-99b10
-rw-r--r--acconfig.h3
-rw-r--r--ace/OS.h1
-rw-r--r--ace/OS.i17
-rw-r--r--ace/README1
5 files changed, 32 insertions, 0 deletions
diff --git a/ChangeLog-99b b/ChangeLog-99b
index a4226761116..003b56383e1 100644
--- a/ChangeLog-99b
+++ b/ChangeLog-99b
@@ -1,3 +1,13 @@
+Thu Apr 29 18:32:43 1999 Ossama Othman <othman@cs.wustl.edu>
+
+ * ace/README:
+ * ace/OS.h (ACE_OS):
+ * ace/OS.i (gethostbyname2):
+
+ Added support for the gethostbyname2() system call. It is only
+ enabled if ACE_HAS_IP6 is defined. When I have time, I'll add
+ more IPv6 support.
+
Thu Apr 29 15:30:04 1999 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
* ace/INET_Addr.cpp (string_to_addr): Added support to check for
diff --git a/acconfig.h b/acconfig.h
index 68bdb1ad067..1242af6363b 100644
--- a/acconfig.h
+++ b/acconfig.h
@@ -503,6 +503,9 @@
/* Platform supports IP multicast */
#undef ACE_HAS_IP_MULTICAST
+/* Platform supports IPv6 */
+#undef ACE_HAS_IP6
+
/* Platform supports the very odd IRIX 6.2 threads... */
#undef ACE_HAS_IRIX62_THREADS
diff --git a/ace/OS.h b/ace/OS.h
index 4f07e2c7888..d50bc153cf4 100644
--- a/ace/OS.h
+++ b/ace/OS.h
@@ -5370,6 +5370,7 @@ public:
int length,
int type);
static struct hostent *gethostbyname (const char *name);
+ static struct hostent *gethostbyname2 (const char *name, int type);
static struct hostent *gethostbyaddr_r (const char *addr,
int length,
int type,
diff --git a/ace/OS.i b/ace/OS.i
index c635548227d..5f9477813f0 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -4216,6 +4216,23 @@ ACE_OS::gethostbyname (const char *name)
# endif /* ACE_HAS_NONCONST_GETBY */
}
+# if defined (ACE_HAS_IP6)
+ACE_INLINE struct hostent *
+ACE_OS::gethostbyname2 (const char *name, int type)
+{
+ // ACE_TRACE ("ACE_OS::gethostbyname2");
+# if defined (ACE_PSOS)
+ ACE_UNUSED_ARG (name);
+ ACE_UNUSED_ARG (type);
+ ACE_NOTSUP_RETURN (0);
+# elif defined (ACE_HAS_NONCONST_GETBY)
+ ACE_SOCKCALL_RETURN (::gethostbyname2 ((char *) name, type), struct hostent *, 0);
+# else
+ ACE_SOCKCALL_RETURN (::gethostbyname2 (name, type), struct hostent *, 0);
+# endif /* ACE_HAS_NONCONST_GETBY */
+}
+# endif /* ACE_HAS_IP6 */
+
ACE_INLINE struct hostent *
ACE_OS::gethostbyaddr (const char *addr, int length, int type)
{
diff --git a/ace/README b/ace/README
index a4af7ec4171..de603a0e7b4 100644
--- a/ace/README
+++ b/ace/README
@@ -300,6 +300,7 @@ ACE_HAS_INLINED_OSCALLS Inline all the static class OS
methods to remove call
overhead
ACE_HAS_IP_MULTICAST Platform supports IP multicast
+ACE_HAS_IP6 Platform supports IPv6.
ACE_HAS_IRIX62_THREADS Platform supports the very odd
IRIX 6.2 threads...
ACE_HAS_NONSTATIC_OBJECT_MANAGER Causes the ACE_Object_Manager