Hello community,
here is the log from the commit of package yast2-users
checked in at Thu Sep 21 22:06:03 CEST 2006.
--------
--- yast2-users/yast2-users.changes 2006-09-20 09:10:03.000000000 +0200
+++ yast2-users/yast2-users.changes 2006-09-21 16:09:24.000000000 +0200
@@ -1,0 +2,6 @@
+Thu Sep 21 15:55:16 CEST 2006 - jsuchome@suse.cz
+
+- setup Kerberos During Installation (F120214)
+- 2.13.29
+
+-------------------------------------------------------------------
Old:
----
yast2-users-2.13.28.tar.bz2
New:
----
yast2-users-2.13.29.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-users.spec ++++++
--- /var/tmp/diff_new_pack.pQi1Bd/_old 2006-09-21 22:05:41.000000000 +0200
+++ /var/tmp/diff_new_pack.pQi1Bd/_new 2006-09-21 22:05:41.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-users (Version 2.13.28)
+# spec file for package yast2-users (Version 2.13.29)
#
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -11,12 +11,12 @@
# norootforbuild
Name: yast2-users
-Version: 2.13.28
+Version: 2.13.29
Release: 1
License: GPL
Group: System/YaST
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-users-2.13.28.tar.bz2
+Source0: yast2-users-2.13.29.tar.bz2
prefix: /usr
BuildRequires: cracklib-devel doxygen gcc-c++ perl-Digest-SHA1 perl-XML-Writer update-desktop-files yast2 yast2-core-devel yast2-devtools yast2-ldap-client yast2-mail-aliases yast2-perl-bindings yast2-security yast2-testsuite
Requires: yast2 yast2-perl-bindings yast2-country yast2-pam yast2-security yast2-mail-aliases cracklib perl-Digest-SHA1 perl-gettext yast2-ldap-client
@@ -42,7 +42,7 @@
Jiri Suchomel
%prep
-%setup -n yast2-users-2.13.28
+%setup -n yast2-users-2.13.29
%build
%{prefix}/bin/y2tool y2autoconf
@@ -85,6 +85,9 @@
%doc %{prefix}/share/doc/packages/yast2-users
%changelog -n yast2-users
+* Thu Sep 21 2006 - jsuchome@suse.cz
+- setup Kerberos During Installation (F120214)
+- 2.13.29
* Wed Sep 20 2006 - jsuchome@suse.cz
- fixed installation failure caused by previous changes (#206839)
- fixed directory path with imported data (F120103)
++++++ yast2-users-2.13.28.tar.bz2 -> yast2-users-2.13.29.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-users-2.13.28/VERSION new/yast2-users-2.13.29/VERSION
--- old/yast2-users-2.13.28/VERSION 2006-09-20 08:15:42.000000000 +0200
+++ new/yast2-users-2.13.29/VERSION 2006-09-21 15:55:43.000000000 +0200
@@ -1 +1 @@
-2.13.28
+2.13.29
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-users-2.13.28/src/Users.pm new/yast2-users-2.13.29/src/Users.pm
--- old/yast2-users-2.13.28/src/Users.pm 2006-09-20 08:01:25.000000000 +0200
+++ new/yast2-users-2.13.29/src/Users.pm 2006-09-21 14:06:07.000000000 +0200
@@ -4,7 +4,7 @@
# Package: Configuration of users and groups
# Summary: I/O routines + main data structures
#
-# $Id: Users.pm 32972 2006-09-19 12:35:53Z jsuchome $
+# $Id: Users.pm 32992 2006-09-20 07:47:28Z jsuchome $
#
package Users;
@@ -32,6 +32,10 @@
# could be "users","nis" or "ldap", for more see inst_auth.ycp
my $after_auth = "users";
+# If kerberos configuration should be called after authentication
+# during installation (F120214)
+my $run_krb_config = 0;
+
# what should be imported during installation (F120103)
my %installation_import = (
"users" => (),
@@ -569,6 +573,20 @@
$after_auth = $_[0];
}
+# return the value of run_krb_config (should the kerberos config be run?)
+BEGIN { $TYPEINFO{KerberosConfiguration} = ["function", "boolean"];}
+sub KerberosConfiguration {
+ return $run_krb_config;
+}
+
+# set the new value for run_krb_config
+BEGIN { $TYPEINFO{SetKerberosConfiguration} = ["function", "void", "boolean"];}
+sub SetKerberosConfiguration {
+ my $self = shift;
+ my $krb = shift;
+ $run_krb_config = bool ($krb) if (defined $krb);
+}
+
# set the list of users to be imported during installation
BEGIN { $TYPEINFO{SetUsersForImport} = ["function", "void", ["list","any"]];}
sub SetUsersForImport {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-users-2.13.28/src/inst_auth.ycp new/yast2-users-2.13.29/src/inst_auth.ycp
--- old/yast2-users-2.13.28/src/inst_auth.ycp 2006-09-20 08:57:52.000000000 +0200
+++ new/yast2-users-2.13.29/src/inst_auth.ycp 2006-09-21 15:54:46.000000000 +0200
@@ -5,7 +5,7 @@
* Authors: Arvin Schnell
* Michal Svec
*
- * $Id: inst_auth.ycp 32972 2006-09-19 12:35:53Z jsuchome $
+ * $Id: inst_auth.ycp 32992 2006-09-20 07:47:28Z jsuchome $
*/
{
@@ -201,6 +201,10 @@
}
}
+// helptext: additional kerberos support
+help = help + _("<p>Check <b>Set Up Kerberos Authentication</b> to configure Kerberos after configuring the user data source.</p>");
+
+
term buttons = `VBox (`VSpacing(0.5));
foreach (string client, available_clients, {
@@ -232,26 +236,35 @@
Users::SetAfterAuth ("ldap");
term contents = `VBox (
- `VStretch(),
- `HBox (
- `HStretch(),
- // frame title for authentication methods
- `Frame (_("Authentication Method"),
- `RadioButtonGroup (`id (`method), buttons)
- ),
- `HStretch()
- ),
- `VStretch()
- );
+ `VStretch(),
+ `HBox (
+ `HStretch(),
+ `VBox (
+ // frame title for authentication methods
+ `Frame (_("Authentication Method"),
+ `RadioButtonGroup (`id (`method), buttons)
+ ),
+ `VSpacing (),
+ // check box label
+ `Left (`CheckBox (`id(`krb), _("Set Up &Kerberos Authentication"),
+ Users::KerberosConfiguration ()))
+ ),
+ `HStretch()
+ ),
+ `VStretch()
+);
Wizard::SetDesktopIcon("users");
Wizard::SetContents (caption, contents, help,
GetInstArgs::enable_back(), GetInstArgs::enable_next());
+string after_client = Users::AfterAuth ();
// select and enable to correct buttons
foreach (string client, available_clients, ``{
- UI::ChangeWidget (`id(client), `Value, Users::AfterAuth () == client);
+ UI::ChangeWidget (`id(client), `Value, after_client == client);
});
+UI::ChangeWidget (`id (`krb), `Enabled,
+ after_client != "users" && after_client != "samba");
any ret = nil;
@@ -268,7 +281,7 @@
{
Wizard::ShowHelp (help);
}
- if (ret == `next && to_import == [] &&
+ if (ret == `next && import_available && to_import == [] &&
UI::QueryWidget (`id(`import_ch), `Value) == true)
{
// force selecting when only checkbox is checked
@@ -290,10 +303,14 @@
to_import = selected;
UI::ChangeWidget (`id (`import_ch), `Value, size (to_import) > 0);
}
- if (is (ret, string) && import_available)
+ if (is (ret, string))
{
- UI::ChangeWidget (`id (`import_ch), `Enabled, ret == "users");
- UI::ChangeWidget (`id (`import), `Enabled, ret == "users");
+ if (import_available)
+ {
+ UI::ChangeWidget (`id (`import_ch), `Enabled, ret == "users");
+ UI::ChangeWidget (`id (`import), `Enabled, ret == "users");
+ }
+ UI::ChangeWidget (`id(`krb),`Enabled, ret != "users" && ret != "samba");
}
} until ( ret == `next || ret == `back );
@@ -311,6 +328,16 @@
Users::SetUsersForImport (users_to_import);
}
+if (ret == `next)
+{
+ if (method == "users" || method == "samba")
+ Users::SetKerberosConfiguration (false);
+ else
+ Users::SetKerberosConfiguration (
+ (boolean)UI::QueryWidget (`id(`krb), `Value));
+}
+
+// remove the data with users information
if (import_available)
{
foreach (string file, [ "/passwd", "/shadow", "/group" ], {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/yast2-users-2.13.28/src/inst_user.ycp new/yast2-users-2.13.29/src/inst_user.ycp
--- old/yast2-users-2.13.28/src/inst_user.ycp 2006-09-18 17:57:55.000000000 +0200
+++ new/yast2-users-2.13.29/src/inst_user.ycp 2006-09-21 15:14:00.000000000 +0200
@@ -18,15 +18,30 @@
import "Ldap";
import "Users";
import "UsersCache";
+ import "Wizard";
include "users/wizards.ycp";
any ret = `back;
+ // hide the inst_auth content
+ Wizard::SetContents ("", `Empty (), "",
+ GetInstArgs::enable_back(), GetInstArgs::enable_next()
+ );
+
// what to call after inst_auth dialog
string client = Users::AfterAuth();
if (client != "users")
{
+ // going back from next step, while kerberos was already configured
+ if (Users::KerberosConfiguration () && GetInstArgs::going_back () &&
+ Package::Installed ("yast2-kerberos-client"))
+ {
+ ret = (symbol) WFM::CallFunction ("kerberos-client", WFM::Args ());
+ if (ret == `next)
+ return ret;
+ }
+
string package = sformat("yast2-%1-client", client);
// name of client to call
map call_client = $[
@@ -35,17 +50,37 @@
];
if (client == "edir_ldap")
package = "yast2-linux-user-mgmt";
- if (Package::InstallAllMsg ([package],
+ if (!Package::InstallAllMsg ([package],
// popup label (%1 is package to install)
sformat (_("Package %1 is not installed.
Install it now?
"), package)))
{
+ return `back;
+ }
+
+ // when we go `back from kerberos, call previous client again
+ boolean again = true;
+ while (again)
+ {
+ again = false;
ret = (symbol) WFM::CallFunction (call_client [client]:client,
WFM::Args ());
- }
- else
- return `back;
+
+ // after nis/ldap/edit client was called, maybe call also kerberos
+ if (ret == `next && Users::KerberosConfiguration () &&
+ Package::InstallAllMsg (["yast2-kerberos-client"],
+ // popup label (%1 is package to install)
+ sformat (_("Package %1 is not installed.
+Install it now?
+"), "yast2-kerberos-client")))
+ {
+ ret = (symbol) WFM::CallFunction ("kerberos-client",
+ WFM::Args ());
+ if (ret == `back)
+ again = true;
+ }
+ }
if (ret == `next && client == "ldap" && Ldap::initial_defaults_used)
{
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org