From 9394c139c50c0d76d0a34a7356135ba4159a3a50c3c770f79f2195de179f4b88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Sun, 22 Jul 2018 18:59:03 +0000 Subject: [PATCH 1/2] Accepting request 624148 from home:qkzhu:branches:GNOME:Factory - Add accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch: At the moment we set is-loaded on the user-manager object as soon as we start fetching the seat, but we should waiting until the seat is fetched, so that can_switch() will return the correct value if the caller waited until the loaded signal to use it. (boo#1100041 fdo#107298) OBS-URL: https://build.opensuse.org/request/show/624148 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/accountsservice?expand=0&rev=121 --- ...-set-loaded-state-until-seat-fetched.patch | 35 +++++++++++++++++++ accountsservice.changes | 10 ++++++ accountsservice.spec | 3 ++ 3 files changed, 48 insertions(+) create mode 100644 accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch diff --git a/accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch b/accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch new file mode 100644 index 0000000..de571c5 --- /dev/null +++ b/accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch @@ -0,0 +1,35 @@ +From c7fa612023a163e8b2352e1170c6df3fceb19b27 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Thu, 19 Jul 2018 13:14:09 -0400 +Subject: lib: don't set loaded state until seat is fetched + +At the moment we set is-loaded on the user-manager +object as soon as we start fetching the seat, but +we should waiting until the seat is fetched, so +that can_switch() will return the correct value +if the caller waited until the loaded signal +to use it. + +This commit changes the >= to > which I believe +was the original intention anyway. + +https://bugs.freedesktop.org/show_bug.cgi?id=107298 +--- + src/libaccountsservice/act-user-manager.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c +index 325421b..e7e26b1 100644 +--- a/src/libaccountsservice/act-user-manager.c ++++ b/src/libaccountsservice/act-user-manager.c +@@ -2382,7 +2382,7 @@ maybe_set_is_loaded (ActUserManager *manager) + /* Don't set is_loaded yet unless the seat is already loaded enough + * or failed to load. + */ +- if (manager->priv->seat.state >= ACT_USER_MANAGER_SEAT_STATE_GET_ID) { ++ if (manager->priv->seat.state > ACT_USER_MANAGER_SEAT_STATE_GET_ID) { + g_debug ("ActUserManager: Seat loaded, so now setting loaded property"); + } else if (manager->priv->seat.state == ACT_USER_MANAGER_SEAT_STATE_UNLOADED) { + g_debug ("ActUserManager: Seat wouldn't load, so giving up on it and setting loaded property"); +-- +cgit v1.1 diff --git a/accountsservice.changes b/accountsservice.changes index 03fecb2..4996d6f 100644 --- a/accountsservice.changes +++ b/accountsservice.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Fri Jul 20 02:51:49 UTC 2018 - qkzhu@suse.com + +- Add accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch: + At the moment we set is-loaded on the user-manager object as soon + as we start fetching the seat, but we should waiting until the seat + is fetched, so that can_switch() will return the correct value if + the caller waited until the loaded signal to use it. + (boo#1100041 fdo#107298) + ------------------------------------------------------------------- Tue Jul 17 01:41:41 UTC 2018 - xwang@suse.com diff --git a/accountsservice.spec b/accountsservice.spec index b994d35..b60a09a 100644 --- a/accountsservice.spec +++ b/accountsservice.spec @@ -34,6 +34,8 @@ Patch1: accountsservice-filter-suse-accounts.patch Patch2: accountsservice-missing-users-on-gdm-login.patch # PATCH-FIX-UPSTREAM accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch boo#1095918 fdo#106855 xwang@suse.com -- Treat session type wayland as graphical mode Patch3: accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch +# PATCH-FIX-UPSTREAM accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch boo#1100041 fdo#107298 -- lib: don't set loaded state until seat is fetched +Patch4: accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch ## SLE-only patches start at 1000 # PATCH-FEATURE-SLE as-fate318433-prevent-same-account-multi-logins.patch fate#318433 cxiong@suse.com -- prevent multiple simultaneous login. Patch1000: as-fate318433-prevent-same-account-multi-logins.patch @@ -104,6 +106,7 @@ querying and manipulating user account information. %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 # Sle-only patches start at 1000 %if !0%{?is_opensuse} %patch1000 -p1 From 8b39491d060ce79f35edcd4eb699590fba10d605e101d425346a6cb1ce8901a0 Mon Sep 17 00:00:00 2001 From: Luciano Santos Date: Mon, 23 Jul 2018 03:16:43 +0000 Subject: [PATCH 2/2] Accepting request 624597 from home:iznogood:branches:GNOME:Factory - Update to version 0.6.50: + Fix insufficient path check on user icon files. + Fix is-logged-in status for wayland sessions. + Fix user enumeration when system accounts are mixed in. - Drop upstream fixed patches: + accountsservice-missing-users-on-gdm-login.patch. + accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch OBS-URL: https://build.opensuse.org/request/show/624597 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/accountsservice?expand=0&rev=122 --- accountsservice-0.6.49.tar.xz | 3 -- accountsservice-0.6.50.tar.xz | 3 ++ ...on-type-wayland-as-graphical-session.patch | 30 ---------------- ...tsservice-missing-users-on-gdm-login.patch | 36 ------------------- accountsservice.changes | 11 ++++++ accountsservice.spec | 8 +---- 6 files changed, 15 insertions(+), 76 deletions(-) delete mode 100644 accountsservice-0.6.49.tar.xz create mode 100644 accountsservice-0.6.50.tar.xz delete mode 100644 accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch delete mode 100644 accountsservice-missing-users-on-gdm-login.patch diff --git a/accountsservice-0.6.49.tar.xz b/accountsservice-0.6.49.tar.xz deleted file mode 100644 index abac10e..0000000 --- a/accountsservice-0.6.49.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:251e5dd56db839e9470d97692ef6e5e07dc659196f27b65b228a3e14f46e560c -size 384108 diff --git a/accountsservice-0.6.50.tar.xz b/accountsservice-0.6.50.tar.xz new file mode 100644 index 0000000..620ee99 --- /dev/null +++ b/accountsservice-0.6.50.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035928f5dea46f2220657e0bd669bc7fac45165b700c0a81b2b66ff2c3dbc74a +size 384484 diff --git a/accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch b/accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch deleted file mode 100644 index 5a119eb..0000000 --- a/accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch +++ /dev/null @@ -1,30 +0,0 @@ -From edcc26e5ae5fc09fad2d8e9afda0fea97c395d49 Mon Sep 17 00:00:00 2001 -From: xiaoguang wang -Date: Fri, 8 Jun 2018 14:32:00 +0800 -Subject: [PATCH] lib: treat session type=wayland as graphical session - -When user session type is wayland, act_user_is_logged_in can return TRUE -if user is logged in. - -https://bugs.freedesktop.org/show_bug.cgi?id=106855 ---- - src/libaccountsservice/act-user-manager.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c -index ade309c..325421b 100644 ---- a/src/libaccountsservice/act-user-manager.c -+++ b/src/libaccountsservice/act-user-manager.c -@@ -1543,7 +1543,8 @@ _get_x11_display_for_new_systemd_session (ActUserManagerNewSession *new_session) - return; - } - -- if (g_strcmp0 (session_type, "x11") != 0) { -+ if (g_strcmp0 (session_type, "x11") != 0 && -+ g_strcmp0 (session_type, "wayland") != 0) { - g_debug ("ActUserManager: (mostly) ignoring %s session '%s' since it's not graphical", - session_type, - new_session->id); --- -2.16.4 - diff --git a/accountsservice-missing-users-on-gdm-login.patch b/accountsservice-missing-users-on-gdm-login.patch deleted file mode 100644 index a6dd72a..0000000 --- a/accountsservice-missing-users-on-gdm-login.patch +++ /dev/null @@ -1,36 +0,0 @@ -From c9503bcb40c21da08b7938279117d68ec37ac1f1 Mon Sep 17 00:00:00 2001 -From: Felix Zhang -Date: Wed, 13 Jun 2018 11:05:52 +0800 -Subject: [PATCH] daemon: don't abort loading users even if missing shadow - entries - -Some system accounts, e.g. sshd have no entries in /etc/shadow -because they are created prior to /etc/shadow and have no passwords. - -Right now load_entries aborts iterating through /etc/passwd entries -if it fails to find the corresponding /etc/shadow entry, ignoring -all the users behind it, making those users missing from the gdm -login screen user list. - -https://bugs.freedesktop.org/show_bug.cgi?id=106904 ---- - src/daemon.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/daemon.c b/src/daemon.c -index e711a46..2851ed6 100644 ---- a/src/daemon.c -+++ b/src/daemon.c -@@ -235,8 +235,8 @@ entry_generator_fgetpwent (Daemon *daemon, - - if (shadow_entry_buffers != NULL) { - *spent = &shadow_entry_buffers->spbuf; -- return pwent; - } -+ return pwent; - } - } - --- -2.13.7 - diff --git a/accountsservice.changes b/accountsservice.changes index 4996d6f..604ae38 100644 --- a/accountsservice.changes +++ b/accountsservice.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Sun Jul 22 20:39:59 UTC 2018 - bjorn.lie@gmail.com + +- Update to version 0.6.50: + + Fix insufficient path check on user icon files. + + Fix is-logged-in status for wayland sessions. + + Fix user enumeration when system accounts are mixed in. +- Drop upstream fixed patches: + + accountsservice-missing-users-on-gdm-login.patch. + + accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch + ------------------------------------------------------------------- Fri Jul 20 02:51:49 UTC 2018 - qkzhu@suse.com diff --git a/accountsservice.spec b/accountsservice.spec index b60a09a..309748e 100644 --- a/accountsservice.spec +++ b/accountsservice.spec @@ -17,7 +17,7 @@ Name: accountsservice -Version: 0.6.49 +Version: 0.6.50 Release: 0 Summary: D-Bus Service to Manipulate User Account Information License: GPL-3.0-or-later @@ -30,10 +30,6 @@ Source: http://www.freedesktop.org/software/accountsservice/%{name}-%{ve Patch0: accountsservice-sysconfig.patch # PATCH-FIX-OPENSUSE accountsservice-filter-suse-accounts.patch vuntz@opensuse.org -- Filter out some system users that are specific to openSUSE Patch1: accountsservice-filter-suse-accounts.patch -# PATCH-FIX-UPSTREAM accountsservice-missing-users-on-gdm-login.patch boo#1090003 fdo#106904 fezhang@suse.com -- Don't abort loading users when an /etc/shadow entry found missing -Patch2: accountsservice-missing-users-on-gdm-login.patch -# PATCH-FIX-UPSTREAM accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch boo#1095918 fdo#106855 xwang@suse.com -- Treat session type wayland as graphical mode -Patch3: accountsservice-lib-treat-session-type-wayland-as-graphical-session.patch # PATCH-FIX-UPSTREAM accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch boo#1100041 fdo#107298 -- lib: don't set loaded state until seat is fetched Patch4: accountsservice-lib-don-not-set-loaded-state-until-seat-fetched.patch ## SLE-only patches start at 1000 @@ -104,8 +100,6 @@ querying and manipulating user account information. %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 -%patch3 -p1 %patch4 -p1 # Sle-only patches start at 1000 %if !0%{?is_opensuse}