tests, re-enable http/2 tests in github workflow, install latest rustls-ffi version



git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1909563 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml
index 89abc69..913a5bb 100644
--- a/.github/workflows/linux.yml
+++ b/.github/workflows/linux.yml
@@ -195,20 +195,18 @@
               TEST_ASAN=1
               CLEAR_CACHE=1
           # -------------------------------------------------------------------------
-          ### TODO: if: *condition_not_24x
-          ### TODO: fails in tests.
-          # - name: HTTP/2 test suite
-          #   config: --enable-mods-shared=reallyall --with-mpm=event --enable-mpms-shared=all
-          #   pkgs: curl python3-pytest nghttp2-client python3-cryptography python3-requests
-          #   env: |
-          #     APR_VERSION=1.7.4
-          #     APU_VERSION=1.6.3
-          #     APU_CONFIG="--with-crypto"
-          #     NO_TEST_FRAMEWORK=1
-          #     TEST_INSTALL=1
-          #     TEST_H2=1
-          #     TEST_CORE=1
-          #     TEST_PROXY=1
+          - name: HTTP/2 test suite
+            config: --enable-mods-shared=reallyall --with-mpm=event --enable-mpms-shared=all
+            pkgs: curl python3-pytest nghttp2-client python3-cryptography python3-requests python3-multipart
+            env: |
+              APR_VERSION=1.7.4
+              APU_VERSION=1.6.3
+              APU_CONFIG="--with-crypto"
+              NO_TEST_FRAMEWORK=1
+              TEST_INSTALL=1
+              TEST_H2=1
+              TEST_CORE=1
+              TEST_PROXY=1
           # -------------------------------------------------------------------------
           ### TODO: if: *condition_not_24x
           ### TODO: pebble install is broken.
diff --git a/test/modules/http2/test_003_get.py b/test/modules/http2/test_003_get.py
index cff915a..77afa4f 100644
--- a/test/modules/http2/test_003_get.py
+++ b/test/modules/http2/test_003_get.py
@@ -210,7 +210,10 @@
         assert "content-length" in h
         clen = h["content-length"]
         # get the first 1024 bytes of the resource, 206 status, but content-length as original
-        r = env.curl_get(url, 5, options=["-H", "range: bytes=0-1023"])
+        for i in range(10):
+            r = env.curl_get(url, 5, options=["-H", "range: bytes=0-1023"])
+            if r.response["status"] != 503:
+                break
         assert 206 == r.response["status"]
         assert "HTTP/2" == r.response["protocol"]
         assert 1024 == len(r.response["body"])
diff --git a/test/travis_run_linux.sh b/test/travis_run_linux.sh
index c2ae092..3a2cdbd 100755
--- a/test/travis_run_linux.sh
+++ b/test/travis_run_linux.sh
@@ -58,12 +58,9 @@
 # build the version we want from source
 if test -v TEST_MOD_TLS; then
   RUSTLS_HOME="$HOME/build/rustls-ffi"
-  RUSTLS_VERSION="v0.9.0"
-  git clone https://github.com/rustls/rustls-ffi.git "$RUSTLS_HOME"
+  RUSTLS_VERSION="v0.10.0"
+  git clone -b "$RUSTLS_VERSION" https://github.com/rustls/rustls-ffi.git "$RUSTLS_HOME"
   pushd "$RUSTLS_HOME"
-    # since v0.9.0, there is no longer a dependency on cbindgen
-    git fetch origin
-    git checkout tags/$RUSTLS_VERSION
     make install DESTDIR="$PREFIX"
   popd
   CONFIG="$CONFIG --with-tls --with-rustls=$PREFIX"