コード例 #1
0
 def handleRestrictedKey(self,xmlbit, key):
     for kid in xmlbit.getchildren():
         value=kid.text
         try:
             rv=RestrictedValue.objects.get(keyid=key, value=value)
         except ObjectDoesNotExist:
             rv=RestrictedValue(keyid=key, value=value)
             verbose("Adding %s=%s to restricted key" % (key.key, value))
             if not kiddingFlag:
                 rv.save()
コード例 #2
0
 def handle(self, namespace):
     m=re.match("(?P<key>\w+)=(?P<value>.+)", namespace.keyvalue)
     if not m:
         raise HostinfoException("Must be specified in key=value format")
     key=m.group('key').lower()
     value=m.group('value').lower()
     keyobjlist=AllowedKey.objects.filter(key=key)
     if len(keyobjlist)!=1:
         raise HostinfoException("No key %s found" % key)
     keyobj=keyobjlist[0]
     if not keyobj.restrictedFlag:
         raise HostinfoException("Key %s isn't a restrictedvalue key" % key)
     rvallist=RestrictedValue.objects.filter(keyid=keyobj, value=value)
     if rvallist:
         raise HostinfoException("Already a key %s=%s in the restrictedvalue list" % (key, value))
     rv=RestrictedValue(keyid=keyobj, value=value)
     rv.save()
     return None,0