1*6236dae4SAndroid Build Coastguard Worker#!/bin/bash 2*6236dae4SAndroid Build Coastguard Worker#*************************************************************************** 3*6236dae4SAndroid Build Coastguard Worker# _ _ ____ _ 4*6236dae4SAndroid Build Coastguard Worker# Project ___| | | | _ \| | 5*6236dae4SAndroid Build Coastguard Worker# / __| | | | |_) | | 6*6236dae4SAndroid Build Coastguard Worker# | (__| |_| | _ <| |___ 7*6236dae4SAndroid Build Coastguard Worker# \___|\___/|_| \_\_____| 8*6236dae4SAndroid Build Coastguard Worker# 9*6236dae4SAndroid Build Coastguard Worker# Copyright (C) Daniel Stenberg, <[email protected]>, et al. 10*6236dae4SAndroid Build Coastguard Worker# 11*6236dae4SAndroid Build Coastguard Worker# This software is licensed as described in the file COPYING, which 12*6236dae4SAndroid Build Coastguard Worker# you should have received as part of this distribution. The terms 13*6236dae4SAndroid Build Coastguard Worker# are also available at https://curl.se/docs/copyright.html. 14*6236dae4SAndroid Build Coastguard Worker# 15*6236dae4SAndroid Build Coastguard Worker# You may opt to use, copy, modify, merge, publish, distribute and/or sell 16*6236dae4SAndroid Build Coastguard Worker# copies of the Software, and permit persons to whom the Software is 17*6236dae4SAndroid Build Coastguard Worker# furnished to do so, under the terms of the COPYING file. 18*6236dae4SAndroid Build Coastguard Worker# 19*6236dae4SAndroid Build Coastguard Worker# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 20*6236dae4SAndroid Build Coastguard Worker# KIND, either express or implied. 21*6236dae4SAndroid Build Coastguard Worker# 22*6236dae4SAndroid Build Coastguard Worker# SPDX-License-Identifier: curl 23*6236dae4SAndroid Build Coastguard Worker# 24*6236dae4SAndroid Build Coastguard Worker########################################################################### 25*6236dae4SAndroid Build Coastguard Worker# 26*6236dae4SAndroid Build Coastguard Worker 27*6236dae4SAndroid Build Coastguard Worker# Run some tests against servers we know to support ECH (CF, defo.ie, etc.). 28*6236dae4SAndroid Build Coastguard Worker# as well as some we know don't do ECH but have an HTTPS RR, and finally some 29*6236dae4SAndroid Build Coastguard Worker# for which neither is the case. 30*6236dae4SAndroid Build Coastguard Worker 31*6236dae4SAndroid Build Coastguard Worker# TODO: Translate this into something that approximates a valid curl test:-) 32*6236dae4SAndroid Build Coastguard Worker# Should be useful though even before such translation and a pile less work 33*6236dae4SAndroid Build Coastguard Worker# to do this than that. The pile of work required would include making an 34*6236dae4SAndroid Build Coastguard Worker# ECH-enabled server and a DoH server. For now, this is just run manually. 35*6236dae4SAndroid Build Coastguard Worker# 36*6236dae4SAndroid Build Coastguard Worker 37*6236dae4SAndroid Build Coastguard Worker# set -x 38*6236dae4SAndroid Build Coastguard Worker 39*6236dae4SAndroid Build Coastguard Worker# Exit with an error if there's an active ech stanza in ~/.curlrc 40*6236dae4SAndroid Build Coastguard Worker# as that'd likely skew some results (e.g. turning a fail into a 41*6236dae4SAndroid Build Coastguard Worker# success or vice versa) 42*6236dae4SAndroid Build Coastguard Worker: "${CURL_CFG_FILE=$HOME/.curlrc}" 43*6236dae4SAndroid Build Coastguard Workeractive_ech=$(grep ech "$CURL_CFG_FILE" | grep -v "#.*ech") 44*6236dae4SAndroid Build Coastguard Workerif [[ "$active_ech" != "" ]] 45*6236dae4SAndroid Build Coastguard Workerthen 46*6236dae4SAndroid Build Coastguard Worker echo "You seem to have an active ECH setting in $CURL_CFG_FILE" 47*6236dae4SAndroid Build Coastguard Worker echo "That might affect results so please remove that or comment" 48*6236dae4SAndroid Build Coastguard Worker echo "it out - exiting." 49*6236dae4SAndroid Build Coastguard Worker exit 1 50*6236dae4SAndroid Build Coastguard Workerfi 51*6236dae4SAndroid Build Coastguard Worker 52*6236dae4SAndroid Build Coastguard Worker 53*6236dae4SAndroid Build Coastguard Worker# Targets we expect to be ECH-enabled servers 54*6236dae4SAndroid Build Coastguard Worker# for which an HTTPS RR is published. 55*6236dae4SAndroid Build Coastguard Worker# structure is host:port mapped to pathname 56*6236dae4SAndroid Build Coastguard Worker# TODO: add negative tests for these 57*6236dae4SAndroid Build Coastguard Workerdeclare -A ech_targets=( 58*6236dae4SAndroid Build Coastguard Worker [my-own.net]="ech-check.php" 59*6236dae4SAndroid Build Coastguard Worker [my-own.net:8443]="ech-check.php" 60*6236dae4SAndroid Build Coastguard Worker [defo.ie]="ech-check.php" 61*6236dae4SAndroid Build Coastguard Worker [cover.defo.ie]="" 62*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:8413]="stats" 63*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:8414]="stats" 64*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:9413]="" 65*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:10413]="" 66*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:11413]="" 67*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:12413]="" 68*6236dae4SAndroid Build Coastguard Worker [draft-13.esni.defo.ie:12414]="" 69*6236dae4SAndroid Build Coastguard Worker [crypto.cloudflare.com]="cdn-cgi/trace" 70*6236dae4SAndroid Build Coastguard Worker [tls-ech.dev]="" 71*6236dae4SAndroid Build Coastguard Worker # this one's gone away for now (possibly temporarily) 72*6236dae4SAndroid Build Coastguard Worker # [epochbelt.com]="" 73*6236dae4SAndroid Build Coastguard Worker) 74*6236dae4SAndroid Build Coastguard Worker 75*6236dae4SAndroid Build Coastguard Worker# Targets we expect not to be ECH-enabled servers 76*6236dae4SAndroid Build Coastguard Worker# but for which an HTTPS RR is published. 77*6236dae4SAndroid Build Coastguard Workerdeclare -A httpsrr_targets=( 78*6236dae4SAndroid Build Coastguard Worker [ietf.org]="" 79*6236dae4SAndroid Build Coastguard Worker [rte.ie]="" 80*6236dae4SAndroid Build Coastguard Worker) 81*6236dae4SAndroid Build Coastguard Worker 82*6236dae4SAndroid Build Coastguard Worker# Targets we expect not to be ECH-enabled servers 83*6236dae4SAndroid Build Coastguard Worker# and for which no HTTPS RR is published. 84*6236dae4SAndroid Build Coastguard Workerdeclare -A neither_targets=( 85*6236dae4SAndroid Build Coastguard Worker [www.tcd.ie]="" 86*6236dae4SAndroid Build Coastguard Worker [jell.ie]="" 87*6236dae4SAndroid Build Coastguard Worker) 88*6236dae4SAndroid Build Coastguard Worker 89*6236dae4SAndroid Build Coastguard Worker# 90*6236dae4SAndroid Build Coastguard Worker# Variables that can be over-ridden from environment 91*6236dae4SAndroid Build Coastguard Worker# 92*6236dae4SAndroid Build Coastguard Worker 93*6236dae4SAndroid Build Coastguard Worker# Top of curl test tree, assume we're there 94*6236dae4SAndroid Build Coastguard Worker: "${CTOP:=.}" 95*6236dae4SAndroid Build Coastguard Worker 96*6236dae4SAndroid Build Coastguard Worker# Place to put test log output 97*6236dae4SAndroid Build Coastguard Worker: "${LTOP:=$CTOP/tests/ech-log/}" 98*6236dae4SAndroid Build Coastguard Worker 99*6236dae4SAndroid Build Coastguard Worker# Place to stash outputs when things go wrong 100*6236dae4SAndroid Build Coastguard Worker: "${BTOP:=$LTOP}" 101*6236dae4SAndroid Build Coastguard Worker 102*6236dae4SAndroid Build Coastguard Worker# Time to wait for a remote access to work, 10 seconds 103*6236dae4SAndroid Build Coastguard Worker: "${tout:=10s}" 104*6236dae4SAndroid Build Coastguard Worker 105*6236dae4SAndroid Build Coastguard Worker# Where we find OpenSSL .so's 106*6236dae4SAndroid Build Coastguard Worker: "${OSSL:=$HOME/code/openssl-local-inst}" 107*6236dae4SAndroid Build Coastguard Worker 108*6236dae4SAndroid Build Coastguard Worker# Where we find wolfSSL .so's 109*6236dae4SAndroid Build Coastguard Worker: "${WSSL:=$HOME/code/wolfssl/inst/lib}" 110*6236dae4SAndroid Build Coastguard Worker 111*6236dae4SAndroid Build Coastguard Worker# Where we find BoringSSL .so's 112*6236dae4SAndroid Build Coastguard Worker: "${BSSL:=$HOME/code/boringssl/inst/lib}" 113*6236dae4SAndroid Build Coastguard Worker 114*6236dae4SAndroid Build Coastguard Worker# Where we send DoH queries when using kdig or curl 115*6236dae4SAndroid Build Coastguard Worker: "${DOHSERVER:=one.one.one.one}" 116*6236dae4SAndroid Build Coastguard Worker: "${DOHPATH:=dns-query}" 117*6236dae4SAndroid Build Coastguard Worker 118*6236dae4SAndroid Build Coastguard Worker# Whether to send mail when bad things happen (mostly for cronjob) 119*6236dae4SAndroid Build Coastguard Worker: "${DOMAIL:=no}" 120*6236dae4SAndroid Build Coastguard Worker 121*6236dae4SAndroid Build Coastguard Worker# Misc vars and functions 122*6236dae4SAndroid Build Coastguard Worker 123*6236dae4SAndroid Build Coastguard WorkerDEFPORT=443 124*6236dae4SAndroid Build Coastguard Worker 125*6236dae4SAndroid Build Coastguard Workerfunction whenisitagain() 126*6236dae4SAndroid Build Coastguard Worker{ 127*6236dae4SAndroid Build Coastguard Worker /bin/date -u +%Y%m%d-%H%M%S 128*6236dae4SAndroid Build Coastguard Worker} 129*6236dae4SAndroid Build Coastguard Worker 130*6236dae4SAndroid Build Coastguard Workerfunction fileage() 131*6236dae4SAndroid Build Coastguard Worker{ 132*6236dae4SAndroid Build Coastguard Worker echo $(($(date +%s) - $(date +%s -r "$1"))) 133*6236dae4SAndroid Build Coastguard Worker} 134*6236dae4SAndroid Build Coastguard Worker 135*6236dae4SAndroid Build Coastguard Workerfunction hostport2host() 136*6236dae4SAndroid Build Coastguard Worker{ 137*6236dae4SAndroid Build Coastguard Worker case $1 in 138*6236dae4SAndroid Build Coastguard Worker *:*) host=${1%:*} port=${1##*:};; 139*6236dae4SAndroid Build Coastguard Worker *) host=$1 port=$DEFPORT;; 140*6236dae4SAndroid Build Coastguard Worker esac 141*6236dae4SAndroid Build Coastguard Worker echo "$host" 142*6236dae4SAndroid Build Coastguard Worker} 143*6236dae4SAndroid Build Coastguard Worker 144*6236dae4SAndroid Build Coastguard Workerfunction hostport2port() 145*6236dae4SAndroid Build Coastguard Worker{ 146*6236dae4SAndroid Build Coastguard Worker case $1 in 147*6236dae4SAndroid Build Coastguard Worker *:*) host=${1%:*} port=${1##*:};; 148*6236dae4SAndroid Build Coastguard Worker *) host=$1 port=$DEFPORT;; 149*6236dae4SAndroid Build Coastguard Worker esac 150*6236dae4SAndroid Build Coastguard Worker echo "$port" 151*6236dae4SAndroid Build Coastguard Worker} 152*6236dae4SAndroid Build Coastguard Worker 153*6236dae4SAndroid Build Coastguard Workerfunction cli_test() 154*6236dae4SAndroid Build Coastguard Worker{ 155*6236dae4SAndroid Build Coastguard Worker # 1st param is target URL 156*6236dae4SAndroid Build Coastguard Worker turl=$1 157*6236dae4SAndroid Build Coastguard Worker # 2nd param is 0 if we expect curl to not work or 1 if we expect it 158*6236dae4SAndroid Build Coastguard Worker # to have worked 159*6236dae4SAndroid Build Coastguard Worker curl_winorlose=$2 160*6236dae4SAndroid Build Coastguard Worker # 3rd param is 0 if we expect ECH to not work or 1 if we expect it 161*6236dae4SAndroid Build Coastguard Worker # to have worked 162*6236dae4SAndroid Build Coastguard Worker ech_winorlose=$3 163*6236dae4SAndroid Build Coastguard Worker # remaining params are passed to command line 164*6236dae4SAndroid Build Coastguard Worker # echparms=(${@:4}) 165*6236dae4SAndroid Build Coastguard Worker IFS=" " read -r -a echparms <<< "${@:4}" 166*6236dae4SAndroid Build Coastguard Worker 167*6236dae4SAndroid Build Coastguard Worker TMPF=$(mktemp) 168*6236dae4SAndroid Build Coastguard Worker cmd="timeout $tout $CURL ${CURL_PARAMS[*]} ${echparms[*]} $turl >$TMPF 2>&1" 169*6236dae4SAndroid Build Coastguard Worker echo "cli_test: $cmd " >> "$logfile" 170*6236dae4SAndroid Build Coastguard Worker timeout "$tout" "$CURL" "${CURL_PARAMS[@]}" "${echparms[@]}" "$turl" >"$TMPF" 2>&1 171*6236dae4SAndroid Build Coastguard Worker eres=$? 172*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" == "124" ]] 173*6236dae4SAndroid Build Coastguard Worker then 174*6236dae4SAndroid Build Coastguard Worker allgood="no" 175*6236dae4SAndroid Build Coastguard Worker echo "cli_test: Timeout running $cmd" 176*6236dae4SAndroid Build Coastguard Worker cat "$TMPF" >> "$logfile" 177*6236dae4SAndroid Build Coastguard Worker echo "cli_test: Timeout running $cmd" >> "$logfile" 178*6236dae4SAndroid Build Coastguard Worker fi 179*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" != "0" && "$curl_winorlose" == "1" ]] 180*6236dae4SAndroid Build Coastguard Worker then 181*6236dae4SAndroid Build Coastguard Worker allgood="no" 182*6236dae4SAndroid Build Coastguard Worker echo "cli_test: curl failure running $cmd" 183*6236dae4SAndroid Build Coastguard Worker cat "$TMPF" >> "$logfile" 184*6236dae4SAndroid Build Coastguard Worker echo "cli_test: curl failure running $cmd" >> "$logfile" 185*6236dae4SAndroid Build Coastguard Worker fi 186*6236dae4SAndroid Build Coastguard Worker ech_success=$(grep -c "ECH: result: status is succeeded" "$TMPF") 187*6236dae4SAndroid Build Coastguard Worker if [[ "$ech_success" == "$ech_winorlose" ]] 188*6236dae4SAndroid Build Coastguard Worker then 189*6236dae4SAndroid Build Coastguard Worker echo "cli_test ok for ${echparms[*]}" 190*6236dae4SAndroid Build Coastguard Worker else 191*6236dae4SAndroid Build Coastguard Worker allgood="no" 192*6236dae4SAndroid Build Coastguard Worker echo "cli_test: ECH failure running $cmd" 193*6236dae4SAndroid Build Coastguard Worker cat "$TMPF" >> "$logfile" 194*6236dae4SAndroid Build Coastguard Worker echo "cli_test: ECH failure running $cmd" >> "$logfile" 195*6236dae4SAndroid Build Coastguard Worker fi 196*6236dae4SAndroid Build Coastguard Worker rm -f "$TMPF" 197*6236dae4SAndroid Build Coastguard Worker} 198*6236dae4SAndroid Build Coastguard Worker 199*6236dae4SAndroid Build Coastguard Workerfunction get_ech_configlist() 200*6236dae4SAndroid Build Coastguard Worker{ 201*6236dae4SAndroid Build Coastguard Worker domain=$1 202*6236dae4SAndroid Build Coastguard Worker ecl=$(dig +short https "$domain" | grep "ech=" | sed -e 's/^.*ech=//' | sed -e 's/ .*//') 203*6236dae4SAndroid Build Coastguard Worker echo "$ecl" 204*6236dae4SAndroid Build Coastguard Worker} 205*6236dae4SAndroid Build Coastguard Worker 206*6236dae4SAndroid Build Coastguard Worker# start of main script 207*6236dae4SAndroid Build Coastguard Worker 208*6236dae4SAndroid Build Coastguard Worker# start by assuming we have nothing we need... 209*6236dae4SAndroid Build Coastguard Workerhave_ossl="no" 210*6236dae4SAndroid Build Coastguard Workerhave_wolf="no" 211*6236dae4SAndroid Build Coastguard Workerhave_bssl="no" 212*6236dae4SAndroid Build Coastguard Workerusing_ossl="no" 213*6236dae4SAndroid Build Coastguard Workerusing_wolf="no" 214*6236dae4SAndroid Build Coastguard Workerusing_bssl="no" 215*6236dae4SAndroid Build Coastguard Workerhave_curl="no" 216*6236dae4SAndroid Build Coastguard Workerhave_dig="no" 217*6236dae4SAndroid Build Coastguard Workerhave_kdig="no" 218*6236dae4SAndroid Build Coastguard Workerhave_presout="no" 219*6236dae4SAndroid Build Coastguard Workerhave_portsblocked="no" 220*6236dae4SAndroid Build Coastguard Worker 221*6236dae4SAndroid Build Coastguard Worker# setup logging 222*6236dae4SAndroid Build Coastguard WorkerNOW=$(whenisitagain) 223*6236dae4SAndroid Build Coastguard WorkerBINNAME=$(basename "$0" .sh) 224*6236dae4SAndroid Build Coastguard Workerif [ ! -d "$LTOP" ] 225*6236dae4SAndroid Build Coastguard Workerthen 226*6236dae4SAndroid Build Coastguard Worker mkdir -p "$LTOP" 227*6236dae4SAndroid Build Coastguard Workerfi 228*6236dae4SAndroid Build Coastguard Workerif [ ! -d "$LTOP" ] 229*6236dae4SAndroid Build Coastguard Workerthen 230*6236dae4SAndroid Build Coastguard Worker echo "Can't see $LTOP for logs - exiting" 231*6236dae4SAndroid Build Coastguard Worker exit 1 232*6236dae4SAndroid Build Coastguard Workerfi 233*6236dae4SAndroid Build Coastguard Workerlogfile=$LTOP/${BINNAME}_$NOW.log 234*6236dae4SAndroid Build Coastguard Worker 235*6236dae4SAndroid Build Coastguard Workerecho "-----" > "$logfile" 236*6236dae4SAndroid Build Coastguard Workerecho "Running $0 at $NOW" >> "$logfile" 237*6236dae4SAndroid Build Coastguard Workerecho "Running $0 at $NOW" 238*6236dae4SAndroid Build Coastguard Worker 239*6236dae4SAndroid Build Coastguard Worker# check we have the binaries needed and which TLS library we'll be using 240*6236dae4SAndroid Build Coastguard Workerif [ -f "$OSSL"/libssl.so ] 241*6236dae4SAndroid Build Coastguard Workerthen 242*6236dae4SAndroid Build Coastguard Worker have_ossl="yes" 243*6236dae4SAndroid Build Coastguard Workerfi 244*6236dae4SAndroid Build Coastguard Workerif [ -f "$WSSL"/libwolfssl.so ] 245*6236dae4SAndroid Build Coastguard Workerthen 246*6236dae4SAndroid Build Coastguard Worker have_wolf="yes" 247*6236dae4SAndroid Build Coastguard Workerfi 248*6236dae4SAndroid Build Coastguard Workerif [ -f "$BSSL"/libssl.so ] 249*6236dae4SAndroid Build Coastguard Workerthen 250*6236dae4SAndroid Build Coastguard Worker have_bssl="yes" 251*6236dae4SAndroid Build Coastguard Workerfi 252*6236dae4SAndroid Build Coastguard WorkerCURL="$CTOP/src/curl" 253*6236dae4SAndroid Build Coastguard WorkerCURL_PARAMS=(-vvv --doh-url https://one.one.one.one/dns-query) 254*6236dae4SAndroid Build Coastguard Workerif [ -f "$CTOP"/src/curl ] 255*6236dae4SAndroid Build Coastguard Workerthen 256*6236dae4SAndroid Build Coastguard Worker have_curl="yes" 257*6236dae4SAndroid Build Coastguard Workerfi 258*6236dae4SAndroid Build Coastguard Workerossl_cnt=$(LD_LIBRARY_PATH=$OSSL $CURL "${CURL_PARAMS[@]}" -V 2> /dev/null | grep -c OpenSSL) 259*6236dae4SAndroid Build Coastguard Workerif ((ossl_cnt == 1)) 260*6236dae4SAndroid Build Coastguard Workerthen 261*6236dae4SAndroid Build Coastguard Worker using_ossl="yes" 262*6236dae4SAndroid Build Coastguard Worker # setup access to our .so 263*6236dae4SAndroid Build Coastguard Worker export LD_LIBRARY_PATH=$OSSL 264*6236dae4SAndroid Build Coastguard Workerfi 265*6236dae4SAndroid Build Coastguard Workerbssl_cnt=$(LD_LIBRARY_PATH=$BSSL $CURL "${CURL_PARAMS[@]}" -V 2> /dev/null | grep -c BoringSSL) 266*6236dae4SAndroid Build Coastguard Workerif ((bssl_cnt == 1)) 267*6236dae4SAndroid Build Coastguard Workerthen 268*6236dae4SAndroid Build Coastguard Worker using_bssl="yes" 269*6236dae4SAndroid Build Coastguard Worker # setup access to our .so 270*6236dae4SAndroid Build Coastguard Worker export LD_LIBRARY_PATH=$BSSL 271*6236dae4SAndroid Build Coastguard Workerfi 272*6236dae4SAndroid Build Coastguard Workerwolf_cnt=$($CURL "${CURL_PARAMS[@]}" -V 2> /dev/null | grep -c wolfSSL) 273*6236dae4SAndroid Build Coastguard Workerif ((wolf_cnt == 1)) 274*6236dae4SAndroid Build Coastguard Workerthen 275*6236dae4SAndroid Build Coastguard Worker using_wolf="yes" 276*6236dae4SAndroid Build Coastguard Worker # for some reason curl+wolfSSL dislikes certs that are ok 277*6236dae4SAndroid Build Coastguard Worker # for browsers, so we'll test using "insecure" mode (-k) 278*6236dae4SAndroid Build Coastguard Worker # but that's ok here as we're only interested in ECH testing 279*6236dae4SAndroid Build Coastguard Worker CURL_PARAMS+=(-k) 280*6236dae4SAndroid Build Coastguard Workerfi 281*6236dae4SAndroid Build Coastguard Worker# check if we have dig and it knows https or not 282*6236dae4SAndroid Build Coastguard Workerdigcmd="dig +short" 283*6236dae4SAndroid Build Coastguard Workerwdig=$(type -p dig) 284*6236dae4SAndroid Build Coastguard Workerif [[ "$wdig" != "" ]] 285*6236dae4SAndroid Build Coastguard Workerthen 286*6236dae4SAndroid Build Coastguard Worker have_dig="yes" 287*6236dae4SAndroid Build Coastguard Workerfi 288*6236dae4SAndroid Build Coastguard Workerwkdig=$(type -p kdig) 289*6236dae4SAndroid Build Coastguard Workerif [[ "$wkdig" != "" ]] 290*6236dae4SAndroid Build Coastguard Workerthen 291*6236dae4SAndroid Build Coastguard Worker have_kdig="yes" 292*6236dae4SAndroid Build Coastguard Worker digcmd="kdig @$DOHSERVER +https +short" 293*6236dae4SAndroid Build Coastguard Workerfi 294*6236dae4SAndroid Build Coastguard Worker# see if our dig version knows HTTPS 295*6236dae4SAndroid Build Coastguard Workerdout=$($digcmd https defo.ie) 296*6236dae4SAndroid Build Coastguard Workerif [[ $dout != "1 . "* ]] 297*6236dae4SAndroid Build Coastguard Workerthen 298*6236dae4SAndroid Build Coastguard Worker dout=$($digcmd -t TYPE65 defo.ie) 299*6236dae4SAndroid Build Coastguard Worker if [[ $dout == "1 . "* ]] 300*6236dae4SAndroid Build Coastguard Worker then 301*6236dae4SAndroid Build Coastguard Worker # we're good 302*6236dae4SAndroid Build Coastguard Worker have_presout="yes" 303*6236dae4SAndroid Build Coastguard Worker fi 304*6236dae4SAndroid Build Coastguard Workerelse 305*6236dae4SAndroid Build Coastguard Worker have_presout="yes" 306*6236dae4SAndroid Build Coastguard Workerfi 307*6236dae4SAndroid Build Coastguard Worker 308*6236dae4SAndroid Build Coastguard Worker# Check if ports other than 443 are blocked from this 309*6236dae4SAndroid Build Coastguard Worker# vantage point (I run tests in a n/w where that's 310*6236dae4SAndroid Build Coastguard Worker# sadly true sometimes;-) 311*6236dae4SAndroid Build Coastguard Worker# echo "Checking if ports other than 443 are maybe blocked" 312*6236dae4SAndroid Build Coastguard Workernot443testurl="https://draft-13.esni.defo.ie:9413/" 313*6236dae4SAndroid Build Coastguard Workertimeout "$tout" "$CURL" "${CURL_PARAMS[@]}" "$not443testurl" >/dev/null 2>&1 314*6236dae4SAndroid Build Coastguard Workereres=$? 315*6236dae4SAndroid Build Coastguard Workerif [[ "$eres" == "124" ]] 316*6236dae4SAndroid Build Coastguard Workerthen 317*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $not443testurl" >> "$logfile" 318*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $not443testurl" 319*6236dae4SAndroid Build Coastguard Worker have_portsblocked="yes" 320*6236dae4SAndroid Build Coastguard Workerfi 321*6236dae4SAndroid Build Coastguard Worker 322*6236dae4SAndroid Build Coastguard Worker{ 323*6236dae4SAndroid Build Coastguard Worker echo "have_ossl: $have_ossl" 324*6236dae4SAndroid Build Coastguard Worker echo "have_wolf: $have_wolf" 325*6236dae4SAndroid Build Coastguard Worker echo "have_bssl: $have_bssl" 326*6236dae4SAndroid Build Coastguard Worker echo "using_ossl: $using_ossl" 327*6236dae4SAndroid Build Coastguard Worker echo "using_wolf: $using_wolf" 328*6236dae4SAndroid Build Coastguard Worker echo "using_bssl: $using_bssl" 329*6236dae4SAndroid Build Coastguard Worker echo "have_curl: $have_curl" 330*6236dae4SAndroid Build Coastguard Worker echo "have_dig: $have_dig" 331*6236dae4SAndroid Build Coastguard Worker echo "have_kdig: $have_kdig" 332*6236dae4SAndroid Build Coastguard Worker echo "have_presout: $have_presout" 333*6236dae4SAndroid Build Coastguard Worker echo "have_portsblocked: $have_portsblocked" 334*6236dae4SAndroid Build Coastguard Worker} >> "$logfile" 335*6236dae4SAndroid Build Coastguard Worker 336*6236dae4SAndroid Build Coastguard Workerecho "curl: have $have_curl, cURL command: |$CURL ${CURL_PARAMS[*]}|" 337*6236dae4SAndroid Build Coastguard Workerecho "ossl: have: $have_ossl, using: $using_ossl" 338*6236dae4SAndroid Build Coastguard Workerecho "wolf: have: $have_wolf, using: $using_wolf" 339*6236dae4SAndroid Build Coastguard Workerecho "bssl: have: $have_bssl, using: $using_bssl" 340*6236dae4SAndroid Build Coastguard Workerecho "dig: $have_dig, kdig: $have_kdig, HTTPS pres format: $have_presout" 341*6236dae4SAndroid Build Coastguard Workerecho "dig command: |$digcmd|" 342*6236dae4SAndroid Build Coastguard Workerecho "ports != 443 blocked: $have_portsblocked" 343*6236dae4SAndroid Build Coastguard Worker 344*6236dae4SAndroid Build Coastguard Workerif [[ "$have_curl" == "no" ]] 345*6236dae4SAndroid Build Coastguard Workerthen 346*6236dae4SAndroid Build Coastguard Worker echo "Can't proceed without curl - exiting" 347*6236dae4SAndroid Build Coastguard Worker exit 32 348*6236dae4SAndroid Build Coastguard Workerfi 349*6236dae4SAndroid Build Coastguard Worker 350*6236dae4SAndroid Build Coastguard Workerallgood="yes" 351*6236dae4SAndroid Build Coastguard Worker 352*6236dae4SAndroid Build Coastguard Workerskip="false" 353*6236dae4SAndroid Build Coastguard Worker 354*6236dae4SAndroid Build Coastguard Workerif [[ "$skip" != "true" ]] 355*6236dae4SAndroid Build Coastguard Workerthen 356*6236dae4SAndroid Build Coastguard Worker 357*6236dae4SAndroid Build Coastguard Worker# basic ECH good/bad 358*6236dae4SAndroid Build Coastguard Workerfor targ in "${!ech_targets[@]}" 359*6236dae4SAndroid Build Coastguard Workerdo 360*6236dae4SAndroid Build Coastguard Worker if [[ "$using_wolf" == "yes" ]] 361*6236dae4SAndroid Build Coastguard Worker then 362*6236dae4SAndroid Build Coastguard Worker case $targ in 363*6236dae4SAndroid Build Coastguard Worker "draft-13.esni.defo.ie:8414" | "tls-ech.dev" | \ 364*6236dae4SAndroid Build Coastguard Worker "crypto.cloudflare.com" | "epochbelt.com") 365*6236dae4SAndroid Build Coastguard Worker echo "Skipping $targ 'cause wolf"; continue;; 366*6236dae4SAndroid Build Coastguard Worker *) 367*6236dae4SAndroid Build Coastguard Worker ;; 368*6236dae4SAndroid Build Coastguard Worker esac 369*6236dae4SAndroid Build Coastguard Worker fi 370*6236dae4SAndroid Build Coastguard Worker host=$(hostport2host "$targ") 371*6236dae4SAndroid Build Coastguard Worker port=$(hostport2port "$targ") 372*6236dae4SAndroid Build Coastguard Worker if [[ "$port" != "443" && "$have_portsblocked" == "yes" ]] 373*6236dae4SAndroid Build Coastguard Worker then 374*6236dae4SAndroid Build Coastguard Worker echo "Skipping $targ as ports != 443 seem blocked" 375*6236dae4SAndroid Build Coastguard Worker continue 376*6236dae4SAndroid Build Coastguard Worker fi 377*6236dae4SAndroid Build Coastguard Worker path=${ech_targets[$targ]} 378*6236dae4SAndroid Build Coastguard Worker turl="https://$host:$port/$path" 379*6236dae4SAndroid Build Coastguard Worker echo "ECH check for $turl" 380*6236dae4SAndroid Build Coastguard Worker { 381*6236dae4SAndroid Build Coastguard Worker echo "" 382*6236dae4SAndroid Build Coastguard Worker echo "ECH check for $turl" 383*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 384*6236dae4SAndroid Build Coastguard Worker timeout "$tout" "$CURL" "${CURL_PARAMS[@]}" --ech hard "$turl" >> "$logfile" 2>&1 385*6236dae4SAndroid Build Coastguard Worker eres=$? 386*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" == "124" ]] 387*6236dae4SAndroid Build Coastguard Worker then 388*6236dae4SAndroid Build Coastguard Worker allgood="no" 389*6236dae4SAndroid Build Coastguard Worker { 390*6236dae4SAndroid Build Coastguard Worker echo "Timeout for $turl" 391*6236dae4SAndroid Build Coastguard Worker echo -e "\tTimeout for $turl" 392*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $host:$port/$path" 393*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 394*6236dae4SAndroid Build Coastguard Worker fi 395*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" != "0" ]] 396*6236dae4SAndroid Build Coastguard Worker then 397*6236dae4SAndroid Build Coastguard Worker allgood="no" 398*6236dae4SAndroid Build Coastguard Worker echo "Error ($eres) for $turl" >> "$logfile" 399*6236dae4SAndroid Build Coastguard Worker echo -e "\tError ($eres) for $turl" 400*6236dae4SAndroid Build Coastguard Worker fi 401*6236dae4SAndroid Build Coastguard Worker echo "" >> "$logfile" 402*6236dae4SAndroid Build Coastguard Workerdone 403*6236dae4SAndroid Build Coastguard Worker 404*6236dae4SAndroid Build Coastguard Worker# check if public_name override works (OpenSSL only) 405*6236dae4SAndroid Build Coastguard Workerif [[ "$using_ossl" == "yes" ]] 406*6236dae4SAndroid Build Coastguard Workerthen 407*6236dae4SAndroid Build Coastguard Worker for targ in "${!ech_targets[@]}" 408*6236dae4SAndroid Build Coastguard Worker do 409*6236dae4SAndroid Build Coastguard Worker host=$(hostport2host "$targ") 410*6236dae4SAndroid Build Coastguard Worker port=$(hostport2port "$targ") 411*6236dae4SAndroid Build Coastguard Worker if [[ "$port" != "443" && "$have_portsblocked" == "yes" ]] 412*6236dae4SAndroid Build Coastguard Worker then 413*6236dae4SAndroid Build Coastguard Worker echo "Skipping $targ as ports != 443 seem blocked" 414*6236dae4SAndroid Build Coastguard Worker continue 415*6236dae4SAndroid Build Coastguard Worker fi 416*6236dae4SAndroid Build Coastguard Worker if [[ "$host" == "crypto.cloudflare.com" ]] 417*6236dae4SAndroid Build Coastguard Worker then 418*6236dae4SAndroid Build Coastguard Worker echo "Skipping $host as they've blocked PN override" 419*6236dae4SAndroid Build Coastguard Worker continue 420*6236dae4SAndroid Build Coastguard Worker fi 421*6236dae4SAndroid Build Coastguard Worker path=${ech_targets[$targ]} 422*6236dae4SAndroid Build Coastguard Worker turl="https://$host:$port/$path" 423*6236dae4SAndroid Build Coastguard Worker echo "PN override check for $turl" 424*6236dae4SAndroid Build Coastguard Worker { 425*6236dae4SAndroid Build Coastguard Worker echo "" 426*6236dae4SAndroid Build Coastguard Worker echo "PN override check for $turl" 427*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 428*6236dae4SAndroid Build Coastguard Worker timeout "$tout" "$CURL" "${CURL_PARAMS[@]}" --ech pn:override --ech hard "$turl" >> "$logfile" 2>&1 429*6236dae4SAndroid Build Coastguard Worker eres=$? 430*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" == "124" ]] 431*6236dae4SAndroid Build Coastguard Worker then 432*6236dae4SAndroid Build Coastguard Worker allgood="no" 433*6236dae4SAndroid Build Coastguard Worker { 434*6236dae4SAndroid Build Coastguard Worker echo "Timeout for $turl" 435*6236dae4SAndroid Build Coastguard Worker echo -e "\tTimeout for $turl" 436*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $host:$port/$path" 437*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 438*6236dae4SAndroid Build Coastguard Worker fi 439*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" != "0" ]] 440*6236dae4SAndroid Build Coastguard Worker then 441*6236dae4SAndroid Build Coastguard Worker allgood="no" 442*6236dae4SAndroid Build Coastguard Worker echo "PN override Error ($eres) for $turl" >> "$logfile" 443*6236dae4SAndroid Build Coastguard Worker echo -e "\tPN override Error ($eres) for $turl" 444*6236dae4SAndroid Build Coastguard Worker fi 445*6236dae4SAndroid Build Coastguard Worker echo "" >> "$logfile" 446*6236dae4SAndroid Build Coastguard Worker done 447*6236dae4SAndroid Build Coastguard Workerfi 448*6236dae4SAndroid Build Coastguard Worker 449*6236dae4SAndroid Build Coastguard Workerfor targ in "${!httpsrr_targets[@]}" 450*6236dae4SAndroid Build Coastguard Workerdo 451*6236dae4SAndroid Build Coastguard Worker host=$(hostport2host "$targ") 452*6236dae4SAndroid Build Coastguard Worker port=$(hostport2port "$targ") 453*6236dae4SAndroid Build Coastguard Worker if [[ "$port" != "443" && "$have_portsblocked" == "yes" ]] 454*6236dae4SAndroid Build Coastguard Worker then 455*6236dae4SAndroid Build Coastguard Worker echo "Skipping $targ as ports != 443 seem blocked" 456*6236dae4SAndroid Build Coastguard Worker continue 457*6236dae4SAndroid Build Coastguard Worker fi 458*6236dae4SAndroid Build Coastguard Worker path=${httpsrr_targets[$targ]} 459*6236dae4SAndroid Build Coastguard Worker turl="https://$host:$port/$path" 460*6236dae4SAndroid Build Coastguard Worker echo "HTTPS RR but no ECHConfig check for $turl" 461*6236dae4SAndroid Build Coastguard Worker { 462*6236dae4SAndroid Build Coastguard Worker echo "" 463*6236dae4SAndroid Build Coastguard Worker echo "HTTPS RR but no ECHConfig check for $turl" 464*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 465*6236dae4SAndroid Build Coastguard Worker timeout "$tout" "$CURL" "${CURL_PARAMS[@]}" --ech true "$turl" >> "$logfile" 2>&1 466*6236dae4SAndroid Build Coastguard Worker eres=$? 467*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" == "124" ]] 468*6236dae4SAndroid Build Coastguard Worker then 469*6236dae4SAndroid Build Coastguard Worker allgood="no" 470*6236dae4SAndroid Build Coastguard Worker { 471*6236dae4SAndroid Build Coastguard Worker echo "Timeout for $turl" 472*6236dae4SAndroid Build Coastguard Worker echo -e "\tTimeout for $turl" 473*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $host:$port/$path" 474*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 475*6236dae4SAndroid Build Coastguard Worker fi 476*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" != "0" ]] 477*6236dae4SAndroid Build Coastguard Worker then 478*6236dae4SAndroid Build Coastguard Worker allgood="no" 479*6236dae4SAndroid Build Coastguard Worker echo "Error ($eres) for $turl" >> "$logfile" 480*6236dae4SAndroid Build Coastguard Worker echo -e "\tError ($eres) for $turl" 481*6236dae4SAndroid Build Coastguard Worker fi 482*6236dae4SAndroid Build Coastguard Worker echo "" >> "$logfile" 483*6236dae4SAndroid Build Coastguard Workerdone 484*6236dae4SAndroid Build Coastguard Worker 485*6236dae4SAndroid Build Coastguard Workerfor targ in "${!neither_targets[@]}" 486*6236dae4SAndroid Build Coastguard Workerdo 487*6236dae4SAndroid Build Coastguard Worker host=$(hostport2host "$targ") 488*6236dae4SAndroid Build Coastguard Worker port=$(hostport2port "$targ") 489*6236dae4SAndroid Build Coastguard Worker if [[ "$port" != "443" && "$have_portsblocked" == "yes" ]] 490*6236dae4SAndroid Build Coastguard Worker then 491*6236dae4SAndroid Build Coastguard Worker echo "Skipping $targ as ports != 443 seem blocked" 492*6236dae4SAndroid Build Coastguard Worker continue 493*6236dae4SAndroid Build Coastguard Worker fi 494*6236dae4SAndroid Build Coastguard Worker path=${neither_targets[$targ]} 495*6236dae4SAndroid Build Coastguard Worker turl="https://$host:$port/$path" 496*6236dae4SAndroid Build Coastguard Worker echo "Neither HTTPS nor ECHConfig check for $turl" 497*6236dae4SAndroid Build Coastguard Worker { 498*6236dae4SAndroid Build Coastguard Worker echo "" 499*6236dae4SAndroid Build Coastguard Worker echo "Neither HTTPS nor ECHConfig check for $turl" 500*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 501*6236dae4SAndroid Build Coastguard Worker timeout "$tout" "$CURL" "${CURL_PARAMS[@]}" --ech true "$turl" >> "$logfile" 2>&1 502*6236dae4SAndroid Build Coastguard Worker eres=$? 503*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" == "124" ]] 504*6236dae4SAndroid Build Coastguard Worker then 505*6236dae4SAndroid Build Coastguard Worker allgood="no" 506*6236dae4SAndroid Build Coastguard Worker { 507*6236dae4SAndroid Build Coastguard Worker echo "Timeout for $turl" 508*6236dae4SAndroid Build Coastguard Worker echo -e "\tTimeout for $turl" 509*6236dae4SAndroid Build Coastguard Worker echo "Timeout running curl for $host:$port/$path" 510*6236dae4SAndroid Build Coastguard Worker } >> "$logfile" 511*6236dae4SAndroid Build Coastguard Worker fi 512*6236dae4SAndroid Build Coastguard Worker if [[ "$eres" != "0" ]] 513*6236dae4SAndroid Build Coastguard Worker then 514*6236dae4SAndroid Build Coastguard Worker allgood="no" 515*6236dae4SAndroid Build Coastguard Worker echo "Error ($eres) for $turl" >> "$logfile" 516*6236dae4SAndroid Build Coastguard Worker echo -e "\tError ($eres) for $turl" 517*6236dae4SAndroid Build Coastguard Worker fi 518*6236dae4SAndroid Build Coastguard Worker echo "" >> "$logfile" 519*6236dae4SAndroid Build Coastguard Workerdone 520*6236dae4SAndroid Build Coastguard Worker 521*6236dae4SAndroid Build Coastguard Worker 522*6236dae4SAndroid Build Coastguard Worker# Check various command line options, if we're good so far 523*6236dae4SAndroid Build Coastguard Workerif [[ "$using_ossl" == "yes" && "$allgood" == "yes" ]] 524*6236dae4SAndroid Build Coastguard Workerthen 525*6236dae4SAndroid Build Coastguard Worker # use this test URL as it'll tell us if things worked 526*6236dae4SAndroid Build Coastguard Worker turl="https://defo.ie/ech-check.php" 527*6236dae4SAndroid Build Coastguard Worker echo "cli_test with $turl" 528*6236dae4SAndroid Build Coastguard Worker echo "cli_test with $turl" >> "$logfile" 529*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true 530*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false 531*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true 532*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true --ech pn:foobar 533*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:foobar --ech true 534*6236dae4SAndroid Build Coastguard Worker echconfiglist=$(get_ech_configlist defo.ie) 535*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$echconfiglist" 536*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech ecl: 537*6236dae4SAndroid Build Coastguard Workerfi 538*6236dae4SAndroid Build Coastguard Worker 539*6236dae4SAndroid Build Coastguard Workerfi # skip 540*6236dae4SAndroid Build Coastguard Worker 541*6236dae4SAndroid Build Coastguard Worker# Check combinations of command line options, if we're good so far 542*6236dae4SAndroid Build Coastguard Worker# Most of this only works for OpenSSL, which is ok, as we're checking 543*6236dae4SAndroid Build Coastguard Worker# the argument handling here, not the ECH protocol 544*6236dae4SAndroid Build Coastguard Workerif [[ "$using_ossl" == "yes" && "$allgood" == "yes" ]] 545*6236dae4SAndroid Build Coastguard Workerthen 546*6236dae4SAndroid Build Coastguard Worker # ech can be hard, true, grease or false 547*6236dae4SAndroid Build Coastguard Worker # ecl:ecl can be correct, incorrect or missing 548*6236dae4SAndroid Build Coastguard Worker # ech:pn can be correct, incorrect or missing 549*6236dae4SAndroid Build Coastguard Worker # in all cases the "last" argument provided should "win" 550*6236dae4SAndroid Build Coastguard Worker # but only one of hard, true, grease or false will apply 551*6236dae4SAndroid Build Coastguard Worker turl="https://defo.ie/ech-check.php" 552*6236dae4SAndroid Build Coastguard Worker echconfiglist=$(get_ech_configlist defo.ie) 553*6236dae4SAndroid Build Coastguard Worker goodecl=$echconfiglist 554*6236dae4SAndroid Build Coastguard Worker echconfiglist=$(get_ech_configlist hidden.hoba.ie) 555*6236dae4SAndroid Build Coastguard Worker badecl=$echconfiglist 556*6236dae4SAndroid Build Coastguard Worker goodpn="cover.defo.ie" 557*6236dae4SAndroid Build Coastguard Worker badpn="hoba.ie" 558*6236dae4SAndroid Build Coastguard Worker echo "more cli_test with $turl" 559*6236dae4SAndroid Build Coastguard Worker echo "more cli_test with $turl" >> "$logfile" 560*6236dae4SAndroid Build Coastguard Worker 561*6236dae4SAndroid Build Coastguard Worker # The combinatorics here are handled via the tests/ech_combos.py script 562*6236dae4SAndroid Build Coastguard Worker # which produces all the relevant combinations or inputs and orders 563*6236dae4SAndroid Build Coastguard Worker # thereof. We have to manually assess whether or not ECH is expected to 564*6236dae4SAndroid Build Coastguard Worker # work for each case. 565*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 566*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 567*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" 568*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 569*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech ecl:"$goodecl" 570*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 571*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech ecl:"$goodecl" --ech pn:"$goodpn" 572*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 573*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard 574*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 575*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" 576*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 577*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 578*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 579*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech pn:"$goodpn" 580*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 581*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true 582*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 583*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" 584*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 585*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 586*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 587*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true --ech pn:"$goodpn" 588*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 589*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" 590*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 591*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" 592*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 593*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 594*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 595*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard 596*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 597*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 598*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 599*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 600*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 601*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 602*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 603*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true 604*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 605*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 606*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 607*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 608*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 609*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 610*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 611*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech pn:"$goodpn" 612*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 613*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true 614*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 615*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 616*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 617*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 618*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 619*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" - 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 620*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 621*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$goodpn" 622*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 623*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true 624*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 625*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" 626*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 627*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 628*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 629*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true --ech pn:"$goodpn" 630*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 631*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$goodecl" 632*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 633*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$goodecl" --ech pn:"$goodpn" 634*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 635*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false 636*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 637*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" 638*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 639*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech ecl:"$goodecl" 640*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 641*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech ecl:"$goodecl" --ech pn:"$goodpn" 642*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 643*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard 644*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 645*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" 646*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 647*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 648*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 649*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech pn:"$goodpn" 650*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 651*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true 652*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 653*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" 654*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 655*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 656*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 657*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech pn:"$goodpn" 658*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 659*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" 660*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 661*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" 662*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 663*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 664*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 665*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard 666*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 667*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 668*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 669*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 670*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 671*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 672*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 673*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true 674*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 675*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 676*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 677*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 678*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 679*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 680*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 681*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech pn:"$goodpn" 682*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 683*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true 684*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 685*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 686*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 687*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 688*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 689*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 690*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 691*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$badecl" --ech pn:"$goodpn" 692*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 693*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true 694*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 695*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" 696*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 697*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 698*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 699*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true --ech pn:"$goodpn" 700*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 701*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$goodecl" 702*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 703*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech ecl:"$goodecl" --ech pn:"$goodpn" 704*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 705*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard 706*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 707*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech ecl:"$goodecl" 708*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 709*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 710*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 711*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech pn:"$goodpn" 712*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 713*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech true 714*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 715*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech true --ech ecl:"$goodecl" 716*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 717*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 718*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 719*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech hard --ech true --ech pn:"$goodpn" 720*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 721*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech pn:"$badpn" 722*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 723*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech pn:"$badpn" --ech ecl:"$goodecl" 724*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 725*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 726*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 727*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard 728*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 729*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 730*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 731*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 732*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 733*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 734*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 735*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech true 736*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 737*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 738*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 739*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 740*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 741*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 742*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 743*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech pn:"$badpn" --ech pn:"$goodpn" 744*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 745*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech true 746*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 747*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 748*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 749*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 750*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 751*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 752*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 753*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech false --ech pn:"$goodpn" 754*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 755*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true 756*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 757*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true --ech ecl:"$goodecl" 758*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 759*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 760*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 761*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech false --ech true --ech pn:"$goodpn" 762*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 763*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard 764*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 765*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech ecl:"$goodecl" 766*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 767*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 768*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 769*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech pn:"$goodpn" 770*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 771*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech true 772*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 773*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech true --ech ecl:"$goodecl" 774*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 775*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 776*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 777*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech hard --ech true --ech pn:"$goodpn" 778*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 779*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech pn:"$badpn" 780*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 781*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech ecl:"$goodecl" 782*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 783*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 784*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 785*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard 786*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 787*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 788*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 789*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 790*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 791*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 792*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 793*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech true 794*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 795*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 796*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 797*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 798*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 799*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 800*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 801*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech pn:"$badpn" --ech pn:"$goodpn" 802*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 803*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech true 804*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 805*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 806*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 807*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 808*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 809*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 810*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 811*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech pn:"$goodpn" 812*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 813*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true 814*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 815*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech ecl:"$goodecl" 816*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 817*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 818*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 819*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech pn:"$goodpn" 820*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 821*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 822*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 823*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$goodecl" 824*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 825*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech ecl:"$goodecl" --ech pn:"$goodpn" 826*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 827*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 --ech pn:"$goodpn" 828*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 829*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true 830*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 831*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech ecl:"$goodecl" 832*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 833*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 834*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 835*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 1 --ech true --ech pn:"$goodpn" 836*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 837*6236dae4SAndroid Build Coastguard Worker 838*6236dae4SAndroid Build Coastguard Worker # a target URL that doesn't support ECH 839*6236dae4SAndroid Build Coastguard Worker turl="https://tcd.ie" 840*6236dae4SAndroid Build Coastguard Worker echo "cli_test with $turl" 841*6236dae4SAndroid Build Coastguard Worker echo "cli_test with $turl" >> "$logfile" 842*6236dae4SAndroid Build Coastguard Worker # the params below don't matter much here as we'll fail anyway 843*6236dae4SAndroid Build Coastguard Worker echconfiglist=$(get_ech_configlist defo.ie) 844*6236dae4SAndroid Build Coastguard Worker goodecl=$echconfiglist 845*6236dae4SAndroid Build Coastguard Worker badecl="$goodecl" 846*6236dae4SAndroid Build Coastguard Worker goodpn="tcd.ie" 847*6236dae4SAndroid Build Coastguard Worker badpn="tcd.ie" 848*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 1 0 849*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 850*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" 851*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 852*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech ecl:"$goodecl" 853*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 854*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech ecl:"$goodecl" --ech pn:"$goodpn" 855*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 856*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard 857*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 858*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" 859*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 860*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 861*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 862*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech pn:"$goodpn" 863*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 864*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true 865*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 866*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" 867*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 868*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 869*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 870*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech hard --ech true --ech pn:"$goodpn" 871*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 872*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" 873*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 874*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" 875*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 876*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 877*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 878*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard 879*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 880*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 881*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 882*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 883*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 884*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 885*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 886*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true 887*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 888*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 889*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 890*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 891*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 892*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 893*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 894*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech pn:"$goodpn" 895*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 896*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true 897*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 898*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 899*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 900*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 901*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 902*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 903*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 904*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech pn:"$goodpn" 905*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 906*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true 907*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 908*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" 909*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 910*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 911*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 912*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$badecl" --ech true --ech pn:"$goodpn" 913*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 914*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$goodecl" 915*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 916*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$goodecl" --ech pn:"$goodpn" 917*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 918*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false 919*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 920*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" 921*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 922*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech ecl:"$goodecl" 923*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 924*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech ecl:"$goodecl" --ech pn:"$goodpn" 925*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 926*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard 927*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 928*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" 929*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 930*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 931*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 932*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech pn:"$goodpn" 933*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 934*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true 935*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 936*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" 937*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 938*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 939*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 940*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech hard --ech true --ech pn:"$goodpn" 941*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 942*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" 943*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 944*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" 945*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 946*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 947*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 948*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard 949*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 950*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 951*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 952*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 953*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 954*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 955*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 956*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true 957*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 958*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 959*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 960*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 961*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 962*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 963*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 964*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech pn:"$goodpn" 965*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 966*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true 967*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 968*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 969*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 970*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 971*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 972*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 973*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 974*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech pn:"$goodpn" 975*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 976*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true 977*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 978*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" 979*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 980*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 981*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 982*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$badecl" --ech true --ech pn:"$goodpn" 983*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 984*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$goodecl" 985*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 986*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech ecl:"$goodecl" --ech pn:"$goodpn" 987*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 988*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard 989*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 990*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech ecl:"$goodecl" 991*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 992*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 993*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 994*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech pn:"$goodpn" 995*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 996*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech true 997*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 998*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech true --ech ecl:"$goodecl" 999*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1000*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1001*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1002*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech hard --ech true --ech pn:"$goodpn" 1003*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1004*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" 1005*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1006*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech ecl:"$goodecl" 1007*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1008*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 1009*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1010*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard 1011*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1012*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 1013*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1014*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 1015*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1016*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 1017*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1018*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech true 1019*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1020*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 1021*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1022*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1023*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1024*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 1025*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1026*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech pn:"$goodpn" 1027*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1028*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech true 1029*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1030*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 1031*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1032*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1033*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1034*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 1035*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1036*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech pn:"$goodpn" 1037*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1038*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech true 1039*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1040*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech true --ech ecl:"$goodecl" 1041*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1042*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1043*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1044*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech false --ech true --ech pn:"$goodpn" 1045*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1046*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard 1047*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1048*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech ecl:"$goodecl" 1049*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1050*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 1051*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1052*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech pn:"$goodpn" 1053*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1054*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech true 1055*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1056*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech true --ech ecl:"$goodecl" 1057*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1058*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1059*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1060*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech hard --ech true --ech pn:"$goodpn" 1061*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1062*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" 1063*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1064*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech ecl:"$goodecl" 1065*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1066*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech ecl:"$goodecl" --ech pn:"$goodpn" 1067*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1068*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard 1069*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1070*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" 1071*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1072*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech ecl:"$goodecl" --ech pn:"$goodpn" 1073*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1074*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech pn:"$goodpn" 1075*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1076*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech true 1077*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1078*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" 1079*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1080*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1081*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1082*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech hard --ech true --ech pn:"$goodpn" 1083*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1084*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech pn:"$goodpn" 1085*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1086*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech true 1087*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1088*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" 1089*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1090*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1091*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1092*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$badpn" --ech true --ech pn:"$goodpn" 1093*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1094*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$goodpn" 1095*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1096*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true 1097*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1098*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech ecl:"$goodecl" 1099*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1100*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1101*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1102*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech pn:"$goodpn" 1103*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1104*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 1105*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1106*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$goodecl" 1107*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1108*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech ecl:"$goodecl" --ech pn:"$goodpn" 1109*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1110*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech pn:"$goodpn" 1111*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1112*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true 1113*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1114*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech ecl:"$goodecl" 1115*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1116*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech ecl:"$goodecl" --ech pn:"$goodpn" 1117*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1118*6236dae4SAndroid Build Coastguard Worker cli_test "$turl" 0 0 --ech true --ech pn:"$goodpn" 1119*6236dae4SAndroid Build Coastguard Worker if [[ "$allgood" != "yes" ]]; then echo "$LINENO"; fi 1120*6236dae4SAndroid Build Coastguard Workerfi 1121*6236dae4SAndroid Build Coastguard Worker 1122*6236dae4SAndroid Build Coastguard Worker 1123*6236dae4SAndroid Build Coastguard WorkerEND=$(whenisitagain) 1124*6236dae4SAndroid Build Coastguard Workerecho "Finished $0 at $END" >> "$logfile" 1125*6236dae4SAndroid Build Coastguard Workerecho "-----" >> "$logfile" 1126*6236dae4SAndroid Build Coastguard Worker 1127*6236dae4SAndroid Build Coastguard Workerif [[ "$allgood" == "yes" ]] 1128*6236dae4SAndroid Build Coastguard Workerthen 1129*6236dae4SAndroid Build Coastguard Worker echo "Finished $0 at $END" 1130*6236dae4SAndroid Build Coastguard Worker echo "All good, log in $logfile" 1131*6236dae4SAndroid Build Coastguard Worker exit 0 1132*6236dae4SAndroid Build Coastguard Workerelse 1133*6236dae4SAndroid Build Coastguard Worker echo "Finished $0 at $END" 1134*6236dae4SAndroid Build Coastguard Worker echo "NOT all good, log in $logfile" 1135*6236dae4SAndroid Build Coastguard Workerfi 1136*6236dae4SAndroid Build Coastguard Worker 1137*6236dae4SAndroid Build Coastguard Worker# send a mail to root (will be fwd'd) but just once every 24 hours 1138*6236dae4SAndroid Build Coastguard Worker# 'cause we only really need "new" news 1139*6236dae4SAndroid Build Coastguard Workeritsnews="yes" 1140*6236dae4SAndroid Build Coastguard Workerage_of_news=0 1141*6236dae4SAndroid Build Coastguard Workerif [ -f "$LTOP"/bad_runs ] 1142*6236dae4SAndroid Build Coastguard Workerthen 1143*6236dae4SAndroid Build Coastguard Worker age_of_news=$(fileage "$LTOP"/bad_runs) 1144*6236dae4SAndroid Build Coastguard Worker # only consider news "new" if we haven't mailed today 1145*6236dae4SAndroid Build Coastguard Worker if ((age_of_news < 24*3600)) 1146*6236dae4SAndroid Build Coastguard Worker then 1147*6236dae4SAndroid Build Coastguard Worker itsnews="no" 1148*6236dae4SAndroid Build Coastguard Worker fi 1149*6236dae4SAndroid Build Coastguard Workerfi 1150*6236dae4SAndroid Build Coastguard Workerif [[ "$DOMAIL" == "yes" && "$itsnews" == "yes" ]] 1151*6236dae4SAndroid Build Coastguard Workerthen 1152*6236dae4SAndroid Build Coastguard Worker echo "ECH badness at $NOW" | mail -s "ECH badness at $NOW" root 1153*6236dae4SAndroid Build Coastguard Workerfi 1154*6236dae4SAndroid Build Coastguard Worker# add to list of bad runs (updating file age) 1155*6236dae4SAndroid Build Coastguard Workerecho "ECH badness at $NOW" >>"$LTOP"/bad_runs 1156*6236dae4SAndroid Build Coastguard Workerexit 2 1157