+
+ for(i = 0; i < sk_X509_num(certs); i++) {
+ ucert = sk_X509_value(certs, i);
+ if(X509_check_private_key(ucert, key)) {
+ X509_digest(cert, EVP_sha1(), keyid, &keyidlen);
+ break;
+ }
+ }
+
+ if(!keyidlen) {
+ BIO_printf(bio_err, "No certificate matches private key\n");
+ goto end;
+ }