### Function

# Camel SessionCallback

since: 3.2

#### Declaration

    void
    (* CamelSessionCallback) (
      CamelSession* session,
      GCancellable* cancellable,
      gpointer user_data,
      GError** error
    )

#### Description [src]

This is the callback signature for jobs submitted to the CamelSession via camel_session_submit_job(). The `error` pointer is always non-`NULL`, so it’s safe to dereference to check if a `GError` has been set.

Available since: 3.2

#### Parameters

`session`

  Type: `CamelSession`

  A `CamelSession`.

  The data is owned by the caller of the function.

`cancellable`

  Type: `GCancellable`

  A `CamelOperation` cast as a `GCancellable`.

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

`user_data`

  Type: `gpointer`

  Data passed to camel_session_submit_job().

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

`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 function 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.