diff options
| author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2010-06-14 16:08:16 +0200 |
|---|---|---|
| committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2010-06-17 20:48:18 +0200 |
| commit | e9f738aa05a2dbf94fdf05de01d06d2ebf62529d (patch) | |
| tree | b07b75913153014c0019ed78cfdd3e7e2ccc5596 /ncr.c | |
| parent | 0b2ab77de147d60ca44de978a36e90e1138a5551 (diff) | |
| download | cryptodev-linux-e9f738aa05a2dbf94fdf05de01d06d2ebf62529d.tar.gz cryptodev-linux-e9f738aa05a2dbf94fdf05de01d06d2ebf62529d.tar.xz cryptodev-linux-e9f738aa05a2dbf94fdf05de01d06d2ebf62529d.zip | |
Added initial wrapping and unwrapping key API. Adds an implementation of the AES-WRAP (untested yet).
Diffstat (limited to 'ncr.c')
| -rw-r--r-- | ncr.c | 8 |
1 files changed, 8 insertions, 0 deletions
@@ -48,6 +48,9 @@ void* ncr_init_lists(void) init_MUTEX(&lst->key.sem); INIT_LIST_HEAD(&lst->key.list); + init_MUTEX(&lst->sessions.sem); + INIT_LIST_HEAD(&lst->sessions.list); + return lst; } @@ -56,6 +59,7 @@ void ncr_deinit_lists(struct ncr_lists *lst) if(lst) { ncr_data_list_deinit(&lst->data); ncr_key_list_deinit(&lst->key); + ncr_sessions_list_deinit(&lst->sessions); kfree(lst); } } @@ -90,6 +94,10 @@ ncr_ioctl(struct ncr_lists* lst, struct file *filp, return ncr_key_import(&lst->data, &lst->key, (void*)arg); case NCRIO_KEY_GET_INFO: return ncr_key_info(&lst->key, (void*)arg); + case NCRIO_KEY_WRAP: + return ncr_key_wrap(&lst->key, &lst->data, &lst->sessions, (void*)arg); + case NCRIO_KEY_UNWRAP: + return ncr_key_unwrap(&lst->key, &lst->data, &lst->sessions, (void*)arg); #if 0 case NCRIO_KEY_GENERATE_PAIR: return ncr_key_generate_pair(&lst->key, (void*)arg); |
