diff --git a/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java b/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java index ba4d456..e1e6df9 100644 --- a/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java +++ b/hsarback/src/de/hsadmin/mods/dom/DomainModuleImpl.java @@ -108,6 +108,9 @@ public class DomainModuleImpl extends AbstractModuleImpl { List resultList = domainQuery.getResultList(); if (resultList.size() > 0) { Domain superDom = (Domain) resultList.get(0); + if (superDom.isPacDomain()) { + throw new HSAdminException("subdomains to pacdomain " + superDom.getName() + " are not allowed"); + } if (loginUser.hasPacAdminRoleFor(superDom.getUser().getPac())) { break; // same pac } @@ -118,7 +121,7 @@ public class DomainModuleImpl extends AbstractModuleImpl { if (dnsCheck.checkDomain(dom.getName())) { break; } else { - throw new HSAdminException("domain " + dom.getName() + " is not delegated to " + dom.getDnsMaster()); + throw new AuthorisationException(loginUser, "add", dom); } } }