Skip to content

fix: harden import overwrites, corrupt-file saves and reachability refresh - #1

Merged
dawiisss merged 1 commit into
mainfrom
fix/review-hardening-2026-10-30
Oct 31, 2026
Merged

dawiisss merged 1 commit into
mainfrom
fix/review-hardening-2026-10-30

Conversation

@dawiisss

@dawiisss dawiisss commented Oct 30, 2026 •

Copy link
Copy Markdown
Owner

Summary

Rebuilt on top of v1.6.0. This keeps the changes from the original version of this PR that were not already released.

  • Import overwrite credentials: an Overwrite import that changes where a connection authenticates (protocol, host, port, user, RDP domain or gateway, or SSH tunnel server) gives it a new ID, and the password saved under the old ID is deleted after the import is saved. A stored password is no longer sent to a different server.
  • Corrupt configuration files: if a corrupt file cannot be backed up, VER says so instead of reporting a backup, and refuses to save over that file. Other files can still be saved.
  • Reachability refresh: results from a superseded check are discarded, so they can no longer overwrite newer ones.
  • CI: cargo test runs with --no-fail-fast.

Dropped from the original version

  • Protocol-aware default ports and Wake-on-LAN failure reporting: already released in v1.6.0.
  • Importing ~/.ssh/config hosts by alias: v1.6.0 imports HostName, ProxyJump and forwards into the connection instead. Using the alias as well would make ssh apply each forward twice, and reachability checks would fail on alias names.

Validation

cargo fmt --check, cargo clippy --all-targets --all-features -- -D warnings and cargo test --all-targets pass locally. New tests cover credential ID rotation (including SSH tunnel changes) and refusing to save over a corrupt file that could not be backed up.

@dawiisss
dawiisss marked this pull request as ready for review October 31, 2026 00:30
…fresh

Rebuilds the remaining changes from #1 on top of v1.6.0.

- Give a connection a new ID when an overwrite import changes where it
  authenticates (protocol, host, port, user, RDP domain or gateway, or SSH
  tunnel server), and delete the password saved under the old ID.
- Report a corrupt configuration file that could not be backed up, and
  refuse to save over it.
- Discard results from a superseded reachability check.
- Run every test target in CI even after one fails.
@dawiisss
dawiisss force-pushed the fix/review-hardening-2026-10-30 branch from 6a64688 to 315aa09 Compare October 31, 2026 12:38
@dawiisss dawiisss changed the title fix: harden connection imports, Wake-on-LAN and config recovery fix: harden import overwrites, corrupt-file saves and reachability refresh Oct 31, 2026
@dawiisss
dawiisss merged commit d14358c into main Oct 31, 2026
1 check passed
@dawiisss
dawiisss deleted the fix/review-hardening-2026-10-30 branch October 31, 2026 12:59
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.

1 participant