 +        exec_and_log "download_and_extract $SRC $DST_PATH.gz $GUNZIP" \
 +            "Error downloading $SRC"
 +        ;;
- 
--*)
--    log "Cloning $SRC_PATH"
--    exec_and_log "cp -r $SRC_PATH $DST_PATH"
--    ;;
--esac
++
 +    http://*.bz2|https://*.bz2)
 +        log "Downloading BZip2 archive $SRC"
 +        exec_and_log "download_and_extract $SRC $DST_PATH.bz2 $BUNZIP2" \
 +            "Error downloading $SRC"
 +        ;;
- 
--exec_and_log "chmod a+rw $DST_PATH"
++
 +    http://*|https://)
 +        LOCATION=$(stratus-manifest --get-element location $SRC)
 +        rc=$?

+exec_and_log "chmod ug+w,o-rwx $DST_PATH"
 
diff --git a/src/tm_mad/ssh/tm_clone.sh b/src/tm_mad/ssh/tm_clone.sh
index 71800d1..e26b8cf 100755
--- a/src/tm_mad/ssh/tm_clone.sh
+++ b/src/tm_mad/ssh/tm_clone.sh
@@ -43,19 +43,51 @@ log "Creating directory $DST_DIR"

+if [ -e $DST_PATH ] && [ ! -L $DST_PATH ]; then
+  exec_and_log "chmod ug+rw,o-rwx $DST_PATH"
+fi

diff --git a/src/tm_mad/nfs/tm_context.sh b/src/tm_mad/nfs/tm_context.sh
index f211024..ae44a47 100755
--- a/src/tm_mad/nfs/tm_context.sh
