Method

GckSessionderive_key

Declaration [src]

GckObject*
gck_session_derive_key (
  GckSession* self,
  GckObject* base,
  gulong mech_type,
  GckAttributes* attrs,
  GCancellable* cancellable,
  GError** error
)

Description [src]

Derive a key from another key. This call may block for an indefinite period.

If the attrs GckAttributes is floating, it is consumed.

Parameters

base

Type: GckObject

The key to derive from.

The data is owned by the caller of the method.
mech_type

Type: gulong

The mechanism to use for derivation.

attrs

Type: GckAttributes

Additional attributes for the derived key.

The data is owned by the caller of the method.
cancellable

Type: GCancellable

Optional cancellation object, or NULL.

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

Type: GError **

The return location for a recoverable error.

The argument can be NULL.
If the return location is not NULL, then you must initialize it to a NULL GError*.
The argument will be left initialized to NULL by the method if there are no errors.
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.

Return value

Type: GckObject

The new derived key or NULL if the operation failed.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.