diff options
Diffstat (limited to 'keyutils.c')
-rw-r--r-- | keyutils.c | 16 |
1 files changed, 10 insertions, 6 deletions
@@ -264,20 +264,21 @@ long keyctl_restrict_keyring(key_serial_t keyring, const char *type, return keyctl(KEYCTL_RESTRICT_KEYRING, keyring, type, restriction); } -long keyctl_pkey_query(key_serial_t key_id, +long keyctl_pkey_query(key_serial_t key_id, key_serial_t password_id, const char *info, struct keyctl_pkey_query *result) { - return keyctl(KEYCTL_PKEY_QUERY, key_id, 0, info, result); + return keyctl(KEYCTL_PKEY_QUERY, key_id, password_id, info, result); } -long keyctl_pkey_encrypt(key_serial_t key_id, +long keyctl_pkey_encrypt(key_serial_t key_id, key_serial_t password_id, const char *info, const void *data, size_t data_len, void *enc, size_t enc_len) { struct keyctl_pkey_params params = { .key_id = key_id, + .password_id = password_id, .in_len = data_len, .out_len = enc_len, }; @@ -285,13 +286,14 @@ long keyctl_pkey_encrypt(key_serial_t key_id, return keyctl(KEYCTL_PKEY_ENCRYPT, ¶ms, info, data, enc); } -long keyctl_pkey_decrypt(key_serial_t key_id, +long keyctl_pkey_decrypt(key_serial_t key_id, key_serial_t password_id, const char *info, const void *enc, size_t enc_len, void *data, size_t data_len) { struct keyctl_pkey_params params = { .key_id = key_id, + .password_id = password_id, .in_len = enc_len, .out_len = data_len, }; @@ -299,13 +301,14 @@ long keyctl_pkey_decrypt(key_serial_t key_id, return keyctl(KEYCTL_PKEY_DECRYPT, ¶ms, info, enc, data); } -long keyctl_pkey_sign(key_serial_t key_id, +long keyctl_pkey_sign(key_serial_t key_id, key_serial_t password_id, const char *info, const void *data, size_t data_len, void *sig, size_t sig_len) { struct keyctl_pkey_params params = { .key_id = key_id, + .password_id = password_id, .in_len = data_len, .out_len = sig_len, }; @@ -313,13 +316,14 @@ long keyctl_pkey_sign(key_serial_t key_id, return keyctl(KEYCTL_PKEY_SIGN, ¶ms, info, data, sig); } -long keyctl_pkey_verify(key_serial_t key_id, +long keyctl_pkey_verify(key_serial_t key_id, key_serial_t password_id, const char *info, const void *data, size_t data_len, const void *sig, size_t sig_len) { struct keyctl_pkey_params params = { .key_id = key_id, + .password_id = password_id, .in_len = data_len, .in2_len = sig_len, }; |