### Method

# Gck Session sign_full

#### Declaration [src]

    guchar*
    gck_session_sign_full (
      GckSession* self,
      GckObject* key,
      GckMechanism* mechanism,
      const guchar* input,
      gsize n_input,
      gsize* n_result,
      GCancellable* cancellable,
      GError** error
    )

#### Description [src]

Sign data in a mechanism specific manner. This call may block for an indefinite period.

#### Parameters

`key` | `GckObject`
| The key to sign with.
| The data is owned by the caller of the function.
`mechanism` | `GckMechanism`
| The mechanism type and parameters to use for signing.
| The data is owned by the caller of the function.
`input` | An array of `guchar`
| Data to sign.
| The length of the array is specified in the `n_input` argument.
| The data is owned by the caller of the function.
`n_input` | `gsize`
| Length of the data to sign.
`n_result` | `gsize*`
| Location to store the length of the result data.
| The data is owned by the caller of the function.
`cancellable` | `GCancellable`
| A GCancellable which can be used to cancel the operation.
| 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: | `guchar*`
| The data that was signed, or `NULL` if an error occured.
| The data is owned by the instance.