Skip to content

Add more CI workflows for wolfSSH #884

Open
aidangarske wants to merge 1 commit intowolfSSL:masterfrom
aidangarske:add-ci-workflows
Open

Add more CI workflows for wolfSSH #884
aidangarske wants to merge 1 commit intowolfSSL:masterfrom
aidangarske:add-ci-workflows

Conversation

@aidangarske
Copy link
Member

  • codespell.yml: Automated spell checking with project-specific ignore list
  • multi-compiler.yml: Test builds with gcc-11/12/13 and clang-14/15/17
  • sanitizer.yml: Memory safety testing with ASan, UBSan, and LeakSan

@aidangarske aidangarske self-assigned this Mar 3, 2026
@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 3, 2026 20:31
Copilot AI review requested due to automatic review settings March 3, 2026 23:14
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds additional GitHub Actions CI coverage (codespell, multi-compiler builds, sanitizers) and aligns the codebase with automated spell-checking by fixing various typos across source, tests, examples, and docs.

Changes:

  • Add new CI workflows: codespell, multi-compiler build matrix, and sanitizer runs.
  • Fix widespread spelling/wording issues in comments, logs, help text, and documentation.
  • Adjust portability/warning-handling in wolfssh/port.h for Clang variadic-macro diagnostics.

Reviewed changes

Copilot reviewed 25 out of 25 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
wolfssh/port.h Adds Clang diagnostic push/pop around variadic macro definitions.
wolfssh/internal.h Fixes typo in struct field comment.
tests/auth.c Fixes test output string typo.
tests/api.c Fixes comment typo.
src/wolfterm.c Fixes comment typos in control-sequence handling.
src/wolfsftp.c Fixes multiple typos in comments/log strings.
src/wolfscp.c Fixes typos in comments/log strings.
src/ssh.c Fixes typos in comments/log strings.
src/internal.c Fixes typos in comments.
src/certman.c Fixes typos in comments/log strings.
examples/sftpclient/sftpclient.c Fixes typos in comments/print output.
examples/echoserver/echoserver.c Fixes typos in comments/print output (including usage text).
examples/client/client.c Fixes typos and tightens strncpy bound for sun_path.
apps/wolfsshd/wolfsshd.c Fixes typos in comments/log strings.
apps/wolfsshd/test/ssh_kex_algos.sh Fixes typo in script comment.
apps/wolfsshd/test/run_all_sshd_tests.sh Fixes typo in script comment.
apps/wolfsshd/test/README.md Fixes typo in README text.
apps/wolfsshd/configuration.h Fixes typo in comment.
apps/wolfsshd/configuration.c Fixes typo in TODO comment.
apps/wolfsshd/auth.c Fixes typos in comments/log strings.
apps/wolfssh/wolfssh.c Fixes typos in comments.
ChangeLog.md Fixes typos in release notes.
.github/workflows/sanitizer.yml New sanitizer CI workflow (ASan/UBSan/LeakSan).
.github/workflows/multi-compiler.yml New multi-compiler CI workflow (gcc/clang matrix).
.github/workflows/codespell.yml New codespell CI workflow with project ignore list.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 4, 2026 00:27
@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 4, 2026 00:55
Copilot AI review requested due to automatic review settings March 4, 2026 04:34
@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 4, 2026 04:34
Copilot AI review requested due to automatic review settings March 4, 2026 04:49
@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 4, 2026 04:52
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 26 out of 26 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (2)

examples/client/client.c:579

  • sun_path is now truncated to sizeof(sun_path) - 1, but size is still computed from strlen(sockName). If sockName exceeds sun_path, connect() will be called with an addrlen that doesn't match the actual (truncated) path and can exceed sizeof(struct sockaddr_un). Compute the length with a bounded strnlen()/WSTRNLEN() and/or validate that sockName fits before calling connect().
            strncpy(name->sun_path, sockName, sizeof(name->sun_path) - 1);
            name->sun_path[sizeof(name->sun_path) - 1] = '\0';
            size = strlen(sockName) +
                    offsetof(struct sockaddr_un, sun_path);

apps/wolfssh/wolfssh.c:606

  • Same issue as in the client example: sun_path is truncated to sizeof(sun_path) - 1, but size uses WSTRLEN(sockName) (unbounded). If the env var path is longer than sun_path, connect() may be passed an incorrect/oversized addrlen. Use a bounded length (e.g., WSTRNLEN) and/or reject oversized paths before calling connect().
            WSTRNCPY(name->sun_path, sockName, sizeof(name->sun_path) - 1);
            name->sun_path[sizeof(name->sun_path) - 1] = '\0';
            size = WSTRLEN(sockName) +
                    offsetof(struct sockaddr_un, sun_path);


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@aidangarske aidangarske marked this pull request as ready for review March 4, 2026 07:43
@aidangarske aidangarske requested review from Copilot and removed request for Copilot March 4, 2026 07:43
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.

2 participants