diff --git a/wp-includes/ms-functions.php b/wp-includes/ms-functions.php
index a56fcdc0fe..97a6fdbd38 100644
--- a/wp-includes/ms-functions.php
+++ b/wp-includes/ms-functions.php
@@ -1887,13 +1887,6 @@ function is_user_spammy( $username = 0 ) {
return false;
}
-function login_spam_check( $user, $password ) {
- if ( is_user_spammy( $user->ID ) )
- return new WP_Error('invalid_username', __('ERROR: your account has been marked as a spammer.'));
- return $user;
-}
-add_action( 'wp_authenticate_user', 'login_spam_check', 10, 2 );
-
function update_blog_public( $old_value, $value ) {
global $wpdb;
do_action('update_blog_public');
diff --git a/wp-includes/user.php b/wp-includes/user.php
index 9bdf216d61..bc84943cda 100644
--- a/wp-includes/user.php
+++ b/wp-includes/user.php
@@ -83,20 +83,20 @@ function wp_authenticate_username_password($user, $username, $password) {
return $error;
}
- $userdata = get_userdatabylogin($username);
+ $userdata = get_user_by('login', $username);
- if ( !$userdata ) {
+ if ( !$userdata )
return new WP_Error('invalid_username', sprintf(__('ERROR: Invalid username. Lost your password?'), site_url('wp-login.php?action=lostpassword', 'login')));
- }
+
+ if ( is_multisite() && (1 == $userdata->spam) )
+ return new WP_Error('invalid_username', __('ERROR: Your account has been marked as a spammer.'));
$userdata = apply_filters('wp_authenticate_user', $userdata, $password);
- if ( is_wp_error($userdata) ) {
+ if ( is_wp_error($userdata) )
return $userdata;
- }
- if ( !wp_check_password($password, $userdata->user_pass, $userdata->ID) ) {
+ if ( !wp_check_password($password, $userdata->user_pass, $userdata->ID) )
return new WP_Error('incorrect_password', sprintf(__('ERROR: Incorrect password. Lost your password?'), site_url('wp-login.php?action=lostpassword', 'login')));
- }
$user = new WP_User($userdata->ID);
return $user;