5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#!/bin/sh
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#
dce54b9b5cfa450570fe9c11644450aeb3ee89f3Tinderbox User# Copyright (C) 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# This Source Code Form is subject to the terms of the Mozilla Public
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# License, v. 2.0. If a copy of the MPL was not distributed with this
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# file, You can obtain one at http://mozilla.org/MPL/2.0/.
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis DupontSYSTEMTESTTOP=..
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont. $SYSTEMTESTTOP/conf.sh
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis DupontRNDCCMD="$RNDC -p 9953 -c ../common/rndc.conf"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontstatus=0
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontecho "I:initialize counters"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.1 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.2 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp10=`grep "TCP requests received" ns1/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp20=`grep "TCP requests received" ns2/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp10 ':' "$ntcp10"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp20 ':' "$ntcp20"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontecho "I:check TCP transport"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontret=0
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$DIG -p 5300 @10.53.0.3 txt.example. > dig.out.3
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.1 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.2 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp11=`grep "TCP requests received" ns1/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp21=`grep "TCP requests received" ns2/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp11 ':' "$ntcp11"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp21 ':' "$ntcp21"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ "$ntcp10" -ge "$ntcp11" ]; then ret=1; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ "$ntcp20" -ne "$ntcp21" ]; then ret=1; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ $ret != 0 ]; then echo "I:failed"; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontstatus=`expr $status + $ret`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontecho "I:check TCP forwarder"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontret=0
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$DIG -p 5300 @10.53.0.4 txt.example. > dig.out.4
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.1 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont$RNDCCMD -s 10.53.0.2 stats > /dev/null 2>&1
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp12=`grep "TCP requests received" ns1/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontntcp22=`grep "TCP requests received" ns2/named.stats | tail -1 | awk '{print $1}'`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp12 ':' "$ntcp12"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont#echo ntcp22 ':' "$ntcp22"
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ "$ntcp11" -ne "$ntcp12" ]; then ret=1; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ "$ntcp21" -ge "$ntcp22" ];then ret=1; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontif [ $ret != 0 ]; then echo "I:failed"; fi
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontstatus=`expr $status + $ret`
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupont
5c5c6d289db78e41f714007426a387498e15963cFrancis Dupontecho "I:exit status: $status"
3635d8f9104e70e141a8f191a0e6c1502ceed2f3Mark Andrews[ $status -eq 0 ] || exit 1