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;


Reply via email to