Add nettle to the CI matrix
This commit is contained in:
committed by
Alex Chernyakhovsky
parent
13d73a6144
commit
e5e62b4c76
@@ -9,13 +9,18 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [macos-latest, ubuntu-18.04, ubuntu-20.04]
|
||||
crypto: [auto]
|
||||
include:
|
||||
- crypto: nettle
|
||||
os: ubuntu-20.04
|
||||
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: "setup linux build environment"
|
||||
if: ${{ startsWith(matrix.os, 'ubuntu') }}
|
||||
run: sudo apt install -y protobuf-compiler libprotobuf-dev libutempter-dev autoconf automake
|
||||
run: sudo apt install -y protobuf-compiler libprotobuf-dev libutempter-dev autoconf automake nettle-dev
|
||||
|
||||
- name: "setup macos build environment"
|
||||
if: ${{ startsWith(matrix.os, 'macos') }}
|
||||
@@ -24,8 +29,8 @@ jobs:
|
||||
- name: "generate build scripts"
|
||||
run: ./autogen.sh
|
||||
|
||||
- name: "configure"
|
||||
run: ./configure --enable-compile-warnings=error --enable-examples
|
||||
- name: ${{ format('configure (crypto {0})', matrix.crypto) }}
|
||||
run: ./configure --enable-compile-warnings=error --enable-examples ${{ (matrix.crypto != 'auto' && format('--with-crypto-library={0}', matrix.crypto)) || '' }}
|
||||
|
||||
- name: "build"
|
||||
run: make V=1
|
||||
|
||||
@@ -467,6 +467,9 @@ static inline void AES_ecb_decrypt_blks(block *blks, unsigned nblks, AES_KEY *ke
|
||||
#elif USE_NETTLE_AES
|
||||
/*-------------------*/
|
||||
|
||||
// TODO(Issue 1202): Stop using deprecated nettle APIs
|
||||
#pragma GCC diagnostic push
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
#include <nettle/aes.h>
|
||||
|
||||
typedef struct aes_ctx AES_KEY;
|
||||
@@ -502,6 +505,8 @@ static inline void AES_ecb_decrypt_blks(block *blks, unsigned nblks, AES_KEY *ke
|
||||
|
||||
#define BPI 4 /* Number of blocks in buffer per ECB call */
|
||||
|
||||
#pragma GCC diagnostic pop
|
||||
|
||||
#else
|
||||
#error "No AES implementation selected."
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user