diff --git a/blockcheck2.d/standard/90-quic.sh b/blockcheck2.d/standard/90-quic.sh index 35c7f6c..149d36c 100644 --- a/blockcheck2.d/standard/90-quic.sh +++ b/blockcheck2.d/standard/90-quic.sh @@ -1,3 +1,5 @@ +. "$TESTDIR/def.inc" + pktws_check_http3() { # $1 - test function @@ -5,7 +7,7 @@ pktws_check_http3() [ "$NOTEST_QUIC" = 1 ] && { echo "SKIPPED"; return; } - local repeats fake pos + local repeats fake pos fool local PAYLOAD="--payload quic_initial" if [ -n "$FAKE_QUIC" ]; then @@ -18,6 +20,12 @@ pktws_check_http3() pktws_curl_test_update $1 $2 ${FAKE_QUIC:+--blob=$fake:@"$FAKE_QUIC" }$PAYLOAD --lua-desync=fake:blob=$fake:repeats=$repeats && [ "$SCANLEVEL" != force ] && break done + [ "$IPV" = 6 ] && { + for fool in $FOOLINGS6_UDP; do + pktws_curl_test_update $1 $2 $PAYLOAD --lua-desync=send:$fool --lua-desync=drop + done + } + for pos in 8 16 32 64; do pktws_curl_test_update $1 $2 $PAYLOAD --lua-desync=send:ipfrag:ipfrag_pos_udp=$pos --lua-desync=drop && [ "$SCANLEVEL" != force ] && break done diff --git a/blockcheck2.d/standard/def.inc b/blockcheck2.d/standard/def.inc index 7e17572..5889d53 100644 --- a/blockcheck2.d/standard/def.inc +++ b/blockcheck2.d/standard/def.inc @@ -2,6 +2,8 @@ FOOLINGS46_TCP=${FOOLINGS46_TCP:-"tcp_md5 badsum tcp_seq=-3000 tcp_seq=1000000 t FOOLINGS6_TCP=${FOOLINGS6_TCP:-"ip6_hopbyhop ip6_hopbyhop:ip6_hopbyhop2 ip6_destopt ip6_routing ip6_ah"} FOOLINGS_TCP="$FOOLINGS46_TCP" [ "$IPV" = 6 ] && FOOLINGS_TCP="$FOOLINGS_TCP $FOOLINGS6_TCP" +FOOLINGS6_UDP="${FOOLINGS6_UDP:-$FOOLINGS6_TCP}" FOOLINGS_UDP="${FOOLINGS_UDP:-badsum}" +[ "$IPV" = 6 ] && FOOLINGS_UDP="$FOOLINGS_UDP $FOOLINGS6_UDP" FAKE_REPEATS=${FAKE_REPEATS:-1} diff --git a/docs/changes.txt b/docs/changes.txt index 872e73c..30fb45d 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -118,3 +118,4 @@ v0.7.4 v0.7.5 * zapret-auto : orchestrator "repeater" +* blockcheck2: check http3 with ipv6 exthdr