mirror of https://github.com/openssl/openssl.git
10 Commits
Author | SHA1 | Message | Date |
---|---|---|---|
|
e66332418f |
Copyright year updates
Reviewed-by: Neil Horman <nhorman@openssl.org> Reviewed-by: Saša Nedvědický <sashan@openssl.org> Release: yes |
|
|
21b170df9f |
Adds the concept of thunks to OPENSSL_sk interface
GitHub CI / check_update (push) Waiting to run
Details
GitHub CI / check_docs (push) Waiting to run
Details
GitHub CI / check-ansi (push) Waiting to run
Details
GitHub CI / basic_gcc (push) Waiting to run
Details
GitHub CI / basic_clang (push) Waiting to run
Details
GitHub CI / linux-arm64 (push) Waiting to run
Details
GitHub CI / freebsd-x86_64 (push) Waiting to run
Details
GitHub CI / minimal (push) Waiting to run
Details
GitHub CI / no-deprecated (push) Waiting to run
Details
GitHub CI / no-shared-ubuntu (push) Waiting to run
Details
GitHub CI / no-shared-macos (macos-13) (push) Waiting to run
Details
GitHub CI / no-shared-macos (macos-14) (push) Waiting to run
Details
GitHub CI / non-caching (push) Waiting to run
Details
GitHub CI / address_ub_sanitizer (push) Waiting to run
Details
GitHub CI / fuzz_tests (push) Waiting to run
Details
GitHub CI / memory_sanitizer (push) Waiting to run
Details
GitHub CI / threads_sanitizer (push) Waiting to run
Details
GitHub CI / enable_non-default_options (push) Waiting to run
Details
GitHub CI / full_featured (push) Waiting to run
Details
GitHub CI / no-legacy (push) Waiting to run
Details
GitHub CI / legacy (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Waiting to run
Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Waiting to run
Details
GitHub CI / external-tests-misc (push) Waiting to run
Details
GitHub CI / external-tests-providers (push) Waiting to run
Details
GitHub CI / external-tests-pyca (3.9, 1.51.0) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-16 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:clang-17 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-13 distro:ubuntu-22.04 gcc-ppa-name:ubuntu-toolchain-r/test]) (push) Waiting to run
Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu fips:no libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu fips:no libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi fips:no libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf fips:no libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static -O1 linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:i386-pc-msdosdjgpp libs:libc-djgpp-dev libwatt-djgpp-dev djgpp-utils ppa:jwt27/djgpp-toolchain target:no-threads 386 DJGPP tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e -mxgot linux-latomic -Wno-stringop-overflow no-quic tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu fips:no libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu fips:no libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu fips:no libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu fips:no libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu fips:no libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run
Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Waiting to run
Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Waiting to run
Details
CIFuzz / Fuzzing (push) Waiting to run
Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Waiting to run
Details
Run-checker CI / run-checker (no-cmp) (push) Waiting to run
Details
Run-checker CI / run-checker (no-cms) (push) Waiting to run
Details
Run-checker CI / run-checker (no-default-thread-pool) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dgram) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dh) (push) Waiting to run
Details
Run-checker CI / run-checker (no-dtls) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ec) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ecx) (push) Waiting to run
Details
Run-checker CI / run-checker (no-http) (push) Waiting to run
Details
Run-checker CI / run-checker (no-legacy) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ml-dsa) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ml-kem) (push) Waiting to run
Details
Run-checker CI / run-checker (no-quic) (push) Waiting to run
Details
Run-checker CI / run-checker (no-sock) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ssl-trace) (push) Waiting to run
Details
Run-checker CI / run-checker (no-stdio) (push) Waiting to run
Details
Run-checker CI / run-checker (no-thread-pool) (push) Waiting to run
Details
Run-checker CI / run-checker (no-threads) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls1_2) (push) Waiting to run
Details
Run-checker CI / run-checker (no-tls1_3) (push) Waiting to run
Details
Run-checker CI / run-checker (no-ui) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-pie) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Waiting to run
Details
Run-checker merge / run-checker (enable-zlib) (push) Waiting to run
Details
Run-checker merge / run-checker (no-dso) (push) Waiting to run
Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ec2m enable-fips) (push) Waiting to run
Details
Run-checker merge / run-checker (no-engine no-shared) (push) Waiting to run
Details
Run-checker merge / run-checker (no-err) (push) Waiting to run
Details
Run-checker merge / run-checker (no-filenames) (push) Waiting to run
Details
Run-checker merge / run-checker (no-integrity-only-ciphers) (push) Waiting to run
Details
Run-checker merge / run-checker (no-module) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ocsp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-pinshared) (push) Waiting to run
Details
Run-checker merge / run-checker (no-srp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-srtp) (push) Waiting to run
Details
Run-checker merge / run-checker (no-ts) (push) Waiting to run
Details
Run-checker merge / jitter (push) Waiting to run
Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win32 config:--strict-warnings no-fips os:windows-2022]) (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win64 config:enable-fips no-thread-pool no-quic os:windows-2022]) (push) Waiting to run
Details
Windows GitHub CI / shared (map[arch:win64 config:enable-fips os:windows-2019]) (push) Waiting to run
Details
Windows GitHub CI / plain (windows-2022) (push) Waiting to run
Details
Windows GitHub CI / minimal (windows-2019) (push) Waiting to run
Details
Windows GitHub CI / cygwin (windows-2019, map[arch:win64 config:-DCMAKE_C_COMPILER=gcc --strict-warnings enable-demos no-fips]) (push) Waiting to run
Details
Windows Compression GitHub CI / zstd (push) Waiting to run
Details
Windows Compression GitHub CI / brotli (push) Waiting to run
Details
Trigger docs.openssl.org deployment / trigger (push) Has been cancelled
Details
This allows applications to call functions of correct signature when free'ing OPENSSL_sk items which UBSan complains about. Related to #22896. Reviewed-by: Neil Horman <nhorman@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/27071) |
|
|
b646179229 |
Copyright year updates
Reviewed-by: Neil Horman <nhorman@openssl.org>
Release: yes
(cherry picked from commit
|
|
|
5c42ced0ff |
Introduce hash thunking functions to do proper casting
ubsan on clang17 has started warning about the following undefined behavior: crypto/lhash/lhash.c:299:12: runtime error: call to function err_string_data_hash through pointer to incorrect function type 'unsigned long (*)(const void *)' [...]/crypto/err/err.c:184: note: err_string_data_hash defined here #0 0x7fa569e3a434 in getrn [...]/crypto/lhash/lhash.c:299:12 #1 0x7fa569e39a46 in OPENSSL_LH_insert [...]/crypto/lhash/lhash.c:119:10 #2 0x7fa569d866ee in err_load_strings [...]/crypto/err/err.c:280:15 [...] The issue occurs because, the generic hash functions (OPENSSL_LH_*) will occasionaly call back to the type specific registered functions for hash generation/comparison/free/etc, using functions of the (example) prototype: [return value] <hash|cmp|free> (void *, [void *], ...) While the functions implementing hash|cmp|free|etc are defined as [return value] <fnname> (TYPE *, [TYPE *], ...) The compiler, not knowing the type signature of the function pointed to by the implementation, performs no type conversion on the function arguments While the C language specification allows for pointers to data of one type to be converted to pointers of another type, it does not allow for pointers to functions with one signature to be called while pointing to functions of another signature. Compilers often allow this behavior, but strictly speaking it results in undefined behavior As such, ubsan warns us about this issue This is an potential fix for the issue, implemented using, in effect, thunking macros. For each hash type, an additional set of wrapper funtions is created (currently for compare and hash, but more will be added for free/doall/etc). The corresponding thunking macros for each type cases the actuall corresponding callback to a function pointer of the proper type, and then calls that with the parameters appropriately cast, avoiding the ubsan warning This approach is adventageous as it maintains a level of type safety, but comes at the cost of having to implement several additional functions per hash table type. Related to #22896 Reviewed-by: Sasa Nedvedicky <sashan@openssl.org> Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/23192) |
|
|
aff636a489 |
Update copyright year
Reviewed-by: Tomas Mraz <tomas@openssl.org> (Merged from https://github.com/openssl/openssl/pull/15181) |
|
|
5fd7eb5c8a |
Improve the implementation of X509_STORE_CTX_get1_issuer()
It is possible for the stack of X509_OBJECTs held in an X509_STORE_CTX to have a custom compare function associated with it. Normally (by default) this uses X509_NAME_cmp(). The X509_STORE_CTX_get1_issuer() function assumed that it would always be X509_NAME_cmp(). By implementing OPENSSL_sk_find_all() function we can avoid explicitly using X509_NAME_cmp() in X509_STORE_CTX_get1_issuer(). Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/14728) |
|
|
726b329339 |
Provide basis for fixing lhash code
Following on from the earlier safestack work we provide the basis for fixing the lhash code such that unused static inline functions do not cause linker errors for applications including those headers. This brings the lhash code into line with the safestack code. Reviewed-by: Richard Levitte <levitte@openssl.org> (Merged from https://github.com/openssl/openssl/pull/12860) |
|
|
c6029deab2 |
Streamline the safestack generated code
The safestack code generation was generating a little too much. Some of it could be done with a normal macro. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/12781) |
|
|
24c4ea958e |
Fix stacks of OPENSSL_STRING, OPENSSL_CSTRING and OPENSSL_BLOCK
Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/12781) |
|
|
6ac1cd10ba |
Fix safestack issues in ssl.h
We fix 3 problems with safestack: - Including an openssl header file without linking against libcrypto can cause compilation failures (even if the app does not otherwise need to link against libcrypto). See issue #8102 - Recent changes means that applications in no-deprecated builds will need to include additional macro calls in the source code for all stacks that they need to use - which is an API break. This changes avoids that necessity. - It is not possible to write code using stacks that works in both a no-deprecated and a normal build of OpenSSL. See issue #12707. Fixes #12707 Contains a partial fix for #8102. A similar PR will be needed for hash to fully fix. Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Paul Dale <paul.dale@oracle.com> (Merged from https://github.com/openssl/openssl/pull/12781) |