diff --git a/src/ldap.js b/src/ldap.js index afdbdb1d0..26eebbf77 100644 --- a/src/ldap.js +++ b/src/ldap.js @@ -278,40 +278,6 @@ async function mailboxSearch(req, res, next) { } else { res.end(); } - } else if (req.dn.rdns[0].attrs.domain) { // legacy ldap mailbox search for old sogo - const domain = req.dn.rdns[0].attrs.domain.value.toLowerCase(); - - let [error, mailboxes] = await safe(mail.listMailboxes(domain, 1, 1000)); - if (error) return next(new ldap.OperationsError(error.toString())); - - mailboxes = mailboxes.filter(m => m.active); - - let results = []; - - // send mailbox objects - mailboxes.forEach(function (mailbox) { - var dn = ldap.parseDN(`cn=${mailbox.name}@${domain},domain=${domain},ou=mailboxes,dc=cloudron`); - - var obj = { - dn: dn.toString(), - attributes: { - objectclass: ['mailbox'], - objectcategory: 'mailbox', - cn: `${mailbox.name}@${domain}`, - uid: `${mailbox.name}@${domain}`, - mail: `${mailbox.name}@${domain}` - } - }; - - // ensure all filter values are also lowercase - var lowerCaseFilter = safe(function () { return ldap.parseFilter(req.filter.toString().toLowerCase()); }, null); - if (!lowerCaseFilter) return next(new ldap.OperationsError(safe.error.toString())); - if ((req.dn.equals(dn) || req.dn.parentOf(dn)) && lowerCaseFilter.matches(obj.attributes)) { - results.push(obj); - } - }); - - finalSend(results, req, res, next); } else { // new sogo let [error, mailboxes] = await safe(mail.listAllMailboxes(1, 1000)); if (error) return next(new ldap.OperationsError(error.toString()));