(file) Return to System.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/System.cpp between version 1.60 and 1.65

version 1.60, 2007/09/11 19:43:00 version 1.65, 2008/02/06 08:35:58
Line 263 
Line 263 
     }     }
     else     else
     {     {
   #if defined(PEGASUS_OS_VMS)
           // vms has tcpipv6 support in the kernel so socket
           // will always work so a call to "bind" is needed
           // to complete this test.
   
           struct sockaddr_storage listenAddress;
           memset(&listenAddress, 0, sizeof (listenAddress));
           SocketLength addressLength;
   
           HostAddress::convertTextToBinary(
               HostAddress::AT_IPV6,
               "::1",
               &reinterpret_cast<struct sockaddr_in6*>(&listenAddress)->sin6_addr);
           listenAddress.ss_family = AF_INET6;
           reinterpret_cast<struct sockaddr_in6*>(&listenAddress)->sin6_port = 0;
   
           addressLength = sizeof(struct sockaddr_in6);
   
           if (::bind(
               ip6Socket,
               reinterpret_cast<struct sockaddr*>(&listenAddress),
               addressLength) < 0)
           {
               Socket::close(ip6Socket);
               return false;
           }
   #endif  // PEGASUS_OS_VMS
   
         Socket::close(ip6Socket);         Socket::close(ip6Socket);
     }     }
  
Line 273 
Line 301 
 // ------------------------------------------------------------------------ // ------------------------------------------------------------------------
 // Convert a hostname into a a single host unique integer representation // Convert a hostname into a a single host unique integer representation
 // ------------------------------------------------------------------------ // ------------------------------------------------------------------------
 Boolean System::_acquireIP(const char* hostname, int *af, void *dst)  Boolean System::acquireIP(const char* hostname, int *af, void *dst)
 { {
 #ifdef PEGASUS_ENABLE_IPV6 #ifdef PEGASUS_ENABLE_IPV6
     String ipAddress;     String ipAddress;
Line 286 
Line 314 
 #else #else
     *af = AF_INET;     *af = AF_INET;
     Uint32 ip = 0xFFFFFFFF;     Uint32 ip = 0xFFFFFFFF;
     if (!hostname) return 0xFFFFFFFF;      if (!hostname)
       {
           *af = 0xFFFFFFFF;
           return false;
       }
  
 //////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
 // This code used to check if the first character of "hostname" was alphabetic // This code used to check if the first character of "hostname" was alphabetic
Line 494 
Line 526 
         }         }
         res1 = res1->ai_next;         res1 = res1->ai_next;
     }     }
       if (res1root)
       {
     freeaddrinfo(res1root);     freeaddrinfo(res1root);
       }
       if (res2root)
       {
     freeaddrinfo(res2root);     freeaddrinfo(res2root);
       }
     if (isLocal)     if (isLocal)
     {     {
         return true;         return true;
Line 535 
Line 573 
         }         }
         res1 = res1->ai_next;         res1 = res1->ai_next;
     }     }
       if (res1root)
       {
     freeaddrinfo(res1root);     freeaddrinfo(res1root);
       }
       if (res2root)
       {
     freeaddrinfo(res2root);     freeaddrinfo(res2root);
       }
     return isLocal;     return isLocal;
 #else #else
  
Line 720 
Line 763 
     return hostEntry;     return hostEntry;
 } }
  
   #if defined(PEGASUS_OS_ZOS) || \
       defined(PEGASUS_OS_VMS) || \
       defined(PEGASUS_ENABLE_IPV6)
   
 int System::getAddrInfo( int System::getAddrInfo(
     const char *hostname,     const char *hostname,
     const char *servname,     const char *servname,
Line 762 
Line 809 
     return rc;     return rc;
 } }
  
   #endif
  
 // System ID constants for Logger::put and Logger::trace // System ID constants for Logger::put and Logger::trace
 const String System::CIMLISTENER = "cimlistener"; // Listener systme ID const String System::CIMLISTENER = "cimlistener"; // Listener systme ID


Legend:
Removed from v.1.60  
changed lines
  Added in v.1.65

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2