1# $OpenBSD: Makefile,v 1.7 2019/07/12 19:31:29 bluhm Exp $ 2 3PROG ?= relay 4CFLAGS += -Wall -Werror 5CFLAGS += -Wstrict-prototypes -Wmissing-prototypes 6CFLAGS += -Wmissing-declarations 7CFLAGS += -Wshadow -Wpointer-arith -Wcast-qual 8CFLAGS += -Wsign-compare 9NOMAN = yes 10 11TARGETS = tcp-copy tcp-splice udp-copy udp-splice 12CLEANFILES += copy splice 13 14.include <bsd.regress.mk> 15 16copy splice: ${PROG} 17 ln -s relay $@ 18 19remote-setup: 20.if ! empty (REMOTE_SSH) 21 ssh ${REMOTE_SSH} 'cd ${.CURDIR} && make copy splice' 22.endif 23 24.for p in tcp udp 25.for r in copy splice 26 27run-$p-$r: $r remote-setup 28 @echo '\n======== $@ ========' 29 -pkill -x tcpbench 30.if empty (REMOTE_SSH) 31 ./$r ${p:S/tcp//:S/udp/-u/} -4 12345 127.0.0.1 12346 & \ 32 rpid=$$! ; \ 33 tcpbench ${p:S/tcp//:S/udp/-u/} -4 -t 7 -s -p 12346 & \ 34 sleep 1 ; \ 35 tcpbench ${p:S/tcp//:S/udp/-u/} -4 -t 5 127.0.0.1 ; \ 36 kill $$rpid ; \ 37 pkill -x tcpbench 38.else 39 ssh -f ${REMOTE_SSH} 'cd ${.CURDIR} && make PROG= LOCAL_ADDR=${LOCAL_ADDR} REMOTE_ADDR=${REMOTE_ADDR} remote-$p-$r' ; \ 40 sleep 2 ; \ 41 tcpbench ${p:S/tcp//:S/udp/-u/} -t 7 -b ${LOCAL_ADDR} -s -p 12346 & \ 42 sleep 1 ; \ 43 tcpbench ${p:S/tcp//:S/udp/-u/} -t 5 ${REMOTE_ADDR} ; \ 44 pkill -x tcpbench 45.endif 46 sleep 1 47 48remote-$p-$r: $r 49 -pkill -x $r 50 ./$r ${p:S/tcp//:S/udp/-u/} -b ${REMOTE_ADDR} 12345 ${LOCAL_ADDR} 12346 & \ 51 rpid=$$! ; \ 52 sleep 10 ; \ 53 kill $$rpid 54 55.endfor 56.endfor 57