function hook_user_flood_control

Respond to user flood control events.

This hook allows you act when an unsuccessful user login has triggered flood control. This means that either an IP address or a specific user account has been temporarily blocked from logging in.

Parameters

$ip: The IP address that triggered flood control.

$username: The username that has been temporarily blocked.

See also

user_login_final_validate()

Related topics

2 functions implement hook_user_flood_control()

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

user_flood_test_user_flood_control in modules/user/tests/user_flood_test.module
Implements hook_user_flood_control().
user_user_flood_control in modules/user/user.module
Implements hook_user_flood_control().
1 invocation of hook_user_flood_control()
user_login_final_validate in modules/user/user.module
The final validation handler on the login form.

File

modules/user/user.api.php, line 489

Code

function hook_user_flood_control($ip, $username = FALSE) {
    if (!empty($username)) {
        // Do something with the blocked $username and $ip. For example, send an
        // e-mail to the user and/or site administrator.
        // Drupal core uses this hook to log the event:
        watchdog('user', 'Flood control blocked login attempt for %user from %ip.', array(
            '%user' => $username,
            '%ip' => $ip,
        ));
    }
    else {
        // Do something with the blocked $ip. For example, add it to a block-list.
        // Drupal core uses this hook to log the event:
        watchdog('user', 'Flood control blocked login attempt from %ip.', array(
            '%ip' => $ip,
        ));
    }
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.