Hi, It seems that packages from packman are signed with V4 RSA/SHA which result in wrong keyids while importing packages.
Example RPM: http://packman.links2linux.de/download/yad/1024510/yad-0.15.0-1.1.x86_64.rpm spacewalk/common/rhn_rpm.py _extract_signatures() find keyid: 05024ea4a264000a rpm -qpi ... say: warning: yad-0.15.0-1.1.x86_64.rpm: Header V4 RSA/SHA1 signature: NOKEY, key ID 1abd1afb [...] Signature : RSA/SHA1, Mo 24 Okt 2011 01:25:24 CEST, Key ID 45a1d0671abd1afb A patch is attached -- Regards Michael Calmer -------------------------------------------------------------------------- Michael Calmer SUSE LINUX Products GmbH, Maxfeldstr. 5, D-90409 Nuernberg T: +49 (0) 911 74053 0 F: +49 (0) 911 74053575 - e-mail: michael.cal...@suse.com -------------------------------------------------------------------------- SUSE LINUX Products GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer HRB 16746 (AG Nürnberg)
From c74ee56448aace7ed8be8ae2a00c8f27ed901622 Mon Sep 17 00:00:00 2001 From: Michael Calmer <m...@suse.de> Date: Wed, 26 Oct 2011 17:19:27 +0200 Subject: [PATCH] support V4 RSA signatures --- backend/common/rhn_rpm.py | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/backend/common/rhn_rpm.py b/backend/common/rhn_rpm.py index 42483f3..de11246 100644 --- a/backend/common/rhn_rpm.py +++ b/backend/common/rhn_rpm.py @@ -112,8 +112,10 @@ class RPM_Header: key_id = ret[9:17] elif ret_len <= 72: # V4 DSA signature key_id = ret[18:26] - else: # ret_len <= 536 # V3 RSA/SHA256 signature + elif ret_len <= 536: # V3 RSA/SHA256 signature key_id = ret[10:18] + else: # ret_len <= 543 # V4 RSA/SHA signature + key_id = ret[19:27] key_id_len = len(key_id) format = "%dB" % key_id_len -- 1.7.3.4
_______________________________________________ Spacewalk-devel mailing list Spacewalk-devel@redhat.com https://www.redhat.com/mailman/listinfo/spacewalk-devel