Hi, this patch adds DNS service records for for Windows systems during the setup of trust support.
Fixes https://fedorahosted.org/freeipa/ticket/1939. bye, Sumit
>From 098f835edf3baedf2e69392909c9e725fde378f0 Mon Sep 17 00:00:00 2001 From: Sumit Bose <sb...@redhat.com> Date: Thu, 13 Oct 2011 12:01:57 +0200 Subject: [PATCH] Add DNS service records for Windows https://fedorahosted.org/freeipa/ticket/1939 --- ipaserver/install/adtrustinstance.py | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-) diff --git a/ipaserver/install/adtrustinstance.py b/ipaserver/install/adtrustinstance.py index d1dc759c611f03215b461b8fe7ebc32d15dc857a..7899d9deca97f9b0311585ef22b1fb5944501bf8 100644 --- a/ipaserver/install/adtrustinstance.py +++ b/ipaserver/install/adtrustinstance.py @@ -27,6 +27,7 @@ import tempfile import installutils from ipaserver import ipaldap from ipaserver.install.dsinstance import realm_to_serverid +from ipaserver.install.bindinstance import get_rr, add_rr, del_rr from ipalib import errors from ipapython import sysrestore from ipapython import ipautil @@ -246,6 +247,29 @@ class ADTRUSTInstance(service.Service): except ipautil.CalledProcessError, e: logging.critical("Failed to add key for %s" % cifs_principal) + def __add_dns_service_records(self): + zone = self.domain_name + ipa_srv_rec = ("_ldap._tcp", "_kerberos._tcp", "_kerberos._udp") + win_srv_suffix = (".Default-First-Site-Name._sites.dc._msdcs", + ".dc._msdcs") + + for srv in ipa_srv_rec: + ipa_rdata = get_rr(zone, srv, "SRV") + if not ipa_rdata: + print "Canot find %s service record in locally, please add " \ + "%s.Default-First-Site-Name._sites.dc._msdcs and " \ + "%s.dc._msdcs for the %s DNS zone to your DNS server" % \ + (srv, srv, srv, zone) + else: + for suff in win_srv_suffix: + win_srv = srv+suff + win_rdata = get_rr(zone, win_srv, "SRV") + if win_rdata: + for rec in win_rdata: + del_rr(zone, win_srv, "SRV", rec) + for rec in ipa_rdata: + add_rr(zone, win_srv, "SRV", rec) + def __start(self): try: self.start() @@ -312,6 +336,7 @@ class ADTRUSTInstance(service.Service): self.step("Adding cifs Kerberos principal", self.__setup_principal) self.step("Adding admin(group) SIDs", self.__add_admin_sids) self.step("configuring smbd to start on boot", self.__enable) + self.step("adding special DNS service records", self.__add_dns_service_records) self.step("starting smbd", self.__start) self.start_creation("Configuring smbd:") -- 1.7.6
_______________________________________________ Freeipa-devel mailing list Freeipa-devel@redhat.com https://www.redhat.com/mailman/listinfo/freeipa-devel