Skip to content

Commit d100ff8

Browse files
authored
Merge branch 'master' into doc
2 parents 42990f7 + a555e21 commit d100ff8

43 files changed

Lines changed: 10229 additions & 3767 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/rust-wrapper.yml

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,18 +16,59 @@ jobs:
1616
build_wolfssl:
1717
name: Build wolfSSL Rust Wrapper
1818
if: github.repository_owner == 'wolfssl'
19-
runs-on: ubuntu-24.04
19+
runs-on: ${{ matrix.os }}
2020
# This should be a safe limit for the tests to run.
2121
timeout-minutes: 10
2222
steps:
2323
- name: Build wolfSSL
2424
uses: wolfSSL/actions-build-autotools-project@v1
2525
with:
2626
path: wolfssl
27-
configure: --enable-all
27+
configure: ${{ matrix.config }}
2828
- name: Build Rust Wrapper
2929
working-directory: wolfssl
3030
run: make -C wrapper/rust
3131
- name: Run Rust Wrapper Tests
3232
working-directory: wolfssl
3333
run: make -C wrapper/rust test
34+
strategy:
35+
matrix:
36+
os: [ ubuntu-24.04, ubuntu-24.04-arm ]
37+
config: [
38+
# Add new configs here
39+
'',
40+
'--enable-all',
41+
'--enable-cryptonly --disable-examples',
42+
'--enable-cryptonly --disable-examples --disable-aes --disable-aesgcm',
43+
'--enable-cryptonly --disable-examples --disable-aescbc',
44+
'--enable-cryptonly --disable-examples --disable-aeseax',
45+
'--enable-cryptonly --disable-examples --disable-aesecb',
46+
'--enable-cryptonly --disable-examples --disable-aesccm',
47+
'--enable-cryptonly --disable-examples --disable-aescfb',
48+
'--enable-cryptonly --disable-examples --disable-aesctr',
49+
'--enable-cryptonly --disable-examples --disable-aescts',
50+
'--enable-cryptonly --disable-examples --disable-aesgcm',
51+
'--enable-cryptonly --disable-examples --disable-aesgcm-stream',
52+
'--enable-cryptonly --disable-examples --disable-aesofb',
53+
'--enable-cryptonly --disable-examples --disable-aesxts',
54+
'--enable-cryptonly --disable-examples --disable-cmac',
55+
'--enable-cryptonly --disable-examples --disable-dh',
56+
'--enable-cryptonly --disable-examples --disable-ecc',
57+
'--enable-cryptonly --disable-examples --disable-ed25519',
58+
'--enable-cryptonly --disable-examples --disable-ed25519-stream',
59+
'--enable-cryptonly --disable-examples --disable-ed448',
60+
'--enable-cryptonly --disable-examples --disable-ed448-stream',
61+
'--enable-cryptonly --disable-examples --disable-hkdf',
62+
'--enable-cryptonly --disable-examples --disable-hmac',
63+
'--enable-cryptonly --disable-examples --disable-rng',
64+
'--enable-cryptonly --disable-examples --disable-rsa',
65+
'--enable-cryptonly --disable-examples --disable-rsapss',
66+
'--enable-cryptonly --disable-examples --disable-sha224',
67+
'--enable-cryptonly --disable-examples --disable-sha3',
68+
'--enable-cryptonly --disable-examples --disable-sha384',
69+
'--enable-cryptonly --disable-examples --disable-sha512',
70+
'--enable-cryptonly --disable-examples --disable-shake128',
71+
'--enable-cryptonly --disable-examples --disable-shake256',
72+
'--enable-cryptonly --disable-examples --disable-srtp-kdf',
73+
'--enable-cryptonly --disable-examples --disable-x963kdf',
74+
]

.github/workflows/xcode.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: Xcode Build Tests
2+
3+
# START OF COMMON SECTION
4+
on:
5+
push:
6+
branches: [ 'master', 'main', 'release/**' ]
7+
pull_request:
8+
branches: [ '*' ]
9+
10+
concurrency:
11+
group: ${{ github.workflow }}-${{ github.ref }}
12+
cancel-in-progress: true
13+
# END OF COMMON SECTION
14+
15+
jobs:
16+
build:
17+
if: github.repository_owner == 'wolfssl'
18+
runs-on: macos-latest
19+
# This should be a safe limit for the tests to run.
20+
timeout-minutes: 10
21+
strategy:
22+
matrix:
23+
include:
24+
# macOS builds
25+
- target: wolfssl_osx
26+
arch: arm64
27+
config: Release
28+
sdk: macosx
29+
name: macOS (ARM64, Release)
30+
- target: wolfssl_osx
31+
arch: x86_64
32+
config: Release
33+
sdk: macosx
34+
name: macOS (x86_64, Release)
35+
- target: wolfssl_osx
36+
arch: arm64
37+
config: Debug
38+
sdk: macosx
39+
name: macOS (ARM64, Debug)
40+
- target: wolfssl_osx
41+
arch: x86_64
42+
config: Debug
43+
sdk: macosx
44+
name: macOS (x86_64, Debug)
45+
# Universal build (both architectures)
46+
- target: wolfssl_osx
47+
arch: arm64
48+
arch2: x86_64
49+
config: Release
50+
sdk: macosx
51+
name: macOS (Universal, Release)
52+
universal: true
53+
# tvOS builds
54+
- target: wolfssl_tvos
55+
arch: arm64
56+
config: Release
57+
sdk: appletvos
58+
name: tvOS (ARM64, Release)
59+
- target: wolfssl_tvos
60+
arch: arm64
61+
config: Release
62+
sdk: appletvsimulator
63+
name: tvOS Simulator (ARM64, Release)
64+
steps:
65+
- uses: actions/checkout@v4
66+
67+
- name: Build wolfSSL with Xcode (${{ matrix.name }})
68+
working-directory: ./IDE/XCODE
69+
run: |
70+
if [ "${{ matrix.universal }}" == "true" ]; then
71+
xcodebuild -project wolfssl.xcodeproj \
72+
-target ${{ matrix.target }} \
73+
-configuration ${{ matrix.config }} \
74+
-arch ${{ matrix.arch }} \
75+
-arch ${{ matrix.arch2 }} \
76+
-sdk ${{ matrix.sdk }} \
77+
SYMROOT=build \
78+
OBJROOT=build \
79+
build
80+
else
81+
xcodebuild -project wolfssl.xcodeproj \
82+
-target ${{ matrix.target }} \
83+
-configuration ${{ matrix.config }} \
84+
-arch ${{ matrix.arch }} \
85+
-sdk ${{ matrix.sdk }} \
86+
SYMROOT=build \
87+
OBJROOT=build \
88+
build
89+
fi

IDE/XCODE/wolfssl.xcodeproj/project.pbxproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1069,11 +1069,11 @@
10691069
700F0C892A2FBE8200755BA7 /* ssl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ssl.h; path = ../../wolfssl/openssl/ssl.h; sourceTree = "<group>"; };
10701070
700F0C8A2A2FBE8200755BA7 /* rsa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = rsa.h; path = ../../wolfssl/openssl/rsa.h; sourceTree = "<group>"; };
10711071
9D01058F291CEA4F00A854D3 /* armv8-sha512-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-sha512-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-sha512-asm.S"; sourceTree = "<group>"; };
1072-
9D010591291CEA4F00A854D3 /* armv8-sha256-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-sha256-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-sha256-asm.S"; sourceTree = "<group>"; };
1073-
9D010593291CEA4F00A854D3 /* armv8-poly1305-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-poly1305-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-poly1305-asm.S"; sourceTree = "<group>"; };
1072+
9D010591291CEA4F00A854D3 /* armv8-sha256-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-sha256-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-sha256-asm.S"; sourceTree = "<group>"; };
1073+
9D010593291CEA4F00A854D3 /* armv8-poly1305-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-poly1305-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-poly1305-asm.S"; sourceTree = "<group>"; };
10741074
9D010595291CEA4F00A854D3 /* armv8-sha3-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-sha3-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-sha3-asm.S"; sourceTree = "<group>"; };
1075-
9D010596291CEA4F00A854D3 /* armv8-chacha-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-chacha-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-chacha-asm.S"; sourceTree = "<group>"; };
1076-
9D010598291CEA4F00A854D3 /* armv8-aes-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = "armv8-aes-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-aes-asm.S"; sourceTree = "<group>"; };
1075+
9D010596291CEA4F00A854D3 /* armv8-chacha-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-chacha-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-chacha-asm.S"; sourceTree = "<group>"; };
1076+
9D010598291CEA4F00A854D3 /* armv8-aes-asm.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-aes-asm.S"; path = "../../wolfcrypt/src/port/arm/armv8-aes-asm.S"; sourceTree = "<group>"; };
10771077
9D010599291CEA4F00A854D3 /* armv8-curve25519.S */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.asm; name = "armv8-curve25519.S"; path = "../../wolfcrypt/src/port/arm/armv8-curve25519.S"; sourceTree = "<group>"; };
10781078
9D2E31CA291CDF120082B941 /* quic.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = quic.c; path = ../../src/quic.c; sourceTree = "<group>"; };
10791079
9D2E31CB291CDF120082B941 /* dtls.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = dtls.c; path = ../../src/dtls.c; sourceTree = "<group>"; };

configure.ac

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3179,7 +3179,7 @@ then
31793179
ENABLED_AESGCM=no
31803180
fi
31813181

3182-
if test "$ENABLED_AESGCM" = "yes" && test "$ac_cv_c_bigendian" != "yes"
3182+
if test "$ENABLED_AESGCM" = "yes"
31833183
then
31843184
ENABLED_AESGCM="4bit"
31853185
fi
@@ -3364,6 +3364,7 @@ fi
33643364

33653365
ENABLED_ARMASM_CRYPTO="unknown"
33663366
ENABLED_ARMASM_INLINE="no"
3367+
ENABLED_ARMASM_SHA256_SMALL="no"
33673368
ENABLED_ARMASM_SHA3="unknown"
33683369
ENABLED_ARMASM_CRYPTO_SM4="no"
33693370
# ARM Assembly
@@ -3387,6 +3388,9 @@ then
33873388
no-crypto)
33883389
ENABLED_ARMASM_CRYPTO=no
33893390
;;
3391+
sha256-small)
3392+
ENABLED_ARMASM_SHA256_SMALL=yes
3393+
;;
33903394
sha512-crypto | sha3-crypto)
33913395
case $host_cpu in
33923396
*aarch64*)
@@ -3583,6 +3587,10 @@ then
35833587
esac
35843588
fi
35853589

3590+
if test "$ENABLED_ARMASM_SHA256_SMALL" = "yes"; then
3591+
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ARMASM_SHA256_SMALL"
3592+
AM_CCASFLAGS="$AM_CCASFLAGS -DWOLFSSL_ARMASM_SHA256_SMALL"
3593+
fi
35863594
if test "$ENABLED_ARMASM_SHA3" = "yes"; then
35873595
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ARMASM_CRYPTO_SHA512 -DWOLFSSL_ARMASM_CRYPTO_SHA3"
35883596
AM_CCASFLAGS="$AM_CCASFLAGS -DWOLFSSL_ARMASM_CRYPTO_SHA512 -DWOLFSSL_ARMASM_CRYPTO_SHA3"

0 commit comments

Comments
 (0)