ignore bind plugin as well
[mirror/dsa-puppet.git] / modules / geodns / files / common / recvconf
index e2f7de3..dd9b575 100755 (executable)
@@ -1,13 +1,29 @@
-#!/bin/bash -e
+#!/bin/bash
+
+#
+# THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
+# USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
+#
+
+set -e
+set -u
 
 ## Copyright (c) 2005 David B. Harris <dbharris@eelf.ddts.net>
-## Copyright (c) 2005 Peter Palfrader <peter@palfrader.org>
+## Copyright (c) 2005,2009 Peter Palfrader <peter@palfrader.org>
 
 ## This text is released under the "three-clause BSD license".
 ## The full text of the license is available at the end of this file.
 
+if [ "$#" != 1 ]; then
+       echo "Usage: $0 <recvconf.files>" >&2
+       exit 1
+fi
+
+FILELIST="$1"
+
 printf "\nrecvconf on %s processing:\n" "$(hostname -s)"
-FILELIST=/etc/NOREPLY/recvconf.files
+
+umask 077
 
 temptar="$(mktemp)"
 chmod 0600 "$temptar"
@@ -83,7 +99,14 @@ copy_and_runcommands() {
 
 IN=0
 linenum=0
+file=""
 nextfile=""
+
+clear_vars() {
+       perms=""; user=""; group=""; precommand=""; postcommand=""
+}
+clear_vars
+
 while read line; do
     linenum="$(($linenum + 1))"
 
@@ -109,7 +132,7 @@ while read line; do
        ## the file, then set a $file to the new value and continue parsing.
        [ -n "$file" ] && copy_and_runcommands "$file" "$perms" "$user" "$group" "$precommand" "$postcommand"
        file="$(printf "%s" "$line" | sed -e 's/[[:space:]]*file[[:space:]]\+\([^[:space:]#]*\).*/\1/')"
-       perms=""; user=""; group=""; precommand=""; postcommand=""
+       clear_vars
        continue
     fi
 
@@ -149,6 +172,7 @@ if [ -s "$tempscript" ]; then
            exit 1
        fi
     done < "$tempscript"
+    rm -f -- "$tempoutput"
 fi
 
 # Check for any leftover files here; if there are any, exit with an error and print the list
@@ -158,7 +182,6 @@ if [ ! -z "$(find . -type f)" ]; then
 fi
 
 rm -f -- "$temptar"
-rm -f -- "$tempoutput"
 rm -f -- "$tempscript"
 cd
 rm -rf -- "$tempdir"