summaryrefslogtreecommitdiffstats
path: root/ldap/admin/src/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'ldap/admin/src/scripts')
-rw-r--r--ldap/admin/src/scripts/DSMigration.pm.in8
1 files changed, 6 insertions, 2 deletions
diff --git a/ldap/admin/src/scripts/DSMigration.pm.in b/ldap/admin/src/scripts/DSMigration.pm.in
index a617e8c4..0de30740 100644
--- a/ldap/admin/src/scripts/DSMigration.pm.in
+++ b/ldap/admin/src/scripts/DSMigration.pm.in
@@ -549,7 +549,11 @@ sub fixAttrsInEntry {
my ($ent, $mig, $inst) = @_;
for my $attr (keys %{$ent}) {
my $lcattr = lc $attr;
- if ($transformAttr{$lcattr}) {
+ if ($ignoreOld{$lcattr}) {
+ debug(3, "fixAttrsInEntry: ignoring old invalid or obsolete attr $attr\n");
+ $ent->remove($attr);
+ next;
+ } elsif ($transformAttr{$lcattr}) {
my $newval = &{$transformAttr{$lcattr}}($ent, $attr, $mig, $inst);
if (!$newval) {
debug(2, "Removing attribute $attr from entry ", $ent->getDN(), "\n");
@@ -558,7 +562,7 @@ sub fixAttrsInEntry {
debug(2, "Setting new value $newval for attribute $attr in entry ", $ent->getDN(), "\n");
$ent->setValues($attr, $newval);
}
- }
+ } # else just keep as is
}
}