diff options
author | Reto Buerki <reet@codelabs.ch> | 2012-06-12 11:05:14 +0200 |
---|---|---|
committer | Tobias Brunner <tobias@strongswan.org> | 2013-03-19 15:23:45 +0100 |
commit | 8e95bf455dda5fd528065167617a33a8251ee35f (patch) | |
tree | ca8efb925203d82df19258d65864642411f0e383 /src | |
parent | 3d2746309e24f232e24687287d9e63d0dde1cadf (diff) | |
download | strongswan-8e95bf455dda5fd528065167617a33a8251ee35f.tar.bz2 strongswan-8e95bf455dda5fd528065167617a33a8251ee35f.tar.xz |
tkm_nonceg: Return nonce generated by TKM
Diffstat (limited to 'src')
-rw-r--r-- | src/charon-tkm/src/tkm/tkm_nonceg.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/charon-tkm/src/tkm/tkm_nonceg.c b/src/charon-tkm/src/tkm/tkm_nonceg.c index 1a83a5b16..9ac32a7c7 100644 --- a/src/charon-tkm/src/tkm/tkm_nonceg.c +++ b/src/charon-tkm/src/tkm/tkm_nonceg.c @@ -16,6 +16,9 @@ #include "tkm_nonceg.h" +#include <tkm/client.h> +#include <tkm/constants.h> + typedef struct private_tkm_nonceg_t private_tkm_nonceg_t; /** @@ -33,7 +36,16 @@ struct private_tkm_nonceg_t { METHOD(nonce_gen_t, get_nonce, bool, private_tkm_nonceg_t *this, size_t size, u_int8_t *buffer) { - // TODO: Request nonce from TKM and fill it into buffer. + nonce_type nonce; + + /* request nonce from TKM, the context is not yet used */ + const result_type result = ike_nc_create(1, size, &nonce); + if (result != TKM_OK) + { + return FALSE; + } + + memcpy(buffer, &nonce.data, size); return TRUE; } |