From bb8c843ec11106b10f7015bfedc2aadbc5e45465 Mon Sep 17 00:00:00 2001
From: bdr7fv <bdr7fv@git.zephyr-software.com>
Date: Tue, 17 Apr 2012 16:30:06 +0000
Subject: [PATCH] Altered do_p1transform.sh and ps_analyze.sh to use a flag,
 DO_CANARIES to turn canaries on or off for PN. Set to 0 to turn of, non-zero
 to turn canaries on. By default DO_CANARIES=1. DO_CANARIES can be found in
 ps_analyze.sh.

Another update to security_transforms (PNMain and PNTransformDriver) to complete this update. To come next.



Former-commit-id: 30b3eeacb768bf943b1e17d75af84448c626a187
---
 tools/do_p1transform.sh | 7 ++++---
 tools/ps_analyze.sh     | 8 +++++---
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/tools/do_p1transform.sh b/tools/do_p1transform.sh
index 177d2cd6e..0df4b8396 100755
--- a/tools/do_p1transform.sh
+++ b/tools/do_p1transform.sh
@@ -11,6 +11,7 @@ ORIGINAL_BINARY=$2
 MEDS_ANNOTATION_FILE=$3
 BED_SCRIPT=$4
 TIMEOUT_VALUE=$5
+DO_CANARIES=$6
 REPLAYER_TIMEOUT=120
 TOP_LEVEL=`pwd`
 BASELINE_DIR=$TOP_LEVEL/replayer_baseline
@@ -39,10 +40,10 @@ echo "P1: transforming binary: cloneid=$CLONE_ID bed_script=$BED_SCRIPT timeout_
 
 execute_pn()
 {
-	echo "P1: issuing command: $SECURITY_TRANSFORMS_HOME/tools/transforms/p1transform.exe $1 $2 $3 $4 $5 with timeout value=$TIMEOUT_VALUE"
+	echo "P1: issuing command: $SECURITY_TRANSFORMS_HOME/tools/transforms/p1transform.exe $1 $2 $3 $4 $5 $6 with timeout value=$TIMEOUT_VALUE"
 
 	# On timeout send SIGUSR1 (signal #10)
-	timeout -10 $TIMEOUT_VALUE $PN_BINARY $1 $2 $3 $4 $5
+	timeout -10 $TIMEOUT_VALUE $PN_BINARY $1 $2 $3 $4 $5 $6
 }
 
 mkdir $P1_DIR
@@ -147,6 +148,6 @@ $PEASOUP_HOME/tools/cover.sh $ORIGINAL_BINARY $MEDS_ANNOTATION_FILE $EXECUTED_AD
 
 touch $COVERAGE_FILE
 
-execute_pn $CLONE_ID $BED_SCRIPT $LIBC_FILTER $COVERAGE_FILE $P1THRESHOLD $TIMEOUT_VALUE
+execute_pn $CLONE_ID $BED_SCRIPT $LIBC_FILTER $COVERAGE_FILE $P1THRESHOLD $DO_CANARIES
 
 exit 0
diff --git a/tools/ps_analyze.sh b/tools/ps_analyze.sh
index f70ebf09f..354af0338 100755
--- a/tools/ps_analyze.sh
+++ b/tools/ps_analyze.sh
@@ -48,6 +48,8 @@ set_timer()
 # DEFAULT TIMEOUT VALUE
 INTEGER_TRANSFORM_TIMEOUT_VALUE=900
 PN_TIMEOUT_VALUE=9000
+#non-zero to use canaries in PN/P1, 0 to turn off canaries
+DO_CANARIES=1
 
 CONCOLIC_DIR=concolic.files_a.stratafied_0001
 
@@ -513,14 +515,14 @@ if [ -f $newname.ncexe.annot  -a $varid -gt 0 ]; then
 
 		is_step_on manual_test
 		if [ $? -eq 0 ]; then 
-			perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/p1xform_v2.sh $PN_TIMEOUT_VALUE
+			perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/p1xform_v2.sh $PN_TIMEOUT_VALUE $DO_CANARIES
 		else
 			grep manual_test_import $manual_test_script
 			if [ $? -eq 0 ];
 			then
-				perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/bed_manual.sh $PN_TIMEOUT_VALUE
+				perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/bed_manual.sh $PN_TIMEOUT_VALUE $DO_CANARIES
 			else
-				perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/bed_blackbox.sh $PN_TIMEOUT_VALUE
+				perform_step p1transform $PEASOUP_HOME/tools/do_p1transform.sh $cloneid $newname.ncexe $newname.ncexe.annot $PEASOUP_HOME/tools/bed_blackbox.sh $PN_TIMEOUT_VALUE $DO_CANARIES
 			fi
 		fi
 		
-- 
GitLab