summaryrefslogtreecommitdiff
path: root/ace/Pipe.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ace/Pipe.cpp')
-rw-r--r--ace/Pipe.cpp31
1 files changed, 18 insertions, 13 deletions
diff --git a/ace/Pipe.cpp b/ace/Pipe.cpp
index aa87ab740eb..dbc5024cb2a 100644
--- a/ace/Pipe.cpp
+++ b/ace/Pipe.cpp
@@ -29,8 +29,7 @@ ACE_Pipe::dump (void) const
ACE_TRACE ("ACE_Pipe::dump");
ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("handles_[0] = %d"), this->handles_[0]));
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nhandles_[1] = %d"), this->handles_[1]));
- ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\n")));
+ ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("\nhandles_[1] = %d\n"), this->handles_[1]));
ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
#endif /* ACE_HAS_DUMP */
}
@@ -40,7 +39,7 @@ ACE_Pipe::open (int buffer_size)
{
ACE_TRACE ("ACE_Pipe::open");
-#if defined (ACE_LACKS_SOCKETPAIR) || defined (__Lynx__)
+#if defined (ACE_LACKS_SOCKETPAIR)
ACE_INET_Addr my_addr;
ACE_SOCK_Acceptor acceptor;
ACE_SOCK_Connector connector;
@@ -97,9 +96,10 @@ ACE_Pipe::open (int buffer_size)
}
# endif /* ! ACE_LACKS_TCP_NODELAY */
-# if defined (ACE_LACKS_SOCKET_BUFSIZ)
+# if defined (ACE_LACKS_SO_RCVBUF) && defined (ACE_LACKS_SO_SNDBUF)
ACE_UNUSED_ARG (buffer_size);
-# else /* ! ACE_LACKS_SOCKET_BUFSIZ */
+# endif
+# if !defined (ACE_LACKS_SO_RCVBUF)
if (reader.set_option (SOL_SOCKET,
SO_RCVBUF,
reinterpret_cast <void *> (&buffer_size),
@@ -109,16 +109,18 @@ ACE_Pipe::open (int buffer_size)
this->close ();
return -1;
}
- else if (writer.set_option (SOL_SOCKET,
- SO_SNDBUF,
- reinterpret_cast <void *> (&buffer_size),
- sizeof (buffer_size)) == -1
+# endif /* !ACE_LACKS_SO_RCVBUF */
+# if !defined (ACE_LACKS_SO_SNDBUF)
+ if (writer.set_option (SOL_SOCKET,
+ SO_SNDBUF,
+ reinterpret_cast <void *> (&buffer_size),
+ sizeof (buffer_size)) == -1
&& errno != ENOTSUP)
{
this->close ();
return -1;
}
-# endif /* ! ACE_LACKS_SOCKET_BUFSIZ */
+# endif /* !ACE_LACKS_SO_SNDBUF */
#elif defined (ACE_HAS_STREAM_PIPES) || defined (__QNX__)
ACE_UNUSED_ARG (buffer_size);
@@ -156,9 +158,10 @@ ACE_Pipe::open (int buffer_size)
ACE_TEXT ("%p\n"),
ACE_TEXT ("socketpair")),
-1);
-# if defined (ACE_LACKS_SOCKET_BUFSIZ)
+# if defined (ACE_LACKS_SO_SNDBUF) && defined (ACE_LACKS_SO_RCVBUF)
ACE_UNUSED_ARG (buffer_size);
-# else /* ! ACE_LACKS_SOCKET_BUFSIZ */
+# endif
+# if !defined (ACE_LACKS_SO_RCVBUF)
if (ACE_OS::setsockopt (this->handles_[0],
SOL_SOCKET,
SO_RCVBUF,
@@ -169,6 +172,8 @@ ACE_Pipe::open (int buffer_size)
this->close ();
return -1;
}
+# endif
+# if !defined (ACE_LACKS_SO_SNDBUF)
if (ACE_OS::setsockopt (this->handles_[1],
SOL_SOCKET,
SO_SNDBUF,
@@ -179,7 +184,7 @@ ACE_Pipe::open (int buffer_size)
this->close ();
return -1;
}
-# endif /* ! ACE_LACKS_SOCKET_BUFSIZ */
+# endif /* ! ACE_LACKS_SO_SNDBUF */
# if defined (ACE_OPENVMS) && !defined (ACE_LACKS_TCP_NODELAY)
int one = 1;
// OpenVMS implements socketpair(AF_UNIX...) by returning AF_INET sockets.