From 67b43fdff47361691103703264fba0880a356697 Mon Sep 17 00:00:00 2001
From: an7s <an7s@git.zephyr-software.com>
Date: Sat, 23 May 2015 14:25:25 +0000
Subject: [PATCH] added --crash_dir options to protect_pov

Former-commit-id: 943df6f0f1c5716fef61063bb9c94a2a888549dd
---
 tools/do_protect_pov.sh | 43 +++++++++++++++++++++++++++++++----------
 tools/ps_analyze.sh     |  2 +-
 2 files changed, 34 insertions(+), 11 deletions(-)

diff --git a/tools/do_protect_pov.sh b/tools/do_protect_pov.sh
index 06efdfafe..11398fe95 100755
--- a/tools/do_protect_pov.sh
+++ b/tools/do_protect_pov.sh
@@ -14,6 +14,7 @@
 # in the step options:
 #
 # --pov_dir=<fully_qualified_path_to_pov_dir>
+# --crash_dir=<fully_qualified_path_to_pov_dir>
 # --pov_crash_summary=<fully_qualified_path_to_crash_summary>
 # 
 
@@ -23,8 +24,8 @@ CRASH_CSO_FILE=$3
 
 shift 3
 
-short_opts="p:c:"
-long_opts="--long pov_dir: --long pov_crash_summary:"
+short_opts="p:c:d:"
+long_opts="--long pov_dir: --long pov_crash_summary: --long crash_dir:"
 
 TEMP=`getopt -o $short_opts $long_opts -n 'do_protect_pov.sh' -- "$@"`
 if [ ! $? -eq 0 ]; then
@@ -40,6 +41,10 @@ while true ; do
 			POV_DIR=$2
 			shift 2
 		;;
+		--crash_dir | d)
+			CRASH_DIR=$2
+			shift 2
+		;;
 		--pov_crash_summary | c)
 			POV_CRASH_SUMMARY=$2
 			shift 2
@@ -50,21 +55,39 @@ while true ; do
 	esac
 done
 
-echo "POV_DIR: $POV_DIR"
-echo "POV_CRASH_SUMMARY: $POV_CRASH_SUMMARY"
+if [ ! -f $POV_CRASH_SUMMARY ]; then
+	touch $POV_CRASH_SUMMARY
+fi
+
+
+TMP_DIR=tmp.dir.pov.crash.$$
+TMP_FILE=tmp.file.$$
 
 if [ -z $POV_DIR ]; then
-	echo "ERROR: No POV directory was specified"
-	return 1
+	mkdir $TMP_DIR
+	POV_DIR=`pwd`/$TMP_DIR
 fi
 
-if [ ! -f $POV_CRASH_SUMMARY ]; then
-	touch $POV_CRASH_SUMMARY
+if [ -z $CRASH_DIR ]; then
+	mkdir $TMP_DIR
+	CRASH_DIR=`pwd`/$TMP_DIR
+fi
+
+if [ -z $POV_CRASH_SUMMARY ]; then
+	touch $TMP_FILE
+	POV_CRASH_SUMMARY=`pwd`/$TMP_FILE
 fi
 
-echo "cmd: $SECURITY_TRANSFORMS_HOME/tools/cgc_protect/pov_to_cso.sh $ORIG $CGC_CSID $POV_DIR $CRASH_CSO_FILE $POV_CRASH_SUMMARY"
+echo "POV_DIR: $POV_DIR"
+echo "POV_CRASH_SUMMARY: $POV_CRASH_SUMMARY"
+echo "CRASH_DIR: $CRASH_DIR"
+
+echo "cmd: $SECURITY_TRANSFORMS_HOME/tools/cgc_protect/pov_to_cso.sh $ORIG $CGC_CSID $POV_DIR $CRASH_CSO_FILE $POV_CRASH_SUMMARY $CRASH_DIR"
+
+$SECURITY_TRANSFORMS_HOME/tools/cgc_protect/pov_to_cso.sh $ORIG $CGC_CSID $POV_DIR $CRASH_CSO_FILE $POV_CRASH_SUMMARY $CRASH_DIR
 
-$SECURITY_TRANSFORMS_HOME/tools/cgc_protect/pov_to_cso.sh $ORIG $CGC_CSID $POV_DIR $CRASH_CSO_FILE $POV_CRASH_SUMMARY
+rmdir $TMP_DIR &>/dev/null
+rm $TMP_FILE &>/dev/null
 
 exit 0
 
diff --git a/tools/ps_analyze.sh b/tools/ps_analyze.sh
index bfb13b67d..2d1279c06 100755
--- a/tools/ps_analyze.sh
+++ b/tools/ps_analyze.sh
@@ -829,7 +829,7 @@ perform_step appfw find_strings $PEASOUP_HOME/tools/do_appfw.sh $arch_bits $newn
 #
 # protect_pov
 #
-perform_step protect_pov fill_in_indtargs $PEASOUP_HOME/tools/do_protect_pov.sh a.ncexe $name crash.pov.cso $step_options_protect_pov
+perform_step protect_pov fill_in_indtargs $PEASOUP_HOME/tools/do_protect_pov.sh $PWD/a.ncexe $name $PWD/crash.pov.cso $step_options_protect_pov
 if [ -f crash.pov.cso  ]; then
 	step_options_watch_allocate="$step_options_watch_allocate --warning_file=crash.pov.cso"
 fi
-- 
GitLab