summaryrefslogtreecommitdiff
path: root/tests/tls-neg-ext4-key.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/tls-neg-ext4-key.c')
-rw-r--r--tests/tls-neg-ext4-key.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/tls-neg-ext4-key.c b/tests/tls-neg-ext4-key.c
index b916294d3e..04365c598d 100644
--- a/tests/tls-neg-ext4-key.c
+++ b/tests/tls-neg-ext4-key.c
@@ -73,6 +73,7 @@ struct key_cb_data {
gnutls_privkey_t rkey; /* the real thing */
unsigned pk;
unsigned sig;
+ unsigned bits;
};
static int key_cb_info_func(gnutls_privkey_t key, unsigned int flags, void *userdata)
@@ -81,6 +82,8 @@ static int key_cb_info_func(gnutls_privkey_t key, unsigned int flags, void *user
if (flags & GNUTLS_PRIVKEY_INFO_PK_ALGO)
return p->pk;
+ else if (flags & GNUTLS_PRIVKEY_INFO_PK_ALGO_BITS)
+ return p->bits;
else if (flags & GNUTLS_PRIVKEY_INFO_HAVE_SIGN_ALGO) {
unsigned sig = GNUTLS_FLAGS_TO_SIGN_ALGO(flags);
@@ -159,6 +162,8 @@ static gnutls_privkey_t load_virt_privkey(const char *name, const gnutls_datum_t
if (ret < 0)
testfail("gnutls_privkey_import\n");
+ gnutls_privkey_get_pk_algorithm(userdata->rkey, &userdata->bits);
+
userdata->pk = pk;
userdata->sig = sig;