Go to file
Marco Trevisan (Treviño) 36fba1a184 gdm: Do not fail the whole authentication if a background service failed
In case a background service such as the fingerprint authentication
fails to start we'd just mark the whole authentication process as
failed.

Currently this may happen by just putting a wrong password when an user
has some fingerprints enrolled, the fingerprint gdm authentication
worker may take some time to restart leading to a failure and this is
currently also making the password authentication to fail:

    JS ERROR: Failed to start gdm-fingerprint for u: Gio.DBusError:
        GDBus.Error:org.freedesktop.DBus.Error.Spawn.Failed:
            Could not create authentication helper process
        _promisify/proto[asyncFunc]/</<@resource:///org/gnome/gjs/modules/core/overrides/Gio.js:435:45
        ### Promise created here: ###
        _startService@resource:///org/gnome/shell/gdm/util.js:470:42
        _beginVerification@resource:///org/gnome/shell/gdm/util.js:495:18
        _getUserVerifier@resource:///org/gnome/shell/gdm/util.js:405:14
        async*_openReauthenticationChannel@resource:///org/gnome/shell/gdm/util.js:378:22
        async*begin@resource:///org/gnome/shell/gdm/util.js:194:18
        _retry@resource:///org/gnome/shell/gdm/util.js:561:14
        _verificationFailed/signalId<@resource:///org/gnome/shell/gdm/util.js:584:30
        _emit@resource:///org/gnome/gjs/modules/core/_signals.js:133:47
        finishMessageQueue@resource:///org/gnome/shell/gdm/util.js:268:14
        _queueMessageTimeout@resource:///org/gnome/shell/gdm/util.js:273:18
        _queueMessageTimeout/this._messageQueueTimeoutId<@resource:///org/gnome/shell/gdm/util.js:288:65

Given that background services are ignored even for queries or any kind
of message, we should not fail the authentication request unless the
default service fails.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1622>
2021-02-12 20:26:00 +00:00
.gitlab/issue_templates gitlab: Add issue templates 2020-01-07 22:42:46 +00:00
.gitlab-ci ci: Add some more commit message rules 2021-01-11 14:01:44 +01:00
.settings Clean out some eclipse artefacts 2019-02-13 04:39:26 +01:00
data theme: Adjust app grid visuals 2021-02-11 15:50:31 +00:00
docs/reference docs: Unify on single DocBook version 2020-10-13 03:02:13 +02:00
js gdm: Do not fail the whole authentication if a background service failed 2021-02-12 20:26:00 +00:00
lint lint: Sync configuration with gjs 2020-11-16 18:04:23 +00:00
man man: Update options 2020-12-28 02:25:17 +01:00
meson theme: Pre-generate stylesheets as well 2020-12-29 00:40:47 +01:00
po Update Galician translation 2021-02-12 19:10:40 +00:00
src screenshot: Fix slow audiovisual feedback on when taking screenshot 2021-02-11 18:51:40 +00:00
subprojects extensions-app: Use development profile for nightly build 2021-02-11 17:47:27 +01:00
tests util: Add a GNOME version comparison function 2021-02-05 13:41:26 +00:00
tools *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
.eslintrc.yml lint: Convert eslint JSON to YAML 2019-11-11 23:51:17 +00:00
.gitignore Add small gnome-shell-extension-prefs script 2020-04-28 00:06:19 +02:00
.gitlab-ci.yml extensions-app: Use development profile for nightly build 2021-02-11 17:47:27 +01:00
.gitmodules submodules: Replace non-functional git.gnome.org URL by GNOME Gitlab URL 2018-09-25 08:41:30 +02:00
config.h.meson Add check_cloexec_fds debug command 2018-07-30 23:11:41 +00:00
COPYING Changed obsolete FSF postal address. 2014-01-08 04:35:14 +07:00
gnome-shell.doap gnome-shell.doap: Make marge-bot a maintainer 2020-11-17 17:29:56 +00:00
HACKING.md *: Fix spelling mistakes found by codespell 2020-08-21 18:25:09 +00:00
meson_options.txt extensions-app: Move Extensions app to new subproject 2020-03-27 23:33:30 +00:00
meson.build Post-release version bump (again) 2021-01-18 17:46:04 +01:00
NEWS Tag release 40.alpha.1.1 2021-01-18 17:41:04 +01:00
README.md README.md: Add contribution section 2019-02-13 20:37:39 +01:00

GNOME Shell

GNOME Shell provides core user interface functions for the GNOME 3 desktop, like switching to windows and launching applications. GNOME Shell takes advantage of the capabilities of modern graphics hardware and introduces innovative user interface concepts to provide a visually attractive and easy to use experience.

For more information about GNOME Shell, including instructions on how to build GNOME Shell from source and how to get involved with the project, see the project wiki.

Bugs should be reported to the GNOME bug tracking system.

Contributing

To contribute, open merge requests at https://gitlab.gnome.org/GNOME/gnome-shell.

Commit messages should follow the GNOME commit message guidelines. We require an URL to either an issue or a merge request in each commit.

License

GNOME Shell is distributed under the terms of the GNU General Public License, version 2 or later. See the COPYING file for details.