blob: a6bf07b87f6438e312e5779eb9833039fd9a0d6c (
plain)
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
.. _mozilla_projects_nss_reference_fc_finalize:
FC_Finalize
===========
`Name <#name>`__
~~~~~~~~~~~~~~~~
.. container::
FC_Finalize - indicate that an application is done with the PKCS #11 library.
`Syntax <#syntax>`__
~~~~~~~~~~~~~~~~~~~~
.. container::
.. code::
CK_RV FC_Finalize (CK_VOID_PTR pReserved);
`Parameters <#parameters>`__
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. container::
``FC_Finalize`` has one parameter:
``pReserved``
must be ``NULL``
`Description <#description>`__
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. container::
``FC_Finalize`` shuts down the :ref:`mozilla_projects_nss_reference_nss_cryptographic_module` in
the :ref:`mozilla_projects_nss_reference_nss_cryptographic_module_fips_mode_of_operation`. If the
library is not initialized, it does nothing.
The ``pReserved`` argument is not used and must be ``NULL``.
.. _return_value:
`Return value <#return_value>`__
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. container::
``FC_Finalize`` always returns ``CKR_OK``.
.. note::
``FC_Finalize`` should check the ``pReserved`` argument and return ``CKR_ARGUMENTS_BAD`` if
``pReserved`` is not ``NULL``.
``FC_Finalize`` should return ``CKR_CRYPTOKI_NOT_INITIALIZED`` if the library is not
initialized.
`Examples <#examples>`__
~~~~~~~~~~~~~~~~~~~~~~~~
.. container::
.. code::
#include <assert.h>
CK_FUNCTION_LIST_PTR pFunctionList;
CK_RV crv;
crv = FC_GetFunctionList(&pFunctionList);
assert(crv == CKR_OK);
...
/* invoke FC_Finalize as pFunctionList->C_Finalize */
crv = pFunctionList->C_Finalize(NULL);
.. _see_also:
`See also <#see_also>`__
~~~~~~~~~~~~~~~~~~~~~~~~
.. container::
- :ref:`mozilla_projects_nss_reference_fc_initialize`,
`NSC_Initialize </en-US/NSC_Initialize>`__, `NSC_Finalize </en-US/NSC_Finalize>`__
|