Skip to content

Fenrir fixes Sep 4 26 - #295

Open
aidankeefe2022 wants to merge 6 commits into
wolfSSL:mainfrom
aidankeefe2022:fenrir-fixes-sep4-26
Open

aidankeefe2022 wants to merge 6 commits into
wolfSSL:mainfrom
aidankeefe2022:fenrir-fixes-sep4-26

Conversation

@aidankeefe2022

Copy link
Copy Markdown
Member

All Fenrir fixes for client.c in wolfCLU.

Client throughput benchmark compares an unread receive buffer after timeout

error out when tcp_select does not return ready to recive
Client throughput sizes above INT_MAX become negative record lengths

fix: increased the size of the variable to size_t
s_client port parser silently truncates ports above 65535

parse into long before loading in to word16 and report/error if it does
not fit
Ipv6 DTLS and SCTP connections use IPv4 sockets and omit the DTLS peer

Fix: set the correct socket family and set the DTLS peer correctly
Added free for allocation in zephr build
swapped free for XFREE
Copilot AI balanced review requested due to automatic review settings October 2, 2026 22:46

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🔵 Needs a closer look

Benchmark failure paths lack targeted regression coverage, and platform-dependent transport changes need human validation.

Review effort: Balanced
Findings: 1 Medium severity

Open (1)
What changed in this PR

Hardens wolfCLU’s client argument parsing, networking, and benchmark error handling.

Changes:

  • Validates port and throughput arguments.
  • Fixes address cleanup, IPv6 socket handling, and benchmark failure paths.
  • Adds invalid-port regression tests and shares filesystem-skip logic.
File Description
tests/​wolfclu_test.py Adds a shared filesystem-support skip helper.
tests/​client/​client-test.py Adds port validation tests and uses the shared helper.
src/​client/​client.c Hardens parsing, networking, and benchmark cleanup.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/client/client.c
Comment on lines +1185 to +1189
if (select_ret != TEST_RECV_READY) {
printf("SSL_read bench select error %d!\n", select_ret);
err = WOLFSSL_FATAL_ERROR;
errMsg = (select_ret == TEST_TIMEOUT) ?
"SSL_read timeout" : "SSL_read select failed";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants