1*91f7d55fSchristos# #-- proxy_protocol.pre--# 2*91f7d55fSchristos# source the master var file when it's there 3*91f7d55fSchristos[ -f ../.tpkg.var.master ] && source ../.tpkg.var.master 4*91f7d55fSchristos# use .tpkg.var.test for in test variable passing 5*91f7d55fSchristos[ -f .tpkg.var.test ] && source .tpkg.var.test 6*91f7d55fSchristos 7*91f7d55fSchristosPRE="../.." 8*91f7d55fSchristos. ../common.sh 9*91f7d55fSchristos 10*91f7d55fSchristos# This test uses the unshare utility 11*91f7d55fSchristosif test ! -x "`which unshare 2>&1`"; then 12*91f7d55fSchristos skip_test "no unshare (from util-linux package) available, skip test" 13*91f7d55fSchristosfi 14*91f7d55fSchristos 15*91f7d55fSchristosget_make 16*91f7d55fSchristos(cd $PRE; $MAKE streamtcp) 17*91f7d55fSchristos 18*91f7d55fSchristosget_random_port 4 19*91f7d55fSchristosUNBOUND_PORT=$RND_PORT 20*91f7d55fSchristosFWD_PORT=$(($RND_PORT + 1)) 21*91f7d55fSchristosPROXY_PORT=$(($RND_PORT + 2)) 22*91f7d55fSchristosPROXY_TLS_PORT=$(($RND_PORT + 3)) 23*91f7d55fSchristos 24*91f7d55fSchristosINTERFACE_ALLOW=eth123 25*91f7d55fSchristosINTERFACE_ALLOW_ADDR=10.1.2.3 26*91f7d55fSchristosINTERFACE_REFUSE=eth234 27*91f7d55fSchristosINTERFACE_REFUSE_ADDR=10.2.3.4 28*91f7d55fSchristos 29*91f7d55fSchristosCLIENT_ADDR_ALLOW=1.2.3.4 30*91f7d55fSchristosCLIENT_ADDR_ALLOW6=2001:db8::cafe:cafe 31*91f7d55fSchristosCLIENT_ADDR_REFUSE=5.6.7.8 32*91f7d55fSchristosCLIENT_ADDR_REFUSE6=2001:db8::dead:beef 33*91f7d55fSchristos 34*91f7d55fSchristos# make config file 35*91f7d55fSchristossed \ 36*91f7d55fSchristos -e 's/@PORT\@/'$UNBOUND_PORT'/' \ 37*91f7d55fSchristos -e 's/@TOPORT\@/'$FWD_PORT'/' \ 38*91f7d55fSchristos -e 's/@PROXYPORT\@/'$PROXY_PORT'/' \ 39*91f7d55fSchristos -e 's/@PROXYTLSPORT\@/'$PROXY_TLS_PORT'/' \ 40*91f7d55fSchristos -e 's/@INTERFACE_ALLOW_ADDR\@/'$INTERFACE_ALLOW_ADDR'/' \ 41*91f7d55fSchristos -e 's/@INTERFACE_REFUSE_ADDR\@/'$INTERFACE_REFUSE_ADDR'/' \ 42*91f7d55fSchristos -e 's/@CLIENT_ADDR_ALLOW\@/'$CLIENT_ADDR_ALLOW'/' \ 43*91f7d55fSchristos -e 's/@CLIENT_ADDR_ALLOW6\@/'$CLIENT_ADDR_ALLOW6'/' \ 44*91f7d55fSchristos -e 's/@CLIENT_ADDR_REFUSE\@/'$CLIENT_ADDR_REFUSE'/' \ 45*91f7d55fSchristos -e 's/@CLIENT_ADDR_REFUSE6\@/'$CLIENT_ADDR_REFUSE6'/' \ 46*91f7d55fSchristos < proxy_protocol.conf > ub.conf 47*91f7d55fSchristos 48*91f7d55fSchristosif test -x "`which bash`"; then 49*91f7d55fSchristos shell="bash" 50*91f7d55fSchristoselse 51*91f7d55fSchristos shell="sh" 52*91f7d55fSchristosfi 53*91f7d55fSchristos 54*91f7d55fSchristosecho "UNBOUND_PORT=$UNBOUND_PORT" >> .tpkg.var.test 55*91f7d55fSchristosecho "FWD_PORT=$FWD_PORT" >> .tpkg.var.test 56*91f7d55fSchristosecho "PROXY_PORT=$PROXY_PORT" >> .tpkg.var.test 57*91f7d55fSchristosecho "PROXY_TLS_PORT=$PROXY_TLS_PORT" >> .tpkg.var.test 58*91f7d55fSchristosecho "INTERFACE_ALLOW=$INTERFACE_ALLOW" >> .tpkg.var.test 59*91f7d55fSchristosecho "INTERFACE_ALLOW_ADDR=$INTERFACE_ALLOW_ADDR" >> .tpkg.var.test 60*91f7d55fSchristosecho "INTERFACE_REFUSE=$INTERFACE_REFUSE" >> .tpkg.var.test 61*91f7d55fSchristosecho "INTERFACE_REFUSE_ADDR=$INTERFACE_REFUSE_ADDR" >> .tpkg.var.test 62*91f7d55fSchristosecho "CLIENT_ADDR_ALLOW=$CLIENT_ADDR_ALLOW" >> .tpkg.var.test 63*91f7d55fSchristosecho "CLIENT_ADDR_ALLOW6=$CLIENT_ADDR_ALLOW6" >> .tpkg.var.test 64*91f7d55fSchristosecho "CLIENT_ADDR_REFUSE=$CLIENT_ADDR_REFUSE" >> .tpkg.var.test 65*91f7d55fSchristosecho "CLIENT_ADDR_REFUSE6=$CLIENT_ADDR_REFUSE6" >> .tpkg.var.test 66*91f7d55fSchristosecho "shell=$shell" >> .tpkg.var.test 67