freeipa/ipatests/test_ipapython
Rob Crittenden e5a9e46138 get_directive: don't error out on substring mismatch
This function is designed to retrieve a value from an
ini-like file. In particular PKI CS.cfg.

In an attempt to be more efficient a substring search,
using startswith(), is used before calling a regular
expression match.

The problem is that if the requested directive is a
substring of a different one then it will pass the
startswith() and fail the regular expression match
with a ValueError, assuming it is malformed.

There is no need for this. The caller must be able to
handle None as a response anyway. So continue if
no match is found.

This was seen when PKI dropped storing certificate blobs
in CS.cfg. The CA certificate is stored in ca.signing.cert.
If it isn't present then ca.signing.certnickname will match
the substring but not the directive. This should not be
treated as an error.

Fixes: https://pagure.io/freeipa/issue/9506

Signed-off-by: Rob Crittenden <rcritten@redhat.com>
Reviewed-By: Florence Blanc-Renaud <flo@redhat.com>
2024-01-11 17:19:47 +01:00
..
__init__.py Make an ipa-tests package 2013-06-17 19:22:50 +02:00
test_certdb.py ipatests: Update NSSDatabase DBM test on non-DBM-capable installs 2021-01-29 18:06:15 +01:00
test_cookie.py Use datetime.timezone.utc instead of newer datetime.UTC alias 2023-09-29 15:06:33 -04:00
test_directivesetter.py get_directive: don't error out on substring mismatch 2024-01-11 17:19:47 +01:00
test_dn.py pylint: Fix useless-suppression 2022-03-11 13:37:08 -05:00
test_dnsutil.py tests: Configure DNSResolver as platform agnostic resolver 2023-02-01 17:49:43 +01:00
test_ipautil.py Add helper for poll/sleep loops with timeout 2020-09-30 09:52:08 +02:00
test_ipavalidate.py pytest: Migrate unittest/nose to Pytest fixtures 2020-02-12 18:08:32 +02:00
test_kerberos.py Sprinkle raw strings across the code base 2018-09-27 10:23:03 +02:00
test_keyring.py ipatests: Skip keyring tests on containerized platforms 2020-08-07 17:49:31 +03:00
test_ldap_cache.py Return a copy of cached entries, only with requested attributes 2021-06-29 14:55:50 +03:00
test_session_storage.py pytest: Migrate xunit-style setups to Pytest fixtures 2020-02-12 18:08:32 +02:00
test_ssh.py ipatests: add test for multiple permitopen entries in SSH keys 2021-03-29 10:06:07 +03:00