summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryamuna <yamuna@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-10 00:41:59 +0000
committeryamuna <yamuna@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-10 00:41:59 +0000
commitf360f9c398b70081c6dd82b53b7cbeaa9681ba1f (patch)
tree3635275a15af106f28d914fc5932cd758b7eb099
parent028f670e4e0e287e538bab2ac0a0297ed11d85a1 (diff)
downloadATCD-f360f9c398b70081c6dd82b53b7cbeaa9681ba1f.tar.gz
*** empty log message ***
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.cpp40
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.h12
-rw-r--r--TAO/orbsvcs/orbsvcs/AV/UDP.cpp31
3 files changed, 54 insertions, 29 deletions
diff --git a/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.cpp b/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.cpp
index dade8b836d9..73efeb5a203 100644
--- a/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.cpp
+++ b/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.cpp
@@ -53,7 +53,7 @@ TAO_FlowSpec_Entry::TAO_FlowSpec_Entry (const char *flowname,
const char *flow_protocol,
const char *carrier_protocol,
ACE_Addr *fwd_address,
- ACE_Addr *peer_address,
+ //ACE_Addr *peer_address,
ACE_Addr *control_address)
:address_ (fwd_address),
clean_up_address_ (0),
@@ -68,7 +68,7 @@ TAO_FlowSpec_Entry::TAO_FlowSpec_Entry (const char *flowname,
use_flow_protocol_ (0),
entry_ (),
is_multicast_ (0),
- peer_addr_ (peer_address),
+ peer_addr_ (0),
peer_control_addr_ (0),
local_addr_ (0),
local_control_addr_ (0),
@@ -89,14 +89,13 @@ TAO_FlowSpec_Entry::TAO_FlowSpec_Entry (const char *flowname,
const char *direction,
const char *format_name,
const char *flow_protocol,
- const char *fwd_address,
- const char *peer_address)
+ const char *address)
+ //const char *peer_address)
:address_ (0),
clean_up_address_ (0),
control_address_ (0),
clean_up_control_address_ (0),
- fwd_address_str_ ( address ),
- peer_address_str_ ( address ),
+ address_str_ ( address ),
format_ ( format_name ),
direction_str_ ( direction ),
flowname_ ( flowname ),
@@ -484,13 +483,19 @@ TAO_Forward_FlowSpec_Entry::parse (const char *flowSpec_entry)
if (this->parse_address (tokenizer [TAO_AV_ADDRESS], TAO_AV_Core::TAO_AV_BOTH) < 0)
return -1;
- if (tokenizer [TAO_AV_PEER_ADDRESS] != 0)
+ if (tokenizer [TAO_AV_PEER_ADDR] != 0)
{
- ACE_Addr *addr;
+ ACE_INET_Addr *addr;
ACE_NEW_RETURN (addr,
- ACE_Addr (tokenizer [TAO_AV_PEER_ADDR]),
+ ACE_INET_Addr (tokenizer [TAO_AV_PEER_ADDR]),
0);
this->peer_addr_ = addr;
+
+ char buf [BUFSIZ];
+ addr->addr_to_string (buf, BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,
+ "Peer Address %s \n",
+ buf));
}
if (tokenizer [TAO_AV_FLOW_PROTOCOL] != 0)
@@ -597,7 +602,8 @@ TAO_Forward_FlowSpec_Entry::entry_to_string (void)
}
}
-if (this->peer_addr_ != 0)
+
+ if (this->peer_addr_ != 0)
{
switch (this->protocol_)
{
@@ -613,17 +619,19 @@ if (this->peer_addr_ != 0)
case TAO_AV_Core::TAO_AV_TCP:
{
ACE_INET_Addr *inet_addr = ACE_dynamic_cast (ACE_INET_Addr*,this->peer_addr_);
- inet_addr->addr_to_string (address,BUFSIZ);
+ //inet_addr->addr_to_string (address,BUFSIZ);
+ inet_addr->get_host_name (address, BUFSIZ);
+ ACE_CString cstring (address);
+ cstring += ACE_OS::itoa (address, BUFSIZ, inet_addr->get_port_number ());
+ //peer_address_str = this->carrier_protocol_;
+ //peer_address_str += "=";
+ peer_address_str += cstring;
}
break;
default:
break;
}
- ACE_CString cstring (address);
- peer_address_str = this->carrier_protocol_;
- peer_address_str += "=";
- peer_address_str += cstring;
}
if (this->control_address_ != 0)
@@ -756,7 +764,7 @@ TAO_Reverse_FlowSpec_Entry::parse (const char *flowSpec_entry)
ACE_DEBUG ((LM_DEBUG,
"TAO_Reverse_FlowSpec_Entry::parse %s\n",
flowSpec_entry));
-
+
if (tokenizer [TAO_AV_ADDRESS] != 0)
if (this->parse_address (tokenizer [TAO_AV_ADDRESS], TAO_AV_Core::TAO_AV_BOTH) < 0)
return -1;
diff --git a/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.h b/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.h
index 3aa3872f233..c66975cc678 100644
--- a/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.h
+++ b/TAO/orbsvcs/orbsvcs/AV/FlowSpec_Entry.h
@@ -121,15 +121,15 @@ public:
void flow_protocol_str (const char *flow_protocol_str);
/// accessor to address of the carrier protocol.
- ACE_Addr *fwd_address (void);
- ACE_Addr *rev_address (void);
+ //ACE_Addr *fwd_address (void);
+ ACE_Addr *address (void);
ACE_Addr *control_address (void);
void address (ACE_Addr *address);
void control_address (ACE_Addr *address);
/// Address in string format i. hostname:port.
- const char * fwd_address_str (void) const;
- const char * peer_address_str (void) const;
+ const char *address_str (void) const;
+ // const char * peer_address_str (void) const;
/// accessor to carrier protocol i.e TCP,UDP,RTP/UDP.
TAO_AV_Core::Protocol carrier_protocol (void);
@@ -198,7 +198,7 @@ protected:
int clean_up_control_address_; // added to clean up a memory leak
/// Fwd Addr in string format i.e hostname:port.
- ACE_CString fwd_address_str_;
+ ACE_CString address_str_;
/// Peer Addr in string format i.e hostname:port.
ACE_CString peer_address_str_;
@@ -257,7 +257,7 @@ public:
TAO_AV_FORMAT = 2,
TAO_AV_FLOW_PROTOCOL = 3,
TAO_AV_ADDRESS = 4,
- TAO_AV_PEER_ADDRESS = 5};
+ TAO_AV_PEER_ADDR = 5};
/// default constructor.
TAO_Forward_FlowSpec_Entry (void);
diff --git a/TAO/orbsvcs/orbsvcs/AV/UDP.cpp b/TAO/orbsvcs/orbsvcs/AV/UDP.cpp
index 4e3b627591b..8dd9acc0607 100644
--- a/TAO/orbsvcs/orbsvcs/AV/UDP.cpp
+++ b/TAO/orbsvcs/orbsvcs/AV/UDP.cpp
@@ -423,7 +423,7 @@ TAO_AV_UDP_Acceptor::open_i (ACE_INET_Addr *inet_addr,
{
int result = -1;
- ACE_INET_Addr *local_addr;
+ ACE_INET_Addr *local_addr = 0;
TAO_AV_Flow_Handler *flow_handler = 0;
// if using a default address and this is the control flow component, the
@@ -634,6 +634,16 @@ TAO_AV_UDP_Connector::connect (TAO_FlowSpec_Entry *entry,
// assume the ports will be OK
get_new_port = 0;
+ ACE_Addr *addr;
+ if ((addr = entry->get_peer_addr ()) != 0)
+ {
+ local_addr = ACE_dynamic_cast (ACE_INET_Addr*,addr);
+ char buf [BUFSIZ];
+ local_addr->addr_to_string (buf, BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,
+ "local_addr %s\n",
+ buf));
+ }
TAO_AV_UDP_Connection_Setup::setup (flow_handler,
inet_addr,
local_addr,
@@ -815,9 +825,16 @@ TAO_AV_UDP_Connection_Setup::setup (TAO_AV_Flow_Handler *&flow_handler,
}
else
{
- ACE_NEW_RETURN (local_addr,
- ACE_INET_Addr ("0"),
- -1);
+ if (local_addr == 0)
+ ACE_NEW_RETURN (local_addr,
+ ACE_INET_Addr ("0"),
+ -1);
+
+ char buf [BUFSIZ];
+ local_addr->addr_to_string (buf, BUFSIZ);
+ ACE_DEBUG ((LM_DEBUG,
+ "Local Address %s\n",
+ buf));
TAO_AV_UDP_Flow_Handler *handler;
ACE_NEW_RETURN (handler,
@@ -851,13 +868,13 @@ TAO_AV_UDP_Connection_Setup::setup (TAO_AV_Flow_Handler *&flow_handler,
return 0;
if (ct == CONNECTOR)
- handler->set_remote_address (inet_addr);
-
+ handler->set_remote_address (inet_addr);
+
result = handler->get_socket ()->get_local_addr (*local_addr);
if (result < 0)
ACE_ERROR_RETURN ((LM_ERROR,"TAO_AV_Dgram_Connector::open: get_local_addr failed\n"),result);
}
-
+
return 1;
}