diff options
author | crodrigu <crodrigu@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-01-30 17:49:48 +0000 |
---|---|---|
committer | crodrigu <crodrigu@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2002-01-30 17:49:48 +0000 |
commit | fdd660a1ae99f68a6456732ef85e283b7fe89624 (patch) | |
tree | 4f5cd87c38a3ccd0ecf85e1e219323e3ba5289f8 | |
parent | f7e73e92e6ddc3f0fc0391c0f63f451cf8cc8d87 (diff) | |
download | ATCD-fdd660a1ae99f68a6456732ef85e283b7fe89624.tar.gz |
ChangeLogTag: Wed Jan 30 12:49:43 2002 Rob Ruff <rruff@scires.com>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 17 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp | 31 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/RTCP.cpp | 14 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp | 3 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/Transport.cpp | 13 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/AV/UDP.cpp | 9 |
6 files changed, 60 insertions, 27 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 573ef445cb1..ce91234948a 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,3 +1,20 @@ +Wed Jan 30 12:49:43 2002 Rob Ruff <rruff@scires.com> + Craig Rodrigues <crodrigu@bbn.com> + + * orbsvcs/orbsvcs/AV/AVStreams_i.cpp: Change ACE_ENV_ARG_DECL to + ACE_ENV_ARG_DECL_NOT_USED. + * orbsvcs/orbsvcs/AV/RTCP.cpp: Clean up debugging statements. + Change value of RTCP_SDES_NOTE to "An important note..." + * orbsvcs/orbsvcs/AV/RTCP_Channel.cpp (update_seq): + Only show debug statement if TAO_debug_level is > 0. + * orbsvcs/orbsvcs/AV/Transport.cpp: Default initialize timer_id_ to + -1. Only call cancel_timer() and handle_timeout() if timer_id_ is + not -1. + * orbsvcs/orbsvcs/AV/UDP.cpp: + (TAO_AV_UDP_Connector::connect) Set the control address. + (TAO_AV_UDP_Connection_Setup::setup) Treat the setup of sockets + which are used as acceptors or connectors differently. + Wed Jan 30 16:07:33 2002 Johnny Willemsen <jwillemsen@remedy.nl> * orbsvcs/tests/Notify/Makefile.bor: diff --git a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp index 4b2ef6a487e..86dc010dac2 100644 --- a/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp @@ -1627,11 +1627,6 @@ TAO_Base_StreamEndPoint::TAO_Base_StreamEndPoint (void) TAO_Base_StreamEndPoint::~TAO_Base_StreamEndPoint (void) { - Flow_Handler_Map_Iterator iter = this->flow_handler_map_.begin(); - Flow_Handler_Map_Entry *entry = 0; - - for (;iter.next (entry) != 0; iter.advance ()) - this->flow_handler_map_.unbind (entry->ext_id_); } int @@ -2180,6 +2175,7 @@ TAO_StreamEndPoint::destroy (const AVStreams::flowSpec &flow_spec TAO_FlowSpec_Entry *entry = *begin; if (entry->protocol_object ()) { + entry->protocol_object ()->stop (); ACE_CString control_flowname = TAO_AV_Core::get_control_flowname (entry->flowname ()); @@ -2198,6 +2194,8 @@ TAO_StreamEndPoint::destroy (const AVStreams::flowSpec &flow_spec TAO_FlowSpec_Entry *entry = *begin; if (entry->protocol_object ()) { + entry->protocol_object ()->stop (); + ACE_CString control_flowname = TAO_AV_Core::get_control_flowname (entry->flowname ()); TAO_AV_CORE::instance()->remove_connector(entry->flowname()); @@ -3154,15 +3152,10 @@ TAO_VDev::set_peer (AVStreams::StreamCtrl_ptr the_ctrl, CORBA::Boolean TAO_VDev::set_media_ctrl (CORBA::Object_ptr media_ctrl - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) { -// ACE_UNUSED_ARG (media_ctrl); - ACE_CHECK_RETURN (0); - - // FIX MEMORY LEAK: // since the media ctrl is not stored or used, delete it. - // cleaned up several memory leaks (according to BoundsChecker) CORBA::release( media_ctrl); @@ -3374,7 +3367,7 @@ TAO_MMDevice::bind_mcast (AVStreams::MMDevice_ptr first_peer, AVStreams::streamQoS &the_qos, CORBA::Boolean_out is_met, const AVStreams::flowSpec &the_spec - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow, @@ -3762,7 +3755,7 @@ TAO_MMDevice::add_fdev (CORBA::Object_ptr fdev_obj // Gets the FDev object associated with this flow. CORBA::Object_ptr TAO_MMDevice::get_fdev (const char *flow_name - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException, AVStreams::notSupported, AVStreams::noSuchFlow)) @@ -3971,7 +3964,7 @@ TAO_FlowConnection::destroy (ACE_ENV_SINGLE_ARG_DECL) // modify the QoS for this flow. CORBA::Boolean TAO_FlowConnection::modify_QoS (AVStreams::QoS & new_qos - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException, AVStreams::QoSRequestFailed)) { @@ -4152,7 +4145,7 @@ TAO_FlowConnection::connect (AVStreams::FlowProducer_ptr producer, CORBA::Boolean -TAO_FlowConnection::disconnect (ACE_ENV_SINGLE_ARG_DECL) +TAO_FlowConnection::disconnect (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException)) { ACE_CHECK_RETURN (0); @@ -4364,7 +4357,7 @@ TAO_FlowConnection::add_consumer (AVStreams::FlowConsumer_ptr consumer, CORBA::Boolean TAO_FlowConnection::drop (AVStreams::FlowEndPoint_ptr target - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException, AVStreams::notConnected)) { @@ -4453,7 +4446,7 @@ TAO_FlowEndPoint::set_flowname (const char *flowname) // used by one flowconnection so that multiple connections cant use // the same flowendpoint. CORBA::Boolean -TAO_FlowEndPoint::lock (ACE_ENV_SINGLE_ARG_DECL) +TAO_FlowEndPoint::lock (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException)) { // lock the current flowendpoint @@ -4467,7 +4460,7 @@ TAO_FlowEndPoint::lock (ACE_ENV_SINGLE_ARG_DECL) // unlocks the flowendpoint , becomes free to be used in another flow. void -TAO_FlowEndPoint::unlock (ACE_ENV_SINGLE_ARG_DECL) +TAO_FlowEndPoint::unlock (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException)) { ACE_CHECK; @@ -4514,7 +4507,7 @@ TAO_FlowEndPoint::related_flow_connection (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) void TAO_FlowEndPoint::related_flow_connection (AVStreams::FlowConnection_ptr related_flow_connection - ACE_ENV_ARG_DECL) + ACE_ENV_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException)) { ACE_CHECK; diff --git a/TAO/orbsvcs/orbsvcs/AV/RTCP.cpp b/TAO/orbsvcs/orbsvcs/AV/RTCP.cpp index 5acf4c889a8..852642a828a 100644 --- a/TAO/orbsvcs/orbsvcs/AV/RTCP.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/RTCP.cpp @@ -385,9 +385,17 @@ TAO_AV_RTCP_Object::handle_input (void) int n = this->transport_->recv (data.rd_ptr (),bufsiz); if (n == 0) - ACE_ERROR_RETURN ( (LM_ERROR,"TAO_AV_RTP::handle_input:connection closed\n"),-1); + { + if (TAO_debug_level > 0) + ACE_DEBUG ((LM_ERROR, "TAO_AV_RTCP::handle_input:connection closed\n")); + return -1; + } if (n < 0) - ACE_ERROR_RETURN ( (LM_ERROR,"TAO_AV_RTP::handle_input:recv error\n"),-1); + { + if (TAO_debug_level > 0) + ACE_DEBUG ((LM_ERROR,"TAO_AV_RTCP::handle_input:recv error\n")); + return -1; + } data.wr_ptr (n); ACE_Addr *peer_addr = this->transport_->get_peer_addr (); this->callback_->receive_control_frame (&data,*peer_addr); @@ -630,7 +638,7 @@ TAO_AV_RTCP_Callback::send_report (int bye) } else { - value = note; + value = "An important note..."; sdes_type = RTCP_SDES_NOTE; } break; diff --git a/TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp b/TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp index 4715a9eb110..75731e6e553 100644 --- a/TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp @@ -1,6 +1,8 @@ // $Id$ #include "ace/OS.h" +#include "tao/debug.h" + #include "RTCP_Channel.h" #include "RTP.h" @@ -196,6 +198,7 @@ RTCP_Channel_In::update_seq(ACE_UINT16 seq) // (i.e., pretend this was the first packet). this->init_seq (seq); + if (TAO_debug_level > 0) ACE_DEBUG ((LM_DEBUG, "RTCP_Channel_In: large jump in sequence number", "; init seq\n")); diff --git a/TAO/orbsvcs/orbsvcs/AV/Transport.cpp b/TAO/orbsvcs/orbsvcs/AV/Transport.cpp index 808babd92ac..2eddff5240e 100644 --- a/TAO/orbsvcs/orbsvcs/AV/Transport.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/Transport.cpp @@ -485,7 +485,8 @@ TAO_AV_Transport::get_local_addr (void) TAO_AV_Flow_Handler::TAO_AV_Flow_Handler (void) :transport_ (0), callback_ (0), - protocol_object_ (0) + protocol_object_ (0), + timer_id_ (-1) { } @@ -546,7 +547,10 @@ TAO_AV_Flow_Handler::schedule_timer (void) int TAO_AV_Flow_Handler::cancel_timer (void) { + if (this->timer_id_ != -1) return TAO_AV_CORE::instance()->reactor ()->cancel_timer (this->timer_id_); + else + return 0; } @@ -573,7 +577,9 @@ int TAO_AV_Flow_Handler::handle_timeout (const ACE_Time_Value & /*tv*/, const void * /*arg*/) { - this->callback_->handle_timeout (this->timeout_arg_); + int result = this->callback_->handle_timeout (this->timeout_arg_); + if (result < 0) + return result; ACE_Event_Handler *event_handler = this->event_handler (); ACE_Time_Value *timeout = 0; @@ -587,6 +593,9 @@ TAO_AV_Flow_Handler::handle_timeout (const ACE_Time_Value & /*tv*/, delete timeout; + if (this->timer_id_ < 0) + return -1; + return 0; } diff --git a/TAO/orbsvcs/orbsvcs/AV/UDP.cpp b/TAO/orbsvcs/orbsvcs/AV/UDP.cpp index b97d2546932..5a9ad7f5aac 100644 --- a/TAO/orbsvcs/orbsvcs/AV/UDP.cpp +++ b/TAO/orbsvcs/orbsvcs/AV/UDP.cpp @@ -28,8 +28,6 @@ TAO_AV_UDP_Flow_Handler::~TAO_AV_UDP_Flow_Handler (void) // close the socket. this->close (); -// if (this->protocol_object()) -// this->protocol_object()->stop(); delete this->transport_; } @@ -598,6 +596,7 @@ TAO_AV_UDP_Connector::connect (TAO_FlowSpec_Entry *entry, TAO_AV_Core::Flow_Component flow_component) { ACE_INET_Addr *local_addr; + ACE_INET_Addr *control_inet_addr; this->entry_ = entry; this->flow_component_ = flow_component; @@ -613,6 +612,7 @@ TAO_AV_UDP_Connector::connect (TAO_FlowSpec_Entry *entry, { this->flowname_ = entry->flowname (); inet_addr = ACE_dynamic_cast (ACE_INET_Addr*, entry->address ()); + control_inet_addr = ACE_dynamic_cast (ACE_INET_Addr*, entry->control_address ()); } TAO_AV_Flow_Handler *flow_handler = 0; @@ -660,7 +660,6 @@ TAO_AV_UDP_Connector::connect (TAO_FlowSpec_Entry *entry, else { ACE_INET_Addr *local_control_addr; - ACE_INET_Addr *control_inet_addr; TAO_AV_Flow_Handler *control_flow_handler = 0; if (entry->is_multicast ()) @@ -833,6 +832,9 @@ TAO_AV_UDP_Connection_Setup::setup (TAO_AV_Flow_Handler *&flow_handler, flow_handler = handler; + if (ct == ACCEPTOR) + result = handler->open (*inet_addr); + else result = handler->open (*local_addr); if (result < 0) ACE_ERROR_RETURN ((LM_ERROR,"handler::open failed\n"),-1); @@ -854,6 +856,7 @@ TAO_AV_UDP_Connection_Setup::setup (TAO_AV_Flow_Handler *&flow_handler, && errno != ENOTSUP) return 0; + if (ct == CONNECTOR) handler->set_remote_address (inet_addr); result = handler->get_socket ()->get_local_addr (*local_addr); |