Mercurial > hg > soundsoftware-site
comparison extra/svn/Redmine.pm @ 929:5f33065ddc4b redmine-1.3
Update to Redmine SVN rev 9414 on 1.3-stable branch
author | Chris Cannam |
---|---|
date | Wed, 27 Jun 2012 14:54:18 +0100 |
parents | cbb26bc654de |
children | 433d4f72a19b |
comparison
equal
deleted
inserted
replaced
909:cbb26bc654de | 929:5f33065ddc4b |
---|---|
97 | 97 |
98 use strict; | 98 use strict; |
99 use warnings FATAL => 'all', NONFATAL => 'redefine'; | 99 use warnings FATAL => 'all', NONFATAL => 'redefine'; |
100 | 100 |
101 use DBI; | 101 use DBI; |
102 use Digest::SHA1; | 102 use Digest::SHA; |
103 # optional module for LDAP authentication | 103 # optional module for LDAP authentication |
104 my $CanUseLDAPAuth = eval("use Authen::Simple::LDAP; 1"); | 104 my $CanUseLDAPAuth = eval("use Authen::Simple::LDAP; 1"); |
105 | 105 |
106 use Apache2::Module; | 106 use Apache2::Module; |
107 use Apache2::Access; | 107 use Apache2::Access; |
325 my $r = shift; | 325 my $r = shift; |
326 | 326 |
327 my $dbh = connect_database($r); | 327 my $dbh = connect_database($r); |
328 my $project_id = get_project_identifier($r); | 328 my $project_id = get_project_identifier($r); |
329 | 329 |
330 my $pass_digest = Digest::SHA1::sha1_hex($redmine_pass); | 330 my $pass_digest = Digest::SHA::sha1_hex($redmine_pass); |
331 | 331 |
332 my $access_mode = defined $read_only_methods{$r->method} ? "R" : "W"; | 332 my $access_mode = defined $read_only_methods{$r->method} ? "R" : "W"; |
333 | 333 |
334 my $cfg = Apache2::Module::get_config(__PACKAGE__, $r->server, $r->per_dir_config); | 334 my $cfg = Apache2::Module::get_config(__PACKAGE__, $r->server, $r->per_dir_config); |
335 my $usrprojpass; | 335 my $usrprojpass; |
344 my $ret; | 344 my $ret; |
345 while (my ($hashed_password, $salt, $auth_source_id, $permissions) = $sth->fetchrow_array) { | 345 while (my ($hashed_password, $salt, $auth_source_id, $permissions) = $sth->fetchrow_array) { |
346 | 346 |
347 unless ($auth_source_id) { | 347 unless ($auth_source_id) { |
348 my $method = $r->method; | 348 my $method = $r->method; |
349 my $salted_password = Digest::SHA1::sha1_hex($salt.$pass_digest); | 349 my $salted_password = Digest::SHA::sha1_hex($salt.$pass_digest); |
350 if ($hashed_password eq $salted_password && (($access_mode eq "R" && $permissions =~ /:browse_repository/) || $permissions =~ /:commit_access/) ) { | 350 if ($hashed_password eq $salted_password && (($access_mode eq "R" && $permissions =~ /:browse_repository/) || $permissions =~ /:commit_access/) ) { |
351 $ret = 1; | 351 $ret = 1; |
352 last; | 352 last; |
353 } | 353 } |
354 } elsif ($CanUseLDAPAuth) { | 354 } elsif ($CanUseLDAPAuth) { |