1 # -*- mode: sh; sh-basic-offset: 3; indent-tabs-mode: nil; -*-
3 HELPERS="$HELPERS ldap:ldap_database_backup"
7 checkBox "ldap action wizard" "check options (slapcat OR ldapsearch)" \
8 "slapcat" "export ldif using slapcat" yes \
9 "ldapsearch" "export ldif using ldapsearch" no \
10 "compress" "compress the ldif output files" yes \
11 "ssl" "use SSL (deprecated)" no \
12 "tls" "use TLS extended operations (RFC2246, RFC2830)" yes
14 compress="compress = no"
15 method="method = <unset>"
16 restart="restart = no"
21 [ $status = 1 ] && return;
23 for opt in $result; do
25 '"compress"') compress="compress = yes";;
27 method="method = slapcat"
28 [ "$_RESTART" == "yes" ] && restart="restart = yes"
31 method="method = ldapsearch"
32 inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what password file to use. It must have the password with no trailing return and it should not be world readable."
34 passwordfile="passwordfile = $REPLY"
35 inputBox "ldap action wizard" "ldapsearch requires authentication. Specify here what DN to bind as:"
37 binddn="binddn = $REPLY"
38 require_packages ldap-utils
40 '"ssl"') ssl="ssl = yes";;
41 '"tls"') tls="tls = yes";;
44 get_next_filename $configdirectory/30.ldap
45 cat > $next_filename <<EOF
53 # backupdir = /var/backups/ldap
54 # conf = /etc/ldap/slapd.conf
57 chmod 600 $next_filename
66 for backend in `grep -e "^backend" /etc/ldap/slapd.conf | @AWK@ '{print $2}'`; do
67 if [ "$backend" == "bdb" ]; then
69 elif [ "$backend" == "hdb" ]; then
71 elif [ "$backend" == "ldbm" ]; then
76 if [ "$bdb" == "yes" -o "$hdb" == "yes" ]; then
77 if [ "$ldbm" == "no" ]; then
78 msgBox "ldap action wizard" "It looks like the backend in your slapd.conf is set to BDB or HDB. If this is not the case, exit this wizard! From this point on, we will assume BDB or HDB backend, which might have disasterious consequences if this is incorrect."
82 elif [ "$ldbm" == "yes" ]; then
83 msgBox "ldap action wizard" "It looks like the backend in your slapd.conf is set to LDBM. Because of this, you will have less options (because it is not safe to use slapcat while slapd is running LDBM)."
87 msgBox "ldap action wizard" "I couldn't find any backends in your slapd.conf. Bailing out."