I'm a new contributor to kscreenlocker, so I thought I'd start with something very simple to see how the process goes. I hope I'm in line with standard procedures for proposing a change.
I've been spending a lot of time working with the kscreenlocker code in an attempt to debug its conversation with Poldi, which is a PAM module for allowing authentication with GnuPG smart cards. In this time, I've built up some familiarity with the code, and I'd like to submit a few patches over the next couple of weeks to improve things.
This change is pretty simple, and it makes a great deal of sense to me. I'd be very curious to know if there is a reason for having a fail_delay() function that performs no action. Just let me know!
Otherwise, the relevant explanation is in the commit message itself. This appears to have been removed, so I'll add it below:
Remove the "fail_delay()" function It appears that the custom "fail_delay()" function was defined to avoid a delay when a call to "pam_authenticate()" fails. This would be the effect since the custom function performs no actions. The Linux-PAM system has a more concise method for disabling the delay on authentication failure. By explicitly setting the "PAM_FAIL_DELAY" item to NULL, we disable any delay and render the custom "fail_delay" function redundant. The official Linux-PAM documentation explains this behavior. As of this commit, "man pam_fail_delay" explains the following: "Note, if PAM_FAIL_DELAY item is unset (or set to NULL), then no delay will be performed." Removing this function seems like a good idea in the interest of code cleanliness.
I hope the above is not redundant, but I don't see where Phabricator preserved the commit message.