Commit 02477eef by Gareth Armstrong

Fix issue 5621, rpm_key doesn't work for el5

parent ccb64e63
...@@ -131,7 +131,9 @@ class RpmKey: ...@@ -131,7 +131,9 @@ class RpmKey:
def normalize_keyid(self, keyid): def normalize_keyid(self, keyid):
"""Ensure a keyid doesn't have a leading 0x, has leading or trailing whitespace, and make sure is lowercase""" """Ensure a keyid doesn't have a leading 0x, has leading or trailing whitespace, and make sure is lowercase"""
ret = keyid.strip().lower() ret = keyid.strip().lower()
if ret.startswith(('0x', '0X')): if ret.startswith('0x'):
return ret[2:]
elif ret.startswith('0X'):
return ret[2:] return ret[2:]
else: else:
return ret return ret
...@@ -141,9 +143,9 @@ class RpmKey: ...@@ -141,9 +143,9 @@ class RpmKey:
stdout, stderr = self.execute_command([gpg, '--no-tty', '--batch', '--with-colons', '--fixed-list-mode', '--list-packets', keyfile]) stdout, stderr = self.execute_command([gpg, '--no-tty', '--batch', '--with-colons', '--fixed-list-mode', '--list-packets', keyfile])
for line in stdout.splitlines(): for line in stdout.splitlines():
line = line.strip() line = line.strip()
if line.startswith('keyid:'): if line.startswith(':signature packet:'):
# We want just the last 8 characters of the keyid # We want just the last 8 characters of the keyid
keyid = line.split(':')[1].strip()[8:] keyid = line.split()[-1].strip()[8:]
return keyid return keyid
self.json_fail(msg="Unexpected gpg output") self.json_fail(msg="Unexpected gpg output")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment