summaryrefslogtreecommitdiff
path: root/common
Commit message (Collapse)AuthorAgeFilesLines
...
* common: limit potentially expensive name lookupsRay Strode2017-03-031-12/+12
| | | | | | | | | | | | Right now we're doing name look ups when we don't have to. These name look ups can cause lengthy timeouts in misconfigured environments. This commit reduces the name looks used by GDM to make it more resiliant to failure. Ported from RHEL 6 to RHEL 7 by Ashish Shah <ashishks@redhat.com> https://bugzilla.gnome.org/show_bug.cgi?id=779499
* Xsession: get rid of "custom" sessionRay Strode2015-11-061-2/+0
| | | | | | | | | | | | custom is a magic name we used to allow for having the user decide their session by a ~/.xsession file. We no longer support that construct and haven't for many years. Instead, users who want that functionality can just add a xsession file to accomplish it. This commit just removes some left over cruft that never got cleaned up.
* get rid of references to slavesRay Strode2015-10-271-1/+1
| | | | | | | | I really don't want $ git grep slave to return hits.
* gdm-common: Add gdm_shell_expand() and testsAlexander Larsson2015-06-222-0/+96
| | | | | | | This allows shell-like expansion of strings. It will be later used to allow configuring the environment via config files. https://bugzilla.gnome.org/show_bug.cgi?id=751158
* require logind supportRay Strode2015-06-123-46/+10
| | | | | | | Now that consolekit support is gone, this commit drops all the conditionalizing of logind support. https://bugzilla.gnome.org/show_bug.cgi?id=743940
* drop consolekit supportRay Strode2015-06-121-304/+0
| | | | | | It was deprecated in 3.16 to be removed in 3.18 https://bugzilla.gnome.org/show_bug.cgi?id=743940
* settings: print custom.conf at startupRay Strode2015-03-061-0/+8
| | | | This makes it clear what settings gdm is using.
* user-switching: Make sure all exit paths have return valuesRay Strode2015-02-191-0/+2
| | | | | | | | | | | | | | | The openSUSE Build Service raises a flag for [ 55s] I: Program returns random data in a function [ 55s] E: gdm no-return-in-nonvoid-function gdm-common.c:850 [ 55s] E: gdm no-return-in-nonvoid-function gdm-user-switching.c:597 This can happen when CONSOLEKIT is disabled (As is newly the case) and LOGING_RUNNING would return false. Based on a patch by Dominique Leuenberger https://bugzilla.gnome.org/show_bug.cgi?id=744787
* local-display-factory: provide override for disabling waylandRay Strode2015-02-181-0/+1
| | | | | | | | | | Since this wayland code is still pretty new, we need to provide an exit tactic for users. This commit introduces daemon/WaylandEnable which can be set to false, to disable wayland support. https://bugzilla.gnome.org/show_bug.cgi?id=744764
* xdmcp: Allow timed/autologin on remote displaysMario Izquierdo Rodríguez2014-08-201-0/+1
| | | | | | | | This commit readds the security/AllowRemoteAutoLogin key (deprecated in >= 2.20) and so XDMCP setups can be configured to use autologin and timedlogin. https://bugzilla.gnome.org/show_bug.cgi?id=624958
* Revert "worker: get PATH from parent instead of #define"Ray Strode2014-04-222-1/+2
| | | | | | | This reverts commit e546e4dc6649a4fdf9065322420a28fa7e666782. It's causing problems because bindir and sbindir are in the wrong order for a user session.
* worker: get PATH from parent instead of #defineRay Strode2014-04-102-2/+1
| | | | | | | | If no PATH is set, then the session worker tries to set one up, based on guess. This commit changes GDM to just use the PATH given to GDM itself, rather than guessing (and getting it wrong). https://bugzilla.gnome.org/show_bug.cgi?id=727980
* common: remove gdm_string_hex_{de,en}code()Christian Schramm2014-04-072-217/+0
| | | | | | | | | These functions are unused, so there's no reason to keep them around. This commit removes those functions and corresponding test code. https://bugzilla.gnome.org/show_bug.cgi?id=727183
* Move gdm_slave_run_script to common codeJasper St. Pierre2014-03-143-0/+187
| | | | | | | We're going to move the code that runs Init to gdm-server.c and the code that runs PostLogin / PreSession to gdm-session-worker.c https://bugzilla.gnome.org/show_bug.cgi?id=726380
* common: Remove settings client / serverJasper St. Pierre2014-02-137-942/+0
| | | | | | This is used in *one* place in the simple slave. Just port it over to use gdm_settings_direct instead of keeping an entire DBus API around for just one call...
* profile: Kill warningJasper St. Pierre2014-02-101-3/+3
|
* utils: move login screen jumping code to commonRay Strode2014-02-072-1/+549
| | | | | | flexiserver has a bunch of complicated logic i want to use in the worker. Move that code to the common library and make flexiserver link against the common library.
* Don't enable debugging by default if the version is "unstable"Colin Walters2013-11-222-23/+0
| | | | | | | | | | | | | | | | | I'm open to negotiation for this, but basically...gdm is at present second only to the kernel in the sheer amount of spew it emits - when the version is "unstable". But it always will be for Continuous. Nowadays of course, I think Continuous helps act as a testing system for GDM that obviates a lot of the need for lots of debugging info for gdm during "unstable" cycles. I suspect that we will over time add other informational messages at strategic points by default; this patch is not the end of the story. It's a new beginning. https://bugzilla.gnome.org/show_bug.cgi?id=715037
* Add an option to use GDM as a standalone XDMCP serverLaurent Bigonville2013-11-111-0/+1
| | | | | | | | | This patch add an option (xdmcp/ShowLocalGreeter) to disable the local X console and turn GDM into a simple XDMCP server Thanks to Patrick Monnerat and Josselin Mouette for the patch https://bugzilla.gnome.org/show_bug.cgi?id=567522
* drop authdirRay Strode2013-08-281-1/+0
| | | | | | | | | | | | <Black_Prince> halfline: what's the point of authdir in gdm? (/var/gdm) ? <Black_Prince> it doesn't appear to be used anywere <halfline> no point <Black_Prince> there are some references in daemon/main.c, but nothing ever gets stored in there <Black_Prince> instead, xauthdir is used https://bugzilla.gnome.org/show_bug.cgi?id=706974
* Fix checks for logindMartin Pitt2013-03-291-0/+3
| | | | | | | | | | | | It is possible to build systemd without logind or run logind without systemd init, in both cases testing for systemd init is wrong. Check for /run/systemd/seats in the parts which talk to logind instead, as recommended by systemd upstream. For details, see: <https://mail.gnome.org/archives/desktop-devel-list/2013-March/msg00092.html> https://bugzilla.gnome.org/show_bug.cgi?id=696266
* log: When using systemd, just log to stdout/stderrColin Walters2013-02-043-112/+74
| | | | | | | | | | | | | 1) This avoids duplicated output since we were using LOG_PERROR which writes to both syslog and stderr. 2) syslog() is basically deprecated in the systemd world, so let's avoid using it. In this approach, we also output a level prefix to stderr. Some adjustments from Simon McVittie https://bugzilla.gnome.org/show_bug.cgi?id=692308
* log: Log messages of level MESSAGE, INFO tooSimon McVittie2013-02-041-1/+1
| | | | | | | | | Previously, gdm would log messages of levels ERROR, CRITICAL, WARNING, and optionally also DEBUG, to syslog. This left messages of level MESSAGE or INFO not logged, and no way to get them logged. Bug: https://bugzilla.gnome.org/show_bug.cgi?id=692301 Signed-off-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
* Log output to systemd journal if availableColin Walters2013-01-222-0/+28
| | | | | | | | | | | Previously, we put stuff in /var/log/gdm for the session, and then ~/.cache/gdm/session.log for the user. Now let's use explicit sd_journal_stream_fd() calls. Some adjustments from Ray Strode. https://bugzilla.gnome.org/show_bug.cgi?id=676181
* Port to g_unix_signal_add(), drop GdmSignalHandlerColin Walters2013-01-225-746/+1
| | | | | | | | | | | The level of copy/paste going on here before is rather astonishing. For example, in some cases, I dropped spurious handling of SIGHUP, when the code didn't have any settings to reread. Anyways, the code is now clearer, and we get to drop all the bits of gdm-signal-handler.[ch] for the integrated GLib handling. https://bugzilla.gnome.org/show_bug.cgi?id=676181
* gdm-common: Drop some dead codeColin Walters2012-12-034-78/+6
| | | | | | | | | | | -unknown-origin.[ch] according to ChangeLog was about copyright status...but the file clearly has a copyright header now, so presumably this is just long dead history. Nothing was using gdm_safe_fopen_w(). After deleting that, we're left with VE_IGNORE_EINTR(), which is now just in gdm-common.h https://bugzilla.gnome.org/show_bug.cgi?id=689569
* gdm-md5: DeleteColin Walters2012-12-033-509/+0
| | | | | | Nothing was using it... https://bugzilla.gnome.org/show_bug.cgi?id=689569
* Drop calls to g_type_init()/g_thread_init()Colin Walters2012-12-032-4/+0
| | | | | | Both are deprecated and no longer necessary. https://bugzilla.gnome.org/show_bug.cgi?id=689569
* Trivial: Update FSF Address.Dominique Leuenberger2012-09-0632-41/+41
| | | | Fix bug 683383.
* daemon: Add initial setup integrationJasper St. Pierre2012-08-011-0/+1
| | | | | | | | | | | | | | | | | When a system boots for the first time, we want to show a special tool that will allow the user to set up their system the way they want to. This will be triggered by a special file: /var/run/wants-initial-setup The responsibilities of this tool include creating the user's account, so we have to create a special user account to run the tool under. Administrators are given the ability to turn this off in a GDM setting if they want to. https://bugzilla.gnome.org/show_bug.cgi?id=678057
* common: Use GDBus for GdmSettingsGiovanni Campagna2012-07-174-178/+144
| | | | | | | | | | | GdmSettings is a system bus service provided by GDM so that greeters can read custom.conf without parsing the file themselves. This commit changes GdmSettings to use gdbus instead of dbus-glib. https://bugzilla.gnome.org/show_bug.cgi?id=622888
* common: plug small memory leakGiovanni Campagna2012-07-171-0/+1
| | | | | | | | In the event GDM fails to be parse its settings schema file, settings clients will leak the proxy connection. This commit fixes that.
* common: fix child reap codeRay Strode2012-07-131-1/+5
|
* daemon: reload config on SIGHUPBrian Cameron2012-06-251-1/+5
|
* daemon: don't every SIGKILL childrenRay Strode2011-12-222-11/+10
| | | | | | | | | | | There's no situation where it's the right thing to do. The children of the daemon are responsible for themselves. If they don't go away when asked we shouldn't second guess them, we just need to ignore them. This means we may end up with zombie children if those children have bugs, but it's better than prematurely killing them if they're slow.
* daemon: fix gdm_settings_direct_get_stringRay Strode2011-07-131-1/+1
| | | | | | | It was failing when pulling from defaults before. This fixes XDMCP for people who don't manually set the string options.
* common: don't tank on criticalsRay Strode2011-06-282-10/+0
| | | | | | | | | | | | | | Tiny (or not so tiny) bugs in components below GDM in the stack can lead to critical warnings. In development releases, GDM by default will crash when encountering a critical warning. Losing the login screen is a big deal. We shouldn't automatically subject our users to "can't log in" in order to highlight bugs in development releases. This commit removes fatal criticals by default.
* common: drop gdm-marshal.listRay Strode2011-06-131-1/+0
| | | | Forgot to prune it in previous commit.
* common: drop custom marshaller gooRay Strode2011-06-135-29/+2
| | | | | | We live in a modern society where phones look like something from Inspector Gadget and signal marshalling is no longer something to waste goo credits on.
* greeter: Add a login extension mechanism to greeterRay Strode2011-06-131-0/+1
| | | | | | | | | | | | | | This allows extensions to drive which PAM conversations get run and potentially augment the login window UI. This commit adds one builtin extension that does the traditional unified authentication thing, and a plugin for password-only based authentication. By default we use the builtin extension, but enable the plugin with --enable-split-authentication Subsequent commits will add support for fingerprint and smartcard plugins.
* daemon: kill stuck processes if they don't die on termRay Strode2011-05-192-3/+47
| | | | | | | Some PAM modules are really slow to shut down. We need to handle them being slow to shut down better, (by not blocking login on them shutting down etc), but in the mean time force them to die immediately.
* Strip ::ffff: in front of IPv4 addressesJosselin Mouette2010-12-171-2/+10
| | | | This fixes XDMCP using IPv4 on IPv6-enabled networks.
* Put the schemas in /usrJosselin Mouette2010-09-151-1/+1
| | | | The gdm.schemas file is not configurable. It has nothing to do in /etc.
* Wrap getpw* calls to retry in EINTRWilliam Jon McCann2010-08-172-0/+22
| | | | | | if getpwnam(username) returns NULL, errno needs to be checked for EINTR. This indicates that a signal was received while waiting for the blocking call to return, and getpwnam() should be retried.
* Don't cast sockaddr_storage to sockaddrRay Strode2010-06-171-1/+1
| | | | Apparently it causes aliasing warnings on some machines.
* Fix buildWilliam Jon McCann2010-06-161-9/+16
| | | | Fix breakage from f8da7fc999ba46431ffbb5b562f9b35c88a0fd2d
* Allow non-source-dir buildTheppitak Karoonboonyanan2010-06-161-2/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=570174
* Fix gdm_address_debugRay Strode2010-06-161-20/+7
| | | | | | It was always printing NULL before. Spotted by mariodebian <mariodebian@gmail.com>
* If the user's .dmrc file specifies the "custom" session, then accept itBrian Cameron2010-06-091-0/+2
| | | | | | even if there is no corresponding desktop file since it has special meaning to the /etc/gdm/Xsession script for launching $HOME/.xsession. Fixes bug 619129.
* Fix bug #591937 so code compiles on FreeBSD.Brian Cameron2010-05-241-2/+2
|