Skip to content

Commit 592c01b

Browse files
committed
chore: update dependencies
1 parent 35cd5f9 commit 592c01b

File tree

5 files changed

+66
-52
lines changed

5 files changed

+66
-52
lines changed

.github/dependabot.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: docker
4+
directories:
5+
- /
6+
- docker_test
7+
schedule:
8+
interval: weekly
9+
- package-ecosystem: github-actions
10+
directory: /
11+
schedule:
12+
interval: weekly

.github/workflows/ci.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,27 +10,27 @@ jobs:
1010
matrix:
1111
cc: [clang, gcc]
1212
steps:
13-
- uses: actions/checkout@v4
13+
- uses: actions/checkout@v5
1414
- name: build with ${{ matrix.cc }}
1515
run: |
1616
# Since ubuntu-latest does not ship with OpenSSL >= v3.5, dynamic linking will fail unless we build and install it.
17-
git clone -b openssl-3.5 https://github.com/openssl/openssl
17+
git clone -b openssl-3.6 https://github.com/openssl/openssl
1818
pushd openssl
1919
git fetch --tags
20-
git checkout openssl-3.5.0
21-
./config --prefix=/opt/openssl35 shared
20+
git checkout openssl-3.6.0
21+
./config --prefix=/opt/openssl36 shared
2222
make -j $(nproc --all)
2323
make install
2424
popd
2525
26-
make sslscan LDFLAGS=-L/opt/openssl35 CFLAGS=-I/opt/openssl35/include
26+
make sslscan LDFLAGS=-L/opt/openssl36 CFLAGS=-I/opt/openssl36/include
2727
make static
2828
env:
2929
CC: ${{ matrix.cc }}
3030
build_mingw:
3131
runs-on: ubuntu-latest
3232
steps:
33-
- uses: actions/checkout@v4
33+
- uses: actions/checkout@v5
3434
- name: install mingw-w64
3535
run: |
3636
sudo apt-get update -qq

docker_test.sh

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -131,15 +131,15 @@ function run_test_8 {
131131
}
132132

133133

134-
# OpenSSL v3.5.0, TLSv1.3 only, with all supported groups.
134+
# OpenSSL v3.6.0, TLSv1.3 only, with all supported groups.
135135
function run_test_9 {
136-
run_test $1 '9' "/openssl_v3.5.0/openssl s_server -accept 443 -key /etc/ssl/key_3072.pem -cert /etc/ssl/cert_3072.crt -tls1_3 -groups secp256r1:secp384r1:secp521r1:x25519:x448:brainpoolP256r1tls13:brainpoolP384r1tls13:brainpoolP512r1tls13:ffdhe2048:ffdhe3072:ffdhe4096:ffdhe6144:ffdhe8192:MLKEM512:MLKEM768:MLKEM1024:SecP256r1MLKEM768:X25519MLKEM768:SecP384r1MLKEM1024" ""
136+
run_test $1 '9' "/openssl_v3.6.0/openssl s_server -accept 443 -key /etc/ssl/key_3072.pem -cert /etc/ssl/cert_3072.crt -tls1_3 -groups secp256r1:secp384r1:secp521r1:x25519:x448:brainpoolP256r1tls13:brainpoolP384r1tls13:brainpoolP512r1tls13:ffdhe2048:ffdhe3072:ffdhe4096:ffdhe6144:ffdhe8192:MLKEM512:MLKEM768:MLKEM1024:SecP256r1MLKEM768:X25519MLKEM768:SecP384r1MLKEM1024" ""
137137
}
138138

139139

140-
# GnuTLS v3.8.9, TLSv1.3 only, with all supported groups.
140+
# GnuTLS v3.8.10, TLSv1.3 only, with all supported groups.
141141
function run_test_10 {
142-
run_test $1 '10' "/gnutls-3.8.9/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem --priority=NORMAL:-VERS-TLS1.2:-VERS-TLS1.1:-VERS-TLS1.0:+GROUP-SECP192R1:+GROUP-SECP224R1:+GROUP-SECP256R1:+GROUP-SECP384R1:+GROUP-SECP521R1:+GROUP-X25519:+GROUP-GC256B:+GROUP-GC512A:+GROUP-X448:+GROUP-FFDHE2048:+GROUP-FFDHE3072:+GROUP-FFDHE4096:+GROUP-FFDHE6144:+GROUP-FFDHE8192" ""
142+
run_test $1 '10' "/gnutls-3.8.10/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem --priority=NORMAL:-VERS-TLS1.2:-VERS-TLS1.1:-VERS-TLS1.0:+GROUP-SECP192R1:+GROUP-SECP224R1:+GROUP-SECP256R1:+GROUP-SECP384R1:+GROUP-SECP521R1:+GROUP-X25519:+GROUP-GC256B:+GROUP-GC512A:+GROUP-X448:+GROUP-FFDHE2048:+GROUP-FFDHE3072:+GROUP-FFDHE4096:+GROUP-FFDHE6144:+GROUP-FFDHE8192" ""
143143
}
144144

145145

@@ -155,21 +155,21 @@ function run_test_12 {
155155
}
156156

157157

158-
# GnuTLS 3.6.11.1, default options.
158+
# GnuTLS 3.6.16, default options.
159159
function run_test_13 {
160-
run_test $1 '13' "/gnutls-3.6.11.1/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem" ""
160+
run_test $1 '13' "/gnutls-3.6.16/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem" ""
161161
}
162162

163163

164164
# GnuTLS with only TLSv1.2 and TLSv1.3, and secp521r1 and ffdhe8192 groups.
165165
function run_test_14 {
166-
run_test $1 '14' "/gnutls-3.6.11.1/gnutls-serv -p 443 --priority=NORMAL:-VERS-TLS1.1:-VERS-TLS1.0:-GROUP-X25519:-GROUP-SECP256R1:-GROUP-SECP384R1:-GROUP-FFDHE2048:-GROUP-FFDHE3072:-GROUP-FFDHE4096:-GROUP-FFDHE6144 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem" ""
166+
run_test $1 '14' "/gnutls-3.6.16/gnutls-serv -p 443 --priority=NORMAL:-VERS-TLS1.1:-VERS-TLS1.0:-GROUP-X25519:-GROUP-SECP256R1:-GROUP-SECP384R1:-GROUP-FFDHE2048:-GROUP-FFDHE3072:-GROUP-FFDHE4096:-GROUP-FFDHE6144 --x509certfile=/etc/ssl/cert_3072.crt --x509keyfile=/etc/ssl/key_3072.pem" ""
167167
}
168168

169169

170170
# GnuTLS with an ECDSA certificate (secp256r1 / NIST P-256).
171171
function run_test_15 {
172-
run_test $1 '15' "/gnutls-3.6.11.1/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem" ""
172+
run_test $1 '15' "/gnutls-3.6.16/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem" ""
173173
}
174174

175175

@@ -187,19 +187,19 @@ function run_test_17 {
187187

188188
# TLSv1.2 with ECDSA-SHA1 signature only.
189189
function run_test_18 {
190-
run_test $1 '18' "/gnutls-3.6.11.1/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem --priority=NONE:-VERS-TLS1.0:-VERS-TLS1.1:+VERS-TLS1.2:-VERS-TLS1.3:+MAC-ALL:+GROUP-ALL:+SIGN-ECDSA-SHA1:+COMP-NULL:+CTYPE-SRV-ALL:+KX-ALL:+CHACHA20-POLY1305:+CAMELLIA-128-GCM:+AES-128-GCM" ""
190+
run_test $1 '18' "/gnutls-3.6.16/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem --priority=NONE:-VERS-TLS1.0:-VERS-TLS1.1:+VERS-TLS1.2:-VERS-TLS1.3:+MAC-ALL:+GROUP-ALL:+SIGN-ECDSA-SHA1:+COMP-NULL:+CTYPE-SRV-ALL:+KX-ALL:+CHACHA20-POLY1305:+CAMELLIA-128-GCM:+AES-128-GCM" ""
191191
}
192192

193193

194194
# Mbed TLS, default settings.
195195
function run_test_19 {
196-
run_test $1 '19' "/mbedtls_v3.6.3.1/ssl_server2 server_port=443 crt_file=/etc/ssl/cert_3072.crt key_file=/etc/ssl/key_3072.pem" ""
196+
run_test $1 '19' "/mbedtls_v3.6.4/ssl_server2 server_port=443 crt_file=/etc/ssl/cert_3072.crt key_file=/etc/ssl/key_3072.pem" ""
197197
}
198198

199199

200200
# Many unique algorithms only present in GnuTLS.
201201
function run_test_20 {
202-
run_test $1 '20' "/gnutls-3.8.9/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem --priority=NORMAL:+GOST28147-TC26Z-CFB:+GOST28147-CPA-CFB:+GOST28147-CPB-CFB:+GOST28147-CPC-CFB:+GOST28147-CPD-CFB:+AES-128-XTS:+AES-256-XTS:+AES-128-SIV:+AES-256-SIV:+AES-128-SIV-GCM:+AES-256-SIV-GCM:+GOST28147-TC26Z-CNT:+MAGMA-CTR-ACPKM:+KUZNYECHIK-CTR-ACPKM:+GOSTR341194:+STREEBOG-256:+STREEBOG-512:+VKO-GOST-12:+RSA-EXPORT:+GROUP-GC256B:+GROUP-GC512A:+SIGN-ECDSA-SHA3-224:+SIGN-ECDSA-SHA3-256:+SIGN-ECDSA-SHA3-384:+SIGN-ECDSA-SHA3-512:+SIGN-RSA-SHA3-224:+SIGN-RSA-SHA3-256:+SIGN-RSA-SHA3-384:+SIGN-RSA-SHA3-512:+SIGN-DSA-SHA3-224:+SIGN-DSA-SHA3-256:+SIGN-DSA-SHA3-384:+SIGN-DSA-SHA3-512:+SIGN-RSA-RAW:+SIGN-GOSTR341012-512:+SIGN-GOSTR341012-256:+SIGN-GOSTR341001:+SIGN-DSA-SHA384:+SIGN-DSA-SHA512" ""
202+
run_test $1 '20' "/gnutls-3.8.10/gnutls-serv -p 443 --x509certfile=/etc/ssl/cert_ecdsa_prime256v1.crt --x509keyfile=/etc/ssl/key_ecdsa_prime256v1.pem --priority=NORMAL:+GOST28147-TC26Z-CFB:+GOST28147-CPA-CFB:+GOST28147-CPB-CFB:+GOST28147-CPC-CFB:+GOST28147-CPD-CFB:+AES-128-XTS:+AES-256-XTS:+AES-128-SIV:+AES-256-SIV:+AES-128-SIV-GCM:+AES-256-SIV-GCM:+GOST28147-TC26Z-CNT:+MAGMA-CTR-ACPKM:+KUZNYECHIK-CTR-ACPKM:+GOSTR341194:+STREEBOG-256:+STREEBOG-512:+VKO-GOST-12:+RSA-EXPORT:+GROUP-GC256B:+GROUP-GC512A:+SIGN-ECDSA-SHA3-224:+SIGN-ECDSA-SHA3-256:+SIGN-ECDSA-SHA3-384:+SIGN-ECDSA-SHA3-512:+SIGN-RSA-SHA3-224:+SIGN-RSA-SHA3-256:+SIGN-RSA-SHA3-384:+SIGN-RSA-SHA3-512:+SIGN-DSA-SHA3-224:+SIGN-DSA-SHA3-256:+SIGN-DSA-SHA3-384:+SIGN-DSA-SHA3-512:+SIGN-RSA-RAW:+SIGN-GOSTR341012-512:+SIGN-GOSTR341012-256:+SIGN-GOSTR341001:+SIGN-DSA-SHA384:+SIGN-DSA-SHA512" ""
203203
}
204204

205205

docker_test/Dockerfile

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ FROM ubuntu:24.04 AS builder
55
COPY build_test_apps.sh /build/build_test_apps.sh
66

77
# Update base image and install prerequisites for building.
8-
RUN apt update; apt install -y build-essential zlib1g zlib1g-dev nettle-dev git wget m4 pkg-config python3 python3-pip python3-virtualenv python3-venv
8+
RUN apt update && \
9+
DEBIAN_FRONTEND=noninteractive apt install -y --no-install-recommends build-essential zlib1g zlib1g-dev nettle-dev git wget m4 pkg-config python3 python3-pip python3-virtualenv python3-venv && \
10+
rm -rf /var/lib/apt/lists/*
911

1012
# Build all applications.
1113
RUN /bin/bash /build/build_test_apps.sh
@@ -17,18 +19,18 @@ FROM ubuntu:24.04
1719
COPY --from=builder /build/libhogweed.so.5 /usr/lib/libhogweed.so.5
1820
COPY --from=builder /build/libnettle.so.7 /usr/lib/libnettle.so.7
1921

20-
COPY --from=builder /build/gnutls-cli-v3.6.11.1 /gnutls-3.6.11.1/gnutls-cli
21-
COPY --from=builder /build/gnutls-serv-v3.6.11.1 /gnutls-3.6.11.1/gnutls-serv
22+
COPY --from=builder /build/gnutls-cli-v3.6.16 /gnutls-3.6.16/gnutls-cli
23+
COPY --from=builder /build/gnutls-serv-v3.6.16 /gnutls-3.6.16/gnutls-serv
2224

23-
COPY --from=builder /build/gnutls-cli-v3.8.9 /gnutls-3.8.9/gnutls-cli
24-
COPY --from=builder /build/gnutls-serv-v3.8.9 /gnutls-3.8.9/gnutls-serv
25+
COPY --from=builder /build/gnutls-cli-v3.8.10 /gnutls-3.8.10/gnutls-cli
26+
COPY --from=builder /build/gnutls-serv-v3.8.10 /gnutls-3.8.10/gnutls-serv
2527

2628
COPY --from=builder /build/openssl_prog_v1.0.0 /openssl_v1.0.0/openssl
2729
COPY --from=builder /build/openssl_prog_v1.0.2 /openssl_v1.0.2/openssl
2830
COPY --from=builder /build/openssl_prog_v1.1.1 /openssl_v1.1.1/openssl
29-
COPY --from=builder /build/openssl_prog_v3.5.0 /openssl_v3.5.0/openssl
31+
COPY --from=builder /build/openssl_prog_v3.6.0 /openssl_v3.6.0/openssl
3032

31-
COPY --from=builder /build/mbedtls_ssl_server2_v3.6.3.1 /mbedtls_v3.6.3.1/ssl_server2
33+
COPY --from=builder /build/mbedtls_ssl_server2_v3.6.4 /mbedtls_v3.6.4/ssl_server2
3234

3335
# Copy certificates, keys, and DH parameters.
3436
COPY *.pem /etc/ssl/

docker_test/build_test_apps.sh

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@ fi
2525

2626
# Compile all version of GnuTLS.
2727
function compile_gnutls_all {
28-
compile_gnutls '3.6.11.1'
29-
compile_gnutls '3.8.9'
28+
compile_gnutls '3.6.16'
29+
compile_gnutls '3.8.10'
3030
}
3131

3232

3333
# Compile all versions of Mbed TLS.
3434
function compile_mbedtls_all {
35-
compile_mbedtls '3.6.3.1'
35+
compile_mbedtls '3.6.4'
3636
}
3737

3838

@@ -41,7 +41,7 @@ function compile_openssl_all {
4141
compile_openssl '1.0.0'
4242
compile_openssl '1.0.2'
4343
compile_openssl '1.1.1'
44-
compile_openssl '3.5.0'
44+
compile_openssl '3.6.0'
4545
}
4646

4747

@@ -51,16 +51,16 @@ function compile_mbedtls {
5151

5252
git_tag=
5353
output_dir=
54-
if [[ $version == '3.6.3.1' ]]; then
55-
git_tag="v3.6.3.1"
56-
output_dir="mbedtls_v3.6.3.1_dir"
54+
if [[ $version == '3.6.4' ]]; then
55+
git_tag="v3.6.4"
56+
output_dir="mbedtls_v3.6.4_dir"
5757
else
5858
echo -e "${REDB}Error: Mbed TLS v${version} is unknown!${CLR}"
5959
exit 1
6060
fi
6161

6262
echo -e "\n${YELLOWB}Downloading Mbed TLS v${version}...${CLR}\n"
63-
git clone --depth 1 -b ${git_tag} https://github.com/Mbed-TLS/mbedtls ${output_dir}
63+
git clone --depth 1 --recurse-submodules -b ${git_tag} https://github.com/Mbed-TLS/mbedtls ${output_dir}
6464

6565
echo -e "\n${YELLOWB}Compiling Mbed TLS v${version}...${CLR}\n"
6666
pushd ${output_dir}
@@ -113,10 +113,10 @@ function compile_openssl {
113113
git_tag="OpenSSL_1_1_1-stable"
114114
compile_args="enable-weak-ssl-ciphers no-shared zlib"
115115
output_dir="openssl_v1.1.1_dir"
116-
elif [[ $version == '3.5.0' ]]; then
117-
git_tag="openssl-3.5.0"
116+
elif [[ $version == '3.6.0' ]]; then
117+
git_tag="openssl-3.6.0"
118118
compile_args="enable-weak-ssl-ciphers no-shared zlib"
119-
output_dir="openssl_v3.5.0_dir"
119+
output_dir="openssl_v3.6.0_dir"
120120
else
121121
echo -e "${REDB}Error: OpenSSL v${version} is unknown!${CLR}"
122122
exit 1
@@ -163,23 +163,23 @@ function compile_gnutls {
163163
nettle_version=
164164
compile_num_procs=${NUM_PROCS}
165165
compile_nettle=0
166-
if [[ "${gnutls_version}" == "3.6.11.1" ]]; then
167-
gnutls_url=https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.11.1.tar.xz
168-
gnutls_expected_sha256=fbba12f3db9a55dbf027e14111755817ec44b57eabec3e8089aac8ac6f533cf8
169-
gnutls_filename=gnutls-3.6.11.1.tar.xz
170-
gnutls_source_dir=gnutls-3.6.11.1
171-
nettle_version=3.5.1
172-
nettle_url=https://ftp.gnu.org/gnu/nettle/nettle-3.5.1.tar.gz
173-
nettle_expected_sha256=75cca1998761b02e16f2db56da52992aef622bf55a3b45ec538bc2eedadc9419
174-
nettle_filename=nettle-3.5.1.tar.gz
175-
nettle_source_dir=nettle-3.5.1
176-
compile_nettle=1
177-
elif [[ "${gnutls_version}" == "3.8.9" ]]; then
166+
if [[ "${gnutls_version}" == "3.6.16" ]]; then
167+
gnutls_url=https://www.gnupg.org/ftp/gcrypt/gnutls/v3.6/gnutls-3.6.16.tar.xz
168+
gnutls_expected_sha256=1b79b381ac283d8b054368b335c408fedcb9b7144e0c07f531e3537d4328f3b3
169+
gnutls_filename=gnutls-3.6.16.tar.xz
170+
gnutls_source_dir=gnutls-3.6.16
171+
nettle_version=3.10.2
172+
nettle_url=https://ftp.gnu.org/gnu/nettle/nettle-3.10.2.tar.gz
173+
nettle_expected_sha256=fe9ff51cb1f2abb5e65a6b8c10a92da0ab5ab6eaf26e7fc2b675c45f1fb519b5
174+
nettle_filename=nettle-3.10.2.tar.gz
175+
nettle_source_dir=nettle-3.10.2
176+
compile_nettle=1
177+
elif [[ "${gnutls_version}" == "3.8.10" ]]; then
178178
echo "Using platform's nettle library."
179-
gnutls_url=https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.9.tar.xz
180-
gnutls_expected_sha256=69e113d802d1670c4d5ac1b99040b1f2d5c7c05daec5003813c049b5184820ed
181-
gnutls_filename=gnutls-3.8.9.tar.xz
182-
gnutls_source_dir=gnutls-3.8.9
179+
gnutls_url=https://www.gnupg.org/ftp/gcrypt/gnutls/v3.8/gnutls-3.8.10.tar.xz
180+
gnutls_expected_sha256=db7fab7cce791e7727ebbef2334301c821d79a550ec55c9ef096b610b03eb6b7
181+
gnutls_filename=gnutls-3.8.10.tar.xz
182+
gnutls_source_dir=gnutls-3.8.10
183183
else
184184
echo -e "${REDB}Error: GnuTLS v${gnutls_version} is unknown!${CLR}"
185185
exit 1
@@ -262,7 +262,7 @@ function compile_gnutls {
262262
exit 1
263263
fi
264264

265-
# Copy the gnutls-cli and gnutls-serv apps to the top-level docker building dir as, e.g. 'gnutls-cli-v3.6.11.1'. Then we can delete the source code directory and move on.
265+
# Copy the gnutls-cli and gnutls-serv apps to the top-level docker building dir as, e.g. 'gnutls-cli-v3.6.16'. Then we can delete the source code directory and move on.
266266
cp "src/gnutls-cli" "/build/gnutls-cli-v${gnutls_version}"
267267
cp "src/gnutls-serv" "/build/gnutls-serv-v${gnutls_version}"
268268

0 commit comments

Comments
 (0)