Skip to content
Snippets Groups Projects
Commit 129b8565 authored by jdh8d's avatar jdh8d
Browse files

No commit message

No commit message
parent 691c3d1f
No related branches found
No related tags found
No related merge requests found
* text=auto !eol
/build-all.sh -text
/clean-all.sh -text
/get-peasoup-packages.sh -text
/irdb_vars -text
/jdh8d_set_env_vars -text
/postgres_setup.sh -text
/set_env_vars -text
/start_dev.sh -text
/svn.externals.uva_dev -text
#!/bin/bash
# check if DIR is the directory containing the build script.
BUILD_LOC=`dirname $0`
FULL_BUILD_LOC=`cd $BUILD_LOC; pwd`
echo $PEASOUP_UMBRELLA_DIR
if [ "$PEASOUP_UMBRELLA_DIR" != "$FULL_BUILD_LOC" ]; then
echo "PEASOUP_UMBRELLA_DIR differs from build-all.sh location ($FULL_BUILD_LOC).";
echo "Did you source set_env_vars from the root of the umbrella working copy?";
exit 1;
fi
# stratafier
cd $PEASOUP_UMBRELLA_DIR/stratafier
make
# strata
if [ ! "$STRATA_HOME" ]; then
echo "STRATA_HOME not set.";
exit 1;
fi
if [ `uname -m` = 'x86_64' ]; then
# build 32-bit strata
if [ ! -d $STRATA_HOME32 ] ; then
cd $STRATA
make clean distclean
cd $PEASOUP_UMBRELLA_DIR
echo Creating strata 32-bit build directory
cp -R $STRATA $STRATA32
fi
cd $STRATA_HOME32
STRATA_HOME=$STRATA_HOME32 STRATA=$STRATA_HOME32 ./build -host=i386-linux
# build x86-64 strata
cd $STRATA_HOME
./configure;make
else
cd $STRATA_HOME
./build
fi
# smp-static-analyzer
if [ ! "$SMPSA_HOME" ]; then
echo "SMPSA_HOME not set.";
exit 1;
fi
cd $SMPSA_HOME
./configure
make
# security-transforms
if [ ! "$SECURITY_TRANSFORMS_HOME" ]; then
echo "SECURITY_TRANSFORMS_HOME not set.";
exit 1;
fi
cd $SECURITY_TRANSFORMS_HOME
./build.sh
cd $PEASOUP_HOME
make
#!/bin/bash
# check if DIR is the directory containing the build script.
BUILD_LOC=`dirname $0`
FULL_BUILD_LOC=`cd $BUILD_LOC; pwd`
echo $PEASOUP_UMBRELLA_DIR
if [ "$PEASOUP_UMBRELLA_DIR" != "$FULL_BUILD_LOC" ]; then
echo "PEASOUP_UMBRELLA_DIR differs from build-all.sh location ($FULL_BUILD_LOC).";
echo "Did you source set_env_vars from the root of the umbrella working copy?";
exit 1;
fi
# stratafier
cd $PEASOUP_UMBRELLA_DIR/stratafier
make clean
# strata
if [ ! "$STRATA_HOME" ]; then
echo "STRATA_HOME not set.";
exit 1;
fi
cd $STRATA_HOME
./configure
make clean
cd $PEASOUP_UMBRELLA_DIR/
rm -Rf strata32
# smp-static-analyzer
if [ ! "$SMPSA_HOME" ]; then
echo "SMPSA_HOME not set.";
exit 1;
fi
cd $SMPSA_HOME
./configure
make clean
# security-transforms
if [ ! "$SECURITY_TRANSFORMS_HOME" ]; then
echo "SECURITY_TRANSFORMS_HOME not set.";
exit 1;
fi
cd $SECURITY_TRANSFORMS_HOME
make clean
#!/bin/bash
# Needed to build PEASOUP components
BASE_PKGS="
bison
flex
g++
nasm
openjdk-6-jre
sharutils
subversion
xdotool
gcc-multilib
g++-multilib
realpath
libelf-dev
libxqilla-dev
libxerces-c-dev
screen
libxml2-dev
libstdc++6:i386
coreutils"
# TODO: don't require i386 libraries if not running MEDS (eg using IDA server)
# For clients of IRDB
CLIENT_IRDB_PKGS="
postgresql-client
pgadmin3
libpqxx3-dev
libmysqlclient-dev
cmake
automake1.9"
# For IRDB server
SERVER_IRDB_PKGS="postgresql"
# For building test subjects
TEST_PKGS="
asciidoc
autoconf
bison
gawk
gettext
libx11-dev
libfontconfig1-dev
libperl-dev
poedit
yasm
xvfb"
# For handling SQL command injections
SQL_PKGS="sqlite3 libsqlite3-dev mysql-client mysql-server libmysqlclient-dev"
# For LDAP
LDAP_PKGS="ldap-utils slapd libldap2-dev"
ALL_PKGS="$BASE_PKGS $CLIENT_IRDB_PKGS $SERVER_IRDB_PKGS $TEST_PKGS $SQL_PKGS $LDAP_PKGS"
if [[ "$PEASOUP_UMBRELLA_DIR" == "" ]]; then
echo "PEASOUP_UMBRELLA_DIR not found"
echo "Did you source set_env_vars and use sudo -E"
exit 1
fi
for arg in $@; do
case $arg in
all)
sudo apt-get install $ALL_PKGS
;;
base)
sudo apt-get install $BASE_PKGS
;;
client-irdb)
sudo apt-get install $CLIENT_IRDB_PKGS
;;
server-irdb)
sudo apt-get install $SERVER_IRDB_PKGS
;;
irdb)
sudo apt-get install $CLIENT_IRDB_PKGS $SERVER_IRDB_PKGS
;;
test)
sudo apt-get install $TEST_PKGS
;;
sql)
sudo apt-get install $SQL_PKGS
;;
ldap)
sudo apt-get install $LDAP_PKGS
;;
*)
echo "$arg not recognized. Recognized args: all, base, client-irdb,";
echo " server-irdb, irdb, test, sql.";
esac
done
export PGHOST=127.0.0.1
export PGUSER=$USER
export PGPORT=5432
export PGDATABASE=peasoup_$USER
. set_env_vars
export STRATA_IBTC=1
export STRATA_IBTC_SHARED=1
export STRATA_IBTC_SIZE=$(expr 128 \* 1024)
export STRATA_FCACHE_SIZE=$(expr 64 \* 1024 \* 1024)
export PEASOUP=$PEASOUP_UMBRELLA_DIR
#!/bin/bash
#Add PostGres password file for modifying the database
printf ":5432::$USER:1qaz2wsx\nlocalhost:5432:*:$USER:1qaz2wsx\n127.0.0.1:5432:*:$USER:1qaz2wsx" > $HOME/.pgpass
chmod og-rw $HOME/.pgpass
#Allow remote access to PostGres
sudo su -c "printf \"\nhost \t all \t all \t 127.0.0.1/16 \t md5\nhostssl all \t all \t 127.0.0.1/16 \t md5\n\" >> /etc/postgresql/9.1/main/pg_hba.conf"
printf "\nlisten_addresses = '*'\n" | sudo tee -a /etc/postgresql/9.1/main/postgresql.conf > /dev/null
#Restart PostGres
sudo service postgresql restart
#Create Database User and Table
echo "CREATE ROLE $USER WITH CREATEDB LOGIN NOSUPERUSER NOCREATEROLE PASSWORD '1qaz2wsx'" | sudo -u postgres psql
sudo su -c "createdb -O $USER peasoup_$USER" postgres
#Setup the Database to store PEASOUP info
source set_env_vars
$PEASOUP_HOME/tools/db/pdb_setup.sh
export PEASOUP_UMBRELLA_DIR=`pwd`
export STRATAFIER_OBJCOPY=$PEASOUP_UMBRELLA_DIR/binutils-2.19/binutils/objcopy
export TOOLCHAIN=$PEASOUP_UMBRELLA_DIR/diablo_toolchain
export PEASOUP_HOME=$PEASOUP_UMBRELLA_DIR/peasoup_examples
export PIN_HOME=$PEASOUP_HOME/tools/pin
export NICECAP_HOME=$PEASOUP_UMBRELLA_DIR/nicecap_example
export SMPSA_HOME=$PEASOUP_UMBRELLA_DIR/SMPStaticAnalyzer
export STRATAFIER=$PEASOUP_UMBRELLA_DIR/stratafier
export IDAROOT=$PEASOUP_UMBRELLA_DIR/idapro65/
export IDASDK=$PEASOUP_UMBRELLA_DIR/idapro65_sdk
export STRATA=$PEASOUP_UMBRELLA_DIR/strata
export STRATA_HOME=$STRATA
export STRATA32=$PEASOUP_UMBRELLA_DIR/strata32
export STRATA_HOME32=$STRATA32
export SECURITY_TRANSFORMS_HOME=$PEASOUP_UMBRELLA_DIR/security_transforms
if [[ ! "$LD_LIBRARY_PATH" =~ (^|:)"$PEASOUP_UMBRELLA_DIR/lib:$PEASOUP_UMBRELLA_DIR/grace/concolic/bin:$STRATA/lib"(:|$) ]]
then
export LD_LIBRARY_PATH=$PEASOUP_UMBRELLA_DIR/lib:$PEASOUP_UMBRELLA_DIR/grace/concolic/bin:$STRATA/lib:$LD_LIBRARY_PATH
fi
#Get IDAPRO to work with no errors
export TVHEADLESS=1
source ./irdb_vars
export GRACE_HOME=$PEASOUP_UMBRELLA_DIR/grace
export YICES_HOME=$GRACE_HOME/third-party/yices-sdk/1.0.34/linux32/bin
export PATH=$PATH:$GRACE_HOME/concolic/bin:$YICES_HOME
export SCONSFLAGS="exceptions=1 x86=1 tool=1 hprof=0 cpuprof=0 lm_required=false gen_lmi=0 offsite=1 irdb_path=$SECURITY_TRANSFORMS_HOME/libIRDB -j 2"
#moving this to setenv vars, as it's not global and breaks our peasoup installation
# adjust to your SVN username
#export SVN_USERNAME=$USER
source ./set_testing_env_vars
#/bin/sh
if [ -z "$1" ]; then
echo "usage: $0 <externals config file>"
fi
svn propset svn:externals . -F $1
svn up
diablo_toolchain http://peasoup.cs.virginia.edu/repos/diablo_toolchain/trunk/
idapro65 http://peasoup.cs.virginia.edu/repos/idapro65/trunk/
idapro65_sdk http://peasoup.cs.virginia.edu/repos/idapro65_sdk/trunk/
strata http://peasoup.cs.virginia.edu/repos/strata/trunk/
peasoup_examples http://peasoup.cs.virginia.edu/repos/peasoup_examples/trunk/
security_transforms http://peasoup.cs.virginia.edu/repos/security_transforms/trunk/
SMPStaticAnalyzer http://peasoup.cs.virginia.edu/repos/SMPStaticAnalyzer/trunk/
stratafier http://peasoup.cs.virginia.edu/repos/stratafier/trunk/
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment