Esempio n. 1
0
 def resolveNamesToIPs(self, hostNode, parsedData):
     if parsedData:
         for internalName in parsedData.keys():
             nodeData = parsedData[internalName]
             values = nodeData.get(hostNode)
             if values:
                 listenedIPs = {}
                 for ipaddr in values:
                     stripedIpAddr = ipaddr.strip()
                     if netutils.isValidIp(stripedIpAddr):
                         listenedIPs[stripedIpAddr] = ''
                     else:
                         resolver = DNSResolver(self.shell, stripedIpAddr)
                         resolvedIp = resolver.getIPAddress()
                         if resolvedIp:
                             listenedIPs[resolvedIp.strip()] = ''
                         else:
                             aliasBasedIps = resolver.resolveNSLookupAliasBased(
                             )
                             if aliasBasedIps:
                                 for ip in aliasBasedIps:
                                     listenedIPs[ip.strip()] = ''
                 nodeData[hostNode] = listenedIPs.keys()
             parsedData[internalName] = nodeData
     return parsedData
Esempio n. 2
0
 def __parseConfig(self, listenerConfigFile):
     listenedIPs = {}
     if listenerConfigFile:
         hostNode = 'HOST'
         filter = {hostNode : 'HOST\s*=\s*([\w\-\.]+)[\s\)]*'}
         parser = OraConfigParser(listenerConfigFile, filter)
         parsedData = parser.getResultsDict()
         if parsedData:
             for listenerName in parsedData.keys():
                 nodeData = parsedData[listenerName]
                 values = nodeData.get(hostNode)
                 if values:
                     for ipaddr in values:
                         logger.debug('Working with possible ip: ' + ipaddr)
                         if netutils.isValidIp(ipaddr):
                             listenedIPs[ipaddr.strip()] = ''
                         else:
                             resolver = DNSResolver(self.shell, ipaddr)
                             resolvedIP = resolver.getIPAddress()
                             if resolvedIP:
                                 listenedIPs[resolvedIP.strip()] = ''
                         if not self.listenerName:
                             self.listenerName = listenerName
     return listenedIPs
 def resolveNamesToIPs(self, hostNode, parsedData):
     if parsedData:
         for internalName in parsedData.keys():
             nodeData = parsedData[internalName]
             values = nodeData.get(hostNode)
             if values:
                 listenedIPs = {}
                 for ipaddr in values:
                     stripedIpAddr = ipaddr.strip()
                     if netutils.isValidIp(stripedIpAddr):
                         listenedIPs[stripedIpAddr] = ""
                     else:
                         resolver = DNSResolver(self.shell, stripedIpAddr)
                         resolvedIp = resolver.getIPAddress()
                         if resolvedIp:
                             listenedIPs[resolvedIp.strip()] = ""
                         else:
                             aliasBasedIps = resolver.resolveNSLookupAliasBased()
                             if aliasBasedIps:
                                 for ip in aliasBasedIps:
                                     listenedIPs[ip.strip()] = ""
                 nodeData[hostNode] = listenedIPs.keys()
             parsedData[internalName] = nodeData
     return parsedData