tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

index.rst (1881B)


      1 .. _mozilla_projects_nss_reference_fc_finalize:
      2 
      3 FC_Finalize
      4 ===========
      5 
      6 `Name <#name>`__
      7 ~~~~~~~~~~~~~~~~
      8 
      9 .. container::
     10 
     11   FC_Finalize - indicate that an application is done with the PKCS #11 library.
     12 
     13 `Syntax <#syntax>`__
     14 ~~~~~~~~~~~~~~~~~~~~
     15 
     16 .. container::
     17 
     18   .. code::
     19 
     20      CK_RV FC_Finalize (CK_VOID_PTR pReserved);
     21 
     22 `Parameters <#parameters>`__
     23 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     24 
     25 .. container::
     26 
     27   ``FC_Finalize`` has one parameter:
     28 
     29   ``pReserved``
     30      must be ``NULL``
     31 
     32 `Description <#description>`__
     33 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     34 
     35 .. container::
     36 
     37   ``FC_Finalize`` shuts down the :ref:`mozilla_projects_nss_reference_nss_cryptographic_module` in
     38   the :ref:`mozilla_projects_nss_reference_nss_cryptographic_module_fips_mode_of_operation`. If the
     39   library is not initialized, it does nothing.
     40 
     41   The ``pReserved`` argument is not used and must be ``NULL``.
     42 
     43 .. _return_value:
     44 
     45 `Return value <#return_value>`__
     46 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     47 
     48 .. container::
     49 
     50   ``FC_Finalize`` always returns ``CKR_OK``.
     51 
     52   .. note::
     53 
     54      ``FC_Finalize`` should check the ``pReserved`` argument and return ``CKR_ARGUMENTS_BAD`` if
     55      ``pReserved`` is not ``NULL``.
     56 
     57      ``FC_Finalize`` should return ``CKR_CRYPTOKI_NOT_INITIALIZED`` if the library is not
     58      initialized.
     59 
     60 `Examples <#examples>`__
     61 ~~~~~~~~~~~~~~~~~~~~~~~~
     62 
     63 .. container::
     64 
     65   .. code::
     66 
     67      #include <assert.h>
     68 
     69      CK_FUNCTION_LIST_PTR pFunctionList;
     70      CK_RV crv;
     71 
     72      crv = FC_GetFunctionList(&pFunctionList);
     73      assert(crv == CKR_OK);
     74 
     75      ...
     76 
     77      /* invoke FC_Finalize as pFunctionList->C_Finalize */
     78      crv = pFunctionList->C_Finalize(NULL);
     79 
     80 .. _see_also:
     81 
     82 `See also <#see_also>`__
     83 ~~~~~~~~~~~~~~~~~~~~~~~~
     84 
     85 .. container::
     86 
     87   -  :ref:`mozilla_projects_nss_reference_fc_initialize`,
     88      `NSC_Initialize </en-US/NSC_Initialize>`__, `NSC_Finalize </en-US/NSC_Finalize>`__