X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;ds=sidebyside;f=src%2Fssl.c;h=0c70427c05a68a99a818148de1bfb4c396ceed86;hb=4c431fe65269e9b1d452855b9df8cfe80683b691;hp=964d7eece5d1af2b982a8cd29e0bd2395f1324b3;hpb=4f5079fe2b925b52a21162267614f4f5ed8f5a6b;p=umurmur.git diff --git a/src/ssl.c b/src/ssl.c index 964d7ee..0c70427 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -1,5 +1,5 @@ -/* Copyright (C) 2009-2011, Martin Johansson - Copyright (C) 2005-2011, Thorvald Natvig +/* Copyright (C) 2009-2012, Martin Johansson + Copyright (C) 2005-2012, Thorvald Natvig All rights reserved. @@ -172,7 +172,6 @@ bool_t SSLi_getSHA1Hash(SSL_handle_t *ssl, uint8_t *hash) { x509_cert *cert = ssl->peer_cert; if (!ssl->peer_cert) { - /* XXX what to do? */ return false; } sha1(cert->raw.p, cert->raw.len, hash); @@ -615,7 +614,7 @@ bool_t SSLi_getSHA1Hash(SSL_handle_t *ssl, uint8_t *hash) int len; x509 = SSL_get_peer_certificate(ssl); - if (x509) { + if (!x509) { return false; } @@ -624,10 +623,11 @@ bool_t SSLi_getSHA1Hash(SSL_handle_t *ssl, uint8_t *hash) if (buf == NULL) { Log_fatal("malloc"); } + + p = buf; + i2d_X509(x509, &p); - i2d_X509(x509, &p); - - SHA1(p, len, hash); + SHA1(buf, len, hash); free(buf); return true; } @@ -687,17 +687,16 @@ static int verify_callback(int preverify_ok, X509_STORE_CTX *ctx) X509_STORE_CTX_set_error(ctx, err); } if (!preverify_ok) { - Log_warn("verify error:num=%d:%s:depth=%d:%s\n", err, + Log_warn("SSL: verify error:num=%d:%s:depth=%d:%s\n", err, X509_verify_cert_error_string(err), depth, buf); } /* * At this point, err contains the last verification error. We can use * it for something special */ - if (!preverify_ok && (err == X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT)) - { + if (!preverify_ok && (err == X509_V_ERR_UNABLE_TO_GET_ISSUER_CERT)) { X509_NAME_oneline(X509_get_issuer_name(ctx->current_cert), buf, 256); - Log_warn("issuer= %s", buf); + Log_warn("issuer= %s", buf); } return 1; }