When the password algorithm is defined as CRYPT and NIS is used to authenticate users on other systems, there is no way to disable or lock accounts. Traditional convention has been to put two bang (exclamation) characters in front of the password, creating an impossible password hash. This effectively locks the user account, preventing authentication.
On line 55 of defs-nis.c, line 55 can have the following added to add a pair of bang characters in front of the password hash:
%ifeq("nsAccountLock","TRUE","!!","")
There may be a better place within the format to put that, but the syntax escapes me. Simply adding the above code in the password field before the %regsubi... would produce a !!* for locked accounts instead of just the * as it sits now. This may cause problems.
Ticket has been cloned to Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1298478
Metadata Update from @ecrist: - Issue assigned to someone - Issue set to the milestone: FreeIPA 4.5 backlog
Fixed in slapi-nis 0.55:
https://pagure.io/slapi-nis/c/5eaad9c4c218d9a59f6930a29f5bee54235c4fab?branch=master
Metadata Update from @rcritten: - Issue close_status updated to: fixed - Issue status updated to: Closed (was: Open)