Fail startup of points if packages are not online yet

This commit is contained in:
Neale Pickett 2012-08-16 19:47:19 -06:00
parent 8b85524ab6
commit 72c5f802bd
7 changed files with 35 additions and 45 deletions

View File

@ -19,3 +19,4 @@ cat <<EOD
</body>
</html>
EOD
exit 1

View File

@ -17,5 +17,5 @@ for d in /packages/*; do
fi
done
cd /var/www
cd $CTF_BASE/www
exec tcpsvd -u ctf ${IP%/*} 80 $CTF_BASE/packages/mcp/bin/eris -c.

View File

@ -104,21 +104,29 @@ EOD
;;
esac
match=$(awk -v ans="$answer" '(substr($0, length($1)+2) == ans) { print substr(FILENAME, 6, length(FILENAME)-17) " " $1; }' $CTF_BASE/packages/*/answers.txt)
if [ -z "$match" ]; then
echo 'That is not a correct answer. Type "help" for help.'
continue
fi
clear
matches=0
for fn in /opt/*/answers.txt; do
cat=$(basename ${fn%/answers.txt})
while read points ans; do
if [ "$ans" = "$answer" ]; then
if log $hash | grep -wq "$cat $points"; then
echo "You've already received points for this answer."
elif /opt/p2/bin/pointscli $hash $cat $points p2console; then
echo "You get $points more points in the $cat category."
matches=$(expr $matches + 1)
else
echo "Error recording points. Tell the officials!"
fi
fi
done < $fn
done
cat=${match% *}
points=${match#* }
fn=$BASE/$hash/$cat.$points
if log $hash | grep -Fxq "$cat $points"; then
echo "You've already received points for this answer."
elif $CTF_BASE/packages/p2/bin/pointscli $hash $cat $points p2console; then
echo "You get $points more points in the $cat category."
else
echo "Error recording points. Tell the officials!"
if [ "$matches" -eq 0 ]; then
echo 'That is not a correct answer. Type "help" for help.'
fi
if [ "$matches" -gt 1 ]; then
echo "Holy shit! Double word score!"
fi
done

View File

@ -61,28 +61,13 @@ function foot() {
print " </div>"
print " <pre style=\"position: fixed; bottom: 0; right: 20em; "
print " opacity: 0.8;\">"
print " What is it?"
print " It is a hacker/forensic/puzzle game... are you up for a challenge"
print ""
print " How do I play?"
print " Sit at the terminal and make yourself a team."
print " Follow instructions from there (involves visiting a website)"
print ""
print " FAQ:"
print " Q - What is the picture being projected?"
print " A - It is the scoreboard and the image is for you to figure out"
print " "
print " Q - Are there any hints?"
print " A - NO"
print " "
print " Q - Can I connect remotely and play?"
print " A - Sure, connect to our Access Point \"Verizon MiFi A6AD Secure\""
print " "
print " Q - How do I track my points?"
print " A - See first FAQ. The points are based off of how many"
print " puzzles you've solved in each category"
print " <pre style=\"position: fixed; bottom: 0; left: 20%; font-size: 250%;"
print " opacity: 0.8; background-color: black\">"
print "Project 2<br>"
print "<p>A CTF for people with limited time/patience/self-confidence.</p>"
print "<p>Plug in ethernet at this table, download puzzles, go think.</p>"
print "<p>http://10.0.0.2/</p>"
print "<p>Use the terminal to claim points when you've figured something out.</p>"
print " </pre>"
print " </body>"
print "</body></html>"

View File

@ -1 +1 @@
10.0.0.2/24
10.0.1.2/24

View File

@ -4,9 +4,5 @@ exec 2>&1
ip link set dev eth0 up
if grep 'debug' /proc/cmdline; then
ip addr add dev eth0 10.0.0.110/24
exec sleep 8d
else
exec udhcpc -f eth0
fi
ip addr add dev eth0 10.0.0.110/24
exec sleep 8d

View File

@ -1,5 +1,5 @@
#! /bin/sh
ip addr add fd84:b410:3441::ffff/64 dev $1
ip addr add 10.0.0.254/24 dev $1
ip addr add 10.0.1.254/24 dev $1