1
0
mirror of https://github.com/openbsd/src.git synced 2025-01-10 06:47:55 -08:00
Commit Graph

7862 Commits

Author SHA1 Message Date
anton
be82246fa6 cope with more s/XCR0/XFEATURE renames 2023-04-23 18:38:55 +00:00
tb
242be85ce0 Link c2sp test to build 2023-04-23 13:47:35 +00:00
tb
a82bb09bce Import C2SP/CCTV test
This currently only covers Ed25519 using the c2sp-testvectors package
and checks that our Ed25519 implementation behaves as expected from a
"ref10" implementation.

This test has Go and c2sp-testvectors as a hard dependency. It will
optionally pick up any OpenSSL package installed on the system and
test that as well.

https://github.com/C2SP/CCTV
https://github.com/C2SP/CCTV/tree/main/ed25519
2023-04-23 13:43:46 +00:00
jsing
703277b6c7 Provide initial regress for BN_{asc,dec,hex}2bn()/BN_bn2{dec,hex}() 2023-04-22 14:03:03 +00:00
tb
f911aa70c7 Exercise d2i_IPAddrBlocks() and X509v3_addr_subset() a little bit 2023-04-20 07:39:17 +00:00
job
6a90d08cae Fix missing whitespace in bgpd(8) output 2023-04-19 19:26:26 +00:00
tb
2c34d847be interop: work around extreme REGRESS_SKIP_SLOW slowness
A few years back beck introduced REGRESS_SKIP_SLOW dances with the idea
that this should speed up the interop tests for us devs because this also
checked interop between opensslX and opensslY, which we don't particularly
care about. This never really worked. On a mac m1 mini the result is this:

REGRESS_SKIP_SLOW unset
    9m56.69s real     3m42.24s user     3m00.70s system
REGRESS_SKIP_SLOW=yes
   11m04.61s real     7m29.61s user     1m40.29s system

The problem is that REGRESS_SKIP_SLOW simply wasn't designed to handle
the huge number of tests we have here. There are many nested .for loops
resulting in several thousand tests. Each test has a name of length ~80.
REGRESS_SKIP_SLOW concatenates them into a several hundred kilobytes
long string in REGRESS_SKIP_TARGETS, iterates over all regress targets and
tests with ".if ${REGRESS_SKIP_TARGETS:M${RT}}" if it should skip them.
This means that during a regress run, make spends a lot of time linearly
scanning a huge string.

I ran into this when I added OpenSSL 3.0 tests to the already existing
1.0.2 and 1.1 tests with the result that with REGRESS_SLOW_TARGTS set
it took the better part of an hour while without it it took about 15 min.

The hack here is simply to avoid using REGRESS_SLOW_TARGTES here and
handle the situation differently.

patch, REGRESS_SKIP_SLOW=yes
    5m42.32s real     2m09.98s user     1m45.21s system

The real solution would be to fix this in bsd.regress.mk, which someone
who understands make well is very welcome to do. For now, I'm happy with
this.

Debugged with jsing a few months ago
2023-04-19 15:34:23 +00:00
claudio
bea568aa1d Add workaround for introduction of flowrib and re_rib() functional change. 2023-04-19 13:25:07 +00:00
jsg
6bae335dd0 remove duplicate includes 2023-04-19 12:58:15 +00:00
bluhm
bf98328f8a Skip all tests that need internet connection unless they have it.
Run reachability ping only once.  Fix clean files and always run
make obj.  Do not suppress messages from redirectchain test.
2023-04-18 19:41:50 +00:00
bluhm
aa678fb146 Define net lock assertions for building kernel code in regress. 2023-04-18 16:57:44 +00:00
tb
2b86fced4a ectest: Remove #if 1 2023-04-18 15:28:17 +00:00
tb
bac77f8e13 Unifdef OPENSSL_NO_EC_NISTP_64_GCC_128 2023-04-18 15:20:34 +00:00
tb
4bd672127b ectest: drop a broken #if 0 /* optional */ piece of code
This places a point at infinity and then fails. Fix some wacky indentation
in the vicinity.
2023-04-18 08:17:49 +00:00
tb
fa4ae9b2e2 ec_point_conversion: drop test for sect571k1
Maybe it should be replaced by another test, although P-256 seems enough.
2023-04-18 08:05:18 +00:00
tb
1d08b3a0fa ectest: drop some gross unused macros 2023-04-18 07:56:58 +00:00
tb
dbeea18152 ectest: unifdef OPENSSL_NO_EC2M 2023-04-18 07:54:42 +00:00
claudio
9a21c8c8e8 I reversed flowspec_cmp() so adjust the code here as well.
Reminded by anton@
2023-04-18 06:41:00 +00:00
tb
6ee0f2d9f9 Skip binary curves in ec_point_conversion 2023-04-17 21:00:35 +00:00
tb
4bec30b6d9 Switch all ec tests to using dynamic linking
This only requires very minor changes and simplifies testing quite a bit.
Some of the changes can be undone after the next bump.
2023-04-17 20:41:02 +00:00
tb
b9e9a5302b Simplify Makefile 2023-04-17 20:36:08 +00:00
tb
d9c79270a6 Drop GF2m tests
The code they test will go away soon.
2023-04-17 19:56:39 +00:00
tb
56b78144be Allow overriding the bc implementation used in run-bc
While base bc is great, it uses libcrypto's BIGNUM implementation.
This implies that the independent verification of the bn_test isn't
as independent as it should be.

With this commit, run-bc picks up bn-gh if it is installed. This appears
to work on amd64, arm64 and sparc64 (where gbc is busted). I will send
PRs to the regress maintainers once I will have tested this a bit more
thoroughly. Committing this early since I juggle way too many diffs
already.
2023-04-17 19:51:05 +00:00
tb
260252c4b8 Fix typo 2023-04-17 19:37:18 +00:00
tb
8e793eebf6 Skip sect* curve checks
GF2m curves will go away soon. This reduces the pile of diffs in my jungle
a tiny little bit.
2023-04-17 15:11:00 +00:00
claudio
b7341f443d Add basic flowspec regress test. 2023-04-17 08:02:55 +00:00
tb
7cba3b5bfb ec_point_conversion: do not rely on ec.h pulling in bn.h 2023-04-15 21:53:38 +00:00
tb
664ea9f8b8 ssltest: Drop more policy go from this test.
Hopefully that is all. What an absolutely horrid mess.
2023-04-15 16:50:05 +00:00
tb
278a7f175e ssltest: initial pass of dropping proxy cert goo 2023-04-15 16:17:57 +00:00
tb
fa27b1a19c symbols test: drop LIBRESSL_INTERNAL
This tests the external API, so it should not have visibility to the
inside. Silences two warnings since EC_{GROUP,POINT}_clear_free() are
now wrapped in #ifndef LIBRESSL_INTERNAL.
2023-04-15 14:10:09 +00:00
tb
dd1936c5bb openssl11/Makefile: make spacing consistent 2023-04-14 15:35:12 +00:00
tb
db8e9f93c7 cttest: plug leak due to missing SCT_LIST_free() 2023-04-14 14:36:13 +00:00
tb
1ea2b8b10d Plug a memleak caused by an extra bump of a refcount
SSL_set_session() should really be called SSL_set1_session()...
2023-04-14 14:23:05 +00:00
tb
7086b4c167 Cast the uint64_t SCT timestamps to (unsigned long long) for printing.
What a wonderful choice between this and that PRI ugliness...
2023-04-14 14:14:39 +00:00
tb
3da24e266c Make the signertest work better with the portable test framework 2023-04-14 12:41:26 +00:00
tb
172e4b1419 Make the apitest work better with the portable tets framework 2023-04-14 12:38:30 +00:00
tb
9fe04e22c1 Make cttest work better with the portable test harness 2023-04-14 12:37:20 +00:00
tb
e556bfddf5 Fix cttest to use public header 2023-04-14 11:18:40 +00:00
mbuhl
1a002d0cc8 Fix compilation on sparc64. 2023-04-13 11:32:06 +00:00
tb
9ec92463e6 ectest: missing error checking
CID 452228
2023-04-13 05:25:30 +00:00
claudio
c95acd694b Add test for multiprotocol announce statements 2023-04-12 09:09:41 +00:00
tb
8b6982a291 bn_mod_sqrt: remove no longer necessary complications due to the
non-deterministic nature of the old implementation.
2023-04-11 10:10:52 +00:00
jsing
b2cabbc12a Correct benchmark result computation on 32 bit platforms. 2023-04-11 05:53:53 +00:00
tb
3e75947a7d Some more cleanup in bn_to_string 2023-04-10 21:00:16 +00:00
tb
f90a240346 Drop BN_NO_DEPRECATED dance from bn_test 2023-04-10 20:59:33 +00:00
jsing
e79df2fb48 Provide benchmarks for BN_copy() 2023-04-10 19:02:30 +00:00
tb
4f04b8f5ce bn_to_string no longer needs to be linked statically 2023-04-10 13:57:57 +00:00
tb
0841c4461b Rework the bn_to_string() to use public API
We can use the undocumented functions {i2s,s2i}_ASN1_INTEGER(3) to
exercise bn_to_string(). This way we use public API and remove the
need of linking statically.
2023-04-10 13:57:32 +00:00
gnezdo
c51b926813 Treat symlinks better in $ORIGIN determination in ld.so
Now symlinking an executable away from the rest of its installation
tree no longer prevents it from finding the libraries. This matches
the behavior of other OS linkers. Prompted by a behavior change in
lang/ghc test suite.

Swapped the order of dirname/realpath in _dl_origin_path.

Added some regress tests that pass and then bin3 that fails without
this change and reflects the behavior needd for lang/ghc.

Suggestion by semarie@, OK deraadt@
2023-04-09 23:41:47 +00:00
tb
1604cb4076 bn_test: two minor style tweaks 2023-04-08 17:43:30 +00:00