/usr/share/doc/libkcapi/html/ch02s09.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 45 46 47 48 49 50 51 52 53 | <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Kernel Interfaces</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="Usage.html" title="Chapter 2. Programming Guidelines"><link rel="prev" href="ch02s08.html" title="Memory Allocation"><link rel="next" href="ch02s10.html" title="Example Code"></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">Kernel Interfaces</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s08.html">Prev</a> </td><th width="60%" align="center">Chapter 2. Programming Guidelines</th><td width="20%" align="right"> <a accesskey="n" href="ch02s10.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idm138"></a>Kernel Interfaces</h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="sect2"><a href="ch02s09.html#idm152">Kernel Configuration</a></span></dt></dl></div><p>
Depending on the version of your kernel, some of the kernel interfaces
the library depends on are not available. When using the respective library
API functions, an error is returned during initialization of the cipher
handle. The following interfaces are available:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>kcapi_md_* usable since kernel version 3.0</p></li><li class="listitem"><p>kcapi_cipher_* usable since kernel version 3.0</p></li><li class="listitem"><p>
kcapi_rng_* kernel interface integrated into kernel version 4.0
</p></li><li class="listitem"><p>
kcapi_aead_* kernel interface added to cryptodev-2.6 tree and should be
usable with kernel version 4.2.
</p></li><li class="listitem"><p>
kcapi_akcipher_* kernel interface is discussed for inclusion to the
cryptodev-2.6 kernel tree.
</p></li></ul></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idm152"></a>Kernel Configuration</h3></div></div></div><p>
To use libkcapi, the following kernel options need to be enabled:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
CONFIG_CRYPTO_USER enables the NETLINK_CRYPTO interface to allow
obtaining information about the loaded ciphers. When compiled as module
in older kernels (pre 3.18) the resulting crypto_user kernel module must
be loaded manually.
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API enables the core functionality of the user space
interface handler.
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API_HASH enables the "hash" interface (i.e. allows
the use of all message digest and keyed message digest ciphers).
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API_SKCIPHER enables the "skcipher" interface
to use symmetric cipher algorithms.
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API_AEAD enables the "aead" interface to use AEAD
cipher algorithms. This support is currently discussed on LKML and
therefore not present in the mainline kernel.
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API_RNG enables the "rng" interface to use the
random number generators.
</p></li><li class="listitem"><p>
CONFIG_CRYPTO_USER_API_AKCIPHER enables the "akcipher" interface to use
the asymmetric ciphers. This support is currently discussed on LKML
and therefore not present in the mainline kernel.
</p></li></ul></div><p>
In addition, the following patch must be applied if a kernel less than
3.19-rc1 or the cryptodev-2.6 kernel tree is used:
https://git.kernel.org/cgit/linux/kernel/git/herbert/cryptodev-2.6.git/commit/?id=5d4a5e770d97d87082067886e7097c920b338da5
</p><p>
In addition, the following patch must be applied if a kernel less than
3.19-rc1 or the cryptodev-2.6 kernel tree is used:
https://git.kernel.org/cgit/linux/kernel/git/herbert/cryptodev-2.6.git/commit/?id=af8e80731a94ff9de9508b01d9e5d931d538dc6b
</p><p>
In addition, the following patch must be applied if a kernel less than
3.19-rc1 or the cryptodev-2.6 kernel tree is used:
https://git.kernel.org/cgit/linux/kernel/git/herbert/cryptodev-2.6.git/commit/?id=25fb8638e919bc7431a73f2fb4a9713818ae2c9d
</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s08.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="Usage.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s10.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Memory Allocation </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Example Code</td></tr></table></div></body></html>
|