diff --git a/accountsservice-0.6.45.tar.xz b/accountsservice-0.6.45.tar.xz deleted file mode 100644 index fac5c0d..0000000 --- a/accountsservice-0.6.45.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fb0fc293aa75d59f5ef5db719d37a21831c4dd74a97526ee7e51ce936311ef26 -size 382740 diff --git a/accountsservice-0.6.49.tar.xz b/accountsservice-0.6.49.tar.xz new file mode 100644 index 0000000..abac10e --- /dev/null +++ b/accountsservice-0.6.49.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251e5dd56db839e9470d97692ef6e5e07dc659196f27b65b228a3e14f46e560c +size 384108 diff --git a/accountsservice-filter-suse-accounts.patch b/accountsservice-filter-suse-accounts.patch index 309bf19..abeeb17 100644 --- a/accountsservice-filter-suse-accounts.patch +++ b/accountsservice-filter-suse-accounts.patch @@ -2,7 +2,7 @@ Index: accountsservice-0.6.37/src/user-classify.c =================================================================== --- accountsservice-0.6.37.orig/src/user-classify.c +++ accountsservice-0.6.37/src/user-classify.c -@@ -53,7 +53,13 @@ static const char *default_excludes[] = +@@ -51,7 +51,13 @@ static const char *default_excludes[] = "man", "at", "gdm", diff --git a/accountsservice-missing-users-on-gdm-login.patch b/accountsservice-missing-users-on-gdm-login.patch new file mode 100644 index 0000000..a6dd72a --- /dev/null +++ b/accountsservice-missing-users-on-gdm-login.patch @@ -0,0 +1,36 @@ +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-sysconfig.patch b/accountsservice-sysconfig.patch index 1a9aa43..a31648f 100644 --- a/accountsservice-sysconfig.patch +++ b/accountsservice-sysconfig.patch @@ -21,7 +21,7 @@ Index: accountsservice-0.6.37/src/daemon.c =================================================================== --- accountsservice-0.6.37.orig/src/daemon.c +++ accountsservice-0.6.37/src/daemon.c -@@ -44,6 +44,7 @@ +@@ -47,6 +47,7 @@ #include "wtmp-helper.h" #include "daemon.h" #include "util.h" @@ -29,16 +29,16 @@ Index: accountsservice-0.6.37/src/daemon.c #define PATH_PASSWD "/etc/passwd" #define PATH_SHADOW "/etc/shadow" -@@ -376,7 +377,7 @@ reload_autologin_timeout (Daemon *daemon +@@ -560,7 +561,7 @@ reload_autologin_timeout (Daemon *daemon daemon->priv->autologin_id = 0; if (!load_autologin (daemon, &name, &enabled, &error)) { - g_debug ("failed to load gdms custom.conf: %s", error->message); + g_debug ("failed to load autologin config: %s", error->message); - g_error_free (error); - g_free (name); + return FALSE; + } -@@ -1272,6 +1273,43 @@ daemon_local_check_auth (Daemon +@@ -1434,6 +1435,43 @@ daemon_local_check_auth (Daemon g_object_unref (subject); } @@ -82,17 +82,17 @@ Index: accountsservice-0.6.37/src/daemon.c gboolean load_autologin (Daemon *daemon, gchar **name, -@@ -1282,6 +1320,8 @@ load_autologin (Daemon *daemon, - GError *local_error; - gchar *string; +@@ -1444,6 +1482,8 @@ load_autologin (Daemon *daemon, + GError *local_error = NULL; + g_autofree gchar *string = NULL; + return load_autologin_suse (daemon, name, enabled, error); + keyfile = g_key_file_new (); if (!g_key_file_load_from_file (keyfile, PATH_GDM_CUSTOM, -@@ -1329,6 +1369,8 @@ save_autologin (Daemon *daemon, - gchar *data; +@@ -1483,6 +1523,8 @@ save_autologin (Daemon *daemon, + g_autofree gchar *data = NULL; gboolean result; + return save_autologin_suse (daemon, name, enabled, error); diff --git a/accountsservice.changes b/accountsservice.changes index 7815513..05ed687 100644 --- a/accountsservice.changes +++ b/accountsservice.changes @@ -1,3 +1,49 @@ +------------------------------------------------------------------- +Wed Jun 13 06:00:22 UTC 2018 - fezhang@suse.com + +- Add accountsservice-missing-users-on-gdm-login.patch: Don't abort + loading users when an /etc/shadow entry found missing + (boo#1090003 fdo#106904). + +------------------------------------------------------------------- +Sun May 13 23:59:22 UTC 2018 - luc14n0@linuxmail.org + +- Update to version 0.6.49: + + Fix crash on startup from previous compiler warning fix. +- Changes from version 0.6.48: + + Fix crashes when adding admin user and when user is removed. + + Performance improvements handling really large wtmp files. +- Changes from version 0.6.47: + + Fix problem where libaccountsservice users weren't getting + property change updates. + + Reduce memory usage of cached users in daemon process. + + Drop premature user-added/user-removed signals that erroneously + get emitted before ListCachedUsers call finishes. + +------------------------------------------------------------------- +Fri Apr 6 02:43:51 UTC 2018 - luc14n0@linuxmail.org + +- Update to version 0.6.46: + + Fix systemd unit file to use default standard output; + + Performance improvements; + + Leak fixes; + + Crash fixes; + + Support extra groups for admin users; + + Add policy that allows admins to allow users to change their + own password; + + Introspection fixes; + + Elogind support; + + Decruftification of username blacklist; + + Updated translations. +- Add: + + gio-2.0 and gio-unix-2.0 pkgconfig modules BuildRequires to + avoid implicit dependencies. + + xmlto and xsltproc BuildRequires to enable documentation. +- Drop remove-no-longer-used-system-accounts.patch: fixed upstream. +- Rebase patches: + + accountsservice-sysconfig.patch and + + accountsservice-filter-suse-accounts.patch. + ------------------------------------------------------------------- Wed Feb 28 16:22:37 UTC 2018 - dimstar@opensuse.org diff --git a/accountsservice.spec b/accountsservice.spec index 2875885..2cfb191 100644 --- a/accountsservice.spec +++ b/accountsservice.spec @@ -17,30 +17,37 @@ Name: accountsservice -Version: 0.6.45 +Version: 0.6.49 Release: 0 Summary: D-Bus Service to Manipulate User Account Information License: GPL-3.0-or-later Group: System/Daemons URL: http://www.freedesktop.org/wiki/Software/AccountsService/ Source: http://www.freedesktop.org/software/accountsservice/%{name}-%{version}.tar.xz + # WARNING: do not remove/significantly change patch0 without updating the relevant patch in gdm too # PATCH-FIX-OPENSUSE accountsservice-sysconfig.patch bnc#688071 vuntz@opensuse.org -- Read/write autologin configuration from sysconfig, like gdm (see gdm-sysconfig-settings.patch) 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 +## 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. -Patch2: as-fate318433-prevent-same-account-multi-logins.patch -# PATCH-FIX-UPSTREAM remove-no-longer-used-system-accounts.patch bsc#1063794 fdo#103879 qzheng@suse.com -- drop operator, nobody4 and noaccess from the blacklist. -Patch3: remove-no-longer-used-system-accounts.patch +Patch1000: as-fate318433-prevent-same-account-multi-logins.patch # needed for patch0 + BuildRequires: gnome-common -BuildRequires: gobject-introspection-devel +BuildRequires: gobject-introspection-devel >= 0.40.0 BuildRequires: intltool BuildRequires: pkgconfig # needed for patch0 BuildRequires: vala -BuildRequires: pkgconfig(glib-2.0) +BuildRequires: xmlto +BuildRequires: xsltproc +BuildRequires: pkgconfig(gio-2.0) >= 2.37.3 +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(glib-2.0) >= 2.44 BuildRequires: pkgconfig(libsystemd) >= 186 BuildRequires: pkgconfig(polkit-gobject-1) BuildRequires: pkgconfig(systemd) @@ -93,9 +100,10 @@ querying and manipulating user account information. %setup -q %patch0 -p1 %patch1 -p1 -%patch3 -p1 -%if !0%{?is_opensuse} %patch2 -p1 +# Sle-only patches start at 1000 +%if !0%{?is_opensuse} +%patch1000 -p1 %endif %build @@ -128,7 +136,7 @@ find %{buildroot} -type f -name "*.la" -delete -print %files %license COPYING -%doc AUTHORS NEWS README +%doc NEWS README %{_unitdir}/accounts-daemon.service %{_sysconfdir}/dbus-1/system.d/org.freedesktop.Accounts.conf %{_libexecdir}/accounts-daemon @@ -148,6 +156,7 @@ find %{buildroot} -type f -name "*.la" -delete -print %{_libdir}/girepository-1.0/AccountsService-1.0.typelib %files devel +%doc AUTHORS TODO %doc %{_datadir}/gtk-doc/html/lib%{name}/ %{_libdir}/*.so %{_libdir}/pkgconfig/accountsservice.pc diff --git a/remove-no-longer-used-system-accounts.patch b/remove-no-longer-used-system-accounts.patch deleted file mode 100644 index 1cc5b97..0000000 --- a/remove-no-longer-used-system-accounts.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/src/user-classify.c b/src/user-classify.c -index 9b4af06..4b3fdd1 100644 ---- a/src/user-classify.c -+++ b/src/user-classify.c -@@ -39,10 +39,7 @@ static const char *default_excludes[] = { - "mail", - "news", - "uucp", -- "operator", - "nobody", -- "nobody4", -- "noaccess", - "postgres", - "pvm", - "rpm",