---------- Forwarded message ---------- Date: Sun, 13 Sep 2009 11:29:27 +0200 (CEST) From: Julia Lawall <ju...@diku.dk> Reply-To: openssl-dev@openssl.org To: openssl-dev@openssl.org, Rene Rydhof Hansen <r...@cs.aau.dk>, Gilles Muller - lip6 <gilles.mul...@lip6.fr>, z...@google.com Subject: [PATCH] use of CMS_get1_ReceiptRequest
The function CMS_get1_ReceiptRequest can explicitly return 0 or -1 in the case of error. Therefore, the error checking code should check whether the result is less than or equal to 0, and not just whether it is equal to zero. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // <smpl> @expression@ expression list args; @@ - CMS_get1_ReceiptRequest(args) == 0 + CMS_get1_ReceiptRequest(args) <= 0 || ... @expression@ expression list args; @@ - CMS_get1_ReceiptRequest(args) != 0 + CMS_get1_ReceiptRequest(args) > 0 || ... // </smpl> --- diff -u -p a/crypto/cms/cms_ess.c b/crypto/cms/cms_ess.c --- a/crypto/cms/cms_ess.c 2008-04-01 18:29:42.000000000 +0200 +++ b/crypto/cms/cms_ess.c 2009-09-12 11:25:38.000000000 +0200 @@ -344,7 +344,7 @@ int cms_Receipt_verify(CMS_ContentInfo * /* Get original receipt request details */ - if (!CMS_get1_ReceiptRequest(osi, &rr)) + if (CMS_get1_ReceiptRequest(osi, &rr) <= 0) { CMSerr(CMS_F_CMS_RECEIPT_VERIFY, CMS_R_NO_RECEIPT_REQUEST); goto err; @@ -385,7 +385,7 @@ ASN1_OCTET_STRING *cms_encode_Receipt(CM /* Get original receipt request details */ - if (!CMS_get1_ReceiptRequest(si, &rr)) + if (CMS_get1_ReceiptRequest(si, &rr) <= 0) { CMSerr(CMS_F_CMS_ENCODE_RECEIPT, CMS_R_NO_RECEIPT_REQUEST); goto err; ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager majord...@openssl.org