diff options
author | Rob Crittenden <rcritten@redhat.com> | 2011-02-10 22:26:46 -0500 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2011-02-14 14:07:17 -0500 |
commit | c9431749a0078df8bdf13490daac5f3467cc1c02 (patch) | |
tree | 502606e9c1617aea71b7aa9a79d3a8ed46fb7d46 /ipaserver/install | |
parent | b46faf9dfc4ba0d78cccea749b47296767964234 (diff) | |
download | freeipa-c9431749a0078df8bdf13490daac5f3467cc1c02.tar.gz freeipa-c9431749a0078df8bdf13490daac5f3467cc1c02.tar.xz freeipa-c9431749a0078df8bdf13490daac5f3467cc1c02.zip |
Let 389-ds start up even if Kerboros is not configured yet.
The situation is if during installation /etc/krb5.conf either doesn't
exist or configures no realms then 389-ds won't start up at all, causing
the installation to fail. This will let the server start up in a degraded
mode.
Also need to make the sub_dict in ldapupdate.py handle no realm otherwise
the installation will abort enabling the compat plugin.
ticket 606
Diffstat (limited to 'ipaserver/install')
-rw-r--r-- | ipaserver/install/ldapupdate.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/ipaserver/install/ldapupdate.py b/ipaserver/install/ldapupdate.py index f8128fc3a..e7411e3fb 100644 --- a/ipaserver/install/ldapupdate.py +++ b/ipaserver/install/ldapupdate.py @@ -68,6 +68,12 @@ class LDAPUpdate: self.pw_name = pwd.getpwuid(os.geteuid()).pw_name krbctx = krbV.default_context() + try: + self.realm = krbctx.default_realm + suffix = util.realm_to_suffix(self.realm) + except krbV.Krb5Error: + self.realm = None + suffix = None fqdn = installutils.get_fqdn() if fqdn is None: @@ -75,16 +81,14 @@ class LDAPUpdate: domain = ipautil.get_domain_name() libarch = self.__identify_arch() - suffix = util.realm_to_suffix(krbctx.default_realm) - self.realm = krbctx.default_realm - if not self.sub_dict.get("REALM"): - self.sub_dict["REALM"] = krbctx.default_realm + if not self.sub_dict.get("REALM") and self.realm is not None: + self.sub_dict["REALM"] = self.realm if not self.sub_dict.get("FQDN"): self.sub_dict["FQDN"] = fqdn if not self.sub_dict.get("DOMAIN"): self.sub_dict["DOMAIN"] = domain - if not self.sub_dict.get("SUFFIX"): + if not self.sub_dict.get("SUFFIX") and suffix is not None: self.sub_dict["SUFFIX"] = suffix if not self.sub_dict.get("ESCAPED_SUFFIX"): self.sub_dict["ESCAPED_SUFFIX"] = escape_dn_chars(suffix) |