Define HAVE_LIMITS_H in options.h rather than config.h. #10652
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: OpenVPN Tests | |
| # START OF COMMON SECTION | |
| on: | |
| push: | |
| branches: [ 'master', 'main', 'release/**' ] | |
| pull_request: | |
| branches: [ '*' ] | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| # END OF COMMON SECTION | |
| jobs: | |
| build_wolfssl: | |
| name: Build wolfSSL | |
| if: github.repository_owner == 'wolfssl' | |
| # Just to keep it the same as the testing target | |
| runs-on: ubuntu-24.04 | |
| # This should be a safe limit for the tests to run. | |
| timeout-minutes: 4 | |
| steps: | |
| - name: Build wolfSSL | |
| uses: wolfSSL/actions-build-autotools-project@v1 | |
| with: | |
| path: wolfssl | |
| configure: --enable-openvpn | |
| install: true | |
| - name: tar build-dir | |
| run: tar -zcf build-dir.tgz build-dir | |
| - name: Upload built lib | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: wolf-install-openvpn | |
| path: build-dir.tgz | |
| retention-days: 5 | |
| openvpn_check: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ref: [ release/2.6, v2.6.19 ] | |
| name: ${{ matrix.ref }} | |
| if: github.repository_owner == 'wolfssl' | |
| runs-on: ubuntu-24.04 | |
| # This should be a safe limit for the tests to run. | |
| timeout-minutes: 10 | |
| needs: build_wolfssl | |
| steps: | |
| - name: Checkout wolfSSL CI actions | |
| uses: actions/checkout@v4 | |
| with: | |
| sparse-checkout: .github/actions | |
| fetch-depth: 1 | |
| - name: Download lib | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: wolf-install-openvpn | |
| - name: untar build-dir | |
| run: tar -xf build-dir.tgz | |
| - name: Install dependencies | |
| uses: ./.github/actions/install-apt-deps | |
| with: | |
| packages: liblzo2-dev libpam0g-dev liblz4-dev libcap-ng-dev linux-libc-dev man2html libcmocka-dev python3-docutils libtool automake autoconf libnl-genl-3-dev libnl-genl-3-200 | |
| - name: workaround high-entropy ASLR | |
| # not needed after either an update to llvm or runner is done | |
| run: sudo sysctl vm.mmap_rnd_bits=28 | |
| - if: ${{ matrix.ref != 'master' }} | |
| name: Build and test openvpn with fsanitize | |
| run: | | |
| echo 'extra_c_flags=CC="gcc -fsanitize=address" CFLAGS="-fno-omit-frame-pointer -O2"' >> $GITHUB_ENV | |
| - name: Build and test openvpn | |
| uses: wolfSSL/actions-build-autotools-project@v1 | |
| with: | |
| repository: OpenVPN/openvpn | |
| ref: ${{ matrix.ref }} | |
| path: openvpn | |
| configure: >- | |
| --with-crypto-library=wolfssl | |
| WOLFSSL_CFLAGS="-I$GITHUB_WORKSPACE/build-dir/include/ -I$GITHUB_WORKSPACE/build-dir/include/wolfssl" | |
| WOLFSSL_LIBS="-L$GITHUB_WORKSPACE/build-dir/lib -lwolfssl" | |
| ${{ env.extra_c_flags }} | |
| check: true | |
| - name: Confirm OpenVPN built with wolfSSL | |
| working-directory: ./openvpn | |
| run: ldd src/openvpn/openvpn | grep wolfssl |