name: libecc # Run this workflow every time a new commit pushed to your repository on: push jobs: examples: runs-on: ubuntu-22.04 strategy: #max-parallel: 10 matrix: cc: [gcc, clang] blinding: [0, 1] cryptofuzz: [1] steps: # Checkout repository - name: checkout repository uses: actions/checkout@v2 # Run actions # libecc examples tests - name: libecc examples tests env: CC: ${{ matrix.cc }} BLINDING: ${{ matrix.blinding }} CRYPTOFUZZ: ${{ matrix.cryptofuzz }} ASSERT_PRINT: 1 # We want to parallelize self tests OPENMP_SELF_TESTS: 1 shell: bash run: | # Install OpenMP sudo apt-get update; sudo apt-get -y install libomp-dev; # Compile and compile the tests # EXTRA_CFLAGS="-DUSER_NN_BIT_LEN=4096" make && cd src/examples/ && EXTRA_CFLAGS="-DUSER_NN_BIT_LEN=4096" make && ./sig/rsa/rsa && ./sig/dsa/dsa && ./sig/kcdsa/kcdsa && ./sig/sdsa/sdsa && ./sig/gostr34_10_94/gostr34_10_94 && ./sss/sss && ./basic/curve_basic_examples && ./basic/curve_ecdh && make clean && cd - && make clean; make 32 && cd src/examples/ && make 32 && ./sss/sss && ./basic/curve_basic_examples && ./basic/curve_ecdh && make clean && cd - && make clean; make 16 && cd src/examples/ && make 16 && ./sss/sss && ./basic/curve_basic_examples && ./basic/curve_ecdh && make clean && cd - && make clean; continue-on-error: false