This file is indexed.

/usr/share/doc/libkcapi/html/API-kcapi-aead-stream-init-enc.html is in libkcapi-doc 1.0.3-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>kcapi_aead_stream_init_enc</title><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="Linux Kernel Crypto API User Space Interface Library"><link rel="up" href="ch03s10.html" title="Synchronous AEAD Cipher API - Stream"><link rel="prev" href="ch03s10.html" title="Synchronous AEAD Cipher API - Stream"><link rel="next" href="API-kcapi-aead-stream-init-dec.html" title="kcapi_aead_stream_init_dec"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">kcapi_aead_stream_init_enc</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s10.html">Prev</a> </td><th width="60%" align="center">Synchronous AEAD Cipher API - Stream</th><td width="20%" align="right"> <a accesskey="n" href="API-kcapi-aead-stream-init-dec.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-kcapi-aead-stream-init-enc"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>kcapi_aead_stream_init_enc — 
  start an encryption operation (stream)
 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">int32_t <b class="fsfunc">kcapi_aead_stream_init_enc </b>(</code></td><td>struct kcapi_handle * <var class="pdparam">handle</var>, </td></tr><tr><td> </td><td>const uint8_t * <var class="pdparam">iv</var>, </td></tr><tr><td> </td><td>struct iovec * <var class="pdparam">iov</var>, </td></tr><tr><td> </td><td>uint32_t <var class="pdparam">iovlen</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idm2617"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>handle</code></em></span></dt><dd><p>
     [in] cipher handle
    </p></dd><dt><span class="term"><em class="parameter"><code>iv</code></em></span></dt><dd><p>
     [in] IV to be used for cipher operation
    </p></dd><dt><span class="term"><em class="parameter"><code>iov</code></em></span></dt><dd><p>
     [in] scatter/gather list with data to be encrypted. 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 encrypted is available at the point of the call.
    </p></dd><dt><span class="term"><em class="parameter"><code>iovlen</code></em></span></dt><dd><p>
     [in] number of scatter/gather list elements. If iov is NULL,
     this value must be zero.
    </p></dd></dl></div></div><div class="refsect1"><a name="idm2640"></a><h2>Description</h2><p>
   A stream encryption operation is started with this call. Multiple
   successive <code class="function">kcapi_aead_stream_update</code> function calls can be invoked to
   send more plaintext data to be encrypted. The kernel buffers the input
   until <code class="function">kcapi_aead_stream_op</code> picks up the encrypted data. Once plaintext
   is encrypted during the <code class="function">kcapi_aead_stream_op</code> it is removed from the
   kernel buffer.
   </p><p>

   Note, unlike the corresponding symmetric cipher API, the function calls of
   <code class="function">kcapi_aead_stream_update</code> and <code class="function">kcapi_aead_stream_op</code> cannot be mixed! This
   due to the nature of AEAD where the cipher operation ensures the integrity
   of the entire data (decryption) or calculates a message digest over the
   entire data (encryption).
   </p><p>

   When using the stream API, the caller must ensure that data is sent
   in the correct order (regardless whether data is sent in multiple chunks
   using <code class="function">kcapi_aead_stream_init_enc</code> or <code class="function">kcapi_cipher_stream_update</code>): (i)
   the complete associated data must be provided, followed by (ii) the
   plaintext.
   </p><p>

   The IV buffer must be exactly <code class="function">kcapi_cipher_ivsize</code> bytes in size.
   </p><p>

   <em class="parameter"><code>return</code></em> number of bytes sent to the kernel upon success;
   a negative errno-style error code if an error occurred
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s10.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03s10.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-kcapi-aead-stream-init-dec.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Synchronous AEAD Cipher API - Stream </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">kcapi_aead_stream_init_dec</span></td></tr></table></div></body></html>