diff options
| author | Simo Sorce <simo@redhat.com> | 2017-03-22 18:25:38 -0400 |
|---|---|---|
| committer | Tomas Krizek <tkrizek@redhat.com> | 2017-03-28 13:36:30 +0200 |
| commit | 9a6ac74eb4421b9ffa831dc6fed067d2ddc0618e (patch) | |
| tree | 12cd9084295ae0e8d0fa08c1cf6486b448ed87e1 /ipapython | |
| parent | dc13703e75997e0c9539b326acb13458dae00202 (diff) | |
| download | freeipa-9a6ac74eb4421b9ffa831dc6fed067d2ddc0618e.tar.gz freeipa-9a6ac74eb4421b9ffa831dc6fed067d2ddc0618e.tar.xz freeipa-9a6ac74eb4421b9ffa831dc6fed067d2ddc0618e.zip | |
Avoid growing FILE ccaches unnecessarily
Related https://pagure.io/freeipa/issue/6775
Signed-off-by: Simo Sorce <simo@redhat.com>
Reviewed-By: Christian Heimes <cheimes@redhat.com>
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
Diffstat (limited to 'ipapython')
| -rw-r--r-- | ipapython/session_storage.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ipapython/session_storage.py b/ipapython/session_storage.py index bcf094733..f208827f0 100644 --- a/ipapython/session_storage.py +++ b/ipapython/session_storage.py @@ -111,6 +111,12 @@ def store_data(princ_name, key, value): if not isinstance(value, bytes): value = value.encode('utf-8') + # FILE ccaches grow every time an entry is stored, so we need + # to avoid storing the same entry multiple times. + oldvalue = get_data(princ_name, key) + if oldvalue == value: + return + context = krb5_context() principal = krb5_principal() ccache = krb5_ccache() |
