pgreco / rpms / ipa

Forked from forks/areguera/rpms/ipa 4 years ago
Clone

Blame SOURCES/0039-Avoid-growing-FILE-ccaches-unnecessarily.patch

483b06
From 5c84f945e0fe5e41d706fd7f700392214178b6aa Mon Sep 17 00:00:00 2001
483b06
From: Simo Sorce <simo@redhat.com>
483b06
Date: Wed, 22 Mar 2017 18:25:38 -0400
483b06
Subject: [PATCH] Avoid growing FILE ccaches unnecessarily
483b06
483b06
Related https://pagure.io/freeipa/issue/6775
483b06
483b06
Signed-off-by: Simo Sorce <simo@redhat.com>
483b06
Reviewed-By: Christian Heimes <cheimes@redhat.com>
483b06
Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>
483b06
---
483b06
 ipapython/session_storage.py | 6 ++++++
483b06
 1 file changed, 6 insertions(+)
483b06
483b06
diff --git a/ipapython/session_storage.py b/ipapython/session_storage.py
483b06
index 7fe17fb235614e687a88c090336d3c59a7a24aac..a88f9f7a75c73d4dc753183a100350d197d02199 100644
483b06
--- a/ipapython/session_storage.py
483b06
+++ b/ipapython/session_storage.py
483b06
@@ -104,6 +104,12 @@ def store_data(princ_name, key, value):
483b06
     """
483b06
     Stores the session cookie in a hidden ccache entry.
483b06
     """
483b06
+    # FILE ccaches grow every time an entry is stored, so we need
483b06
+    # to avoid storing the same entry multiple times.
483b06
+    oldvalue = get_data(princ_name, key)
483b06
+    if oldvalue == value:
483b06
+        return
483b06
+
483b06
     context = krb5_context()
483b06
     principal = krb5_principal()
483b06
     ccache = krb5_ccache()
483b06
-- 
483b06
2.12.1
483b06