summaryrefslogtreecommitdiff
path: root/TAO/examples/PluggableUDP/DIOP
diff options
context:
space:
mode:
authormk1 <mk1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-04-27 09:20:22 +0000
committermk1 <mk1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2001-04-27 09:20:22 +0000
commit90cd1ae8a5a519726b7da7ac0a5b1083d55a6185 (patch)
treeb6e4814679dbe50de22ccc795d3c7481f91f5c9e /TAO/examples/PluggableUDP/DIOP
parentfad80b21857f6643d6130c2c95ac780454a006e1 (diff)
downloadATCD-90cd1ae8a5a519726b7da7ac0a5b1083d55a6185.tar.gz
ChangeLogTag: Fri Apr 27 04:07:00 2001 Michael Kircher <Michael.Kircher@mchp.siemens.de>
Diffstat (limited to 'TAO/examples/PluggableUDP/DIOP')
-rw-r--r--TAO/examples/PluggableUDP/DIOP/DIOP_Acceptor.cpp10
-rw-r--r--TAO/examples/PluggableUDP/DIOP/DIOP_Transport.cpp13
2 files changed, 17 insertions, 6 deletions
diff --git a/TAO/examples/PluggableUDP/DIOP/DIOP_Acceptor.cpp b/TAO/examples/PluggableUDP/DIOP/DIOP_Acceptor.cpp
index 9c7cf55d9cf..6b13dfac9d4 100644
--- a/TAO/examples/PluggableUDP/DIOP/DIOP_Acceptor.cpp
+++ b/TAO/examples/PluggableUDP/DIOP/DIOP_Acceptor.cpp
@@ -207,8 +207,14 @@ TAO_DIOP_Acceptor::is_collocated (const TAO_Endpoint *endpoint)
int
TAO_DIOP_Acceptor::close (void)
{
- delete this->connection_handler_;
- this->connection_handler_ = 0;
+ if (this->connection_handler_)
+ {
+ // This will trigger that the connection handler gets deleted.
+ this->orb_core_->reactor ()->remove_handler (this->connection_handler_,
+ ACE_Event_Handler::READ_MASK);
+
+ this->connection_handler_ = 0;
+ }
return 0;
}
diff --git a/TAO/examples/PluggableUDP/DIOP/DIOP_Transport.cpp b/TAO/examples/PluggableUDP/DIOP/DIOP_Transport.cpp
index bed3fa5b098..f890ca85027 100644
--- a/TAO/examples/PluggableUDP/DIOP/DIOP_Transport.cpp
+++ b/TAO/examples/PluggableUDP/DIOP/DIOP_Transport.cpp
@@ -70,14 +70,19 @@ TAO_DIOP_Transport::messaging_object (void)
ssize_t
TAO_DIOP_Transport::send_i (iovec *iov, int iovcnt,
size_t &bytes_transferred,
- const ACE_Time_Value *max_wait_time)
+ const ACE_Time_Value *)
{
- ssize_t retval = this->connection_handler_->peer ().sendv (iov, iovcnt,
- max_wait_time);
+ const ACE_INET_Addr &addr = this->connection_handler_->addr ();
+ ssize_t retval = this->connection_handler_->dgram ().send (iov,
+ iovcnt,
+ addr);
if (retval > 0)
bytes_transferred = retval;
- return retval;
+ // @@ Michael:
+ // Always return a positive number of bytes sent, as we do
+ // not handle sending errors in DIOP.
+ return 1;
}
ssize_t