[gnome-online-accounts/wip/rishi/kcm-notification: 4/4] kerberos-identity-manager: Use notifications for KCM credential caches




commit 819812a3886bda5d418e404ae3ea12e515a3509e
Author: Debarshi Ray <debarshir gnome org>
Date:   Tue Oct 20 19:54:00 2020 +0200

    kerberos-identity-manager: Use notifications for KCM credential caches

 src/goaidentity/goakerberosidentitymanager.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)
---
diff --git a/src/goaidentity/goakerberosidentitymanager.c b/src/goaidentity/goakerberosidentitymanager.c
index 50db6ed7..1096986b 100644
--- a/src/goaidentity/goakerberosidentitymanager.c
+++ b/src/goaidentity/goakerberosidentitymanager.c
@@ -1407,6 +1407,31 @@ monitor_credentials_cache (GoaKerberosIdentityManager  *self,
       g_object_unref (directory);
       g_object_unref (file);
     }
+  else if (strcmp (cache_type, "KCM") == 0)
+    {
+      GError *create_error = NULL;
+      GFile *directory = NULL;
+      GFile *file = NULL;
+      GFileOutputStream *stream = NULL;
+      const gchar *runtime_dir;
+
+      runtime_dir = g_get_user_runtime_dir ();
+      directory = g_file_new_for_path (runtime_dir);
+      file = g_file_get_child (directory, ".kcm-notifications");
+
+      monitoring_error = NULL;
+
+      stream = g_file_create (file, G_FILE_CREATE_REPLACE_DESTINATION, NULL, &create_error);
+      if (stream != NULL)
+        g_propagate_error (&monitoring_error, create_error);
+
+      if (monitoring_error == NULL)
+        monitor = g_file_monitor_file (file, G_FILE_MONITOR_NONE, NULL, &monitoring_error);
+
+      g_clear_object (&stream);
+      g_object_unref (directory);
+      g_object_unref (file);
+    }
 
   if (monitor == NULL)
     {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]