Skip to content

Work around RHEL7 crypt_r() challenges

crypt_r() on CentOS 7 / RHEL 7 can return with errno to EISDIR or ENOENT due to using NSS

We need to only check errno after crypt_r() returns NULL, but because crypt_r() is not consistently implemented with regards to errors, and the libcrypt implementation used in RHEL8 and other modern linux systems can return non-NULL on error, we need to use crypt_rn() instead.

We need to run this test on the CentOS 7 container, so we put it in the quick file.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14424

Checklist

  • Commits have Signed-off-by: with name/author being identical to the commit author
  • (optional) This MR is just one part towards a larger feature.
  • (optional, if backport required) Bugzilla bug filed and BUG: tag added
  • Test suite updated with functionality tests
  • Test suite updated with negative tests
  • Documentation updated
  • CI timeout is 3h or higher (see Settings/CICD/General pipelines/ Timeout)

Reviewer's checklist:

  • There is a test suite reasonably covering new functionality or modifications
  • Function naming, parameters, return values, types, etc., are consistent and according to README.Coding.md
  • This feature/change has adequate documentation added
  • No obvious mistakes in the code
Edited by Andrew Bartlett

Merge request reports

Loading