summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Laurie <ben@openssl.org>2007-04-05 16:28:48 +0000
committerBen Laurie <ben@openssl.org>2007-04-05 16:28:48 +0000
commitfa9fed1c3ad00878312a0c77053a83f915ef68ef (patch)
treecd139d5fa94375a1d031c044b0ec990595347632
parentf6301f6888096a65919e07a3f9b37c2b672517c4 (diff)
Don't use a negative number as a length. Coverity ID 57.
-rw-r--r--ssl/s2_clnt.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/ssl/s2_clnt.c b/ssl/s2_clnt.c
index d9750d0935..6d8883fbbd 100644
--- a/ssl/s2_clnt.c
+++ b/ssl/s2_clnt.c
@@ -863,8 +863,10 @@ static int client_certificate(SSL *s)
EVP_SignUpdate(&ctx,s->s2->key_material,
s->s2->key_material_length);
EVP_SignUpdate(&ctx,cert_ch,(unsigned int)cert_ch_len);
- n=i2d_X509(s->session->sess_cert->peer_key->x509,&p);
- EVP_SignUpdate(&ctx,buf,(unsigned int)n);
+ i=i2d_X509(s->session->sess_cert->peer_key->x509,&p);
+ /* Don't update the signature if it fails - FIXME: probably should handle this better */
+ if(i > 0)
+ EVP_SignUpdate(&ctx,buf,(unsigned int)i);
p=buf;
d=p+6;