summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Lewman <andrew@torproject.org>2007-09-21 01:59:53 +0000
committerAndrew Lewman <andrew@torproject.org>2007-09-21 01:59:53 +0000
commit6aadc6071e1eace36920fee7ae79dd53c2cc6811 (patch)
tree338db5ec6c2a4d469567f91f949d3342a4336a36
parentfdf390525c423c93851e8893c7b778788f9654ab (diff)
downloadtor-6aadc6071e1eace36920fee7ae79dd53c2cc6811.tar.gz
tor-6aadc6071e1eace36920fee7ae79dd53c2cc6811.zip
Fix a potential issue in the osx pre and postflight scripts.
svn:r11548
-rw-r--r--contrib/osx/TorPostflight8
-rw-r--r--contrib/osx/TorPreFlight7
2 files changed, 8 insertions, 7 deletions
diff --git a/contrib/osx/TorPostflight b/contrib/osx/TorPostflight
index b1a9e541f4..20c7d0338b 100644
--- a/contrib/osx/TorPostflight
+++ b/contrib/osx/TorPostflight
@@ -83,10 +83,10 @@ if [ -f $PACKAGE_PATH/Contents/Resources/package_list.txt ]; then
fi
# If the pre-install script did it's thing, it should have saved the
-# config and server keys; put these back and clean up
-if [ -f /tmp/TorSavedMe.tar.gz ]; then
- tar zxf /tmp/TorSavedMe.tar.gz -C /
- rm /tmp/TorSavedMe.tar.gz
+# config and server keys; put these back and leave for save keeping
+TORBACKUP=`ls -rt /tmp/TorSavedMe*| tail -1`
+if [ -f ${TORBACKUP} ]; then
+ tar zxf ${TORBACKUP} -C /
fi
if [ -d /Library/StartupItems/Tor ]; then
diff --git a/contrib/osx/TorPreFlight b/contrib/osx/TorPreFlight
index b147264861..a6407d51fe 100644
--- a/contrib/osx/TorPreFlight
+++ b/contrib/osx/TorPreFlight
@@ -1,5 +1,6 @@
#!/bin/sh
# TorPreFlight is invoked before the install begins
+TMPFILE=`mktemp /tmp/TorSavedMe.tgz.XXXXXXXXXXXXX`
# Figure out where Tor is installed
if [ -f /Library/StartupItems/Tor/Tor.loc ]; then
@@ -16,12 +17,12 @@ fi
# Backup all of Tor, just in case
if [ -d $TORPATH ]; then
- tar zcf /tmp/TorSavedMe.tar.gz $TORPATH/var/lib/tor $TORPATH/torrc $PRIVOXYPATH/config $PRIVOXYPATH/user.action
+ tar zcf ${TMPFILE} ${TORPATH}/var/lib/tor ${TORPATH}/torrc ${PRIVOXYPATH}/config ${PRIVOXYPATH}/user.action
fi
# Remove Tor and everything to do with it
-if [ -f $TORPATH/uninstall_tor_bundle.sh ]; then
- $TORPATH/uninstall_tor_bundle.sh
+if [ -f ${TORPATH}/uninstall_tor_bundle.sh ]; then
+ ${TORPATH}/uninstall_tor_bundle.sh
else
$PACKAGE_PATH/Contents/Resources/uninstall_tor_bundle.sh
fi