unsigned char sha1_buffer[MAX_HASH_SIZE];
size_t sha1_size;
- print_obj_id(str, "\t", cert, (get_id_func*)gnutls_x509_crt_get_key_id);
-
err = gnutls_x509_crt_get_pk_algorithm(cert, &bits);
if (err < 0)
return;
+ print_obj_id(str, "\t", cert, (get_id_func*)gnutls_x509_crt_get_key_id);
+
if (err == GNUTLS_PK_EC) {
gnutls_ecc_curve_t curve;
err = gnutls_x509_crt_get_key_id(cert, GNUTLS_KEYID_USE_SHA256,
buffer, &size);
- if (err < 0) {
- addf(str, "key PIN error (%s)",
- gnutls_strerror(err));
- } else {
+ if (err >= 0) {
addf(str, "pin-sha256=\"");
_gnutls_buffer_base64print(str, buffer, size);
adds(str, "\"");
static void print_crq_other(gnutls_buffer_st * str, gnutls_x509_crq_t crq)
{
+ int ret;
+
+ /* on unknown public key algorithms don't print the key ID */
+ ret = gnutls_x509_crq_get_pk_algorithm(crq, NULL);
+ if (ret < 0)
+ return;
+
print_obj_id(str, "\t", crq, (get_id_func*)gnutls_x509_crq_get_key_id);
}
print_key_usage2(str, "\t", pubkey->key_usage);
}
+ /* on unknown public key algorithms don't print the key ID */
+ ret = gnutls_pubkey_get_pk_algorithm(pubkey, NULL);
+ if (ret < 0)
+ return;
+
print_obj_id(str, "", pubkey, (get_id_func*)gnutls_pubkey_get_key_id);
}