cs
changeset 0 5c129dd80d4f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cs	Thu Nov 21 14:55:10 2019 +0100
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+DEBID="client/server DEMO starting script"
+D=$(dirname $0)
+
+[[ $(basename $0) == cs ]] && { 
+	echo $DEBID:
+	echo "Syntax: <env> $(dirname $0)/{csa,csc,cscpp,csj,csp}"
+	echo "env:"
+	echo -e "\tDEB\tdebug level 0-9; 7=msgs of level 7 only; 9=asm komponent sandbox"
+	echo -e "\tRS\trandom seed"
+	echo -e "\tP\tpacing, secs in float"
+	echo -e "\tT\ttext sent"
+	echo -e "\tMP0\tlistening port of the first node of MASH constellation"
+	echo -e "\tPP0\tlistening port of the first node of RING constellation"
+	echo -e "\tMN\tnum. of MASH nodes"
+	echo -e "\tRN\tnum. of RING nodes"
+	echo -e "\tN\tnum. of MASH and RING nodes; overchanged by MN/RN"
+	echo -e "\tTTL"
+	echo -e "\tSSL\t0=no SSL, 1=SSL, 2=both"
+	echo -e "\tCAP\tpath to SSL CA certs"
+	echo -e "\tCEP\tpath to local SSL stuff (keys and certificates)"
+	exit 1
+	}
+	
+# explicit values for this run
+_MP0=$MP0
+_RP0=$RP0
+_MN=$MN
+_RN=$RN
+
+[[ $_MP0 ]] && MP0=$_MP0
+[[ $_RP0 ]] && RP0=$_RP0
+
+[[ $_MN ]] && MN=$_MN
+[[ $_RN ]] && RN=$_RN
+
+[[ $N ]] && { MN=$N; RN=$N; }
+
+[[ -z $CEP ]]	&& CEP=$D/CS/						# SSL certs path
+[[ -z $CAP ]]	&& CAP="/home/local/etc/ssl/certs/"	# CA certs ppath
+[[ -z $RS ]]	&& RS=$RANDOM
+
+p=
+[[ $DEB ]]	&& p+="DEB=$DEB"
+[[ $RN ]]	&& p+=" RN=$RN"
+[[ $RP0 ]]	&& p+=" RP0=$RP0"
+[[ $MN ]]	&& p+=" MN=$MN"
+[[ $MP0 ]]	&& p+=" MP0=$MP0"
+[[ $N ]]	&& p+=" N=$N"
+[[ $T ]]	&& p+=' T="$T"'
+[[ $SSL ]]	&& p+=" SSL=$SSL"
+[[ $TTL ]]	&& p+=" TTL=$TTL"
+[[ $FAKE ]]	&& p+=" FAKE=$FAKE"
+[[ $STO ]]	&& p+=" STO=$STO"
+[[ $CAP ]]	&& p+=" CAP=$CAP"
+[[ $CEP ]]	&& p+=" CEP=$CEP"
+[[ $P ]] 	&& p+=" P=$P"
+[[ $RS ]]	&& p+=" RS=$RS"
+
+trap "echo $DEBID: signal USR1 caught" USR1
+trap "" USR2
+trap "echo $DEBID: ABEND" TERM
+case $(basename $0) in
+	csp )	eval $p $D/CSp/CS.py ;;
+#	csj )	eval $p java -cp $D/CSj	cs.CS ;;
+	csj )	eval $p java -cp $D/CSj	CS ;;
+	cscpp )	eval $p $D/CScpp/CS ;;	
+	csc )	eval $p $D/CSc/CS ;;	
+	csa )	eval $p $D/CSa32/CS ;;
+	* )		;;
+esac
+RC=$?
+[[ $RS && $DEB -gt 0 ]] && echo RS: $RS, RC: $RC
+exit $RC