You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by fa...@apache.org on 2014/11/11 21:02:55 UTC
svn commit: r1638333 - /vcl/trunk/managementnode/lib/VCL/utils.pm
Author: fapeeler
Date: Tue Nov 11 20:02:55 2014
New Revision: 1638333
URL: http://svn.apache.org/r1638333
Log:
VCL-797
backend edits
Modified:
vcl/trunk/managementnode/lib/VCL/utils.pm
Modified: vcl/trunk/managementnode/lib/VCL/utils.pm
URL: http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/utils.pm?rev=1638333&r1=1638332&r2=1638333&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/utils.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/utils.pm Tue Nov 11 20:02:55 2014
@@ -2371,12 +2371,28 @@ sub notify_via_oascript {
sub getpw {
my $length = $_[0];
+
+ if (!(defined($length))) {
+ $length = $ENV{management_node_info}{USER_PASSWORD_LENGTH};
+ }
+
+ #If for some reason the global USER_PASSWORD_LENGTH did not get set, then force it here
$length = 6 if (!(defined($length)));
- my @a = ("A" .. "H", "J" .. "N", "P" .. "Z", "a" .. "k", "m" .. "z", "2" .. "9");
+
+ #Skip certain confusing chars like: iI1lL,0Oo Zz2
+ my @chars = ("A" .. "H", "J" .. "N", "P" .. "Y", "a" .. "h", "j" .."n","p" .. "y", "3" .. "9");
+ my @spchars = ("A" .. "H", "J" .. "N", "P" .. "Y", "a" .. "h", "j" .."n","p" .. "y", "3" .. "9","-","_","!","%","#","\$","@","+","=","{","}","<",">","?","&");
+ my @a = @chars;;
+
+ my $include_special_chars = $ENV{management_node_info}{INCLUDE_SPECIAL_CHARS};
+ if($include_special_chars) {
+ @a = @spchars;
+ }
+
my $b;
srand;
for (1 .. $length) {
- $b .= $a[rand(57)];
+ $b .= $a[rand @a ];
}
return $b;
@@ -4590,6 +4606,14 @@ AND managementnode.id != $management_nod
$management_node_info->{CLUSTER_INUSE_CHECK} = round($cluster_inuse_check / 60);
$ENV{management_node_info}{CLUSTER_INUSE_CHECK} = $management_node_info->{CLUSTER_INUSE_CHECK};
+ my $user_password_length = get_variable('user_password_length') || 6;
+ $management_node_info->{USER_PASSWORD_LENGTH} = $user_password_length;
+ $ENV{management_node_info}{USER_PASSWORD_LENGTH} = $management_node_info->{USER_PASSWORD_LENGTH};
+
+ my $user_password_include_spchar = get_variable('user_password_spchar') || 0;
+ $management_node_info->{INCLUDE_SPECIAL_CHARS} = $user_password_include_spchar;
+ $ENV{management_node_info}{INCLUDE_SPECIAL_CHARS} = $management_node_info->{INCLUDE_SPECIAL_CHARS};
+
# Get the OS name
my $os_name = lc($^O);
$management_node_info->{OSNAME} = $os_name;