# 2008-03-22 Herbert Straub # Correct base64 encoding for dn # Details see http://www.linuxhacker.at # --- lib/Data/ldif.php.orig1 2008-03-22 13:24:49.000000000 +0100 +++ lib/Data/ldif.php 2008-03-22 13:55:50.000000000 +0100 @@ -192,26 +192,20 @@ // Store cn and mail separately for use in record dn if (!$this->_is_safe_string($row[$mozillaTurbaMap[$value]])) { $recordData .= $value . ':: ' . base64_encode($row[$mozillaTurbaMap[$value]]) ."\n"; - if ($value == 'cn') { - $recordCn = base64_encode($row[$mozillaTurbaMap[$value]]); - } - if ($value == 'mail') { - $recordMail = base64_encode($row[$mozillaTurbaMap[$value]]); - } } else { $recordData .= $value . ': ' . $row[$mozillaTurbaMap[$value]] ."\n"; - if ($value == 'cn') { - $recordCn = $row[$mozillaTurbaMap[$value]]; - } - if ($value == 'mail') { - $recordMail = $row[$mozillaTurbaMap[$value]]; - } } } } - $export .= 'dn: cn=' . $recordCn . ',mail=' . $recordMail . "\n" - . "objectclass: top\n" + $dn = 'cn=' . $row[$mozillaTurbaMap['cn']] . $row[$mozillaTurbaMap['mail']]; + if (!($this->_is_safe_string($row[$mozillaTurbaMap['cn']]) && + $this->_is_safe_string($row[$mozillaTurbaMap['cn']]))) { + $export .= 'dn:: ' . base64_encode($dn) . "\n"; + } else { + $export .= 'dn: ' . $dn . "\n"; + } + $export .= "objectclass: top\n" . "objectclass: person\n" . "objectclass: organizationalPerson\n" . "objectclass: inetOrgPerson\n"