typo in backupninja.1
[matthijs/upstream/backupninja.git] / handlers / ldap
index ee46831092d10688be9d67d09401c7329346aeb5..5f9040a32ebe056f3f3c24050aa4ada9ab2a2d5f 100644 (file)
@@ -12,6 +12,14 @@ getconf restart no
 getconf method ldapsearch
 getconf passwordfile
 getconf binddn
+getconf ldaphost
+getconf tls yes
+
+if [ $tls = 'yes' ]; then
+   URLBASE="ldaps"
+else
+   URLBASE="ldap"
+fi
 
 status="ok"
 
@@ -19,7 +27,7 @@ status="ok"
 [ -d $backupdir ] || mkdir -p $backupdir
 [ -d $backupdir ] || fatal "Backup directory '$backupdir'"
 
-dbsuffixes=(`awk 'BEGIN {OFS=":"} /[:space:]*^database[:space:]*\w*/ {db=$2}; /^[:space:]*suffix[:space:]*\w*/ {if (db=="bdb"||db=="ldbm") print db,$2}' $conf|sed -e 's/[" ]//g'`)
+dbsuffixes=(`@AWK@ 'BEGIN {OFS=":"} /[:space:]*^database[:space:]*\w*/ {db=$2}; /^[:space:]*suffix[:space:]*\w*/ {if (db=="bdb"||db=="ldbm") print db,$2}' $conf|@SED@ -e 's/[" ]//g'`)
 
 ## LDIF DUMP
 
@@ -46,15 +54,11 @@ if [ "$ldif" == "yes" ]; then
       fi
       
       if [ "$method" == "slapcat" ]; then
-         if [ "$compress" == "yes" ]; then
-            execstr="$SLAPCAT -f $conf -b $dbsuffix | $GZIP"
-         else
-            execstr="$SLAPCAT -f $conf -b $dbsuffix"
-         fi
+         execstr="$SLAPCAT -f $conf -b $dbsuffix"
          debug "$execstr"
       else
-         if [ "$compress" == "yes" ]; then
-            execstr="$LDAPSEARCH -x -L -b ""$dbsuffix"" -D ""$binddn"" -y $passwordfile | $GZIP"
+         if [ -n "$ldaphost" ]; then
+            execstr="$LDAPSEARCH -H $URLBASE://$ldaphost -x -L -b ""$dbsuffix"" -D ""$binddn"" -y $passwordfile"
          else
             execstr="$LDAPSEARCH -x -L -b ""$dbsuffix"" -D ""$binddn"" -y $passwordfile"
          fi
@@ -67,13 +71,17 @@ if [ "$ldif" == "yes" ]; then
             /etc/init.d/slapd stop
          fi
          
-         touch $dumpdir/$dbsuffix.ldif
-         if [ ! -f $dumpdir/$dbsuffix.ldif ]; then
-            fatal "Couldn't create ldif dump file: $dumpdir/$dbsuffix.ldif"
+        ext=
+        if [ "$compress" == "yes" ]; then
+           ext=".gz"
+        fi
+         touch $dumpdir/$dbsuffix.ldif$ext
+         if [ ! -f $dumpdir/$dbsuffix.ldif$ext ]; then
+            fatal "Couldn't create ldif dump file: $dumpdir/$dbsuffix.ldif$ext"
          fi
          
          if [ "$compress" == "yes" ]; then
-            output=`$execstr > $dumpdir/$dbsuffix.ldif.gz`
+            output=`$execstr | $GZIP > $dumpdir/$dbsuffix.ldif.gz`
          else
             output=`$execstr > $dumpdir/$dbsuffix.ldif`
          fi