Source code

Revision control

Copy as Markdown

Other Tools

(mozilla-projects-nss-reference-fc-wrapkey)=
# FC_WrapKey
## [Name](#name)
:::{container}
FC_WrapKey - wrap a key
:::
## [Syntax](#syntax)
:::{container}
```{code}
CK_RV FC_WrapKey(
CK_SESSION_HANDLE hSession,
CK_MECHANISM_PTR pMechanism,
CK_OBJECT_HANDLE hWrappingKey,
CK_OBJECT_HANDLE hKey,
CK_BYTE_PTR pWrappedKey,
CK_ULONG_PTR pusWrappedKeyLen
);
```
:::
## [Parameters](#parameters)
:::{container}
`hSession`
: [in] session handle.
`pMechanism`
: [in] pointer to the mechanism to use.
`hWrappingKey`
: [in] pointer to the public key template.
`hKey`
: [in] number of attributes in the public key template.
`pWrappedKey`
: [out] pointer to the location to receive the wrapped key or NULL.
`pusWrappedKeyLen`
: [in, out] pointer to length of wrapped key buffer.
:::
## [Description](#description)
:::{container}
`FC_WrapKey` wraps (encrypts) a key. If `pWrappedKey` is NULL the length of the wrapped key
is returned in `pusWrappedKeyLen` and FC_WrapKey may be called again with `pWrappedKey` set
to retrieve the wrapped key.
A user must log into the token (to assume the NSS User role) before calling `FC_WrapKey`.
:::
## [Return value](#return_value)
## [Examples](#examples)
## [See also](#see_also)
:::{container}
- [NSC_WrapKey](/en-US/NSC_WrapKey)
:::