diff options
author | Andrew Bartlett <abartlet@samba.org> | 2007-01-31 01:28:55 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:44:27 -0500 |
commit | 5e12e0024934c074ad5141f67fb95550e8aac69c (patch) | |
tree | d2963908cd4d6ea317651202cbece43e5dd4d404 | |
parent | f7fb1e442ddd27917322069b3165cf3de340df00 (diff) | |
download | samba-5e12e0024934c074ad5141f67fb95550e8aac69c.tar.gz samba-5e12e0024934c074ad5141f67fb95550e8aac69c.tar.bz2 samba-5e12e0024934c074ad5141f67fb95550e8aac69c.zip |
r21068: Code to configure, start and stop Fedora DS.
We can't actually use it, as we are stuck inside our socket_wrapper
network, and can't talk to it.
Andrew Bartlett
(This used to be commit bd564da6b9b45c438ef81b42dc156116ed81cbe7)
-rwxr-xr-x | source4/script/tests/mktestsetup.sh | 35 | ||||
-rwxr-xr-x | source4/script/tests/selftest.sh | 16 |
2 files changed, 41 insertions, 10 deletions
diff --git a/source4/script/tests/mktestsetup.sh b/source4/script/tests/mktestsetup.sh index 988f44f664..7dd35672dc 100755 --- a/source4/script/tests/mktestsetup.sh +++ b/source4/script/tests/mktestsetup.sh @@ -488,11 +488,11 @@ cat > $LDAPDIR/db/DB_CONFIG <<EOF EOF FEDORA_DS_LDAP_URI="ldap://127.0.0.1:$FEDORA_DS_LDAP_PORT" -export FEDORA_DS_LDAP_URI cat >$FEDORA_DS_INF <<EOF [General] +SuiteSpotUserID = $ROOT FullMachineName= localhost ServerRoot= $LDAPDIR ConfigDirectoryLdapURL= $FEDORA_DS_LDAP_URI/o=NetscapeRoot @@ -511,6 +511,18 @@ Components= slapd ServerIdentifier= samba4 InstallLdifFile=$FEDORA_DS_INITIAL_LDIF +inst_dir= $LDAPDIR/slapd-samba4 +config_dir= $LDAPDIR/slapd-samba4 +schema_dir= $LDAPDIR/slapd-samba4/schema +lock_dir= $LDAPDIR/slapd-samba4/lock +log_dir= $LDAPDIR/slapd-samba4/logs +run_dir= $LDAPDIR/slapd-samba4/logs +db_dir= $LDAPDIR/slapd-samba4/db +bak_dir= $LDAPDIR/slapd-samba4/bak +tmp_dir= $LDAPDIR/slapd-samba4/tmp +ldif_dir= $LDAPDIR/slapd-samba4/ldif +cert_dir= $LDAPDIR/slapd-samba4 + [base] Components= base @@ -541,17 +553,27 @@ PROVISION_OPTIONS="$PROVISION_OPTIONS --adminpass $PASSWORD --root=$ROOT" PROVISION_OPTIONS="$PROVISION_OPTIONS --simple-bind-dn=cn=Manager,$BASEDN --password=$PASSWORD --root=$ROOT" $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS >&2 -LDAPI="ldapi://$LDAPDIR/ldapi" -LDAPI_ESCAPE="ldapi://"`echo $LDAPDIR/ldapi | sed 's|/|%2F|g'` +if test -z "$FEDORA_DS_PREFIX"; then + LDAP_URI="ldapi://$LDAPDIR/ldapi" + LDAP_URI_ESCAPE="ldapi://"`echo $LDAPDIR/ldapi | sed 's|/|%2F|g'` export LDAPI export LDAPI_ESCAPE +else + LDAP_URI=$FEDORA_DS_LDAP_URI; + LDAP_URI_ESCAPE=$FEDORA_DS_LDAP_URI; + PROVISION_OPTIONS="$PROVISION_OPTIONS --ldap-module=nsuniqueid" + #it is easier to base64 encode this than correctly escape it: + # (targetattr = "*") (version 3.0;acl "full access to all by all";allow (all)(userdn = "ldap:///anyone");) + PROVISION_ACI="--aci=aci:: KHRhcmdldGF0dHIgPSAiKiIpICh2ZXJzaW9uIDMuMDthY2wgImZ1bGwgYWNjZXNzIHRvIGFsbCBieSBhbGwiO2FsbG93IChhbGwpKHVzZXJkbiA9ICJsZGFwOi8vL2FueW9uZSIpOykK" +fi + #This uses the provision we just did, to read out the schema $srcdir/bin/ad2oLschema $CONFIGURATION -H $PRIVATEDIR/sam.ldb -I $srcdir/setup/schema-map-openldap-2.3 -O $LDAPDIR/ad.schema >&2 $srcdir/bin/ad2oLschema $CONFIGURATION -H $PRIVATEDIR/sam.ldb --option=convert:target=fedora-ds -I $srcdir/setup/schema-map-fedora-ds-1.0 -O $LDAPDIR/99_ad.ldif >&2 #Now create an LDAP baseDN -$srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS --ldap-base >&2 +$srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS "$PROVISION_ACI" --ldap-base >&2 OLDPATH=$PATH PATH=/usr/local/sbin:/usr/sbin:/sbin:$PATH @@ -604,8 +626,9 @@ echo "PIDDIR=$PIDDIR" echo "AUTH=$AUTH" echo "SERVER=$SERVER" echo "NETBIOSNAME=$NETBIOSNAME" -echo "LDAPI=$LDAPI" -echo "LDAPI_ESCAPE=$LDAPI_ESCAPE" +echo "LDAP_URI=$LDAP_URI" +echo "LDAP_URI_ESCAPE=$LDAP_URI_ESCAPE" +echo "FEDORA_DS_INF=$FEDORA_DS_INF" echo "FEDORA_DS_LDAP_URI=$FEDORA_DS_LDAP_URI" echo "DOMAIN=$DOMAIN" echo "USERNAME=$USERNAME" diff --git a/source4/script/tests/selftest.sh b/source4/script/tests/selftest.sh index 885486d546..70a91d4697 100755 --- a/source4/script/tests/selftest.sh +++ b/source4/script/tests/selftest.sh @@ -72,10 +72,14 @@ incdir=`dirname $ARG0` #Start slapd before smbd if [ x"$TEST_LDAP" = x"yes" ]; then - slapd_start || exit 1; + if test -z "$FEDORA_DS_PREFIX"; then + slapd_start || exit 1; + else + perl $FEDORA_DS_PREFIX/lib/fedora-ds/ds_newinst.pl $FEDORA_DS_INF || exit 1; + fi echo -n "LDAP PROVISIONING..." - $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS --ldap-backend=$LDAPI || { - echo "LDAP PROVISIONING failed: $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS --ldap-backend=$LDAPI" + $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS "$PROVISION_ACI" --ldap-backend=$LDAP_URI || { + echo "LDAP PROVISIONING failed: $srcdir/bin/smbscript $srcdir/setup/provision $PROVISION_OPTIONS $PROVISION_ACI --ldap-backend=$LDAP_URI" exit 1; } #LDAP is slow @@ -246,7 +250,11 @@ totalfailed=$? kill `cat $PIDDIR/smbd.pid` if [ "$TEST_LDAP"x = "yesx" ]; then - kill `cat $PIDDIR/slapd.pid` + if test -z "$FEDORA_DS_PREFIX"; then + kill `cat $PIDDIR/slapd.pid` + else + $LDAPDIR/slapd-samba4/stop-slapd + fi fi END=`date` |