diff options
author | Panu Matilainen <pmatilai@redhat.com> | 2010-09-28 14:55:29 +0300 |
---|---|---|
committer | Panu Matilainen <pmatilai@redhat.com> | 2010-09-28 14:55:29 +0300 |
commit | e29313061313a9e29d38a005f1b5f5bdc47ccd84 (patch) | |
tree | 033fa5c81656b118ceb37716e5b6156a8d73350f /lib/signature.c | |
parent | 131d082aab5bac6ca07fe513df00314261248bae (diff) | |
download | rpm-e29313061313a9e29d38a005f1b5f5bdc47ccd84.tar.gz rpm-e29313061313a9e29d38a005f1b5f5bdc47ccd84.tar.bz2 rpm-e29313061313a9e29d38a005f1b5f5bdc47ccd84.zip |
Decide header sigtag based on what was actually written
- makeGPGSignature() figures the signature type by parsing the
created signature, use that instead of the rather bogus tag
based on %_signature macro value passed from the cli level.
Diffstat (limited to 'lib/signature.c')
-rw-r--r-- | lib/signature.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/signature.c b/lib/signature.c index e025dcfa2..dd7b5084a 100644 --- a/lib/signature.c +++ b/lib/signature.c @@ -576,12 +576,12 @@ int rpmAddSignature(Header sigh, const char * file, rpmSigTag sigTag, case RPMSIGTAG_PGP5: /* XXX legacy */ case RPMSIGTAG_PGP: case RPMSIGTAG_GPG: { - rpmSigTag hdrtag = (sigTag == RPMSIGTAG_GPG) ? - RPMSIGTAG_DSA : RPMSIGTAG_RSA; + rpmSigTag hdrtag; if (makeGPGSignature(file, &sigTag, &pkt, &pktlen, passPhrase) || !sighdrPut(sigh, sigTag, RPM_BIN_TYPE, pkt, pktlen)) break; /* XXX Piggyback a header-only DSA/RSA signature as well. */ + hdrtag = (sigTag == RPMSIGTAG_GPG) ? RPMSIGTAG_DSA : RPMSIGTAG_RSA; ret = makeHDRSignature(sigh, file, hdrtag, passPhrase); } break; case RPMSIGTAG_RSA: |