diff options
author | Phil Mesnier <mesnierp@ociweb.com> | 2015-09-09 06:22:34 -0500 |
---|---|---|
committer | Phil Mesnier <mesnierp@ociweb.com> | 2015-09-09 06:22:34 -0500 |
commit | 46dae9e6dcf5bfd00096b6e9f24cced71df9e28a (patch) | |
tree | 2686d4cd6e86e2fad24731d21e610acf8ff4e06d /ACE/tests/INET_Addr_Test.cpp | |
parent | b4b415c7266ea88e3c44a27c91139425804dfd65 (diff) | |
download | ATCD-46dae9e6dcf5bfd00096b6e9f24cced71df9e28a.tar.gz |
fix for setting port number on an ACE_INET_Addr with a non-empty inet_addrs_ list.
Diffstat (limited to 'ACE/tests/INET_Addr_Test.cpp')
-rw-r--r-- | ACE/tests/INET_Addr_Test.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/ACE/tests/INET_Addr_Test.cpp b/ACE/tests/INET_Addr_Test.cpp index 2c272514a64..0910a62b24a 100644 --- a/ACE/tests/INET_Addr_Test.cpp +++ b/ACE/tests/INET_Addr_Test.cpp @@ -84,6 +84,30 @@ static bool test_tao_use (void) return true; } +static bool test_port_assignment (void) +{ +#if defined (ACE_HAS_IPV6) + ACE_INET_Addr addr1 (static_cast<unsigned short> (0), ACE_IPV6_ANY, AF_INET6); + ACE_INET_Addr addr2; + + addr1.set_port_number (12345); + addr2.set (addr1); + if (addr1.get_port_number () != addr2.get_port_number ()) + { + ACE_ERROR ((LM_ERROR, + ACE_TEXT ("port number not properly copied. ") + ACE_TEXT ("addr1 port = %d addr2 port = %d\n"), + addr1.get_port_number (), addr2.get_port_number ())); + return false; + } + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Test Port Assignment passed\n"))); +#else + ACE_DEBUG ((LM_DEBUG, + ACE_TEXT ("Test Port Assignment is IPv6 only\n"))); +#endif /* ACE_HAS_IPV6 */ + return true; +} static bool test_multiple (void) { @@ -466,6 +490,9 @@ int run_main (int, ACE_TCHAR *[]) if (!test_multiple ()) status = 1; + if (!test_port_assignment ()) + status = 1; + ACE_INET_Addr a1 (80, "127.0.0.1"); ACE_INET_Addr a2 = a1; if (a1 != a2) |