Adrian Schröter
594d66d2d3
- Add osc-pubkey-parsing.patch, fix PGP pubkey parsing: base64 checksum shouldn't be in the key data, upstream commit f707e9a22e185098bbea923b7ff8971f19a87991 OBS-URL: https://build.opensuse.org/request/show/79034 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Tools/osc?expand=0&rev=96
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)
|