diff options
| author | Jan Chadima <jchadima@redhat.com> | 2010-08-02 10:56:34 +0200 |
|---|---|---|
| committer | Miloslav Trmač <mitr@redhat.com> | 2010-08-24 20:58:30 +0200 |
| commit | 71be5465628262f1a475b52eaf90c5caba5876ea (patch) | |
| tree | fff8c000bb3480741e5dc34d66196ddbc11ad6f2 /userspace/ncrypto_masterkey.c | |
| parent | af2c2e1da1a898c8968281824ba8a4d9616670dc (diff) | |
Initial userspace library version
Diffstat (limited to 'userspace/ncrypto_masterkey.c')
| -rw-r--r-- | userspace/ncrypto_masterkey.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/userspace/ncrypto_masterkey.c b/userspace/ncrypto_masterkey.c new file mode 100644 index 0000000..a5c55c3 --- /dev/null +++ b/userspace/ncrypto_masterkey.c @@ -0,0 +1,35 @@ + +#include <sys/types.h> +#include <sys/ioctl.h> +#include <string.h> +#include <errno.h> +#include "../ncr.h" +#include "ncrypto.h" + +extern int __ncr_file_descriptor; + +int +ncr_masterkey_set(void *key, size_t key_size) +{ + struct ncr_master_key_st io; + memset(&io, 0, sizeof(io)); + + if (!key || !key_size) { + errno = EINVAL; + return -1; + } + + io.key = key = key; + io.key_size = key_size; + + if (__ncr_file_descriptor < 0) { + errno = EBADF; + return -1; + } + + if (ioctl(__ncr_file_descriptor, NCRIO_MASTER_KEY_SET, &io) < 0) + return -1; + + return 0; +} + |
