Don't fail setting log file ACLs with broken NSS backends #221
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Previously we would set POSIX ACL entries on log files by performing an early UID lookup and passing a stringified version of the UID to
exacl::AclEntry::allow_user
.The exacl documentation states that names and decimal strings are accepted. Apparently, exacl would try to look up the decimal string using
getpwnam()
before considering that it should be parsed into a numeric value. Unfortunately, this could cause a fatal error and terminate the Laurel process:We still do an early uid lookup but pass the original string to exacl instead of the decimal string.
Steps to reproduce: System is configured with sssd for AD integration; /etc/nsswitch.conf contains the following lines:
If the machine es rebooted and sssd happens to come up after auditd, laurel fails to start and the error message above (or a similar one) is written to the auditd service's journal
This can also be reproduced without rebooting by stopping sssd and restarting auditd (so laurel is restarted).