]> git.decadent.org.uk Git - dak.git/blobdiff - dak/process_unchecked.py
whoops, put sensible comment in
[dak.git] / dak / process_unchecked.py
index 7d8d4f233d15033d8384080f33bb6221cb491c39..faffd530a77224c7d70f6f75f1723b8c473b2ebb 100755 (executable)
@@ -35,17 +35,13 @@ from daklib import logging
 from daklib import queue
 from daklib import utils
 from daklib.dak_exceptions import *
+from daklib.regexes import re_valid_version, re_valid_pkg_name, re_changelog_versions, \
+                           re_strip_revision, re_strip_srcver, re_spacestrip
 
 from types import *
 
 ################################################################################
 
-re_valid_version = re.compile(r"^([0-9]+:)?[0-9A-Za-z\.\-\+:~]+$")
-re_valid_pkg_name = re.compile(r"^[\dA-Za-z][\dA-Za-z\+\-\.]+$")
-re_changelog_versions = re.compile(r"^\w[-+0-9a-z.]+ \([^\(\) \t]+\)")
-re_strip_revision = re.compile(r"-([^-]+)$")
-re_strip_srcver = re.compile(r"\s+\(\S+\)$")
-re_spacestrip = re.compile('(\s)')
 
 ################################################################################
 
@@ -997,10 +993,10 @@ def check_timestamps():
 ################################################################################
 
 def lookup_uid_from_fingerprint(fpr):
-    q = Upload.projectB.query("SELECT u.uid, u.name, u.debian_maintainer FROM fingerprint f, uid u WHERE f.uid = u.id AND f.fingerprint = '%s'" % (fpr))
+    q = Upload.projectB.query("SELECT u.uid, u.name, k.debian_maintainer FROM fingerprint f JOIN keyrings k ON (f.keyring=k.id), uid u WHERE f.uid = u.id AND f.fingerprint = '%s'" % (fpr))
     qs = q.getresult()
     if len(qs) == 0:
-        return (None, None)
+        return (None, None, None)
     else:
         return qs[0]
 
@@ -1047,13 +1043,12 @@ def check_signed_by_key():
 
         highest_sid, highest_version = None, None
 
-        is_allowed = 1
+        should_reject = True
         for si in q.getresult():
             if highest_version == None or apt_pkg.VersionCompare(si[1], highest_version) == 1:
                  highest_sid = si[0]
                  highest_version = si[1]
 
-        print highest_sid
         if highest_sid == None:
            reject("Source package %s does not have 'DM-Upload-Allowed: yes' in its most recent version" % changes["source"])
         else:
@@ -1061,10 +1056,10 @@ def check_signed_by_key():
             for m in q.getresult():
                 (rfc822, rfc2047, name, email) = utils.fix_maintainer(m[0])
                 if email == uid_email or name == uid_name:
-                    is_allowed=0
+                    should_reject=False
                     break
 
-        if is_allowed:
+        if should_reject == True:
             reject("%s is not in Maintainer or Uploaders of source package %s" % (uid, changes["source"]))
 
         for b in changes["binary"].keys():