typedef axl_bool(* MyQttdUsersAuthUser)(MyQttdCtx *ctx, MyQttdDomain *domain, axl_bool domain_selected, MyQttdUsers *users, MyQttConn *conn, axlPointer backend, const char *client_id, const char *user_name, const char *password)

Handler used to define the set of functions that allows to implement user authentication with provided user described by username+clientid or any combination of them exists in the provided backend.

ctxThe context where the operation takes place.
domainThe domain where the operation is taking place.
domain_selectedExternal indication to signal auth backend that the domain was already selected or not. Once a domain is selected, it is assumed that any auth operation in this domain with the given username/client_id/password will be final: no other domain will be checked. This is important in the sense that MyQttd engine try to find the domain by various methods, and one of them is by checking auth over all domains. However, because in that context the search for domain is done by using auth operations, then the auth backend may want to disable certain mechanism (like anonymous login) in the case domain_selected == axl_false.
usersThe users database backend where the operation is taking place.
connThe connection where the auth operation is taking place. This reference may not be defined because it is run by a tool in offline mode.
backendReference to the backend where the auth operation will be implemented.
client_idOptionally the client id being checked (you must provided username+client_id or just client_id or user_name).
user_NameOptionally the user_name being checked (you must provided username+client_id or just client_id or user_name).
The function returns axl_true if the user_name+client_id and password matches, or user_name+password combination is found. Othewise, axl_false is returned.