Rename tmpdir funcs. Include pid in tmpdir name.

This commit is contained in:
Daniel Nichter
2011-11-28 11:16:23 -07:00
parent 42675e33b8
commit 173085e823
2 changed files with 18 additions and 16 deletions

View File

@@ -27,7 +27,7 @@ set -u
TMPDIR=""
OPT_TMPDIR=${OPT_TMPDIR:""}
# Sub: set_TMPDIR
# Sub: mk_tmpdir
# Create a secure tmpdir and set TMPDIR.
#
# Optional Global Variables:
@@ -35,7 +35,7 @@ OPT_TMPDIR=${OPT_TMPDIR:""}
#
# Set Global Variables:
# TMPDIR - Absolute path of secure temp directory.
set_TMPDIR() {
mk_tmpdir() {
if [ -n "$OPT_TMPDIR" ]; then
TMPDIR="$OPT_TMPDIR"
if [ ! -d "$TMPDIR" ]; then
@@ -43,19 +43,21 @@ set_TMPDIR() {
fi
else
local tool=`basename $0`
TMPDIR=`mktemp -d /tmp/${tool}.XXXXX` || die "Cannot make secure tmpdir"
local pid="$$"
TMPDIR=`mktemp -d /tmp/${tool}.${pid}.XXXXX` \
|| die "Cannot make secure tmpdir"
fi
}
# Sub: rm_TMPDIR
# Sub: rm_tmpdir
# Remove the tmpdir and unset TMPDIR.
#
# Optional Global Variables:
# TMPDIR - TMPDIR set by <set_TMPDIR()>.
# TMPDIR - TMPDIR set by <mk_tmpdir()>.
#
# Set Global Variables:
# TMPDIR - Set to "".
rm_TMPDIR() {
rm_tmpdir() {
if [ -n "$TMPDIR" ] && [ -d "$TMPDIR" ]; then
rm -rf $TMPDIR
fi

View File

@@ -8,17 +8,17 @@ source "$LIB_DIR/tmpdir.sh"
TEST_NAME="TMPDIR not defined"
is "$TMPDIR" ""
TEST_NAME="set_TMPDIR makes secure tmpdir"
set_TMPDIR
TEST_NAME="mk_tmpdir makes secure tmpdir"
mk_tmpdir
cmd_ok "test -d $TMPDIR"
tmpdir=$TMPDIR;
TEST_NAME="rm_TMPDIR"
rm_TMPDIR
TEST_NAME="rm_tmpdir"
rm_tmpdir
cmd_ok "test ! -d $tmpdir"
TEST_NAME="rm_TMPDIR resets TMPDIR"
TEST_NAME="rm_tmpdir resets TMPDIR"
is "$TMPDIR" ""
# --tmpdir
@@ -30,15 +30,15 @@ is "$TMPDIR" ""
TEST_NAME="--tmpdir does not exist yet"
cmd_ok "test ! -d $OPT_TMPDIR"
set_TMPDIR
TEST_NAME="set_TMPDIR uses --tmpdir"
mk_tmpdir
TEST_NAME="mk_tmpdir uses --tmpdir"
is "$TMPDIR" "/tmp/use--tmpdir"
TEST_NAME="set_TMPDIR creates --tmpdir"
TEST_NAME="mk_tmpdir creates --tmpdir"
cmd_ok "test -d $TMPDIR"
tmpdir=$TMPDIR;
TEST_NAME="rm_TMPDIR removes --tmpdir"
rm_TMPDIR
TEST_NAME="rm_tmpdir removes --tmpdir"
rm_tmpdir
cmd_ok "test ! -d $tmpdir"