Sophie

Sophie

distrib > Mandriva > 2009.1 > x86_64 > media > main-release-src > by-pkgid > bbf3082ae0492f38fc1ce8966c068fc5 > files > 7

migrationtools-47-4mdv2009.1.src.rpm

--- MigrationTools-47/migrate_all_online.sh.suffix	2009-04-10 17:18:42.000000000 +0200
+++ MigrationTools-47/migrate_all_online.sh	2009-04-10 17:18:42.000000000 +0200
@@ -192,6 +192,31 @@
 echo "Migrating netgroups (by host)..."
 $PERL -I${INSTDIR} ${INSTDIR}migrate_netgroup_byhost.pl	$ETC_NETGROUP >> $DB
 
+# Try to add the top-level object, because it's usually missing.
+TYPE=`echo $LDAP_BASEDN | cut -f1 -d=`
+TOP=`echo $LDAP_BASEDN | cut -f1 -d, | cut -f2 -d=`
+CLASS=$TYPE
+if [ "$CLASS" = "dc" ] ; then
+	CLASS=domain
+elif [ "$CLASS" = "o" ] ; then
+	CLASS=organization
+elif [ "$CLASS" = "l" ] ; then
+	CLASS=locality
+elif [ "$CLASS" = "c" ] ; then
+	CLASS=country
+elif [ "$CLASS" = "nismapname" ] ; then
+	CLASS=nisMap
+elif [ "$CLASS" = "cn" ] ; then
+	CLASS=container
+fi
+
+cat << EOF | $LDAPADD -h $LDAPHOST -D "$LDAP_BINDDN" -x -w "$LDAP_BINDCRED"
+dn: $LDAP_BASEDN
+$TYPE: $TOP
+objectClass: top
+objectClass: $CLASS
+EOF
+
 echo "Importing into LDAP..."
 
 if [ `basename $LDAPADD` = "slapadd" ]; then