aboutsummaryrefslogtreecommitdiff
path: root/src/wrappers/tempdir.sh
diff options
context:
space:
mode:
Diffstat (limited to 'src/wrappers/tempdir.sh')
-rw-r--r--src/wrappers/tempdir.sh10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/wrappers/tempdir.sh b/src/wrappers/tempdir.sh
new file mode 100644
index 000000000..8d2754b1c
--- /dev/null
+++ b/src/wrappers/tempdir.sh
@@ -0,0 +1,10 @@
+# As a security measure refuse to proceed if mktemp is not available.
+pathfind mktemp || { err "Couldn't find 'mktemp'; aborting."; exit 1; }
+
+THIS_TEMPDIR=
+THIS_TEMPDIR="$(mktemp -d -t $THIS.XXXXXXXX)" || exit 1
+readonly THIS_TEMPDIR
+
+trap 'exitcode=$?
+ [ -z "$THIS_TEMPDIR" ] || rm -rf "$THIS_TEMPDIR"
+ exit $exitcode' 0 1 2 3 13 15