Use mktemp to create our temporary files instead of basing them on our PID.
Only portable if you assume the presence of a mktemp helper.
diff -ur krb5-1.3.4/src/util/send-pr/send-pr.sh krb5-1.3.4/src/util/send-pr/send-pr.sh
--- krb5-1.3.4/src/util/send-pr/send-pr.sh 1997-03-20 01:13:56.000000000 +0100
+++ krb5-1.3.4/src/util/send-pr/send-pr.sh 2004-09-20 11:28:56.000000000 +0200
@@ -96,9 +96,9 @@
fi
fi
-TEMP=$TMPDIR/p$$
-BAD=$TMPDIR/pbad$$
-REF=$TMPDIR/pf$$
+TEMP=`mktemp "$TMPDIR"/p.XXXXXX` || exit 1
+BAD=`mktemp "$TMPDIR"/pbad.XXXXXX` || exit 1
+REF=`mktemp "$TMPDIR"/pf.XXXXXX` || exit 1
# find a user name
if [ "$LOGNAME" = "" ]; then
@@ -122,9 +122,10 @@
else
# Must use temp file due to incompatibilities in quoting behavior
# and to protect shell metacharacters in the expansion of $LOGNAME
- $PASSWD | grep "^$LOGNAME:" | awk -F: '{print $5}' | sed -e 's/,.*//' > $TEMP
- ORIGINATOR="`cat $TEMP`"
- rm -f $TEMP
+ TEMP2=`mktemp "$TMPDIR"/plogname.XXXXXX` || exit 1
+ $PASSWD | grep "^$LOGNAME:" | awk -F: '{print $5}' | sed -e 's/,.*//' > $TEMP2
+ ORIGINATOR="`cat $TEMP2`"
+ rm -f $TEMP2
fi
if [ -n "$ORGANIZATION" ]; then
@@ -280,7 +281,7 @@
# Catch some signals. ($xs kludge needed by Sun /bin/sh)
xs=0
trap 'rm -f $REF $TEMP; exit $xs' 0
-trap 'echo "$COMMAND: Aborting ..."; rm -f $REF $TEMP; xs=1; exit' 1 2 3 13 15
+trap 'echo "$COMMAND: Aborting ..."; rm -f "$REF" "$BAD" "$TEMP"; xs=1; exit' 1 2 3 13 15
# If they told us to use a specific file, then do so.
if [ -n "$IN_FILE" ]; then