### Method

# Gck Session set_pin_async

#### Declaration [src]

    void
    gck_session_set_pin_async (
      GckSession* self,
      const guchar* old_pin,
      gsize n_old_pin,
      const guchar* new_pin,
      gsize n_new_pin,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Change the user’s pin on this slot that this session is opened on.

This call will return immediately and completes asynchronously.

#### Parameters

`old_pin` | An array of `guchar`
| The user’s old PIN, or `NULL` for protected authentication path.
| The argument can be `NULL`.
| The length of the array is specified in the `n_new_pin` argument.
| The data is owned by the caller of the function.
`n_old_pin` | `gsize`
| The length of the old PIN.
`new_pin` | An array of `guchar`
| The user’s new PIN, or `NULL` for protected authentication path.
| The argument can be `NULL`.
| The length of the array is specified in the `n_new_pin` argument.
| The data is owned by the caller of the function.
`n_new_pin` | `gsize`
| The length of the new PIN.
`cancellable` | `GCancellable`
| Optional cancellation object, or `NULL`.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`callback` | `GAsyncReadyCallback`
| Called when the operation completes.
| The argument can be `NULL`.
`user_data` | `gpointer`
| Data to pass to the callback.
| The argument can be `NULL`.
| The data is owned by the caller of the function.