Parcourir la source

adding dmrac & dkim check

andre il y a 2 ans
Parent
commit
5b0f765622
1 fichiers modifiés avec 34 ajouts et 0 suppressions
  1. 34 0
      kerioEmail_mx.php

+ 34 - 0
kerioEmail_mx.php

@@ -160,13 +160,22 @@ function KerioEmailCheckDNS($params)
     }
     $domainTXT = $result->answer;
     $domainSPF = array();
+    $domainDKIM = array();
+    $domainDMARC = array();
     foreach($domainTXT as $txtRecord) {
         foreach($txtRecord->text as $txtData) {
             if(strstr($txtData,'v=spf')) {
                 array_push($domainSPF,$txtData);
             }
+            if(strstr($txtData,'v=DKIM')) {
+                array_push($domainDKIM,$txtData);
+            }
+            if(strstr($txtData,'v=DMARC')) {
+                array_push($domainDMARC,$txtData);
+            }
         }
     }
+    # SPF
     if (count($domainSPF) > 1) {
         $vars['multiSPF'] = TRUE;
     } else {
@@ -183,6 +192,31 @@ function KerioEmailCheckDNS($params)
         }
     }
     $vars['domainSPF'] = $domainSPF;
+    # DKIM
+    if (count($domainDKIM) > 1) {
+        $vars['multiDKIM'] = TRUE;
+    } else {
+        $vars['multiDKIM'] = FALSE;
+    }
+    if (empty($domainDKIM)) {
+        $vars['dkim'] = 'unset';
+    } else {        
+        $vars['dkim'] = 'set';
+    }
+    $vars['domainDKIM'] = $domainDKIM;
+    # DMARC
+    if (count($domainDMARC) > 1) {
+        $vars['multiDMARC'] = TRUE;
+    } else {
+        $vars['multiDARC'] = FALSE;
+    }
+    if (empty($domainDMARC)) {
+        $vars['dmarc'] = 'unset';
+    } else {        
+        $vars['dmarc'] = 'set';
+    }
+    $vars['domainDMARC'] = $domainDMARC;
+    # MX
     if(count($domainMX) > 1) {
         $vars['multiMX'] = TRUE;
     } else {