Bug 729001: Reverse resolves the IP address in account lockout notifications

r=LpSolit, a=LpSolit


git-svn-id: svn://10.0.0.236/trunk@263800 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
mkanat%bugzilla.org
2012-05-08 06:31:06 +00:00
parent 97f83fe067
commit 6ad3c9a761
3 changed files with 12 additions and 3 deletions

View File

@@ -1 +1 @@
8222
8223

View File

@@ -22,6 +22,7 @@ use Bugzilla::User::Setting ();
use Bugzilla::Auth::Login::Stack;
use Bugzilla::Auth::Verify::Stack;
use Bugzilla::Auth::Persist::Cookie;
use Socket;
sub new {
my ($class, $params) = @_;
@@ -199,10 +200,18 @@ sub _handle_login_result {
my $default_settings = Bugzilla::User::Setting::get_defaults();
my $template = Bugzilla->template_inner(
$default_settings->{lang}->{default_value});
my $address = $attempts->[0]->{ip_addr};
# Note: inet_aton will only resolve IPv4 addresses.
# For IPv6 we'll need to use inet_pton which requires Perl 5.12.
my $n = inet_aton($address);
if ($n) {
$address = gethostbyaddr($n, AF_INET) . " ($address)"
}
my $vars = {
locked_user => $user,
attempts => $attempts,
unlock_at => $unlock_at,
address => $address,
};
my $message;
$template->process('email/lockout.txt.tmpl', $vars, \$message)

View File

@@ -8,10 +8,10 @@
From: [% Param('mailfrom') %]
To: [% Param('maintainer') %]
Subject: [[% terms.Bugzilla %]] Account Lock-Out: [% locked_user.login %] ([% attempts.0.ip_addr %])
Subject: [[% terms.Bugzilla %]] Account Lock-Out: [% locked_user.login %] ([% address %])
X-Bugzilla-Type: admin
The IP address [% attempts.0.ip_addr %] failed too many login attempts (
The address [% address %] failed too many login attempts (
[%- constants.MAX_LOGIN_ATTEMPTS +%]) for
the account [% locked_user.login %].