Same name and namespace in other branches
  1. 4.6.x developer/hooks/authentication.php \hook_auth()
  2. 4.7.x developer/hooks/authentication.php \hook_auth()

Verify authentication of a user.

The _auth hook is the heart of any authentication module. This function is called whenever a user is attempting to log in using your authentication module. The module uses this information to allow or deny access to the site.

Parameters

$username: The substring before the final '@' character in the username field.

$password: The whole string submitted by the user in the password field.

$server: The substring after the final '@' symbol in the username field.

Return value

For successful authentications, this function returns TRUE. Otherwise, it returns FALSE.

Related topics

1 function implements hook_auth()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

drupal_auth in modules/drupal/drupal.module
Implementation of hook_auth().

File

developer/hooks/authentication.php, line 38
These hooks are defined by authentication modules, modules that define ways users can log on using accounts from other sites and servers.

Code

function hook_auth($username, $password, $server) {
  if (variable_get('drupal_authentication_service', 0)) {
    if (!$server) {
      $server = variable_get('drupal_default_da_server', '');
    }
    else {
      if (variable_get('drupal_default_da_server_only', 0)) {
        if (variable_get('drupal_default_da_server', '') != $server) {
          return;
        }
      }
    }
    if (!empty($server)) {
      $result = xmlrpc("http://{$server}/xmlrpc.php", 'drupal.login', $username, $password);
      if ($result === FALSE) {
        drupal_set_message(t('Error %code: %message', array(
          '%code' => xmlrpc_errno(),
          '%message' => xmlrpc_error_msg(),
        )), 'error');
      }
      else {
        return $result;
      }
    }
  }
}