Index: wp-comments-post.php
===================================================================
--- wp-comments-post.php	(revision 20991)
+++ wp-comments-post.php	(working copy)
@@ -55,6 +55,8 @@
 // If the user is logged in
 $user = wp_get_current_user();
 if ( $user->exists() ) {
+	if ( is_multisite() && ! is_user_member_of_blog() )
+		wp_die( __('Sorry, you are not allowed to post comments on this site.') );
 	if ( empty( $user->display_name ) )
 		$user->display_name=$user->user_login;
 	$comment_author       = $wpdb->escape($user->display_name);
Index: wp-includes/class-wp-xmlrpc-server.php
===================================================================
--- wp-includes/class-wp-xmlrpc-server.php	(revision 20991)
+++ wp-includes/class-wp-xmlrpc-server.php	(working copy)
@@ -2632,10 +2632,12 @@
 		if ( !$user ) {
 			$logged_in = false;
 			if ( $allow_anon && get_option('comment_registration') )
-				return new IXR_Error( 403, __( 'You must be registered to comment' ) );
+				return new IXR_Error( 403, __( 'Sorry, you must be logged in to post a comment.' ) );
 			else if ( !$allow_anon )
 				return $this->error;
 		} else {
+			if ( is_multisite() && ! is_user_member_of_blog() )
+				return new IXR_Error( 403, __( 'Sorry, you are not allowed to post comments on this site.' ) );
 			$logged_in = true;
 		}
 
