From e5091183421a032afcd2a73f2f740c95ad827f79 Mon Sep 17 00:00:00 2001
From: an7s <an7s@git.zephyr-software.com>
Date: Tue, 2 Aug 2011 18:19:07 +0000
Subject: [PATCH] Added detector for 32 bit MUL/IMUL overflow

---
 tools/p1xform.sh    |  4 ++++
 tools/ps_analyze.sh | 23 ++++++++++++++++++++++-
 2 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/tools/p1xform.sh b/tools/p1xform.sh
index f64ec7d68..ec1cf2c82 100755
--- a/tools/p1xform.sh
+++ b/tools/p1xform.sh
@@ -20,6 +20,9 @@ echo "p1xform.sh script started in $CURRENT_DIR"
 echo "P1 transform directory: $P1_DIR"
 echo "=========================================="
 
+echo "==========================================================="
+echo "Generate P1 transformation for each function in the program"
+echo "==========================================================="
 $PEASOUP_HOME/tools/p1xform.genspri.sh $P1_DIR a.ncexe a.ncexe.annot > $P1_DIR/genspri.out 2> $P1_DIR/genspri.err
 
 #
@@ -46,6 +49,7 @@ grep -v "0\.0" $COVERAGE_FNS | cut -f1 -d" " > $CANDIDATE_FNS
 grep  "0\.0" $COVERAGE_FNS | cut -f1 -d" " > $FILTERED_OUT
 #rm tmp.$$
 
+# Prune out libc functions
 $PEASOUP_HOME/tools/p1xform.filter.sh $CANDIDATE_FNS $LIBC_FILTER > $KEEPS
 
 echo "====================================================="
diff --git a/tools/ps_analyze.sh b/tools/ps_analyze.sh
index 470395418..3d5a369ca 100755
--- a/tools/ps_analyze.sh
+++ b/tools/ps_analyze.sh
@@ -126,11 +126,16 @@ if [ ! "X" = "X"$PGUSER ]; then
 															# paths for direct control transfers insns.
 			$SECURITY_TRANSFORMS_HOME/libIRDB/test/fix_calls.exe $cloneid	> fix_calls.out 2>&1 		# fix call insns so they are OK for spri emitting
 			log fix_calls.out
+
+
+			$SECURITY_TRANSFORMS_HOME/tools/transforms/integerbugtransform.exe $cloneid > integerbugtransform.out 2>&1
+			log integerbugtransform.out
+
 			$SECURITY_TRANSFORMS_HOME/libIRDB/test/ilr.exe $cloneid > ilr.out 2>&1 				# perform ILR 
 			log ilr.out
 			$SECURITY_TRANSFORMS_HOME/libIRDB/test/generate_spri.exe $cloneid a.irdb.aspri	> spri.out 2>&1 # generate the aspri code
 			log spri.out
-			$SECURITY_TRANSFORMS_HOME/tools/spasm/spasm a.irdb.aspri a.irdb.bspri	> spasm.out 2>&1 	# generate the bspri code
+			$SECURITY_TRANSFORMS_HOME/tools/spasm/spasm a.irdb.aspri a.irdb.bspri stratafier.o.exe > spasm.out 2>&1 	# generate the bspri code
 			log spasm.out
 		fi
 	fi
@@ -167,6 +172,22 @@ fi
 #date
 #echo Done with the P1 transform
 
+#echo Starting the P1 transform
+#date
+#$PEASOUP_HOME/tools/p1xform.sh $newdir > p1xform.out 2> p1xform.err
+
+#echo $current_dir/$newdir/p1.xform/p1.final
+
+#if [ -f $current_dir/p1.xform/p1.final ]; then
+#  echo List of functions transformed:
+#  cat $current_dir/p1.xform/p1.final
+#else
+#  echo P1 was unable to transform the subject program
+#fi
+
+#date
+#echo Done with the P1 transform
+
 #-----------------------------------------
 # End P1 transform 
 #-----------------------------------------
-- 
GitLab