From 0f3764e59223d8e9c87f30ce85425c00422ff25d Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Tue, 27 Apr 2010 09:01:12 -0400
Subject: [PATCH] - add DNS checking code for Windows & PHP<5.3.0

---
 program/include/main.inc |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/program/include/main.inc b/program/include/main.inc
index 535fde1..004212f 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -1588,8 +1588,15 @@
     if (!$dns_check || !rcmail::get_instance()->config->get('email_dns_check'))
       return true;
 
-    if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN' && version_compare(PHP_VERSION, '5.3.0', '<'))
-      return true;
+    if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN' && version_compare(PHP_VERSION, '5.3.0', '<')) {
+      $lookup = array();
+      @exec("nslookup -type=MX " . escapeshellarg($domain_part) . " 2>&1", $lookup);
+      foreach ($lookup as $line) {
+        if (strpos($line, 'MX preference'))
+          return true;
+      }
+      return false;
+    }
 
     // find MX record(s)
     if (getmxrr($domain_part, $mx_records))

--
Gitblit v1.9.1