[libsecret/62-flatpak-libsecret-fails-to-read-credentials-saved-by-other-process] secret-backend: Allow override the backend also under Flatpak/Snap



commit d0bcf3822c3eb271ce7112bbf0f82e2f545d31df
Author: Milan Crha <mcrha redhat com>
Date:   Tue Nov 30 11:43:45 2021 +0100

    secret-backend: Allow override the backend also under Flatpak/Snap
    
    This can help applications, which rely on certain behavior, like when
    multiple processes are accessing the secrets and expect that secrets
    saved by one process can be read by another process.
    
    Related to https://gitlab.gnome.org/GNOME/libsecret/-/issues/62

 libsecret/secret-backend.c | 19 +++++++++----------
 1 file changed, 9 insertions(+), 10 deletions(-)
---
diff --git a/libsecret/secret-backend.c b/libsecret/secret-backend.c
index 73f0fd7..01e19e1 100644
--- a/libsecret/secret-backend.c
+++ b/libsecret/secret-backend.c
@@ -154,18 +154,17 @@ backend_get_impl_type (void)
        g_type_ensure (secret_file_backend_get_type ());
 #endif
 
+       envvar = g_getenv ("SECRET_BACKEND");
+       if (envvar != NULL && *envvar != '\0') {
+               extension_name = envvar;
+       } else {
+               extension_name = "service";
+
 #ifdef WITH_GCRYPT
-       if ((g_file_test ("/.flatpak-info", G_FILE_TEST_EXISTS) || g_getenv ("SNAP_NAME") != NULL) &&
-           _secret_file_backend_check_portal_version ())
-               extension_name = "file";
-       else
+               if ((g_file_test ("/.flatpak-info", G_FILE_TEST_EXISTS) || g_getenv ("SNAP_NAME") != NULL) &&
+                   _secret_file_backend_check_portal_version ())
+                       extension_name = "file";
 #endif
-       {
-               envvar = g_getenv ("SECRET_BACKEND");
-               if (envvar == NULL || *envvar == '\0')
-                       extension_name = "service";
-               else
-                       extension_name = envvar;
        }
 
        ep = g_io_extension_point_lookup (SECRET_BACKEND_EXTENSION_POINT_NAME);


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