summaryrefslogtreecommitdiff
path: root/TAO
diff options
context:
space:
mode:
authorirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-01-07 10:14:00 +0000
committerirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1999-01-07 10:14:00 +0000
commit6410a05fa64b88137897b057525d0cb0635b6f05 (patch)
treefe48cb1a69d53584ba1c719ba6513498f98fbbea /TAO
parent746c2b5e47da57a4ef9a2e5ec21d5a9028f67634 (diff)
downloadATCD-6410a05fa64b88137897b057525d0cb0635b6f05.tar.gz
*** empty log message ***
Diffstat (limited to 'TAO')
-rw-r--r--TAO/ChangeLog-98c10
-rw-r--r--TAO/tao/Connect.cpp19
-rw-r--r--TAO/tao/Invocation.cpp12
3 files changed, 27 insertions, 14 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c
index 4f37ba51872..d1456be4e80 100644
--- a/TAO/ChangeLog-98c
+++ b/TAO/ChangeLog-98c
@@ -1,3 +1,13 @@
+Thu Jan 07 04:06:51 1999 Irfan Pyarali <irfan@cs.wustl.edu>
+
+ * Connect.cpp (check_unexpected_data): Made the checks for 0 and
+ -1 from recv() the same. 0 is a graceful shutdown, while -1 is a
+ somewhat ugly shutdown. Both will result in this function
+ returning -1 and this connection getting closed.
+
+ * Invocation.cpp (invoke): Added asserts to check for failures in
+ resume_handler().
+
Wed Jan 06 16:44:06 1999 David L. Levine <schmidt@cs.wustl.edu>
* TAO version 0.2.47 released.
diff --git a/TAO/tao/Connect.cpp b/TAO/tao/Connect.cpp
index d1ad5898f31..0da13e322dd 100644
--- a/TAO/tao/Connect.cpp
+++ b/TAO/tao/Connect.cpp
@@ -774,11 +774,15 @@ TAO_Client_Connection_Handler::check_unexpected_data (void)
sizeof ignored,
MSG_PEEK);
switch (ret)
- {
+ {
+ case 0:
case -1:
- // Error...but we weren't expecting input, either...what should
- // we do?
- ACE_ERROR ((LM_WARNING,
+ // 0 is a graceful shutdown
+ // -1 is a somewhat ugly shutdown
+ //
+ // Both will result in us returning -1 and this connection getting closed
+ //
+ ACE_DEBUG ((LM_WARNING,
"Client_Connection_Handler::handle_input: closing connection on fd %d\n",
this->peer().get_handle ()));
break;
@@ -794,13 +798,6 @@ TAO_Client_Connection_Handler::check_unexpected_data (void)
"input while not expecting a response; closing connection on fd %d\n",
this->peer().get_handle ()));
break;
-
- case 0:
- // This is an EOF, so we will return -1 and let handle_close()
- // take over. As long as handle_close() calls the
- // Svc_Handler<>::handle_close(), the socket will be shutdown
- // properly.
- break;
}
// We're not expecting input at this time, so we'll always
diff --git a/TAO/tao/Invocation.cpp b/TAO/tao/Invocation.cpp
index 4b769f9797d..0c3c2299d18 100644
--- a/TAO/tao/Invocation.cpp
+++ b/TAO/tao/Invocation.cpp
@@ -534,8 +534,10 @@ TAO_GIOP_Twoway_Invocation::invoke (CORBA::ExceptionList &exceptions,
this->inp_stream_,
this->orb_core_);
- this->orb_core_->reactor ()->resume_handler (this->data_->handler ());
// suspend was called in TAO_Client_Connection_Handler::handle_input
+ int result = this->orb_core_->reactor ()->resume_handler (handler);
+ ACE_UNUSED_ARG (result);
+ ACE_ASSERT (result == 0);
switch (m)
{
@@ -812,8 +814,10 @@ TAO_GIOP_Twoway_Invocation::invoke (TAO_Exception_Data *excepts,
this->inp_stream_,
this->orb_core_);
- this->orb_core_->reactor ()->resume_handler (this->data_->handler ());
// suspend was called in TAO_Client_Connection_Handler::handle_input
+ int result = this->orb_core_->reactor ()->resume_handler (handler);
+ ACE_UNUSED_ARG (result);
+ ACE_ASSERT (result == 0);
switch (m)
{
@@ -1058,8 +1062,10 @@ TAO_GIOP_Locate_Request_Invocation::invoke (CORBA::Environment &env)
this->inp_stream_,
this->orb_core_);
- this->orb_core_->reactor ()->resume_handler (this->data_->handler ());
// suspend was called in TAO_Client_Connection_Handler::handle_input
+ int result = this->orb_core_->reactor ()->resume_handler (handler);
+ ACE_UNUSED_ARG (result);
+ ACE_ASSERT (result == 0);
switch (m)
{