+#!/bin/bash
+
+# Diameter dictionary and endpoints:
+DICTIONARY=stacks/avps_etsi.xml,stacks/avps_ietf.xml,stacks/avps_tgpp.xml,stacks/commands_baseProtocol.xml,stacks/commands_pccPS_EricssonSAPC_se.xml
+SERVER=localhost:3868
+ENTITY=192.168.12.11:3868,192.168.12.21:3868
+CONNS=10
+
+# Perhaps the stack is not fully defined:
+KINDNESS=-ignoreErrors
+
+# Tracing (comment the second line if you need detailed traces):
+TRACING="-trace debug"
+TRACING=
+
+# General
+EXE=./ADL-launcher
+
+echo
+echo
+PID=$(pgrep `basename $EXE`)
+if [ $? -eq 0 ]
+then
+ echo "The process '$EXE' seems to be already started (pid: $PID)."
+ echo "Press ENTER to continue, CTRL-C to abort ..."
+ read dummy
+fi
+
+echo "Run as a (c)lient, (s)erver, (b)alancer or (d)ummy [c]:"
+read option
+[[ "$option" = "" ]] && option=c
+
+case $option in
+ c) $EXE -dictionary $DICTIONARY -entity $ENTITY -entityServerSessions $CONNS -diameterServerSessions 0 $KINDNESS $TRACING &
+ ;;
+
+ s) $EXE -dictionary $DICTIONARY -diameterServer $SERVER -diameterServerSessions $CONNS -entityServerSessions 0 $KINDNESS $TRACING &
+ ;;
+
+ b) $EXE -dictionary $DICTIONARY -entity $ENTITY -entityServerSessions $CONNS -diameterServer $SERVER -diameterServerSessions $CONNS -balance $KINDNESS $TRACING &
+ ;;
+
+ d) $EXE -dictionary $DICTIONARY -entityServerSessions 0 -diameterServerSessions 0 $KINDNESS $TRACING &
+ ;;
+
+ *) echo "Option '$option' not implemented !!"
+ ;;
+esac
+