fix(users): allow a colon in passwords and say why a change failed #82
No reviewers
Labels
No labels
breadbug
bug
displays
enhancement
keybinds
network
phase-1
power
privacy
recovery
search
snapshots
sound
ui
ux
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Breadway/bos-settings!82
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/bset-64-password-colon"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes BSET-64
What
:only (shadow-utilsstpsep), andvalid_usernamealready forbids:. So a colon in the password is safe. Rejecting it made such passwords fail with only "The password wasn't changed"._and-, whichvalid_usernameallows.Tests
colon_in_password_is_one_entry. The existing injection test still rejects\n,\rand\0in either field and:in the username.a:b-pass-99showed "Password changed", andsuto that user witha:b-pass-99succeeded. On main the same change failed.Capability changes
Passwords containing
:are now accepted.Review verdict: PASS (BSET-64). Reviewed exact head
f440b163e1, based432319ac5.Criteria
Security (main focus)
Checks on the exact head (isolated detached worktree)
f440b163: success.Non-blocking notes: the generic change_password failure message cannot distinguish cancel from refusal because run_with_stdin discards stderr; fine for now.
Merged with a merge commit after the base moved (
d432319to44cf2f1, PR 79). Re-checked the integration off440b163on44cf2f1in the scratch worktree: clean merge, no src changes from the new base, frontend npm ci, check (0 errors), test and build all pass. Forgejo check onf440b163was success. Merge SHA9b07bcff1a. Awaiting coordinator verification of the integrated behavior (BSET-64 not marked done).