Bug 219710 - pw(8): usermod doesn't update other settings if `-h -` is provided and password is already '*'
Summary: pw(8): usermod doesn't update other settings if `-h -` is provided and passwo...
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: bin (show other bugs)
Version: 11.0-RELEASE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-bugs mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-06-01 18:10 UTC by Niels Kristensen
Modified: 2017-06-01 18:10 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Niels Kristensen 2017-06-01 18:10:40 UTC
If a user already has '*' as password, then providing `-h -` for usermod will
cause it to not update any other settings provided.

# grep ^nk /etc/master.passwd
nk:*:1016:1011::0:0:ssh-user:/dana/data/dev:/bin/sh
# pw usermod -n nk -d /dana/data -c ssh-user2 -s /bin/tcsh -g grp_nk -h -
# grep ^nk /etc/master.passwd
nk:*:1016:1011::0:0:ssh-user:/dana/data/dev:/bin/sh


If a password is provided by either `-h 0` og `-H 0`, then the other settings are updated as well, even though the provided password is equal to the current one.

# grep ^nk /etc/master.passwd
nk:$6$KkFLUl1VGlf2wJx1$eZwC.FDNJKQ6tKQWCr/VdUHwOvtJZgoV.o4jd9p6gSRYMt7NX4L0tSvAvAYh2V5Fkg2YngdUcReoiycSXCEMR0:1016:1011::0:0:ssh-user:/dana/data/dev:/bin/sh
# echo '$6$KkFLUl1VGlf2wJx1$eZwC.FDNJKQ6tKQWCr/VdUHwOvtJZgoV.o4jd9p6gSRYMt7NX4L0tSvAvAYh2V5Fkg2YngdUcReoiycSXCEMR0' | pw usermod -n nk -d /dana/data -c ssh-user2 -s /bin/tcsh -g grp_nk -H 0
# grep ^nk /etc/master.passwd
nk:$6$KkFLUl1VGlf2wJx1$eZwC.FDNJKQ6tKQWCr/VdUHwOvtJZgoV.o4jd9p6gSRYMt7NX4L0tSvAvAYh2V5Fkg2YngdUcReoiycSXCEMR0:1016:1011::0:0:ssh-user2:/dana/data:/bin/tcsh


Other settings are updated, if the password is changed from something else to '*'.

# grep ^nk /etc/master.passwd
nk:$6$KkFLUl1VGlf2wJx1$eZwC.FDNJKQ6tKQWCr/VdUHwOvtJZgoV.o4jd9p6gSRYMt7NX4L0tSvAvAYh2V5Fkg2YngdUcReoiycSXCEMR0:1016:1011::0:0:ssh-user:/dana/data/dev:/bin/sh
# pw usermod -n nk -d /dana/data -c ssh-user2 -s /bin/tcsh -g grp_nk -h -
# grep ^nk /etc/master.passwd
nk:*:1016:1011::0:0:ssh-user2:/dana/data:/bin/tcsh