diff options
| author | tb <> | 2026-06-08 11:41:21 +0000 |
|---|---|---|
| committer | tb <> | 2026-06-08 11:41:21 +0000 |
| commit | 7646f48d882beb02b217ec30dc5d9f2508d1b95b (patch) | |
| tree | 897b98cb78dde9f5785286cd01c15053c8f5e089 /src | |
| parent | baa9a5c738f68f3c75ae79a408cabd4e9ea2d12c (diff) | |
| download | openbsd-7646f48d882beb02b217ec30dc5d9f2508d1b95b.tar.gz openbsd-7646f48d882beb02b217ec30dc5d9f2508d1b95b.tar.bz2 openbsd-7646f48d882beb02b217ec30dc5d9f2508d1b95b.zip | |
Adjust ssl_kex test for signature change in ssl_kex_peer_public_ecdhe_ecp()
Diffstat (limited to 'src')
| -rw-r--r-- | src/regress/lib/libssl/unit/ssl_kex.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/src/regress/lib/libssl/unit/ssl_kex.c b/src/regress/lib/libssl/unit/ssl_kex.c index 299f1eb3df..0fc15033c0 100644 --- a/src/regress/lib/libssl/unit/ssl_kex.c +++ b/src/regress/lib/libssl/unit/ssl_kex.c | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | /* $OpenBSD: ssl_kex.c,v 1.1 2026/06/08 11:31:29 tb Exp $ */ | 1 | /* $OpenBSD: ssl_kex.c,v 1.2 2026/06/08 11:41:21 tb Exp $ */ |
| 2 | 2 | ||
| 3 | /* | 3 | /* |
| 4 | * Copyright (c) 2026 Theo Buehler <tb@openbsd.org> | 4 | * Copyright (c) 2026 Theo Buehler <tb@openbsd.org> |
| @@ -85,6 +85,7 @@ ssl_key_share_ecdhe_test(void) | |||
| 85 | size_t shared_key_len = 0; | 85 | size_t shared_key_len = 0; |
| 86 | CBS cbs; | 86 | CBS cbs; |
| 87 | int nid = NID_secp384r1; | 87 | int nid = NID_secp384r1; |
| 88 | int decode_error = 0; | ||
| 88 | int failed = 0; | 89 | int failed = 0; |
| 89 | 90 | ||
| 90 | if ((ecdh = EC_KEY_new()) == NULL) | 91 | if ((ecdh = EC_KEY_new()) == NULL) |
| @@ -95,10 +96,11 @@ ssl_key_share_ecdhe_test(void) | |||
| 95 | failed |= 1; | 96 | failed |= 1; |
| 96 | } | 97 | } |
| 97 | 98 | ||
| 99 | decode_error = 0; | ||
| 98 | CBS_init(&cbs, secp384r1_uncompressed_point, secp384r1_uncompressed_point_len); | 100 | CBS_init(&cbs, secp384r1_uncompressed_point, secp384r1_uncompressed_point_len); |
| 99 | if ((ecdh_peer = EC_KEY_new()) == NULL) | 101 | if ((ecdh_peer = EC_KEY_new()) == NULL) |
| 100 | err(1, NULL); | 102 | err(1, NULL); |
| 101 | if (!ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs)) { | 103 | if (!ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs, &decode_error)) { |
| 102 | fprintf(stderr, "FAIL: failed to parse uncompressed P-384 point\n"); | 104 | fprintf(stderr, "FAIL: failed to parse uncompressed P-384 point\n"); |
| 103 | failed |= 1; | 105 | failed |= 1; |
| 104 | } | 106 | } |
| @@ -111,10 +113,11 @@ ssl_key_share_ecdhe_test(void) | |||
| 111 | EC_KEY_free(ecdh_peer); | 113 | EC_KEY_free(ecdh_peer); |
| 112 | ecdh_peer = NULL; | 114 | ecdh_peer = NULL; |
| 113 | 115 | ||
| 116 | decode_error = 0; | ||
| 114 | CBS_init(&cbs, point_at_infinity, point_at_infinity_len); | 117 | CBS_init(&cbs, point_at_infinity, point_at_infinity_len); |
| 115 | if ((ecdh_peer = EC_KEY_new()) == NULL) | 118 | if ((ecdh_peer = EC_KEY_new()) == NULL) |
| 116 | err(1, NULL); | 119 | err(1, NULL); |
| 117 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs)) { | 120 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs, &decode_error)) { |
| 118 | fprintf(stderr, "FAIL: parsed point at infinity\n"); | 121 | fprintf(stderr, "FAIL: parsed point at infinity\n"); |
| 119 | failed |= 1; | 122 | failed |= 1; |
| 120 | } | 123 | } |
| @@ -122,10 +125,11 @@ ssl_key_share_ecdhe_test(void) | |||
| 122 | EC_KEY_free(ecdh_peer); | 125 | EC_KEY_free(ecdh_peer); |
| 123 | ecdh_peer = NULL; | 126 | ecdh_peer = NULL; |
| 124 | 127 | ||
| 128 | decode_error = 0; | ||
| 125 | CBS_init(&cbs, secp384r1_compressed_point, secp384r1_compressed_point_len); | 129 | CBS_init(&cbs, secp384r1_compressed_point, secp384r1_compressed_point_len); |
| 126 | if ((ecdh_peer = EC_KEY_new()) == NULL) | 130 | if ((ecdh_peer = EC_KEY_new()) == NULL) |
| 127 | err(1, NULL); | 131 | err(1, NULL); |
| 128 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs)) { | 132 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs, &decode_error)) { |
| 129 | fprintf(stderr, "FAIL: parsed compressed P-384 point\n"); | 133 | fprintf(stderr, "FAIL: parsed compressed P-384 point\n"); |
| 130 | failed |= 1; | 134 | failed |= 1; |
| 131 | } | 135 | } |
| @@ -133,10 +137,11 @@ ssl_key_share_ecdhe_test(void) | |||
| 133 | EC_KEY_free(ecdh_peer); | 137 | EC_KEY_free(ecdh_peer); |
| 134 | ecdh_peer = NULL; | 138 | ecdh_peer = NULL; |
| 135 | 139 | ||
| 140 | decode_error = 0; | ||
| 136 | CBS_init(&cbs, secp384r1_hybrid_point, secp384r1_hybrid_point_len); | 141 | CBS_init(&cbs, secp384r1_hybrid_point, secp384r1_hybrid_point_len); |
| 137 | if ((ecdh_peer = EC_KEY_new()) == NULL) | 142 | if ((ecdh_peer = EC_KEY_new()) == NULL) |
| 138 | err(1, NULL); | 143 | err(1, NULL); |
| 139 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs)) { | 144 | if (ssl_kex_peer_public_ecdhe_ecp(ecdh_peer, nid, &cbs, &decode_error)) { |
| 140 | fprintf(stderr, "FAIL: parsed hybrid P-384 point\n"); | 145 | fprintf(stderr, "FAIL: parsed hybrid P-384 point\n"); |
| 141 | failed |= 1; | 146 | failed |= 1; |
| 142 | } | 147 | } |
