Author: fapeeler
Date: Tue Nov 1 19:09:27 2011
New Revision: 1196218
URL: http://svn.apache.org/viewvc?rev=1196218&view=rev
Log:
VCL-463
fixes issues with server loads not correctly adding secondary accounts on Linux
Modified:
incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm
incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm
Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm
URL:
http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm?rev=1196218&r1=1196217&r2=1196218&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm Tue Nov 1 19:09:27
2011
@@ -1928,7 +1928,8 @@ sub manage_server_access {
if (scalar @userlist_admin > 0) {
foreach my $str (@userlist_admin) {
my ($username,$uid,$vcl_user_id) = split(/:/, $str);
- $user_hash{$uid}{"username"} = $username;
+ my ($correct_username, $user_domain) = split /@/,
$username;
+ $user_hash{$uid}{"username"} = $correct_username;
$user_hash{$uid}{"uid"} = $uid;
$user_hash{$uid}{"vcl_user_id"} = $vcl_user_id;
$user_hash{$uid}{"rootaccess"} = 1;
@@ -1939,8 +1940,9 @@ sub manage_server_access {
foreach my $str (@userlist_login) {
notify($ERRORS{'OK'}, 0, "admin str= $str");
my ($username, $uid,$vcl_user_id) = split(/:/, $str);
+ my ($correct_username, $user_domain) = split /@/,
$username;
if (!exists($user_hash{$uid})) {
- $user_hash{$uid}{"username"} = $username;
+ $user_hash{$uid}{"username"} =
$correct_username;
$user_hash{$uid}{"uid"} = $uid;
$user_hash{$uid}{"vcl_user_id"} = $vcl_user_id;
$user_hash{$uid}{"rootaccess"} = 2;
@@ -1955,13 +1957,13 @@ sub manage_server_access {
# Collect users in reservationaccounts table
my %res_accounts = get_reservation_accounts($reservation_id);
my $not_standalone_list = "";
- my $standalone = 0;
if(defined($ENV{management_node_info}{NOT_STANDALONE}) &&
$ENV{management_node_info}{NOT_STANDALONE}){
$not_standalone_list =
$ENV{management_node_info}{NOT_STANDALONE};
}
foreach my $userid (sort keys %user_hash) {
next if (!($userid));
+ my $standalone = 0;
if(!exists($res_accounts{$userid})){
# check affiliation
notify($ERRORS{'OK'}, 0, "checking affiliation for
$userid");
@@ -1972,6 +1974,7 @@ sub manage_server_access {
$standalone = 1;
}
}
+
# IF standalone - generate password
if($standalone) {
$user_hash{$userid}{"passwd"} = getpw();
@@ -1986,7 +1989,7 @@ sub manage_server_access {
}
# Create user on the OS
-
if($self->create_user($user_hash{$userid}{username},$user_hash{passwd},$userid,$user_hash{$userid}{rootaccess},$standalone))
{
+
if($self->create_user($user_hash{$userid}{username},$user_hash{$userid}{passwd},$userid,$user_hash{$userid}{rootaccess},$standalone))
{
notify($ERRORS{'OK'}, 0, "Successfully created
user $user_hash{$userid}{username} on $computer_node_name");
}
else {
@@ -2242,4 +2245,4 @@ __END__
L<http://cwiki.apache.org/VCL/>
-=cut
\ No newline at end of file
+=cut
Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm
URL:
http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm?rev=1196218&r1=1196217&r2=1196218&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm Tue Nov 1
19:09:27 2011
@@ -2917,6 +2917,10 @@ sub update_server_access {
else {
notify($ERRORS{'CRITICAL'}, 0, "failed to add AllowUsers
$server_allow_user_list to external_sshd_config");
}
+
+ if ($self->execute("/etc/init.d/ext_sshd stop;
sleep 2; /etc/init.d/ext_sshd start")) {
+ notify($ERRORS{'DEBUG'}, 0, "restarted
ext_sshd");
+ }
}
return 1;