[Freeipa-devel] [PATCH 2 of 7] Small refactor of dsinstance.config_dirname()

Rob Crittenden rcritten at redhat.com
Fri Jan 25 19:14:45 UTC 2008


I'm not sure about this one. I think we purposely chose to link the 
serverid and the realm name when we switched from using a GUID.

Simo, do you have any issues with this? You were more involved in that 
than I was.

rob

Mark McLoughlin wrote:
> # HG changeset patch
> # User Mark McLoughlin <markmc at redhat.com>
> # Date 1201003079 0
> # Node ID 88b7b4b3b16ddf1770ab6ecf3f43b39b0d97fe63
> # Parent  8fea038a7fc9219cacad0234ac7f124fb206caad
> Small refactor of dsinstance.config_dirname()
> 
> If, in future, we change the server ID so that it's not
> derived from the realm name, there's a fair few places
> that need to be changed.
> 
> Make that easier by having config_dirname() take the
> server ID rather than the realm name. That makes sense
> anyway so we don't have to realm_to_serverid() so
> much.
> 
> Signed-off-by: Mark McLoughlin <markmc at redhat.com>
> 
> diff -r 8fea038a7fc9 -r 88b7b4b3b16d ipa-server/ipaserver/dsinstance.py
> --- a/ipa-server/ipaserver/dsinstance.py	Tue Jan 22 08:03:06 2008 +0000
> +++ b/ipa-server/ipaserver/dsinstance.py	Tue Jan 22 11:57:59 2008 +0000
> @@ -48,11 +48,11 @@ def realm_to_serverid(realm_name):
>  def realm_to_serverid(realm_name):
>      return "-".join(realm_name.split("."))
>  
> -def config_dirname(realm_name):
> -    return "/etc/dirsrv/slapd-" + realm_to_serverid(realm_name) + "/"
> -
> -def schema_dirname(realm_name):
> -    return config_dirname(realm_name) + "/schema/"
> +def config_dirname(serverid):
> +    return "/etc/dirsrv/slapd-" + serverid + "/"
> +
> +def schema_dirname(serverid):
> +    return config_dirname(serverid) + "/schema/"
>  
>  def erase_ds_instance_data(serverid):
>      try:
> @@ -198,13 +198,13 @@ class DsInstance(service.Service):
>  
>      def __add_default_schemas(self):
>          shutil.copyfile(ipautil.SHARE_DIR + "60kerberos.ldif",
> -                        schema_dirname(self.realm_name) + "60kerberos.ldif")
> +                        schema_dirname(self.serverid) + "60kerberos.ldif")
>          shutil.copyfile(ipautil.SHARE_DIR + "60samba.ldif",
> -                        schema_dirname(self.realm_name) + "60samba.ldif")
> +                        schema_dirname(self.serverid) + "60samba.ldif")
>          shutil.copyfile(ipautil.SHARE_DIR + "60radius.ldif",
> -                        schema_dirname(self.realm_name) + "60radius.ldif")
> +                        schema_dirname(self.serverid) + "60radius.ldif")
>          shutil.copyfile(ipautil.SHARE_DIR + "60ipaconfig.ldif",
> -                        schema_dirname(self.realm_name) + "60ipaconfig.ldif")
> +                        schema_dirname(self.serverid) + "60ipaconfig.ldif")
>  
>      def __restart_instance(self):
>          try:
> @@ -252,7 +252,7 @@ class DsInstance(service.Service):
>          self.__ldap_mod("master-entry.ldif", self.sub_dict)
>  
>      def __enable_ssl(self):
> -        dirname = config_dirname(self.realm_name)
> +        dirname = config_dirname(self.serverid)
>          ca = certs.CertDB(dirname)
>          if self.pkcs12_info:
>              ca.create_from_pkcs12(self.pkcs12_info[0], self.pkcs12_info[1])
> @@ -296,11 +296,11 @@ class DsInstance(service.Service):
>  
>      def __certmap_conf(self):
>          shutil.copyfile(ipautil.SHARE_DIR + "certmap.conf.template",
> -                        config_dirname(self.realm_name) + "certmap.conf")
> +                        config_dirname(self.serverid) + "certmap.conf")
>  
>      def change_admin_password(self, password):
>          logging.debug("Changing admin password")
> -        dirname = config_dirname(self.realm_name)
> +        dirname = config_dirname(self.serverid)
>          if ipautil.dir_exists("/usr/lib64/mozldap"):
>              app = "/usr/lib64/mozldap/ldappasswd"
>          else:
> diff -r 8fea038a7fc9 -r 88b7b4b3b16d ipa-server/ipaserver/httpinstance.py
> --- a/ipa-server/ipaserver/httpinstance.py	Tue Jan 22 08:03:06 2008 +0000
> +++ b/ipa-server/ipaserver/httpinstance.py	Tue Jan 22 11:57:59 2008 +0000
> @@ -130,7 +130,7 @@ class HTTPInstance(service.Service):
>              print "Updating %s failed." % NSS_CONF
>  
>      def __setup_ssl(self):
> -        ds_ca = certs.CertDB(dsinstance.config_dirname(self.realm))
> +        ds_ca = certs.CertDB(dsinstance.config_dirname(dsinstance.realm_to_serverid(self.realm)))
>          ca = certs.CertDB(NSS_DIR)
>          ds_ca.cur_serial = 2000
>          ca.create_from_cacert(ds_ca.cacert_fname)
> @@ -144,7 +144,7 @@ class HTTPInstance(service.Service):
>          prefs_fd.close()                
>  
>          # The signing cert is generated in __setup_ssl
> -        ds_ca = certs.CertDB(dsinstance.config_dirname(self.realm))
> +        ds_ca = certs.CertDB(dsinstance.config_dirname(dsinstance.realm_to_serverid(self.realm)))
>          ca = certs.CertDB(NSS_DIR)
>  
>          # Publish the CA certificate
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3245 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://listman.redhat.com/archives/freeipa-devel/attachments/20080125/4077847a/attachment.bin>


More information about the Freeipa-devel mailing list