### Method

# Gck Session init_pin_async

#### Declaration [src]

    void
    gck_session_init_pin_async (
      GckSession* self,
      const guchar* pin,
      gsize n_pin,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Initialize the user’s pin on this slot that this session is opened on. According to the PKCS#11 standards, the session must be logged in with the `CKU_SO` user type.

This call will return immediately and completes asynchronously.

This method completes asynchronously. Use `gck_session_init_pin_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`pin`

  Type: An array of `guchar`

  The user’s PIN, or `NULL` for protected authentication path.

  The argument can be `NULL`.
  The length of the array is specified in the `n_pin` argument.
  The data is owned by the caller of the method.

`n_pin`

  Type: `gsize`

  The length of the PIN.

`cancellable`

  Type: `GCancellable`

  Optional cancellation object, or `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.

`callback`

  Type: `GAsyncReadyCallback`

  Called when the operation completes.

  The argument can be `NULL`.

`user_data`

  Type: `gpointer`

  Data to pass to the callback.

  The argument can be `NULL`.
  The data is owned by the caller of the method.