### Signal

# EDataServer Source::credentials-required

#### Declaration

    void
    credentials_required (
      ESource* self,
      ESourceCredentialsReason reason,
      gchar* certificate_pem,
      GTlsCertificateFlags certificate_errors,
      GError* error,
      gpointer user_data
    )

#### Description [src]

The ::credentials-required signal is emitted when the `source` requires credentials to connect to (possibly remote) data store. The credentials can be passed to the backend using `e_source_invoke_authenticate()` function.

Default handler: The default handler is called after the handlers added via `g_signal_connect()`.
Signal emission will restart instead of recursing

#### Parameters

`reason`

  Type: `ESourceCredentialsReason`

  An `ESourceCredentialsReason` indicating why the credentials are requested.

`certificate_pem`

  Type: `gchar*`

  PEM-encoded secure connection certificate for failed SSL/TLS checks.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`certificate_errors`

  Type: `GTlsCertificateFlags`

  What failed with the SSL/TLS certificate.

`error`

  Type: `GError`

  A text description of the error, if any.

  The data is owned by the caller of the function.