Blame doc/manual/p11-kit-proxy.xml
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
]>
|
|
Packit Service |
3749ba |
<chapter xml:id="sharing">
|
|
Packit Service |
3749ba |
<title>Proxy Module</title>
|
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
<para>When an application is aware of the fact that coordination
|
|
Packit Service |
3749ba |
is necessary between multiple consumers of a PKCS#11 module, and wants
|
|
Packit Service |
3749ba |
to load standard configured PKCS#11 modules, it can link to
|
|
Packit Service |
3749ba |
<literal>p11-kit</literal> and use the functions there to provide this
|
|
Packit Service |
3749ba |
functionality.</para>
|
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
<para>However most current consumers of PKCS#11 are ignorant of
|
|
Packit Service |
3749ba |
this problem, and do not link to p11-kit. In order to solve this
|
|
Packit Service |
3749ba |
multiple initialization problem for all applications,
|
|
Packit Service |
3749ba |
<literal>p11-kit</literal> provides a proxy compatibility
|
|
Packit Service |
3749ba |
module.</para>
|
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
<para>This proxy module acts like a normal PKCS#11 module, but
|
|
Packit Service |
3749ba |
internally loads a preconfigured set of PKCS#11 modules and
|
|
Packit Service |
3749ba |
manages their features as described earlier. Each slot in the configured modules
|
|
Packit Service |
3749ba |
is exposed as a slot of the <literal>p11-kit</literal> proxy module. The proxy
|
|
Packit Service |
3749ba |
module is then used as a normal PKCS#11 module would be. It can be loaded by
|
|
Packit Service |
3749ba |
crypto libraries like NSS and behaves as expected.</para>
|
|
Packit Service |
3749ba |
|
|
Packit Service |
3749ba |
<para>The <literal>C_GetFunctionList</literal> exported entry point of the
|
|
Packit Service |
3749ba |
proxy module returns a new managed PKCS#11 module each time it is called. These
|
|
Packit Service |
3749ba |
managed instances are released when the proxy module is unloaded.</para>
|
|
Packit Service |
3749ba |
</chapter>
|