1#! /bin/sh
2# $OpenLDAP$
3## This work is part of OpenLDAP Software <http://www.openldap.org/>.
4##
5## Copyright 1998-2021 The OpenLDAP Foundation.
6## All rights reserved.
7##
8## Redistribution and use in source and binary forms, with or without
9## modification, are permitted only as authorized by the OpenLDAP
10## Public License.
11##
12## A copy of this license is available in the file LICENSE in the
13## top-level directory of the distribution or, alternatively, at
14## <http://www.OpenLDAP.org/license.html>.
15
16echo "running defines.sh"
17. $SRCDIR/scripts/defines.sh
18
19if test $RWM = rwmno ; then
20          echo "rwm (Rewrite/remap) overlay not available, test skipped"
21          exit 0
22fi
23
24echo ""
25
26if test "x$RELAYS" = "x" ; then
27          RELAYS=
28          # back-relay
29          if test $BACKRELAY = relayno ; then
30                    echo "relay backend not available, test skipped"
31          else
32                    if test "x$RELAYS" != "x" ; then
33                              RELAYS="${RELAYS} "
34                    fi
35                    RELAYS="${RELAYS}relay"
36          fi
37
38          # back-ldap
39          if test $BACKLDAP = ldapno ; then
40                    echo "ldap backend not available, test skipped"
41          else
42                    if test "x$RELAYS" != "x" ; then
43                              RELAYS="${RELAYS} "
44                    fi
45                    RELAYS="${RELAYS}ldap"
46          fi
47
48          # back-meta
49          if test $BACKMETA = metano ; then
50                    echo "meta backend not available, test skipped"
51          else
52                    if test "x$RELAYS" != "x" ; then
53                              RELAYS="${RELAYS} "
54                    fi
55                    RELAYS="${RELAYS}meta"
56          fi
57fi
58
59if test "x$RELAYS" = "x" ; then
60          echo "no relaying capable backend is available"
61          echo ">>>>> Test succeeded"
62          exit 0
63fi
64
65echo "Testing virtual naming context mapping with $RELAYS backend(s)..."
66echo ""
67
68tmpfile=savelog.log
69if test -f $tmpfile ; then
70          rm -f $tmpfile
71fi
72first=1
73for RELAY in $RELAYS ; do
74          if test $first = 1 ; then
75                    first=0
76          else
77                    echo ">>>>> waiting for things to exit"
78                    test $KILLSERVERS != no && wait
79                    echo ""
80
81                    mv -f $LOG1 $tmpfile
82                    rm -rf $TESTDIR
83          fi
84
85          mkdir -p $TESTDIR $DBDIR1
86
87          if test -f $tmpfile ; then
88                    mv $tmpfile $LOG1
89          fi
90
91          . $SRCDIR/scripts/relay
92done
93
94echo ">>>>> Test succeeded"
95
96test $KILLSERVERS != no && wait
97
98exit 0
99