Add context id getter to TKM nonce generator

This commit is contained in:
Adrian-Ken Rueegsegger
2013-03-19 15:23:46 +01:00
committed by Tobias Brunner
parent ebe592a393
commit 601de9f36f
3 changed files with 17 additions and 0 deletions
+7
View File
@@ -65,6 +65,12 @@ METHOD(nonce_gen_t, destroy, void,
free(this); free(this);
} }
METHOD(tkm_nonceg_t, get_id, nc_id_type,
private_tkm_nonceg_t *this)
{
return this->context_id;
}
/* /*
* Described in header. * Described in header.
*/ */
@@ -79,6 +85,7 @@ tkm_nonceg_t *tkm_nonceg_create()
.allocate_nonce = _allocate_nonce, .allocate_nonce = _allocate_nonce,
.destroy = _destroy, .destroy = _destroy,
}, },
.get_id = _get_id,
}, },
.context_id = tkm->idmgr->acquire_id(tkm->idmgr, TKM_CTX_NONCE), .context_id = tkm->idmgr->acquire_id(tkm->idmgr, TKM_CTX_NONCE),
); );
+9
View File
@@ -20,6 +20,7 @@
typedef struct tkm_nonceg_t tkm_nonceg_t; typedef struct tkm_nonceg_t tkm_nonceg_t;
#include <library.h> #include <library.h>
#include <tkm/types.h>
/** /**
* nonce_gen_t implementation using the trusted key manager. * nonce_gen_t implementation using the trusted key manager.
@@ -30,6 +31,14 @@ struct tkm_nonceg_t {
* Implements nonce_gen_t. * Implements nonce_gen_t.
*/ */
nonce_gen_t nonce_gen; nonce_gen_t nonce_gen;
/**
* Get nonce context id.
*
* @return context id of this nonce generator.
*/
nc_id_type (*get_id)(tkm_nonceg_t * const this);
}; };
/** /**
+1
View File
@@ -26,6 +26,7 @@ START_TEST(test_nonceg_creation)
ng = tkm_nonceg_create(); ng = tkm_nonceg_create();
fail_if(ng == NULL, "Error creating tkm nonce generator"); fail_if(ng == NULL, "Error creating tkm nonce generator");
fail_if(ng->get_id(ng) == 0, "Invalid context id (0)");
ng->nonce_gen.destroy(&ng->nonce_gen); ng->nonce_gen.destroy(&ng->nonce_gen);
} }