### Function

# Soup AuthDomainDigestAuthCallback

#### Declaration

    char*
    (* SoupAuthDomainDigestAuthCallback) (
      SoupAuthDomain* domain,
      SoupServerMessage* msg,
      const char* username,
      gpointer user_data
    )

#### Description [src]

Callback used by `SoupAuthDomainDigest` for authentication purposes.

The application should look up `username` in its password database, and return the corresponding encoded password (see `soup_auth_domain_digest_encode_password()`.

#### Parameters

`domain` | `SoupAuthDomainDigest`
| The domain.
| The data is owned by the caller of the function.
`msg` | `SoupServerMessage`
| The message being authenticated.
| The data is owned by the caller of the function.
`username` | `const char*`
| The username provided by the client.
| The data is owned by the caller of the function.
| The value is a NUL terminated UTF-8 string.
`user_data` | `gpointer`
| The data passed to `soup_auth_domain_digest_set_auth_callback()`
| The argument can be `NULL`.
| The data is owned by the caller of the function.

#### Return value

Returns: | `char*`
| The encoded password, or `NULL` if `username` is not a valid user. `domain` will free the password when it is done with it.
| The caller of the function takes ownership of the data, and is responsible for freeing it.
| The return value can be `NULL`.
| The value is a NUL terminated UTF-8 string.