diff --git a/ipaserver/plugins/dnsserver.py b/ipaserver/plugins/dnsserver.py index d635722a6..49bd6cf1a 100644 --- a/ipaserver/plugins/dnsserver.py +++ b/ipaserver/plugins/dnsserver.py @@ -29,6 +29,7 @@ from ipaserver.plugins.baseldap import ( LDAPDelete, ) from .dns import dns_container_exists +from ipapython.dn import DN __doc__ = _(""" @@ -166,6 +167,16 @@ class dnsserver_find(LDAPSearch): '%(count)d DNS servers matched', 0 ) + def pre_callback(self, ldap, filters, attrs_list, + base_dn, scope, *args, **options): + assert isinstance(base_dn, DN) + + if not dns_container_exists(self.api.Backend.ldap2): + raise errors.InvocationError( + format=_('IPA DNS Server is not installed')) + + return (filters, base_dn, scope) + @register() class dnsserver_show(LDAPRetrieve):