Sophie

Sophie

distrib > Mageia > 3 > i586 > media > core-release-src > by-pkgid > ad3e431a5e447f33a7fcc6d79a018875 > files > 10

openldap-extra-schemas-1.3-14.mga3.src.rpm

#!/bin/bash

cat > schema.conf <<EOF
include /usr/share/openldap/schema/core.schema
include /usr/share/openldap/schema/cosine.schema
#include /usr/share/openldap/schema/nis.schema
include /usr/share/openldap/schema/inetorgperson.schema
EOF

echo "Note: skipping autofs and apple if present"
find SOURCES -name '*.schema'|sed -e 's/^/include /g'|grep -Ev '(autofs|apple)' >> schema.conf

rm -Rf slapd.d
mkdir slapd.d
/usr/sbin/slaptest -f schema.conf -F slapd.d

pushd slapd.d/cn=config/cn=schema >/dev/null
perl -p0i -e 's/\n(structuralObjectClass|entryUUID|creatorsName|createTimestamp|entryCSN|modifiersName|modifyTimestamp)[^\n]*//g;s/cn(=|: ){\d+}/cn$1/g;s/^(dn: cn=\w+)\n/$1,cn=schema,cn=config\n/g' *.ldif

for i in cn=*;do mv $i ${i#*\}};done
popd >/dev/null

for i in slapd.d/cn=config/cn=schema/*.ldif
do
	schema=`basename $i`
	if ! diff -u SOURCES/$schema slapd.d/cn=config/cn=schema/$schema 
	then cp slapd.d/cn=config/cn=schema/$schema SOURCES/$schema
	fi
done
rm -Rf slapd.d