Code

* Code cleanup for non pre-defined ttag variable
[gosa.git] / include / functions_dns.inc
index 6fb7a5bb3f52de49254bcae33d246910d0a36054..e1cda20a0af871f8972d184bdf70ac72d122c6ce 100644 (file)
@@ -310,7 +310,7 @@ function getDNSZoneEntriesDiff($config,$newZones,$HostDn)
    */
   foreach($oldZones as $zone)  {
     $oldDn = "zoneName=".getNameFromMix($zone['InitialzoneName']).",".$HostDn;
-    $del[$oldDn] = "";
+    $del[$oldDn] = $zone;
   }
 
   /* Check for entries which must be updated 
@@ -570,12 +570,16 @@ function getDNSHostEntriesDiff($config,$oldName,$newEntry,$newName)
      *  like pTRRecord or CNAMERecord
      */
     if($rec['type']  == "pTRRecord"){
-      $PTRdn= "relativeDomainName=".$rec['value'].",".$baseDn;
+      $PTRdn= "relativeDomainName=".FlipIP($rec['value']).",".$baseDn;
       $ptrObj = $baseObj;
       $reverseName = getNameFromMix($reverseNameMix);
       $ptrObj['zoneName']           = $reverseName;
-      $ptrObj['pTRRecord']          = preg_replace("/\.\.$/",".",$newName.".".$zoneName.".");
-      $ptrObj['relativeDomainName'] = $rec['value'];
+      if(!preg_match("/\.$/",$newName)){
+        $ptrObj['pTRRecord']          = preg_replace("/\.\.$/",".",$newName.".".$zoneName.".");
+      }else{
+        $ptrObj['pTRRecord']          = preg_replace("/\.\.$/",".",$newName.".");
+      }
+      $ptrObj['relativeDomainName'] = FlipIP($rec['value']);
     
       $add[$PTRdn] = $ptrObj;
     }else