summaryrefslogtreecommitdiff
path: root/ace/ACE.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ace/ACE.cpp')
-rw-r--r--ace/ACE.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/ace/ACE.cpp b/ace/ACE.cpp
index 589fd475864..9c2b9a46dbb 100644
--- a/ace/ACE.cpp
+++ b/ace/ACE.cpp
@@ -2998,14 +2998,16 @@ ACE::count_interfaces (ACE_HANDLE handle,
size_t &how_many)
{
#if defined (sparc) && defined (SIOCGIFNUM)
+ int tmp_how_many; // For 64 bit Solaris
if (ACE_OS::ioctl (handle,
SIOCGIFNUM,
- (caddr_t) &how_many) == -1)
+ (caddr_t) &tmp_how_many) == -1)
ACE_ERROR_RETURN ((LM_ERROR,
ASYS_TEXT ("ACE::get_ip_interfaces:")
ASYS_TEXT ("ioctl - SIOCGIFNUM failed")),
-1);
- return 0;
+ how_many = (size_t) tmp_how_many;
+ return 0;
#elif defined (__unix) || defined (__Lynx__) || defined (_AIX)
// Note: DEC CXX doesn't define "unix". BSD compatible OS: HP UX,
// AIX, SunOS 4.x perform some ioctls to retrieve ifconf list of