2024-06-10 16:56:54 -06:00
|
|
|
name: socat Tests
|
|
|
|
|
|
|
|
# START OF COMMON SECTION
|
|
|
|
on:
|
|
|
|
push:
|
2024-06-13 12:51:51 -06:00
|
|
|
branches: [ 'master', 'main', 'release/**' ]
|
2024-06-10 16:56:54 -06:00
|
|
|
pull_request:
|
|
|
|
branches: [ '*' ]
|
|
|
|
|
|
|
|
concurrency:
|
|
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
|
|
cancel-in-progress: true
|
|
|
|
# END OF COMMON SECTION
|
|
|
|
|
|
|
|
jobs:
|
2024-06-13 12:51:51 -06:00
|
|
|
build_wolfssl:
|
2024-06-13 12:55:41 -06:00
|
|
|
name: Build wolfSSL
|
2024-09-23 11:30:58 -07:00
|
|
|
if: github.repository_owner == 'wolfssl'
|
2024-10-15 12:39:01 -04:00
|
|
|
runs-on: ubuntu-latest
|
2024-06-13 12:51:51 -06:00
|
|
|
timeout-minutes: 4
|
2024-06-13 12:55:41 -06:00
|
|
|
steps:
|
|
|
|
- name: Build wolfSSL
|
2024-06-13 12:51:51 -06:00
|
|
|
uses: wolfSSL/actions-build-autotools-project@v1
|
|
|
|
with:
|
|
|
|
path: wolfssl
|
|
|
|
configure: --enable-maxfragment --enable-opensslall --enable-opensslextra --enable-dtls --enable-oldtls --enable-tlsv10 --enable-ipv6 'CPPFLAGS=-DWOLFSSL_NO_DTLS_SIZE_CHECK -DOPENSSL_COMPATIBLE_DEFAULTS'
|
|
|
|
install: true
|
|
|
|
|
2024-08-05 14:32:37 +02:00
|
|
|
- name: tar build-dir
|
|
|
|
run: tar -zcf build-dir.tgz build-dir
|
|
|
|
|
2024-06-13 12:55:41 -06:00
|
|
|
- name: Upload built lib
|
2024-06-13 12:51:51 -06:00
|
|
|
uses: actions/upload-artifact@v4
|
|
|
|
with:
|
|
|
|
name: wolf-install-socat
|
2024-08-05 14:32:37 +02:00
|
|
|
path: build-dir.tgz
|
|
|
|
retention-days: 5
|
2024-06-13 12:51:51 -06:00
|
|
|
|
|
|
|
|
2024-06-10 16:56:54 -06:00
|
|
|
socat_check:
|
2024-09-23 11:30:58 -07:00
|
|
|
if: github.repository_owner == 'wolfssl'
|
2024-10-15 12:39:01 -04:00
|
|
|
runs-on: ubuntu-latest
|
2024-06-10 16:56:54 -06:00
|
|
|
# This should be a safe limit for the tests to run.
|
|
|
|
timeout-minutes: 30
|
2024-06-13 12:51:51 -06:00
|
|
|
needs: build_wolfssl
|
2024-06-10 16:56:54 -06:00
|
|
|
steps:
|
|
|
|
- name: Install prereqs
|
|
|
|
run:
|
|
|
|
sudo apt-get install build-essential autoconf libtool pkg-config clang libc++-dev
|
|
|
|
|
2024-06-13 12:51:51 -06:00
|
|
|
- name: Download lib
|
|
|
|
uses: actions/download-artifact@v4
|
2024-06-10 16:56:54 -06:00
|
|
|
with:
|
2024-06-13 12:51:51 -06:00
|
|
|
name: wolf-install-socat
|
2024-08-05 14:32:37 +02:00
|
|
|
|
|
|
|
- name: untar build-dir
|
|
|
|
run: tar -xf build-dir.tgz
|
2024-06-10 16:56:54 -06:00
|
|
|
|
|
|
|
- name: Download socat
|
|
|
|
run: curl -O http://www.dest-unreach.org/socat/download/socat-1.8.0.0.tar.gz && tar xvf socat-1.8.0.0.tar.gz
|
|
|
|
|
|
|
|
- name: Checkout OSP
|
|
|
|
uses: actions/checkout@v4
|
|
|
|
with:
|
|
|
|
repository: wolfssl/osp
|
|
|
|
path: osp
|
|
|
|
|
|
|
|
- name: Build socat
|
|
|
|
working-directory: ./socat-1.8.0.0
|
|
|
|
run: |
|
|
|
|
patch -p1 < ../osp/socat/1.8.0.0/socat-1.8.0.0.patch
|
|
|
|
autoreconf -vfi
|
2024-06-13 12:51:51 -06:00
|
|
|
./configure --with-wolfssl=$GITHUB_WORKSPACE/build-dir
|
2024-06-10 16:56:54 -06:00
|
|
|
make
|
|
|
|
|
|
|
|
- name: Run socat tests
|
|
|
|
working-directory: ./socat-1.8.0.0
|
2024-06-14 11:24:27 -06:00
|
|
|
run: |
|
|
|
|
export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/build-dir/lib:$LD_LIBRARY_PATH
|
|
|
|
export SHELL=/bin/bash
|
|
|
|
SOCAT=$GITHUB_WORKSPACE/socat-1.8.0.0/socat ./test.sh -t 0.5 --expect-fail 146,216,309,310,386,399,402,459,460,467,468,478,492,528,530
|