summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2022-02-01 17:13:52 +0000
committerjsing <>2022-02-01 17:13:52 +0000
commit1929a825a07468e5453b528de05c88e8e277c9fa (patch)
treec678be4d05c73b478480ede349979f5cf8eebcf5
parent494d008fc41fd07dcc927e26c8c23d91c2f1564d (diff)
downloadopenbsd-1929a825a07468e5453b528de05c88e8e277c9fa.tar.gz
openbsd-1929a825a07468e5453b528de05c88e8e277c9fa.tar.bz2
openbsd-1929a825a07468e5453b528de05c88e8e277c9fa.zip
Revise/simplify for signer interface change.
-rw-r--r--src/regress/lib/libtls/signer/signertest.c30
1 files changed, 10 insertions, 20 deletions
diff --git a/src/regress/lib/libtls/signer/signertest.c b/src/regress/lib/libtls/signer/signertest.c
index 34290a12d6..2614c659e1 100644
--- a/src/regress/lib/libtls/signer/signertest.c
+++ b/src/regress/lib/libtls/signer/signertest.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: signertest.c,v 1.2 2022/01/30 18:44:45 jsing Exp $ */ 1/* $OpenBSD: signertest.c,v 1.3 2022/02/01 17:13:52 jsing Exp $ */
2/* 2/*
3 * Copyright (c) 2017, 2018, 2022 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2017, 2018, 2022 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -212,8 +212,8 @@ do_signer_tests(void)
212 212
213 /* Sign with RSA. */ 213 /* Sign with RSA. */
214 if (tls_signer_sign(signer, server_rsa_pubkey_hash, test_digest, 214 if (tls_signer_sign(signer, server_rsa_pubkey_hash, test_digest,
215 sizeof(test_digest), &signature, &signature_len, 215 sizeof(test_digest), RSA_PKCS1_PADDING, &signature,
216 RSA_PKCS1_PADDING) == -1) { 216 &signature_len) == -1) {
217 fprintf(stderr, "FAIL: failed to sign with RSA key: %s\n", 217 fprintf(stderr, "FAIL: failed to sign with RSA key: %s\n",
218 tls_signer_error(signer)); 218 tls_signer_error(signer));
219 goto failure; 219 goto failure;
@@ -230,7 +230,7 @@ do_signer_tests(void)
230 * check against a known value, rather we can only verify the signature. 230 * check against a known value, rather we can only verify the signature.
231 */ 231 */
232 if (tls_signer_sign(signer, server_ecdsa_pubkey_hash, test_digest, 232 if (tls_signer_sign(signer, server_ecdsa_pubkey_hash, test_digest,
233 sizeof(test_digest), &signature, &signature_len, 0) == -1) { 233 sizeof(test_digest), 0, &signature, &signature_len) == -1) {
234 fprintf(stderr, "FAIL: failed to sign with ECDSA key: %s\n", 234 fprintf(stderr, "FAIL: failed to sign with ECDSA key: %s\n",
235 tls_signer_error(signer)); 235 tls_signer_error(signer));
236 goto failure; 236 goto failure;
@@ -246,7 +246,7 @@ do_signer_tests(void)
246 246
247 /* Attempt to sign with an unknown cert pubkey hash. */ 247 /* Attempt to sign with an unknown cert pubkey hash. */
248 if (tls_signer_sign(signer, server_unknown_pubkey_hash, test_digest, 248 if (tls_signer_sign(signer, server_unknown_pubkey_hash, test_digest,
249 sizeof(test_digest), &signature, &signature_len, 0) != -1) { 249 sizeof(test_digest), 0, &signature, &signature_len) != -1) {
250 fprintf(stderr, "FAIL: signing succeeded with unknown key\n"); 250 fprintf(stderr, "FAIL: signing succeeded with unknown key\n");
251 goto failure; 251 goto failure;
252 } 252 }
@@ -334,26 +334,16 @@ test_tls_handshake_socket(struct tls *client, struct tls *server)
334} 334}
335 335
336static int 336static int
337test_signer_tls_sign(void *cb_arg, const char *hash, const uint8_t *digest, 337test_signer_tls_sign(void *cb_arg, const char *pubkey_hash,
338 size_t digest_len, uint8_t *out_signature, size_t *out_signature_len, 338 const uint8_t *input, size_t input_len, int padding_type,
339 int padding) 339 uint8_t **out_signature, size_t *out_signature_len)
340{ 340{
341 struct tls_signer *signer = cb_arg; 341 struct tls_signer *signer = cb_arg;
342 uint8_t *signature = NULL;
343 size_t signature_len = 0;
344 342
345 sign_cb_count++; 343 sign_cb_count++;
346 344
347 if (tls_signer_sign(signer, hash, digest, digest_len, &signature, 345 return tls_signer_sign(signer, pubkey_hash, input, input_len,
348 &signature_len, padding) == -1) 346 padding_type, out_signature, out_signature_len);
349 return -1;
350
351 memcpy(out_signature, signature, signature_len);
352 *out_signature_len = signature_len;
353
354 free(signature);
355
356 return 0;
357} 347}
358 348
359static int 349static int