### Method

# Gck Session wrap_key

#### Declaration [src]

    guchar*
    gck_session_wrap_key (
      GckSession* self,
      GckObject* wrapper,
      gulong mech_type,
      GckObject* wrapped,
      gsize* n_result,
      GCancellable* cancellable,
      GError** error
    )

#### Description [src]

Wrap a key into a byte stream. This call may block for an indefinite period.

#### Parameters

`wrapper` | `GckObject`
| The key to use for wrapping.
| The data is owned by the caller of the function.
`mech_type` | `gulong`
| The mechanism type to use for wrapping.
`wrapped` | `GckObject`
| The key to wrap.
| The data is owned by the caller of the function.
`n_result` | `gsize*`
| A location in which to return the length of the wrapped data.
| The argument will be set by the function.
`cancellable` | `GCancellable`
| A `GCancellable` or `NULL`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`error` | `GError **`
| The return location for a `GError*`, or `NULL`.

#### Return value

Returns: | An array of `guchar`
| The wrapped data or `NULL` if the operation failed.
| The length of the array is in the `n_result` argument.
| The caller of the method takes ownership of the data, and is responsible for freeing it.