mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2026-10-14 09:22:01 -05:00
According to https://web.mit.edu/kerberos/krb5-latest/doc/appdev/refs/api/krb5_free_cred_contents.html > krb5_free_cred_contents - Free the contents of a krb5_creds structure. > > void krb5_free_cred_contents(krb5_context context, krb5_creds * val) > param: > [in] context - Library context > > [in] val - Credential structure to free contents of > > This function frees the contents of val , but not the structure itself. https://github.com/krb5/krb5/blob/5b00197227231943bd2305328c8260dd0b0dbcf0/src/lib/krb5/krb/kfree.c#L166 This leads to undefined behavior and `krb5_free_cred_contents` can raise KRB5Error (because of garbage data) while actually its foreign function doesn't. Fixes: https://pagure.io/freeipa/issue/9519 Signed-off-by: Stanislav Levin <slev@altlinux.org> Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
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