summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrodrigu <crodrigu@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-01-30 17:49:48 +0000
committercrodrigu <crodrigu@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2002-01-30 17:49:48 +0000
commitfdd660a1ae99f68a6456732ef85e283b7fe89624 (patch)
tree4f5cd87c38a3ccd0ecf85e1e219323e3ba5289f8
parentf7e73e92e6ddc3f0fc0391c0f63f451cf8cc8d87 (diff)
downloadATCD-fdd660a1ae99f68a6456732ef85e283b7fe89624.tar.gz
ChangeLogTag: Wed Jan 30 12:49:43 2002 Rob Ruff <rruff@scires.com>
-rw-r--r--TAO/ChangeLogs/ChangeLog-02a17
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/AVStreams_i.cpp31
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/RTCP.cpp14
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/RTCP_Channel.cpp3
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/Transport.cpp13
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/UDP.cpp9
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);