kcapi_akcipher_stream_init_dec - Man Page

start an decryption operation (stream)

Synopsis

ssize_t kcapi_akcipher_stream_init_dec(struct kcapi_handle * handle, struct iovec * iov, size_t iovlen);

Arguments

handle

[in] cipher handle

iov

[in] scatter/gather list with data to be decrypted. This is the pointer to the first iov entry if an array of iov entries is supplied. See sendmsg(2) for details on how iov is to be used. This pointer may be NULL if no data to be decrypted is available at the point of the call.

iovlen

[in] number of scatter/gather list elements. If iov is NULL, this value must be zero.

Description

A stream decryption operation is started with this call. Multiple successive kcapi_akcipher_stream_update function calls can be invoked to send more plaintext data to be decrypted. The last invocation to supply data must be done with kcapi_akcipher_stream_update_last. The kernel buffers the input until kcapi_akcipher_stream_op picks up the encrypted data. Once plaintext is decrypted during the kcapi_cipher_stream_op it is removed from the kernel buffer.

The function calls of kcapi_akcipher_stream_update and kcapi_akcipher_stream_op can be mixed, even by multiple threads of an application.

return number of bytes sent to the kernel upon success; a negative errno-style error code if an error occurred

Author

Stephan Mueller <smueller@chronox.de>

Author.

Info

January 2024 libkcapi Manual 1.4.0 Programming Interface