| #!/usr/bin/env bash |
| source ../multi-host.conf |
| mkdir -p logs |
| workdir=$(pwd) |
| |
| clean_up() { |
| r=$(mv $HOME/.ndn/client.conf.bk $HOME/.ndn/client.conf 2>&1) |
| r=$(killall socat 2>&1) |
| r=$(ssh $CTRL_B "killall ndn-traffic-server;\ |
| sudo killall nfd" 2>&1) |
| } |
| |
| # start nfd and ndn-traffic-server on hostB |
| ssh $CTRL_B "mkdir -p $workdir/logs;\ |
| sudo nfd &> $workdir/logs/nfd.log &\ |
| sleep 2;\ |
| ndn-traffic-server $workdir/NDNTrafficServer.conf &> $workdir/logs/server.log &" |
| sleep 2 |
| |
| # set up socat on A |
| cp $HOME/.ndn/client.conf $HOME/.ndn/client.conf.bk |
| socat -v UNIX-LISTEN:/tmp/localhost-test-B.sock,fork TCP:$IP4_B1:6363 &> logs/socat.log & |
| sed -i 's/^unix_socket=.*$/unix_socket=\/tmp\/localhost-test-B.sock/g' $HOME/.ndn/client.conf |
| sleep 1 |
| |
| # send interest |
| response=$(ndn-tlv-peek -p ndn:/localhost/test-in/A 2>&1) |
| if [[ ! -z $response ]] |
| then |
| echo "FAIL: Expected no data come back for ndn:/localhost/test-in/A, Actual: '$response'" |
| clean_up |
| exit 2 |
| fi |
| |
| # copy back the server log |
| ssh $CTRL_B "killall ndn-traffic-server" |
| scp $CTRL_B:$workdir/logs/server.log $workdir/logs/ |
| |
| # analyze server log |
| output=$(grep "Total Interests Received" $workdir/logs/server.log | head -1 | cut -d= -f2 | cut -d' ' -f2) |
| if [[ $output != '0' ]] |
| then |
| echo "Expected no Interests received on host B. Actual: $output" |
| echo "For more information, please examine the log at \"$(pwd)/logs\"" |
| clean_up |
| exit 3 |
| fi |
| |
| clean_up |
| |
| echo "localhost incoming test PASSED" |