Page MenuHomeFreeBSD

Don't remove leading or trailing IFS for passwords
ClosedPublic

Authored by dereks_lifeofadishwasher.com on Apr 4 2020, 5:02 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, May 10, 12:28 AM
Unknown Object (File)
Sun, May 10, 12:20 AM
Unknown Object (File)
Sat, May 9, 8:24 AM
Unknown Object (File)
Sat, May 9, 8:17 AM
Unknown Object (File)
Thu, Apr 30, 7:28 PM
Unknown Object (File)
Thu, Apr 30, 11:33 AM
Unknown Object (File)
Thu, Apr 30, 11:24 AM
Unknown Object (File)
Tue, Apr 21, 9:18 AM
Subscribers

Details

Summary

PR: 245342

When entering a password sh's IFS default value (space tab, newline) so
any leading a trailing IFS characters are removed.

Setting IFS= (null) for just the two adduser.sh read lines will not
remove leading or trailing IFS characters.

Test Plan
(cmd)$ IFS= read -r p 	# with leading and trailing tabs
            foo 
(cmd)$ echo "|${p}|"
|           foo         |
(cmd)$ read -r p  	
            foo
(cmd)$ echo "|${p}|"
|foo|

(ins)$ IFS= read -r p  	# with leading and trailing space
   foo   
(cmd)$ echo "|${p}|"
|   foo   |
(cmd)$ read -r p
   foo   
(cmd)$ echo "|${p}|"
|foo|

Test adduser.sh with IFS= lines and su -l newuser with the space/tab.
Also, confirm the non-space/tab padded password doesn't work.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 30281
Build 28057: arc lint + arc unit

Event Timeline

Some people wrongly add whitespace via copy and paste, but let's be consistent with login, passwd, etc.

This revision is now accepted and ready to land.Apr 4 2020, 3:04 PM

Agreed; will commit this sometime today.

This revision was automatically updated to reflect the committed changes.