summaryrefslogtreecommitdiff
path: root/rpmio
diff options
context:
space:
mode:
authorPanu Matilainen <pmatilai@redhat.com>2012-12-04 14:06:42 +0200
committerPanu Matilainen <pmatilai@redhat.com>2012-12-04 14:15:04 +0200
commite364512a4ca9dd9018806544674719cfb95717ba (patch)
tree3f86f602e25b28dae8c4603d75efdcd1011e3298 /rpmio
parent7593041aa50ecfb5bec7cf1e09fc3534cd8f2178 (diff)
downloadrpm-e364512a4ca9dd9018806544674719cfb95717ba.tar.gz
rpm-e364512a4ca9dd9018806544674719cfb95717ba.tar.bz2
rpm-e364512a4ca9dd9018806544674719cfb95717ba.zip
Handle allocation failure in NSS DSA signature initialization
(cherry picked from commit 2d39f13064f6e6ff1a1633b708e7ba5622a7e8eb)
Diffstat (limited to 'rpmio')
-rw-r--r--rpmio/digest_nss.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/rpmio/digest_nss.c b/rpmio/digest_nss.c
index c4ce7d09d..8a948219d 100644
--- a/rpmio/digest_nss.c
+++ b/rpmio/digest_nss.c
@@ -322,8 +322,10 @@ static int pgpSetSigMpiDSA(pgpDigAlg pgpsig, int num,
switch (num) {
case 0:
sig = pgpsig->data = SECITEM_AllocItem(NULL, NULL, DSA1_SIGNATURE_LEN);
- memset(sig->data, 0, DSA1_SIGNATURE_LEN);
- rc = pgpMpiSet(lbits, sig->data, p, pend);
+ if (sig) {
+ memset(sig->data, 0, DSA1_SIGNATURE_LEN);
+ rc = pgpMpiSet(lbits, sig->data, p, pend);
+ }
break;
case 1:
if (sig && pgpMpiSet(lbits, sig->data+DSA1_SUBPRIME_LEN, p, pend) == 0) {