Author: jsuchome Date: Fri Apr 11 09:48:17 2008 New Revision: 46383 URL: http://svn.opensuse.org/viewcvs/yast?rev=46383&view=rev Log: read Security only once Modified: trunk/users/src/Users.pm trunk/users/src/inst_root.ycp trunk/users/src/inst_user.ycp Modified: trunk/users/src/Users.pm URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/Users.pm?rev=46383&r1=46382&r2=46383&view=diff ============================================================================== --- trunk/users/src/Users.pm (original) +++ trunk/users/src/Users.pm Fri Apr 11 09:48:17 2008 @@ -188,6 +188,9 @@ # list of available plugin modules for local and system users (groups) my @local_plugins = (); +# if system settings already read by ReadSystemDefaults +my $system_defaults_read = 0; + ##------------------------------------ ##------------------- global imports @@ -1273,12 +1276,17 @@ ##------------------------------------ -BEGIN { $TYPEINFO{ReadSystemDefaults} = ["function", "void"]; } +# Read settings from Security module +# @param force force reading, even if already read before +BEGIN { $TYPEINFO{ReadSystemDefaults} = ["function", "void", "boolean"]; } sub ReadSystemDefaults { if (Mode->test ()) { return; } my $self = shift; + my $force = shift; + + return if ($system_defaults_read && !$force); if (! Security->GetModified ()) { my $progress_orig = Progress->set (0); @@ -1331,6 +1339,7 @@ UsersCache->InitConstants (\%security); UsersLDAP->SetUmask ($umask); + $system_defaults_read = 1; } ##------------------------------------ @@ -1587,7 +1596,7 @@ # default system settings if ($use_gui) { Progress->NextStage (); } - $self->ReadSystemDefaults(); + $self->ReadSystemDefaults (1); $self->ReadAllShells(); @@ -3968,6 +3977,7 @@ $ret = Security->Write(); Progress->set ($progress_orig); y2milestone ("Security module settings written: $ret"); + $security_modified = 0 if ($ret); } return $ret; } @@ -4635,9 +4645,7 @@ } if ($security_modified) { - if ($self->WriteSecurity()) { - $security_modified = 0; - } + WriteSecurity(); } my @new_aliases = sort (keys %root_aliases); @@ -5965,7 +5973,7 @@ my $self = shift; $self->ReadLoginDefaults (); - $self->ReadSystemDefaults(); + $self->ReadSystemDefaults(1); my $error_msg = $self->ReadLocal (); if ($error_msg) { @@ -6038,7 +6046,7 @@ $defaults_modified = 1; } - $self->ReadSystemDefaults(); + $self->ReadSystemDefaults(1); # remove cache entries (#50265) UsersCache->ResetCache (); Modified: trunk/users/src/inst_root.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/inst_root.ycp?rev=46383&r1=46382&r2=46383&view=diff ============================================================================== --- trunk/users/src/inst_root.ycp (original) +++ trunk/users/src/inst_root.ycp Fri Apr 11 09:48:17 2008 @@ -34,7 +34,7 @@ include "users/widgets.ycp"; // for EncryptionPopup() - Users::ReadSystemDefaults (); + Users::ReadSystemDefaults (false); UsersSimple::Read (); boolean check_CA_constraints = Modified: trunk/users/src/inst_user.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/users/src/inst_user.ycp?rev=46383&r1=46382&r2=46383&view=diff ============================================================================== --- trunk/users/src/inst_user.ycp (original) +++ trunk/users/src/inst_user.ycp Fri Apr 11 09:48:17 2008 @@ -30,7 +30,7 @@ if (!GetInstArgs::going_back()) { - Users::ReadSystemDefaults (); + Users::ReadSystemDefaults (false); UsersSimple::Read (); Users::SetEncryptionMethod (UsersSimple::EncryptionMethod ()); Users::WriteSecurity (); -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org