All pastes #1813227 Raw Edit

binou

public text v1 · immutable
#1813227 ·published 2010-02-27 10:07 UTC
rendered paste body
#!/bin/sh#set -x # variables TERMINAL=xfce4-terminal# TERMOPTIONBASE=2000STARTI=0PROGRAM=p2p_node_ref# VALGRIND="valgrind --leak-check=full --show-reachable=yes"VALGRIND=""VERBOSE=9#if [ "$BASE" == "" ] ; then #   export BASE=2000#fi#if [ "$STARTI" == "" ] ; then #   export STARTI=0#fi#if [ "$TERMINAL" == "" ] ; then #   export TERMINAL=xterm#fiusage(){cat <<EOFstart_server   c [n] : start a client [to server n]  d [n] : start [n] detached server  x [n] : start [n] server in a xterm          [n] : if [n] > 1 then connect server(i) with server(i-1)   f [n] : find pid of server [n]  g [n] : start gdb and connect to it to server [n]  k : kill all serversBASE=x start_server []   default BASE=0EOF}server_name(){    echo p2p_$1}base(){    echo `expr $BASE + $1`}port_ui(){    echo `base $1`1}port_tcp(){    echo `base $1`2}port_udp(){    echo `base $1`3}start_line(){    NUM=$1    DIR=$2    DST=$3    OTHER=$4    echo ${VALGRIND} ${DIR}/${PROGRAM}     \	--dir=${DST}                       \	--listening-ip=127.0.0.1           \	--server-name=`server_name ${NUM}` \	--ui-tcp-port=`port_ui ${NUM}`     \	--p2p-tcp-port=`port_tcp ${NUM}`   \	--p2p-udp-port=`port_udp ${NUM}`   \	--verbose=${VERBOSE}               \	${OTHER}}find_server_pid(){    SERVER_NAME=`server_name $1`    echo `ps ax | grep ${SERVER_NAME} | egrep -v 'xterm|bash|grep' | cut -d ' ' -f 1`}start_serv(){    MODE=$1    NUM=$2    DIR=$3    OTHER=$4    TMPDIR=/tmp    DST=${TMPDIR}/p2p_dir_${NUM}    mkdir -p ${DST}    touch ${DST}/p2p_${NUM}    echo "file from node ${NUM}" > ${DST}/p2p_${NUM}    echo -n "starting node ${NUM} : "    case "${MODE}" in	"x" )	    ${TERMINAL} --title Server_T${NUM} --command "`start_line ${NUM} ${DIR} ${DST} ${OTHER}`" &	;;	"d" )	    `start_line ${NUM} ${DIR} ${DST} ${OTHER}` 	;;	* )	    usage	    exit 1	;;    esac    sleep 1    echo pid=`find_server_pid ${NUM}`}if [ $# -lt 1  ] ; then    usage    exit 1else    case "$1" in	"c" )	    if [ $# -gt 1 ] ; then 		NUM=$2		${TERMINAL} --title client_T${NUM} --command "telnet localhost `port_ui $NUM` &"	    else		${TERMINAL} --command "telnet &"	    fi 	    ;;	"d" | "x" )	    DIR=`dirname $0`	    start_serv $1 $STARTI ${DIR}	    I=`expr ${STARTI} + 1`	    if [ $# -gt 1 ] ; then		while [ $I -lt $2 ] ; do		    IM=`expr $I - 1`		    start_serv $1 $I ${DIR} --connect=127.0.0.1::`port_tcp $IM`:`port_udp $IM` 		    I=`expr $I + 1`		done	    fi	    ;;	"k" )	    killall -9 ${PROGRAM}	    ;;	"f" ) 	    echo server $2 : pid=`find_server_pid $2`	    ;;	"g" )	    gdb `dirname $0`/${PROGRAM} `find_server_pid $2`	    ;;	"D" )	    ddd `dirname $0`/${PROGRAM} `find_server_pid $2`	    ;;	* ) 	    usage	    ;;    esacfi