Skip to content

Commit a9722ce

Browse files
authored
Merge pull request #11 from tgauth/update-1.13.0
Update to 1.13.0
2 parents b0af261 + 1a2215f commit a9722ce

Some content is hidden

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

51 files changed

+309
-199
lines changed

.actions/build-linux-i686-w64-mingw32-gcc

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/sh -eux
22

3-
# Copyright (c) 2022 Yubico AB. All rights reserved.
3+
# Copyright (c) 2022-2023 Yubico AB. All rights reserved.
44
# Use of this source code is governed by a BSD-style
55
# license that can be found in the LICENSE file.
66
# SPDX-License-Identifier: BSD-2-Clause
@@ -23,7 +23,7 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
2323
EOF
2424

2525
# Build and install libcbor.
26-
git clone --depth=1 https://github.com/pjk/libcbor -b v0.9.0
26+
git clone --depth=1 https://github.com/pjk/libcbor -b v0.10.1
2727
cd libcbor
2828
mkdir build
2929
(cd build && cmake -DCMAKE_TOOLCHAIN_FILE=/tmp/mingw.cmake \
@@ -32,8 +32,8 @@ make -j"$(nproc)" -C build
3232
sudo make -C build install
3333
cd ..
3434

35-
# Build and install OpenSSL 1.1.1q.
36-
git clone --depth=1 https://github.com/openssl/openssl -b OpenSSL_1_1_1q
35+
# Build and install OpenSSL 1.1.1t.
36+
git clone --depth=1 https://github.com/openssl/openssl -b OpenSSL_1_1_1t
3737
cd openssl
3838
./Configure mingw --prefix=/fakeroot --openssldir=/fakeroot/openssl \
3939
--cross-compile-prefix=i686-w64-mingw32-

.actions/build-linux-openssl3-clang

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ FAKEROOT="$(mktemp -d)"
1212
# Check exports.
1313
(cd src && ./diff_exports.sh)
1414

15-
# Build and install OpenSSL 3.0.5.
16-
git clone --branch openssl-3.0.5 \
15+
# Build and install OpenSSL 3.0.8.
16+
git clone --branch openssl-3.0.8 \
1717
--depth=1 https://github.com/openssl/openssl
1818
cd openssl
1919
./Configure linux-x86_64-clang --prefix="${FAKEROOT}" \

.actions/build-linux-openssl3-gcc

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
${CC} --version
99
FAKEROOT="$(mktemp -d)"
1010

11-
# Build and install OpenSSL 3.0.5.
12-
git clone --branch openssl-3.0.5 \
11+
# Build and install OpenSSL 3.0.8.
12+
git clone --branch openssl-3.0.8 \
1313
--depth=1 https://github.com/openssl/openssl
1414
cd openssl
1515
./Configure linux-x86_64 --prefix="${FAKEROOT}" \

.actions/build-linux-openssl3-i686-w64-mingw32-gcc

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#!/bin/sh -eux
22

3-
# Copyright (c) 2022 Yubico AB. All rights reserved.
3+
# Copyright (c) 2022-2023 Yubico AB. All rights reserved.
44
# Use of this source code is governed by a BSD-style
55
# license that can be found in the LICENSE file.
66
# SPDX-License-Identifier: BSD-2-Clause
@@ -23,7 +23,7 @@ SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
2323
EOF
2424

2525
# Build and install libcbor.
26-
git clone --depth=1 https://github.com/pjk/libcbor -b v0.9.0
26+
git clone --depth=1 https://github.com/pjk/libcbor -b v0.10.1
2727
cd libcbor
2828
mkdir build
2929
(cd build && cmake -DCMAKE_TOOLCHAIN_FILE=/tmp/mingw.cmake \
@@ -32,8 +32,8 @@ make -j"$(nproc)" -C build
3232
sudo make -C build install
3333
cd ..
3434

35-
# Build and install OpenSSL 3.0.5.
36-
git clone --branch openssl-3.0.5 \
35+
# Build and install OpenSSL 3.0.8.
36+
git clone --branch openssl-3.0.8 \
3737
--depth=1 https://github.com/openssl/openssl
3838
cd openssl
3939
./Configure mingw --prefix=/fakeroot --openssldir=/fakeroot/openssl \

.actions/fuzz-linux

+10-6
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,20 @@
66
# SPDX-License-Identifier: BSD-2-Clause
77

88
LIBCBOR_URL="https://github.com/pjk/libcbor"
9-
LIBCBOR_TAG="v0.9.0"
9+
LIBCBOR_TAG="v0.10.1"
1010
LIBCBOR_ASAN="address alignment bounds"
1111
LIBCBOR_MSAN="memory"
1212
OPENSSL_URL="https://github.com/openssl/openssl"
13-
OPENSSL_TAG="OpenSSL_1_1_1q"
13+
OPENSSL_TAG="OpenSSL_1_1_1t"
1414
ZLIB_URL="https://github.com/madler/zlib"
1515
ZLIB_TAG="v1.2.13"
1616
ZLIB_ASAN="address alignment bounds undefined"
1717
ZLIB_MSAN="memory"
18-
FIDO2_ASAN="address bounds implicit-conversion leak pointer-compare pointer-subtract undefined"
19-
FIDO2_MSAN="memory"
18+
FIDO2_ASAN="address bounds fuzzer-no-link implicit-conversion leak"
19+
FIDO2_ASAN="${FIDO2_ASAN} pointer-compare pointer-subtract undefined"
20+
FIDO2_MSAN="fuzzer-no-link memory"
2021
COMMON_CFLAGS="-g2 -fno-omit-frame-pointer"
22+
COMMON_CFLAGS="${COMMON_CFLAGS} -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION"
2123
UBSAN_OPTIONS="halt_on_error=1:print_stacktrace=1:strict_string_checks=1"
2224
ASAN_OPTIONS="${UBSAN_OPTIONS}:detect_invalid_pointer_pairs=2:detect_leaks=1"
2325
MSAN_OPTIONS="${UBSAN_OPTIONS}"
@@ -27,11 +29,13 @@ asan)
2729
LIBCBOR_CFLAGS="-fsanitize=$(echo "${LIBCBOR_ASAN}" | tr ' ' ',')"
2830
ZLIB_CFLAGS="-fsanitize=$(echo "${ZLIB_ASAN}" | tr ' ' ',')"
2931
FIDO2_CFLAGS="-fsanitize=$(echo "${FIDO2_ASAN}" | tr ' ' ',')"
32+
FIDO2_CFLAGS="${FIDO2_CFLAGS} -fsanitize-address-use-after-scope"
3033
;;
3134
msan)
3235
LIBCBOR_CFLAGS="-fsanitize=$(echo "${LIBCBOR_MSAN}" | tr ' ' ',')"
3336
ZLIB_CFLAGS="-fsanitize=$(echo "${ZLIB_MSAN}" | tr ' ' ',')"
34-
FIDO2_CFLAGS="-fsanitize=$(echo "${FIDO2_MSAN}" | tr ' ' ',') -fsanitize-memory-track-origins"
37+
FIDO2_CFLAGS="-fsanitize=$(echo "${FIDO2_MSAN}" | tr ' ' ',')"
38+
FIDO2_CFLAGS="${FIDO2_CFLAGS} -fsanitize-memory-track-origins"
3539
;;
3640
*)
3741
echo "unknown sanitiser \"$1\"" 1>&2 && exit 1
@@ -75,7 +79,7 @@ mkdir build
7579
export PKG_CONFIG_PATH="${FAKEROOT}/lib/pkgconfig"
7680
(cd build && cmake -DCMAKE_BUILD_TYPE=Debug \
7781
-DCMAKE_C_FLAGS_DEBUG="${FIDO2_CFLAGS} ${COMMON_CFLAGS}" -DFUZZ=ON \
78-
-DLIBFUZZER=ON "${WORKDIR}")
82+
-DFUZZ_LDFLAGS="-fsanitize=fuzzer" "${WORKDIR}")
7983
make -j"$(nproc)" -C build
8084

8185
# fuzz

.github/workflows/alpine_builds.yml

+3-11
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (c) 2022 Yubico AB. All rights reserved.
1+
# Copyright (c) 2022-2023 Yubico AB. All rights reserved.
22
# Use of this source code is governed by a BSD-style
33
# license that can be found in the LICENSE file.
44
# SPDX-License-Identifier: BSD-2-Clause
@@ -27,20 +27,12 @@ jobs:
2727
run: |
2828
apk -q update
2929
apk add build-base clang clang-analyzer cmake coreutils eudev-dev
30-
apk add git linux-headers openssl-dev sudo zlib-dev pcsc-lite-dev
30+
apk add git linux-headers openssl-dev sudo zlib-dev pcsc-lite-dev \
31+
libcbor-dev
3132
- name: fix permissions on workdir
3233
run: chown root:wheel "${GITHUB_WORKSPACE}"
3334
- name: checkout libfido2
3435
uses: actions/checkout@v2
35-
- name: checkout libcbor
36-
uses: actions/checkout@v2
37-
with:
38-
repository: PJK/libcbor
39-
path: libcbor
40-
ref: v0.9.0
41-
- name: build libcbor
42-
run: cmake -DCMAKE_BUILD_TYPE=Release . && make -j"$(nproc)" && sudo make install
43-
working-directory: libcbor
4436
- name: build libfido2
4537
env:
4638
CC: ${{ matrix.cc }}

.github/workflows/bsd_builds.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ on:
1414
jobs:
1515
build:
1616
if: github.repository == 'Yubico/libfido2'
17-
runs-on: ubuntu-20.04
17+
runs-on: ubuntu-22.04
1818
strategy:
1919
fail-fast: false
2020
matrix:
21-
image: [freebsd/13.x, openbsd/7.1]
21+
image: [freebsd/13.x, openbsd/7.2]
2222
steps:
2323
- uses: actions/checkout@v2
2424
- name: dependencies

.github/workflows/codeql-analysis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ on:
1919
jobs:
2020
codeql-build:
2121
if: github.repository == 'Yubico/libfido2'
22-
runs-on: ubuntu-20.04
22+
runs-on: ubuntu-22.04
2323
steps:
2424
- name: checkout
2525
uses: actions/checkout@v2

.github/workflows/linux_builds.yml

+8-7
Original file line numberDiff line numberDiff line change
@@ -22,15 +22,16 @@ jobs:
2222
matrix:
2323
include:
2424
- { os: ubuntu-20.04, cc: gcc-8 }
25-
- { os: ubuntu-20.04, cc: gcc-9 }
26-
- { os: ubuntu-20.04, cc: gcc-10 }
27-
- { os: ubuntu-20.04, cc: gcc-11 }
28-
# - { os: ubuntu-22.04, cc: gcc-12 }
25+
- { os: ubuntu-22.04, cc: gcc-9 }
26+
- { os: ubuntu-22.04, cc: gcc-10 }
27+
- { os: ubuntu-22.04, cc: gcc-11 }
28+
- { os: ubuntu-22.04, cc: gcc-12 }
2929
- { os: ubuntu-20.04, cc: clang-12 }
30-
- { os: ubuntu-20.04, cc: clang-13 }
31-
- { os: ubuntu-20.04, cc: clang-14 }
30+
- { os: ubuntu-22.04, cc: clang-13 }
31+
- { os: ubuntu-22.04, cc: clang-14 }
32+
- { os: ubuntu-22.04, cc: clang-15 }
3233
- { os: ubuntu-20.04, cc: i686-w64-mingw32-gcc-9 }
33-
- { os: ubuntu-20.04, cc: i686-w64-mingw32-gcc-10 }
34+
- { os: ubuntu-22.04, cc: i686-w64-mingw32-gcc-10 }
3435
steps:
3536
- uses: actions/checkout@v2
3637
- name: dependencies

.github/workflows/linux_fuzz.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ jobs:
2020
strategy:
2121
fail-fast: false
2222
matrix:
23-
os: [ ubuntu-20.04 ]
24-
cc: [ clang-14 ]
23+
os: [ ubuntu-22.04 ]
24+
cc: [ clang-15 ]
2525
sanitizer: [ asan, msan ]
2626
steps:
2727
- uses: actions/checkout@v2

.github/workflows/openssl3.yml

+4-4
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ jobs:
2121
fail-fast: false
2222
matrix:
2323
include:
24-
- os: ubuntu-20.04
24+
- os: ubuntu-22.04
2525
cc: gcc-11
26-
- os: ubuntu-20.04
27-
cc: clang-14
28-
- os: ubuntu-20.04
26+
- os: ubuntu-22.04
27+
cc: clang-15
28+
- os: ubuntu-22.04
2929
cc: i686-w64-mingw32-gcc-10
3030
steps:
3131
- uses: actions/checkout@v2

0 commit comments

Comments
 (0)