Loading lib/ssluse.c +6 −0 Original line number Original line Diff line number Diff line Loading @@ -466,6 +466,7 @@ int cert_stuff(struct connectdata *conn, failf(data, SSL_CLIENT_CERT_ERR); failf(data, SSL_CLIENT_CERT_ERR); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } Loading @@ -474,6 +475,7 @@ int cert_stuff(struct connectdata *conn, cert_file); cert_file); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } Loading @@ -482,6 +484,7 @@ int cert_stuff(struct connectdata *conn, "does not match certificate in same file", cert_file); "does not match certificate in same file", cert_file); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } /* Set Certificate Verification chain */ /* Set Certificate Verification chain */ Loading @@ -491,12 +494,14 @@ int cert_stuff(struct connectdata *conn, failf(data, "cannot add certificate to certificate chain"); failf(data, "cannot add certificate to certificate chain"); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } if(!SSL_CTX_add_client_CA(ctx, sk_X509_value(ca, i))) { if(!SSL_CTX_add_client_CA(ctx, sk_X509_value(ca, i))) { failf(data, "cannot add certificate to client CA list"); failf(data, "cannot add certificate to client CA list"); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } } } Loading @@ -504,6 +509,7 @@ int cert_stuff(struct connectdata *conn, EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); cert_done = 1; cert_done = 1; break; break; #else #else Loading Loading
lib/ssluse.c +6 −0 Original line number Original line Diff line number Diff line Loading @@ -466,6 +466,7 @@ int cert_stuff(struct connectdata *conn, failf(data, SSL_CLIENT_CERT_ERR); failf(data, SSL_CLIENT_CERT_ERR); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } Loading @@ -474,6 +475,7 @@ int cert_stuff(struct connectdata *conn, cert_file); cert_file); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } Loading @@ -482,6 +484,7 @@ int cert_stuff(struct connectdata *conn, "does not match certificate in same file", cert_file); "does not match certificate in same file", cert_file); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } /* Set Certificate Verification chain */ /* Set Certificate Verification chain */ Loading @@ -491,12 +494,14 @@ int cert_stuff(struct connectdata *conn, failf(data, "cannot add certificate to certificate chain"); failf(data, "cannot add certificate to certificate chain"); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } if(!SSL_CTX_add_client_CA(ctx, sk_X509_value(ca, i))) { if(!SSL_CTX_add_client_CA(ctx, sk_X509_value(ca, i))) { failf(data, "cannot add certificate to client CA list"); failf(data, "cannot add certificate to client CA list"); EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); return 0; return 0; } } } } Loading @@ -504,6 +509,7 @@ int cert_stuff(struct connectdata *conn, EVP_PKEY_free(pri); EVP_PKEY_free(pri); X509_free(x509); X509_free(x509); sk_X509_pop_free(ca, X509_free); cert_done = 1; cert_done = 1; break; break; #else #else Loading