Skip to content

Commit

Permalink
Merge pull request wolfSSL#7618 from julek-wolfssl/jwt-cpp
Browse files Browse the repository at this point in the history
Fixes for jwt-cpp
  • Loading branch information
JacobBarthelmeh authored and jefferyq2 committed Jun 9, 2024
1 parent 9ac7ed2 commit 0e45020
Show file tree
Hide file tree
Showing 4 changed files with 89 additions and 3 deletions.
85 changes: 85 additions & 0 deletions .github/workflows/jwt-cpp.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: jwt-cpp 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
# Just to keep it the same as the testing target
runs-on: ubuntu-latest
# 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-all
install: true
# Don't run tests as this config is tested in many other places
check: false

- name: Upload built lib
uses: actions/upload-artifact@v4
with:
name: wolf-install-jwt-cpp
path: build-dir
retention-days: 5

build_pam-ipmi:
strategy:
fail-fast: false
matrix:
ref: [ 0.6.0 ]
name: ${{ matrix.ref }}
runs-on: ubuntu-latest
needs: build_wolfssl
steps:
- name: Install dependencies
run: |
# Don't prompt for anything
export DEBIAN_FRONTEND=noninteractive
sudo apt-get update
sudo apt-get install libgtest-dev
- name: Download lib
uses: actions/download-artifact@v4
with:
name: wolf-install-jwt-cpp
path: build-dir

- name: Checkout OSP
uses: actions/checkout@v4
with:
repository: wolfssl/osp
path: osp

- name: Checkout jwt-cpp
uses: actions/checkout@v4
with:
repository: Thalhammer/jwt-cpp
path: jwt-cpp
ref: v${{ matrix.ref }}

- name: Build pam-ipmi
working-directory: jwt-cpp
run: |
patch -p1 < ../osp/jwt-cpp/${{ matrix.ref }}.patch
PKG_CONFIG_PATH=$GITHUB_WORKSPACE/build-dir/lib/pkgconfig \
cmake -B build -DJWT_SSL_LIBRARY:STRING=wolfSSL -DJWT_BUILD_TESTS=ON .
make -j -C build
ldd ./build/tests/jwt-cpp-test | grep wolfssl
- name: Run jwt-cpp tests
working-directory: jwt-cpp
run: ./build/tests/jwt-cpp-test
2 changes: 1 addition & 1 deletion src/ssl_crypto.c
Original file line number Diff line number Diff line change
Expand Up @@ -1966,7 +1966,7 @@ int wolfSSL_HMAC_cleanup(WOLFSSL_HMAC_CTX* ctx)
* @return NULL on failure.
*/
unsigned char* wolfSSL_HMAC(const WOLFSSL_EVP_MD* evp_md, const void* key,
int key_len, const unsigned char* data, int len, unsigned char* md,
int key_len, const unsigned char* data, size_t len, unsigned char* md,
unsigned int* md_len)
{
unsigned char* ret = NULL;
Expand Down
4 changes: 2 additions & 2 deletions wolfssl/openssl/hmac.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@

WOLFSSL_API unsigned char* wolfSSL_HMAC(const WOLFSSL_EVP_MD* evp_md,
const void* key, int key_len,
const unsigned char* d, int n, unsigned char* md,
const unsigned char* d, size_t n, unsigned char* md,
unsigned int* md_len);

WOLFSSL_API WOLFSSL_HMAC_CTX* wolfSSL_HMAC_CTX_new(void);
Expand All @@ -69,7 +69,7 @@ WOLFSSL_API const WOLFSSL_EVP_MD *wolfSSL_HMAC_CTX_get_md(const WOLFSSL_HMAC_CTX

typedef struct WOLFSSL_HMAC_CTX HMAC_CTX;

#define HMAC(a,b,c,d,e,f,g) wolfSSL_HMAC((a),(b),(c),(d),(e),(f),(g))
#define HMAC wolfSSL_HMAC

#define HMAC_CTX_new wolfSSL_HMAC_CTX_new
#define HMAC_CTX_init wolfSSL_HMAC_CTX_Init
Expand Down
1 change: 1 addition & 0 deletions wolfssl/openssl/opensslv.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
#define WOLFSSL_OPENSSLV_H_

#include <wolfssl/wolfcrypt/settings.h>
#include <wolfssl/version.h>

#if defined(OPENSSL_EXTRA) || defined(OPENSSL_EXTRA_X509_SMALL)

Expand Down

0 comments on commit 0e45020

Please sign in to comment.