freeipa/ipapython
Stanislav Levin 9802e852cb ipapython: Propagate KRB5Error exceptions on iterating ccache
`ipapython.session_storage.get_data` iterates over
credentials in a credential cache till `krb5_cc_next_cred` returns
an error. This function doesn't expect any error on calling
other kerberos foreign functions during iteration. But that can
actually happen and KRB5Error exceptions stop an iteration while
they should be propagated.

With this change iteration will exactly stop on `krb5_cc_next_cred`
error as it was supposed to be.

Fixes: https://pagure.io/freeipa/issue/9519
Signed-off-by: Stanislav Levin <slev@altlinux.org>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
2024-01-30 07:43:57 +01:00
..
install pylint: Fix useless-object-inheritance 2023-01-10 08:30:58 +01:00
__init__.py Rename ipa-python directory to ipapython so it is a real python library 2009-02-09 14:35:15 -05:00
admintool.py pylint: Fix useless-suppression 2022-03-11 13:37:08 -05:00
certdb.py Compatibility fix for PyCA cryptography 42.0.0 2024-01-24 14:54:24 +01:00
config.py pylint: fix deprecated-class SafeConfigParser 2023-01-10 08:30:58 +01:00
cookie.py Use datetime.timezone.utc instead of newer datetime.UTC alias 2023-09-29 15:06:33 -04:00
directivesetter.py get_directive: don't error out on substring mismatch 2024-01-11 17:19:47 +01:00
dn_ctypes.py ipapython: Support openldap 2.6 2022-10-06 10:22:26 +02:00
dn.py Removes several pylint warnings. 2019-09-27 09:38:32 +02:00
dnsutil.py dns: Fix support for dnspython 1.1x 2023-03-02 10:06:04 -05:00
dogtag.py pylint: Fix useless-suppression 2022-03-11 13:37:08 -05:00
errors.py Replace StandardError with Exception 2015-09-30 10:51:36 +02:00
fqdn.py Easier to use ipa_gethostfqdn() 2020-10-26 17:11:19 +11:00
graph.py Py3: Remove subclassing from object 2018-09-27 11:49:04 +02:00
ipa_log_manager.py Remove deprecated object logger 2019-04-23 12:55:35 +02:00
ipachangeconf.py pylint: Fix useless-suppression 2022-03-11 13:37:08 -05:00
ipaldap.py Issue 3656 - Extend schema function to return MAY or MUST attrs 2023-11-28 17:09:32 +01:00
ipautil.py pylint: disable unnecessary-dunder-call message 2023-01-10 08:30:58 +01:00
ipavalidate.py Change FreeIPA license to GPLv3+ 2010-12-20 17:19:53 -05:00
kerberos.py Py3: Replace six.bytes_type with bytes 2018-09-27 16:11:18 +02:00
kernel_keyring.py Don't configure KEYRING ccache in containers 2019-01-18 11:33:11 +01:00
Makefile.am Tolerate absence of PAC ticket signature depending of server capabilities 2023-05-24 13:20:38 +02:00
nsslib.py Remove ipapython.nsslib as it is not used anymore 2017-03-01 09:43:41 +00:00
README Replace DNS client based on acutil with python-dns 2012-05-24 13:55:56 +02:00
session_storage.py ipapython: Propagate KRB5Error exceptions on iterating ccache 2024-01-30 07:43:57 +01:00
setup.cfg Port all setup.py to setuptools 2016-10-20 18:43:37 +02:00
setup.py Add helpers for resolve1 and nameservers 2020-09-23 16:44:26 +02:00
ssh.py pylint: Fix useless-suppression 2022-03-11 13:37:08 -05:00
version.py.in Tolerate absence of PAC ticket signature depending of server capabilities 2023-05-24 13:20:38 +02:00

This is a set of libraries common to IPA clients and servers though mostly
geared currently towards command-line tools.

A brief overview:

config.py - identify the IPA server domain and realm. It uses python-dns to
            try to detect this information first and will fall back to
            /etc/ipa/default.conf if that fails.

ipautil.py - helper functions

entity.py - entity is the main data type. User and Group extend this class
            (but don't add anything currently).

ipavalidate.py - basic data validation routines