diff options
author | Matt Caswell <matt@openssl.org> | 2023-09-18 12:41:42 +0200 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2023-09-22 14:56:43 +0200 |
commit | fbfcc3fe3458c50a11aa414a1e499a2eee0eb2e9 (patch) | |
tree | 99b72fd4d4b3584cef0e90322fea02585815d71f /test/helpers/noisydgrambio.c | |
parent | Use test_random() to introduce better noise into the noisy dgram BIO (diff) | |
download | openssl-fbfcc3fe3458c50a11aa414a1e499a2eee0eb2e9.tar.xz openssl-fbfcc3fe3458c50a11aa414a1e499a2eee0eb2e9.zip |
Add some optional debug output to the noisy dgram BIO
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22157)
Diffstat (limited to '')
-rw-r--r-- | test/helpers/noisydgrambio.c | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/test/helpers/noisydgrambio.c b/test/helpers/noisydgrambio.c index c1eb141ee5..b42dbe6f4b 100644 --- a/test/helpers/noisydgrambio.c +++ b/test/helpers/noisydgrambio.c @@ -202,6 +202,16 @@ static int noisy_dgram_recvmmsg(BIO *bio, BIO_MSG *msg, size_t stride, if (!BIO_recvmmsg(next, msg, stride, num_msg, flags, msgs_processed)) return 0; +#ifdef OSSL_NOISY_DGRAM_DEBUG + printf("Pre-filter datagram list:\n"); + for (i = 0; i < *msgs_processed; i++) { + printf("Pre-filter Datagram:\n"); + BIO_dump_fp(stdout, msg[i].data, msg[i].data_len); + printf("\n"); + } + printf("End of pre-filter datagram list\nApplying noise filters:\n"); +#endif + msg_cnt = *msgs_processed; /* Introduce noise */ @@ -224,6 +234,11 @@ static int noisy_dgram_recvmmsg(BIO *bio, BIO_MSG *msg, size_t stride, return 0; msg_cnt++; data->delayed_dgram = 0; +#ifdef OSSL_NOISY_DGRAM_DEBUG + printf("**Inserting a delayed datagram\n"); + BIO_dump_fp(stdout, thismsg->data, thismsg->data_len); + printf("\n"); +#endif continue; } /* else we have no space for the insertion, so just drop it */ data->delayed_dgram = 0; @@ -246,9 +261,21 @@ static int noisy_dgram_recvmmsg(BIO *bio, BIO_MSG *msg, size_t stride, return 0; data->delayed_dgram = data->this_dgram + delay; + +#ifdef OSSL_NOISY_DGRAM_DEBUG + printf("**Delaying a datagram for %u messages%s\n", + (unsigned int)delay, should_drop ? "" : "(duplicating)"); + BIO_dump_fp(stdout, thismsg->data, thismsg->data_len); + printf("\n"); +#endif } if (should_drop) { +#ifdef OSSL_NOISY_DGRAM_DEBUG + printf("**Dropping a datagram\n"); + BIO_dump_fp(stdout, thismsg->data, thismsg->data_len); + printf("\n"); +#endif for (j = i + 1; j < msg_cnt; j++) { if (!bio_msg_copy(&msg[j - 1], &msg[j])) return 0; @@ -257,6 +284,16 @@ static int noisy_dgram_recvmmsg(BIO *bio, BIO_MSG *msg, size_t stride, } } +#ifdef OSSL_NOISY_DGRAM_DEBUG + printf("End of noise filters\nPost-filter datagram list:\n"); + for (i = 0; i < msg_cnt; i++) { + printf("Post-filter Datagram:\n"); + BIO_dump_fp(stdout, msg[i].data, msg[i].data_len); + printf("\n"); + } + printf("End of post-filter datagram list\n"); +#endif + *msgs_processed = msg_cnt; if (msg_cnt == 0) { |