summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* libgdm: Don't leak user verifier extensions on unlockwip/libgdm-proxy-leaksRay Strode2020-11-031-22/+48
| | | | | | | | | GdmClient fails to free the hash table associated with user verifier extensions when the client is done with the user verifier. This commit ties the user verifier extensions to the user verifier instance associated with it, instead of storing the extensions directly in the client struct.
* libgdm: Fetch connection synchronouslyRay Strode2020-11-031-85/+9
| | | | | | | | | | | There's a race condition in the client connection code at the moment, where a user verifier could be waiting for its connection when the login screen asks for a greeter synchronously. The greeter will then end up with a different connection that the user verifier which breaks expectations. This commit just makes the connection fetching code synchronous for now to side step the problem.
* libgdm: Fix client leaks from g_async_result_get_source_objectRay Strode2020-11-031-3/+3
| | | | | | | | There are are few places in the code where the client object is retrieved via g_async_result_get_source_object. Those calls return a fresh reference that is never unreferenced later. This commit plugs those leaks by using g_autoptr's
* Merge branch 'enable-wayland-runtime' into 'master'Ray Strode2020-11-033-11/+33
|\ | | | | | | | | utils: add enabling Wayland feature into gdm-disable-wayland See merge request GNOME/gdm!115
| * utils: change gdm-disable-wayland to gdm-runtime-configJian-Hong Pan2020-11-033-11/+33
|/ | | | | | | | | | | | | | | | | | | | We can disable Wayland in runtime by invoking gdm-disable-wayland. However, we may also want to enable Wayland in runtime for some reasons. This idea is extended to modify more options/configurations in runtime. This commit renames gdm-disable-wayland to gdm-runtime-config and unlocks the feature to modify more gdm configurations in runtime. The new command format will be: gdm-runtime-config set <group> <key> <value> The configurable items refer to gdm.schemas. "<group>/<key>" combination is the key in gdm.schemas. For example, the original "gdm-disable-wayland" is replaced by "gdm-runtime-config set daemon WaylandEnable false". Link: https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/115#note_944907
* Merge branch 'wip/fix-some-fd-leaks' into 'master'Ray Strode2020-11-023-8/+12
|\ | | | | | | | | Fix some file descriptor leaks See merge request GNOME/gdm!111
| * xdmcp-display-factory: Clear launch environment when done with itRay Strode2020-11-021-0/+2
| | | | | | | | | | | | | | | | | | | | The XDMCP disply factory examines the sessions of its displays' launch environments when the displays change status. Unfortunately it leaks a reference to the launch environment when doing that. This commit fixes the reference leak which leads to an fd leak.
| * session: Don't leak remote greeter interfaceRay Strode2020-11-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | XDMCP login screens get a "Remote Geeter Interface" exported over the bus connection (so the login window can provide a Disconnect button). This interface is getting leaked when the session object is disposed, leaving the bus connection itself undisposed, which causes an fd leak. This commit plugs the interface leak, and thus the fd leak.
| * manager: Clean up user session when finished with displayRay Strode2020-11-021-0/+2
| | | | | | | | | | | | | | | | | | The display object stores its associated user session with it as object data. It never clears this session from its object data when its done with it however, leading to the session leaking. This commit plugs the leak and an associated file descriptor leak at logout.
| * manager: Don't leak session objectsRay Strode2020-11-021-8/+7
|/ | | | | | | | The create_user_session_for_display function returns a new reference to the GdmSession object it creates. The callers don't expect this, and most of the callers don't even look at the return value at all. This commit makes it return void instead.
* Merge branch 'benzea/fix-locale-dir' into 'master'Ray Strode2020-10-271-1/+1
|\ | | | | | | | | | | | | meson: Fix location of locale directory Closes #635 See merge request GNOME/gdm!116
| * meson: Fix location of locale directorybenzea/fix-locale-dirBenjamin Berg2020-10-231-1/+1
|/ | | | | | | | The localedir is relative to the prefix and not the data directory. This regressed during the meson port where the get_option('datadir') was accidentally inserted into the GNOMELOCALEDIR definition. Closes #635
* meson: Bump to 3.38.13.38.1Ray Strode2020-10-131-1/+1
|
* NEWS: Update for releaseRay Strode2020-10-131-0/+7
|
* Merge branch 'benzea/fix-runtime-confi-location' into 'master'Iain Lane2020-10-131-1/+1
|\ | | | | | | | | | | | | meson: Fix default location of runtime configuration Closes #641 See merge request GNOME/gdm!114
| * meson: Fix default location of runtime configurationbenzea/fix-runtime-confi-locationBenjamin Berg2020-10-061-1/+1
|/ | | | | | | | | | | The meson port changed the runtime configuration location to default to the same location as the default configuration. This however is incorrect, as the runtime configuration should be in the runtime directory. Change the default to be "custom.conf" inside the runtime directory. Fixes: #641
* Merge branch 'patch-1' into 'master'Olav Vitters2020-09-291-1/+1
|\ | | | | | | | | Correct a typo in gdm-x-session.c See merge request GNOME/gdm!109
| * Correct a typo in gdm-x-session.cFelix Yan2020-09-291-1/+1
|/
* Update Kabyle translationYacine Bouklif2020-09-191-157/+160
|
* meson: bump to 3.38.03.38.0Ray Strode2020-09-111-1/+1
|
* NEWS: Update to 3.38.0Ray Strode2020-09-111-0/+8
|
* daemon: quit Plymouth without transition if only XDMCP is allowedPetr Pavlu2020-09-091-1/+1
| | | | | | | | | | | | When GDM is configured as a standalone XDMCP server, the manager quits Plymouth by running 'plymouth quit --retain-splash'. This is not ideal because there is no transition to a local X server. The terminal can be then left from the Plymouth run in the graphics mode with no getty prompt and also disallowing switching to another VT. The patch fixes the problem by instead running 'plymouth quit' which always switches the terminal to the text mode. https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/101
* Merge branch 'benzea/fix-unknown-session-crash' into 'master'Ray Strode2020-09-091-2/+3
|\ | | | | | | | | | | | | Benzea/fix unknown session crash Closes #555 See merge request GNOME/gdm!106
| * manager: Always write out parameterBenjamin Berg2020-09-091-1/+2
| | | | | | | | | | | | | | | | | | | | The get_display_and_details_for_bus_sender function does not return a proper error value. Due to this, it makes sense to always write the out parameters (though, I expect we have still more that we might need to write). This is just slightly safer, but the function probably isn't great as is.
| * manager: Fix possible crash by initializing displayBenjamin Berg2020-09-091-1/+1
|/ | | | | | | | | | | Some people insist on running sessions in ways where we cannot detect them properly. In that case, we shouldn't find a display, but the variable was not initialized and we could end up accessing random memory resulting in a crash. Fix it by adding the missing initializer. Closes: #555
* Update Catalan translationJordi Mas2020-09-071-26/+26
|
* Update Ukrainian translationYuri Chornoivan2020-09-061-1/+119
|
* Update Ukrainian translationYuri Chornoivan2020-09-051-1/+93
|
* Update Ukrainian translationYuri Chornoivan2020-09-041-1/+53
|
* Update Ukrainian translationYuri Chornoivan2020-09-041-1/+97
|
* Update Ukrainian translationYuri Chornoivan2020-09-031-1/+45
|
* Update Ukrainian translationYuri Chornoivan2020-09-031-98/+189
|
* Update Ukrainian translationYuri Chornoivan2020-09-021-193/+278
|
* Update Ukrainian translationYuri Chornoivan2020-09-011-19/+35
|
* Update Ukrainian translationYuri Chornoivan2020-09-011-1/+100
|
* Merge branch 'wip/issue623' into 'master'Ray Strode2020-08-311-2/+0
|\ | | | | | | | | | | | | data: Remove deprecated StandardOutput=syslog Closes #623 See merge request GNOME/gdm!108
| * data: Remove deprecated StandardOutput=syslogSimon McVittie2020-08-311-2/+0
|/ | | | | | | | | | | | | | | | | This is now equivalent to StandardOutput=journal, and recent versions of systemd log a warning for it. Instead of updating it to journal, remove it: the default if not specified is to respect the DefaultStandardOutput setting from /etc/systemd/system.conf, which in turn defaults to journal. Removing the explicit setting here means gdm is included if a sysadmin edits system.conf to change the logging destination for (almost) all system services at the same time, which seems desirable. Similarly, StandardError defaults to DefaultStandardError, which in turn defaults to inherit, so we don't need to override it here. Resolves: https://gitlab.gnome.org/GNOME/gdm/-/issues/623 Signed-off-by: Simon McVittie <smcv@debian.org>
* meson: Expose GDM XSession option to summaryMarco Trevisan (Treviño)2020-08-311-0/+1
|
* Merge branch 'meson-fixes' into 'master'Ray Strode2020-08-317-39/+122
|\ | | | | | | | | Meson fixes See merge request GNOME/gdm!107
| * meson: Fix Xsession input file nameMarco Trevisan (Treviño)2020-08-311-1/+1
| |
| * meson: Print a summary of configured features (if on meson >= 0.53)Marco Trevisan (Treviño)2020-08-311-0/+55
| | | | | | | | | | | | | | | | GDM has a quite complex configuration and it might be hard to spot some values from the log, so having a summary makes sense. Meson introduced it starting from 0.53, but we can enable it without bumping the dependency by using a dynamic version check.
| * meson_options: Enable systemd-journal by defaultMarco Trevisan (Treviño)2020-08-311-1/+1
| | | | | | | | | | | | | | | | This was already the case in autotools, as it used to be a feature that was set to auto and disabled only in the case there was no libsystemd. Now, being systemd a required gdm component, there's no point to use it as a feature, but still give the packagers the ability to toggle it.
| * meson: Don't look for non-existent journald dependencyMarco Trevisan (Treviño)2020-08-311-2/+1
| | | | | | | | | | | | | | | | Systemd journal library is provided by libsystemd, given that such API has more than 8 years, is probably not needed to convert this into a feature and check for a required systemd version in case it's enabled. So, just set ENABLE_SYSTEMD_JOURNAL just reading the option.
| * meson: When possible use systemd dirs to check for systemd utilsMarco Trevisan (Treviño)2020-08-311-1/+11
| | | | | | | | | | | | With meson 0.53 we can check whether a binary is in a specified path, as it was possible with `AC_PATH_PROG`, so use it as we did before of meson switch even if I'm not sure that this tool is shipped by most distros these days
| * session: Leave to meson the duty of keeping the lists in syncMarco Trevisan (Treviño)2020-08-314-25/+44
| | | | | | | | | | | | | | | | | | | | Don't leave to humans what machines can do, the gnome-login.session list is filled with an hard-to-maintain single-line semicolon separated list of components, that then are repeated in the gnome systemd session.conf. And these are meant to be kept in sync. Meson can help us in this, so let's just keep a single list in meson and use it to generate the various formats we need.
| * README: Update build instructions using mesonMarco Trevisan (Treviño)2020-08-311-4/+3
| |
| * meson: Use correct rules path when getting udevdir from pkg-configMarco Trevisan (Treviño)2020-08-311-2/+3
| | | | | | | | | | | | When udev is installed we compute the udevdir from pkg-config, however that is only the parent folder of the rules.d, so in any case consider it a prefix.
| * meson: Obey at -Dcustom-conf option when installing custom.confMarco Trevisan (Treviño)2020-08-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | No matter what parameter was passed to gdm, the custom.conf was always installed in $gdmcomnfdir/custom.conf, even if the config.h was using the configured path. Ensure that we use the passed argument, setting its name as configure_file output and its path as the install_dir. Unfortunately we've to be hackish here, using coreutils tools until we require meson 0.53 (and can use its FS module).
| * meson: Fix keyutils pkg-config nameMarco Trevisan (Treviño)2020-08-311-1/+1
|/ | | | | Keyutils includes a .pc file as mentioned in commit 141f8bc244, however its name was wrongly changed from 'libkeyutils' during the meson port
* Update Ukrainian translationYuri Chornoivan2020-08-311-2/+43
|