Пример #1
0
 def setAttributes(self, attr, is_modify):
     if 'address_type' not in attr:
         address = parseIPAddress(attr['address'])
         attr['address_type'] = adresssType(address)
     Resource.setAttributes(self, attr, is_modify)
     if self.address is None:
         self.type = self.TEMPLATE_TYPE
     else:
         self.type = self.TYPE
Пример #2
0
 def resolveHostname(self):
     if self.address_type == IPV6_ADDRESS:
         family = AF_INET6
     else:
         family = AF_INET
     addresses = set()
     try:
         for family, socktype, proto, canonname, sockaddr in getaddrinfo(self.hostname, None, family):
             address = parseIPAddress(sockaddr[0])
             addresses.add(address)
     except gaierror, err:
         message = toUnicode(err.args[1])
         raise RulesetError(tr('Unable to get the address of the hostname "%s": %s!'), self.hostname, message)
Пример #3
0
 def getter(self, rule, name, items):
     values = set()
     for item in items:
         value = getUnicode(item)
         if value is not None:
             value = parseIPAddress(value)
         if value is None:
             raise TypeError(
                 "Attribute %s.%s list contains an invalid address: %s"
                 % (object.__class__.__name__, name, repr(item))
             )
         values.add(value)
     if not values:
         return None
     return values
Пример #4
0
 def getter(self, object, name, text):
     text = getUnicode(text)
     if not text:
         return None
     return parseIPAddress(text)
Пример #5
0
 def createPhysical(self, address):
     address = parseIPAddress(address)
     checkHost(address)
     return address
Пример #6
0
 def createPhysical(self, text):
     ip = parseIPAddress(text)
     ip.NoPrefixForSingleIp = False
     return ip