41 lines
1.1 KiB
Diff
41 lines
1.1 KiB
Diff
|
commit f707e9a22e185098bbea923b7ff8971f19a87991
|
||
|
Author: Ludwig Nussel <ludwig.nussel@suse.de>
|
||
|
Date: Fri Aug 5 13:52:42 2011 +0200
|
||
|
|
||
|
fix pgp pubkey parsing
|
||
|
|
||
|
the base64 checksum must not be included in the key data. Newer rpm
|
||
|
don't like that.
|
||
|
|
||
|
diff --git a/osc/checker.py b/osc/checker.py
|
||
|
index b4149d2..88eb7cc 100644
|
||
|
--- a/osc/checker.py
|
||
|
+++ b/osc/checker.py
|
||
|
@@ -61,16 +61,24 @@ class Checker:
|
||
|
|
||
|
key = ''
|
||
|
line = fd.readline()
|
||
|
+ crc = None
|
||
|
while line:
|
||
|
if line[0:12] == "-----END PGP":
|
||
|
break
|
||
|
line = line.rstrip()
|
||
|
- key += line
|
||
|
- line = fd.readline()
|
||
|
+ if (line[0] == '='):
|
||
|
+ crc = line[1:]
|
||
|
+ line = fd.readline()
|
||
|
+ break
|
||
|
+ else:
|
||
|
+ key += line
|
||
|
+ line = fd.readline()
|
||
|
fd.close()
|
||
|
if not line or line[0:12] != "-----END PGP":
|
||
|
raise KeyError(file, "not a pgp public key")
|
||
|
|
||
|
+ # TODO: compute and compare CRC, see RFC 2440
|
||
|
+
|
||
|
bkey = base64.b64decode(key)
|
||
|
|
||
|
r = self.ts.pgpImportPubkey(bkey)
|