]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
Interop test against PuTTY snapshot and releases.
authorDarren Tucker <dtucker@dtucker.net>
Wed, 7 Feb 2024 02:45:02 +0000 (13:45 +1100)
committerDarren Tucker <dtucker@dtucker.net>
Wed, 7 Feb 2024 12:10:34 +0000 (23:10 +1100)
.github/configs
.github/setup_ci.sh
.github/workflows/c-cpp.yml

index 963e877199123dbef44bee8fd73e01354107f5ae..370fe29a3ee44649499fc60361a9338de13d34a7 100755 (executable)
@@ -164,6 +164,11 @@ case "$config" in
     libressl-*)
        LIBCRYPTOFLAGS="--with-ssl-dir=/opt/libressl --with-rpath=-Wl,-rpath,"
        ;;
+    putty-*)
+       CONFIGFLAGS="--with-plink=/usr/local/bin/plink --with-puttygen=/usr/local/bin/puttygen"
+       # We don't need to rerun the regular tests, just the interop ones.
+       TEST_TARGET=interop-tests
+       ;;
     openssl-*)
        LIBCRYPTOFLAGS="--with-ssl-dir=/opt/openssl --with-rpath=-Wl,-rpath,"
        # OpenSSL 1.1.1 specifically has a bug in its RNG that breaks reexec
index d0ba7b4724e9a600abb720351dfc64ccb5cb6330..f0f2761c71076646c91dee83bdb05a81c781f499 100755 (executable)
@@ -142,6 +142,10 @@ for TARGET in $TARGETS; do
         INSTALL_BORINGSSL=1
         PACKAGES="${PACKAGES} cmake ninja-build"
        ;;
+    putty-*)
+       INSTALL_PUTTY=$(echo "${TARGET}" | cut -f2 -d-)
+       PACKAGES="${PACKAGES} cmake"
+       ;;
     valgrind*)
        PACKAGES="$PACKAGES valgrind"
        ;;
@@ -241,3 +245,25 @@ if [ ! -z "${INSTALL_ZLIB}" ]; then
      cd ${HOME}/zlib && ./configure && make &&
      sudo make install prefix=/opt/zlib)
 fi
+
+if [ ! -z "${INSTALL_PUTTY}" ]; then
+    ver="${INSTALL_PUTTY}"
+    case "${INSTALL_PUTTY}" in
+    snapshot)
+       tarball=putty.tar.gz
+       (cd /tmp && wget https://tartarus.org/~simon/putty-snapshots/${tarball})
+       ;;
+    *)
+       tarball=putty-${ver}.tar.gz
+       (cd /tmp && wget https://the.earth.li/~sgtatham/putty/${ver}/${tarball})
+       ;;
+    esac
+    (cd ${HOME} && tar xfz /tmp/${tarball} && cd putty-*
+     if [ -f CMakeLists.txt ]; then
+       cmake . && cmake --build . && sudo cmake --build . --target install
+     else
+       ./configure && make && sudo make install
+     fi
+    )
+    /usr/local/bin/plink -V
+fi
index 8f624d21016c13822e608e41a89556607573e5f0..f4423dfa9725e1f5b7b6c5a68b90ff34b216a8fd 100644 (file)
@@ -76,6 +76,17 @@ jobs:
           - { target: ubuntu-latest, config: openssl-1.1.1_stable }
           - { target: ubuntu-latest, config: openssl-3.0 }  # stable branch
           - { target: ubuntu-latest, config: openssl-3.2 }  # stable branch
+          - { target: ubuntu-latest, config: putty-0.71 }
+          - { target: ubuntu-latest, config: putty-0.72 }
+          - { target: ubuntu-latest, config: putty-0.73 }
+          - { target: ubuntu-latest, config: putty-0.74 }
+          - { target: ubuntu-latest, config: putty-0.75 }
+          - { target: ubuntu-latest, config: putty-0.76 }
+          - { target: ubuntu-latest, config: putty-0.77 }
+          - { target: ubuntu-latest, config: putty-0.78 }
+          - { target: ubuntu-latest, config: putty-0.79 }
+          - { target: ubuntu-latest, config: putty-0.80 }
+          - { target: ubuntu-latest, config: putty-snapshot }
           - { target: ubuntu-latest, config: zlib-develop }
           - { target: ubuntu-22.04, config: pam }
           - { target: ubuntu-22.04, config: krb5 }