Skip to content
Open
Changes from 1 commit
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
21 changes: 18 additions & 3 deletions source/x509storeissuer.c
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,23 @@ usage(char * const argv[])
basename(argv[0]));
}

static long long
parse_int(const char * const s, long long min, long long max,
const char * const what)
{
char *endptr = NULL;
long long ret;

ret = strtoll(s, &endptr, 0);
if (endptr == NULL || *endptr != '\0')
errx(EXIT_FAILURE, "failed to parse %s as a number: \"%s\"", what, s);
if (ret < min || ret > max)
errx(EXIT_FAILURE, "provided value of %s is out of the expected"
" %lld..%lld range: %lld", what, min, max, ret);

return ret;
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you move it to libperf? It's used in other tests, and that should be fixed in other tests in another PR.

int main(int argc, char *argv[])
{
int i;
Expand Down Expand Up @@ -113,9 +130,7 @@ int main(int argc, char *argv[])
if (argv[optind] == NULL)
errx(EXIT_FAILURE, "threadcount is missing");

threadcount = atoi(argv[optind]);
if (threadcount < 1)
errx(EXIT_FAILURE, "threadcount must be > 0");
threadcount = parse_int(argv[optind], 1, INT_MAX, "threadcount");

store = X509_STORE_new();
if (store == NULL || !X509_STORE_set_default_paths(store))
Expand Down