Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
b37e882
x509storeissuer: factor out usage printing
esyr Oct 20, 2025
c201051
s/err/error where apropriate easiest way to fix liner issues on windows
Sashan Sep 29, 2025
948ffbd
Use perflib/err.h unconditionally
esyr Sep 25, 2025
2b3b804
perflib: add vwarn/err/warn
esyr Sep 25, 2025
ec81797
x509storeissuer: use errx/warnx for error message output
esyr Oct 20, 2025
7bbc211
x509storeissuer: factor out integer parameter parsing into a separate…
esyr Oct 20, 2025
a76d93b
x509storeissuer: provide the initial infrastructure for nonce configu…
esyr Oct 20, 2025
7e32341
x509storeissuer: add ability to configure verbosity level
esyr Oct 20, 2025
6b9361a
x509storeissuer: unify funtion definition formatting
esyr Oct 20, 2025
3924835
x509storeissuer: add -T option to specify the run time
esyr Oct 20, 2025
0b3b091
x509storeissuer: support providing multiple certificate directories
esyr Oct 20, 2025
c7f19dc
x509storeissuer: reduce the rate ossl_time_now() queries
esyr Oct 21, 2025
effd1b7
x509storeissuer: count the iterations in a local variable to avoid ha…
esyr Oct 21, 2025
a4c199d
x509storeissuer: tolerate X509_STORE_CTX_get1_issuer() successes, cou…
esyr Oct 21, 2025
4f491bf
x509storeissuer: add certificates from the provided directories to th…
esyr Oct 21, 2025
fc6682d
x509storeissuer: add and option to configure X509_STORE_CTX sharing
esyr Oct 21, 2025
5724e00
x509storeissuer: report the store size before the test run if the ver…
esyr Oct 22, 2025
a5d0c9e
x509storeissuer: make the verbose reporting more elaborate
esyr Oct 22, 2025
2282242
x509storeissuer: generate some certificates and add them to the store
esyr Oct 22, 2025
c3c4152
x509storeissuer: add support for gernerated nonces
esyr Oct 22, 2025
806e3ee
x509storeissuer: add ability to add certificates to the store during …
esyr Oct 22, 2025
9147f7f
x509storeissuer: make thread_data cache-line-aligned
esyr Oct 23, 2025
4b335f7
.github/workflows/test.yml: do not build OpenSSL apps and tests
esyr Oct 23, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
160 changes: 115 additions & 45 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,27 @@ jobs:
strategy:
fail-fast: false
matrix:
openssl-branch:
- "openssl-3.0"
- "openssl-3.2"
- "openssl-3.3"
- "openssl-3.4"
- "openssl-3.5"
- "master"
release: [
{
openssl-branch: "openssl-3.0",
configopts: 'no-tests',
}, {
openssl-branch: "openssl-3.2",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.3",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.4",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.5",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "master",
configopts: 'no-apps no-tests',
}
]
runs-on: "ubuntu-latest"
container: "docker.io/library/debian:11"
steps:
Expand All @@ -27,13 +41,13 @@ jobs:
uses: "actions/checkout@v5"
with:
repository: "openssl/openssl"
ref: ${{ matrix.openssl-branch }}
ref: ${{ matrix.release.openssl-branch }}
fetch-depth: 1
path: "openssl"
- name: "Config openssl build"
working-directory: "./openssl"
run: |
./config --prefix="$PWD/dist"
./config ${{ matrix.release.configopts }} --prefix="$PWD/dist"
- name: "Build openssl"
working-directory: "./openssl"
run: |
Expand All @@ -59,13 +73,27 @@ jobs:
strategy:
fail-fast: false
matrix:
openssl-branch:
- "openssl-3.0"
- "openssl-3.2"
- "openssl-3.3"
- "openssl-3.4"
- "openssl-3.5"
- "master"
release: [
{
openssl-branch: "openssl-3.0",
configopts: 'no-tests',
}, {
openssl-branch: "openssl-3.2",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.3",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.4",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.5",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "master",
configopts: 'no-apps no-tests',
}
]
runs-on: "ubuntu-latest"
container: "docker.io/library/ubuntu:20.04"
steps:
Expand All @@ -79,13 +107,13 @@ jobs:
uses: "actions/checkout@v5"
with:
repository: "openssl/openssl"
ref: ${{ matrix.openssl-branch }}
ref: ${{ matrix.release.openssl-branch }}
fetch-depth: 1
path: "openssl"
- name: "Config openssl build"
working-directory: "./openssl"
run: |
./config --prefix="$PWD/dist"
./config ${{ matrix.release.configopts }} --prefix="$PWD/dist"
- name: "Build openssl"
working-directory: "./openssl"
run: |
Expand All @@ -111,13 +139,27 @@ jobs:
strategy:
fail-fast: false
matrix:
openssl-branch:
- "openssl-3.0"
- "openssl-3.2"
- "openssl-3.3"
- "openssl-3.4"
- "openssl-3.5"
- "master"
release: [
{
openssl-branch: "openssl-3.0",
configopts: 'no-tests',
}, {
openssl-branch: "openssl-3.2",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.3",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.4",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.5",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "master",
configopts: 'no-apps no-tests',
}
]
runs-on: "ubuntu-latest"
steps:
- name: "Install prerequisites"
Expand All @@ -132,7 +174,7 @@ jobs:
uses: "actions/checkout@v5"
with:
repository: "openssl/openssl"
ref: ${{ matrix.openssl-branch }}
ref: ${{ matrix.release.openssl-branch }}
fetch-depth: 1
path: "openssl"
- name: "Config openssl build"
Expand All @@ -143,7 +185,7 @@ jobs:
shutdown_vm: false
run: |
cd openssl
./config --prefix="$PWD/dist"
./config ${{ matrix.release.configopts }} --prefix="$PWD/dist"
- name: "Build openssl"
uses: "cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d" #v0.27.0
with:
Expand Down Expand Up @@ -189,13 +231,27 @@ jobs:
strategy:
fail-fast: false
matrix:
openssl-branch:
- "openssl-3.0"
- "openssl-3.2"
- "openssl-3.3"
- "openssl-3.4"
- "openssl-3.5"
- "master"
release: [
{
openssl-branch: "openssl-3.0",
configopts: 'no-tests',
}, {
openssl-branch: "openssl-3.2",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.3",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.4",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.5",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "master",
configopts: 'no-apps no-tests',
}
]
runs-on: "windows-latest"
steps:
- name: "Install prerequisites"
Expand All @@ -206,15 +262,15 @@ jobs:
uses: "actions/checkout@v5"
with:
repository: "openssl/openssl"
ref: ${{ matrix.openssl-branch }}
ref: ${{ matrix.release.openssl-branch }}
fetch-depth: 1
path: "openssl"
- name: "Config openssl build"
working-directory: ".\\openssl"
shell: cmd
run: |
call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
perl Configure no-makedepend
perl Configure no-makedepend ${{ matrix.release.configopts }}
- name: "Build openssl"
working-directory: ".\\openssl"
shell: cmd
Expand All @@ -238,26 +294,40 @@ jobs:
strategy:
fail-fast: false
matrix:
openssl-branch:
- "openssl-3.0"
- "openssl-3.2"
- "openssl-3.3"
- "openssl-3.4"
- "openssl-3.5"
- "master"
release: [
{
openssl-branch: "openssl-3.0",
configopts: 'no-tests',
}, {
openssl-branch: "openssl-3.2",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.3",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.4",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "openssl-3.5",
configopts: 'no-apps no-tests',
}, {
openssl-branch: "master",
configopts: 'no-apps no-tests',
}
]
runs-on: "macos-latest"
steps:
- name: "Checkout openssl"
uses: "actions/checkout@v5"
with:
repository: "openssl/openssl"
ref: ${{ matrix.openssl-branch }}
ref: ${{ matrix.release.openssl-branch }}
fetch-depth: 1
path: "openssl"
- name: "Config openssl build"
working-directory: "./openssl"
run: |
./config --prefix="$PWD/dist"
./config ${{ matrix.release.configopts }} --prefix="$PWD/dist"
- name: "Build openssl"
working-directory: "./openssl"
run: |
Expand Down
14 changes: 8 additions & 6 deletions source/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -117,6 +117,12 @@ if(WIN32)
target_sources(perf PRIVATE perflib/getopt.c perflib/basename.c perflib/err.c)
endif()

if(WIN32)
set(libm_dep)
else()
set(libm_dep PUBLIC m)
endif()

target_include_directories(perf PUBLIC "${PROJECT_SOURCE_DIR}")
target_link_libraries(perf PUBLIC OpenSSL::SSL OpenSSL::Crypto)

Expand Down Expand Up @@ -154,17 +160,13 @@ add_executable(rsasign rsasign.c)
target_link_libraries(rsasign PRIVATE perf)

add_executable(x509storeissuer x509storeissuer.c)
target_link_libraries(x509storeissuer PRIVATE perf)
target_link_libraries(x509storeissuer ${libm_dep} PRIVATE perf)

add_executable(rwlocks rwlocks.c)
target_link_libraries(rwlocks PRIVATE perf)

add_executable(pkeyread pkeyread.c)
if(WIN32)
target_link_libraries(pkeyread PRIVATE perf)
else()
target_link_libraries(pkeyread PUBLIC m PRIVATE perf)
endif()
target_link_libraries(pkeyread ${libm_dep} PRIVATE perf)

add_executable(evp_setpeer evp_setpeer.c)
target_link_libraries(evp_setpeer PRIVATE perf)
Expand Down
22 changes: 11 additions & 11 deletions source/evp_fetch.c
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
size_t *counts;
OSSL_TIME max_time;

int err = 0;
int error = 0;
int pq = 0;

static int threadcount;
Expand Down Expand Up @@ -194,7 +194,7 @@ void do_fetch(size_t num)
fetch_alg = exclusive_fetch_alg;
}

if (err == 1)
if (error == 1)
return;

switch (j) {
Expand All @@ -203,7 +203,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (md == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_MD_free(md);
Expand All @@ -214,7 +214,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (cph == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_CIPHER_free(cph);
Expand All @@ -225,7 +225,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (kdf == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_KDF_free(kdf);
Expand All @@ -236,7 +236,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (mac == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_MAC_free(mac);
Expand All @@ -247,7 +247,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (rnd == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_RAND_free(rnd);
Expand All @@ -258,7 +258,7 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (kem == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_KEM_free(kem);
Expand All @@ -269,14 +269,14 @@ void do_fetch(size_t num)
fetch_entries[j].propq);
if (sig == NULL) {
fprintf(stderr, "Failed to fetch %s\n", fetch_alg);
err = 1;
error = 1;
return;
}
EVP_SIGNATURE_free(sig);
break;
}
default:
err = 1;
error = 1;
return;
}
counts[num]++;
Expand Down Expand Up @@ -372,7 +372,7 @@ int main(int argc, char *argv[])
goto out;
}

if (err) {
if (error) {
printf("Error during test\n");
goto out;
}
Expand Down
Loading