diff --git a/data/web/autodiscover.php b/data/web/autodiscover.php index fe1e8e910..e5d159815 100644 --- a/data/web/autodiscover.php +++ b/data/web/autodiscover.php @@ -94,7 +94,7 @@ if(!$data) { list($usec, $sec) = explode(' ', microtime()); ?> - + 600 Invalid Request @@ -128,7 +128,7 @@ try { list($usec, $sec) = explode(' ', microtime()); ?> - + 600 Invalid Request @@ -139,9 +139,9 @@ try { exit(0); } -$username = trim($email); +$username = trim((string)$email); try { - $stmt = $pdo->prepare("SELECT `name`, `active` FROM `mailbox` + $stmt = $pdo->prepare("SELECT `mailbox`.`name`, `mailbox`.`active` FROM `mailbox` INNER JOIN `domain` ON `mailbox`.`domain` = `domain`.`domain` WHERE `mailbox`.`username` = :username AND `mailbox`.`active` = '1' @@ -150,7 +150,19 @@ try { $MailboxData = $stmt->fetch(PDO::FETCH_ASSOC); } catch(PDOException $e) { - die("Failed to determine name from SQL"); + // Database error - return error response with complete XML + list($usec, $sec) = explode(' ', microtime()); +?> + + + 500 + Database Error + + + + + - + 600 Mailbox not found