diff options
author | Timothy Simpson <simpsont@objectcomputing.com> | 2020-08-01 14:52:22 -0500 |
---|---|---|
committer | Timothy Simpson <simpsont@objectcomputing.com> | 2020-08-01 14:52:22 -0500 |
commit | 3481b96f1097e2c4fde54701d4ad818c12759008 (patch) | |
tree | 6f05642dc1611ed83f75d28718e776b225158ba6 /ACE/ace/SOCK_Dgram.cpp | |
parent | 3d23f3e578a42ea72acb202dd13a1fdc2e2a2e26 (diff) | |
download | ATCD-3481b96f1097e2c4fde54701d4ad818c12759008.tar.gz |
fixing 'empty' result failure case to only apply when interface is specified
Diffstat (limited to 'ACE/ace/SOCK_Dgram.cpp')
-rw-r--r-- | ACE/ace/SOCK_Dgram.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ACE/ace/SOCK_Dgram.cpp b/ACE/ace/SOCK_Dgram.cpp index 4c384776d6e..39a0bd71e3a 100644 --- a/ACE/ace/SOCK_Dgram.cpp +++ b/ACE/ace/SOCK_Dgram.cpp @@ -834,21 +834,23 @@ ACE_SOCK_Dgram::make_multicast_ifaddr6 (ipv6_mreq *ret_mreq, } delete[] buf; // clean up + #endif /* ACE_WIN32 */ #ifndef ACE_LACKS_IF_NAMETOINDEX if (lmreq.ipv6mr_interface == 0) { lmreq.ipv6mr_interface = ACE_OS::if_nametoindex (ACE_TEXT_ALWAYS_CHAR (net_if)); } + #endif /* ACE_LACKS_IF_NAMETOINDEX */ + if (lmreq.ipv6mr_interface == 0) + return -1; + } #else /* ACE_WIN32 || !ACE_LACKS_IF_NAMETOINDEX */ ACE_UNUSED_ARG(net_if); #endif /* ACE_WIN32 || !ACE_LACKS_IF_NAMETOINDEX */ - if (lmreq.ipv6mr_interface == 0) - return -1; - // now set the multicast address ACE_OS::memcpy (&lmreq.ipv6mr_multiaddr, &((sockaddr_in6 *) mcast_addr.get_addr ())->sin6_addr, |