kcapi_akcipher_stream_init_sgn — start an signing operation (stream)
int32_t kcapi_akcipher_stream_init_sgn ( | struct kcapi_handle * handle, |
struct iovec * iov, | |
uint32_t iovlen) ; |
handle
[in] cipher handle
iov
[in] scatter/gather list with data to be signed. 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 signed 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.
A stream signing operation is started with this call. Multiple
successive kcapi_akcipher_stream_update
function calls can be invoked to
send more plaintext data to be signed. 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 signed data. Once
plaintext is signed 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