summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* worker: reuse user's VT if availablewip/systemd-activationRay Strode2014-04-291-3/+109
| | | | | | | | | | | | When a user logs out, their session goes into the closing state until all processes from the session exit. The X server won't exit while the session is in the closing state, but will instead reset itself. When the user logs in again, we need to select the same VT so the already running X server can properly manage the new session. This commit checks for the above scenario and tries to account for it.
* worker: hackity hack hack hackRay Strode2014-04-221-0/+14
|
* wip: session: start X for user on another VTRay Strode2014-04-221-3/+9
| | | | This will need to get hooked up to a config option.
* worker: fail if unable to open VT's terminalRay Strode2014-04-221-0/+6
| | | | This commit just adds better error handling.
* pam: drop postlogin from fedora pam configRay Strode2014-04-157-13/+0
| | | | | | | It's just used in practice to inflict ugly "Last Login" messages on the GDM screen https://bugzilla.gnome.org/show_bug.cgi?id=728281
* configure: bump to 3.12.13.12.1Ray Strode2014-04-151-1/+1
|
* NEWS: update for releaseRay Strode2014-04-151-0/+13
|
* configure: expand PID fileLuca Bruno2014-04-151-1/+1
| | | | | | This prevents the literal "${prefix}" from getting written. https://bugzilla.gnome.org/show_bug.cgi?id=725761
* Updated Spanish translationDaniel Mustieles2014-04-151-45/+41
|
* session: make sure session display mode is set even if session isn't ↵Ray Strode2014-04-141-6/+6
| | | | | | | | | | | | | explicitly picked Right now we we only set the display mode when a user picks a session from the session list. That means the wrong display mode will get used if wayland is saved from a previous log in. This commit makes sure the display mode gets set as soon as the user credentials are established, since at the point log in is imminent. https://bugzilla.gnome.org/show_bug.cgi?id=728204
* session: drop remnants of WINDOWPATHRay Strode2014-04-141-6/+0
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=728204
* session: don't set DISPLAY for sessions that bring their ownRay Strode2014-04-141-7/+11
| | | | | | | We only want to set DISPLAY if the user session is sharing the display with the login screen. https://bugzilla.gnome.org/show_bug.cgi?id=728204
* manager: be more accepting of callers with uids different from their sessionRay Strode2014-04-101-1/+1
| | | | | | | | | | | | | | If a user runs su in their session, that switched user will now be running in a session that doesn't belong to it. GDM won't allow a user access to the worker process associated with the session in this case. Instead, it will try to create a temporary just-in-time reauthentication channel so reauthentication can happen without having the user talking to another user's worker. Unfortunately, a logic error in the code means, the user won't access to its own just-in-time channel. This commit fixes that. https://bugzilla.gnome.org/show_bug.cgi?id=727982
* manager: don't leak session objects when client is rejectedRay Strode2014-04-101-0/+45
| | | | | | | | | | if a client creates a transient reauthentication session and then we reject the client when it tries to connect to it, then we need to clean up the associated session object. This commit does that. https://bugzilla.gnome.org/show_bug.cgi?id=727982
* session: introduce new client-rejected signalRay Strode2014-04-102-0/+25
| | | | | | | | | If a client gets rejected because it's not allowed to connect to a particular session, we really need to inform the owner of the session object so it can do any clean up it needs to do, if necessary. https://bugzilla.gnome.org/show_bug.cgi?id=727982
* worker: get PATH from parent instead of #defineRay Strode2014-04-105-31/+5
| | | | | | | | 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
* Updated Indonesian translationDirgita2014-04-101-173/+148
|
* worker: don't run shell scripts for program sessionsRay Strode2014-04-071-0/+5
| | | | | | | | | | | | GDM uses a worker to manage PAM for user sessions and greeter sessions. For the latter case we shouldn't run the various Pre/Post scripts, but commit Sb48a305e71637181975fc7ec479a71079b6fbc broke that. This commit changes the code to prevent those scripts from getting run again. https://bugzilla.gnome.org/show_bug.cgi?id=727703
* common: remove gdm_string_hex_{de,en}code()Christian Schramm2014-04-076-339/+1
| | | | | | | | | 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
* gdm-session: support XDG_CURRENT_DESKTOPLars Uebernickel2014-04-031-0/+35
| | | | | | Set XDG_CURRENT_DESKTOP when DesktopNames is set in the session file. https://bugzilla.gnome.org/show_bug.cgi?id=727546
* Updated Spanish translationDaniel Mustieles2014-04-021-152/+126
|
* Updated Khmer translationKhoem Sokhem2014-04-021-980/+856
|
* doap: update URLsPiotr Drąg2014-03-301-0/+2
|
* manager: don't require session to be on a seatRay Strode2014-03-271-1/+1
| | | | vnc sessions, for instance, aren't on a seat.
* pam: improve keyring integration on fedoraRay Strode2014-03-271-1/+2
| | | | | | This commit properly hooks in gnome-keyring into the password stack, so password changes are caught at login time, and the keyring is appropriately rekeyed.
* ConsoleKit: a pair of tweaksRyan Lortie2014-03-262-2/+9
| | | | | | | | | | | | | | | | | | It looks like there were a couple of breaks when porting away from ck-connector. The first issue is that consolekit uses some hard-coded rules to decide if a given session is associated with the hard-coded 'Seat1' or not. One of these rules is the "x11-display-device" property being set. We were setting the "display-device" property instead, which is not for graphical sessions. This was causing a new seat to be dynamically created each time gdm started which was causing us to send ActivateSession requests to the wrong seat. The second issue is that ActivateSession will "fail" with "Session already active" errors. Ignore those. https://bugzilla.gnome.org/show_bug.cgi?id=727072
* configure: bump to 3.12.03.12.0Ray Strode2014-03-251-1/+1
|
* NEWS: update for releaseRay Strode2014-03-251-0/+7
|
* manager: fix timed loginRay Strode2014-03-241-3/+2
| | | | | | | | There was some confusion over multiple competing enabled variables. This commit eliminates the confusion. https://bugzilla.gnome.org/show_bug.cgi?id=680348
* Updated Japanese translationJiro Matsuzawa2014-03-231-137/+114
|
* manger: rename touch_marker_file to touch_ran_once_marker_fileRay Strode2014-03-211-3/+3
| | | | | | | Rename this function to be more descriptive after some discussion with Matthias. https://bugzilla.gnome.org/show_bug.cgi?id=726813
* manager: wait until autologin is initiated before marking it soRay Strode2014-03-211-1/+2
| | | | | | | | | | | | When the slave was merged to the main daemon process, the code for doing autologin accounting was accidentally moved earlier in the autologin process. This caused the greeter to create a login screen and do autologin at the same time. This commit defers the accounting until after the operation is fully initiated. https://bugzilla.gnome.org/show_bug.cgi?id=726813
* configure: bump to 3.11.92.13.11.92.1Ray Strode2014-03-191-1/+1
|
* NEWS: update for releaseRay Strode2014-03-191-0/+5
|
* session worker: fix one more _MODE_NEW_VT caseRyan Lortie2014-03-191-0/+2
| | | | | | | The previous patch missed one case of GDM_SESSION_DISPLAY_MODE_NEW_VT, resulting in an undefined reference to jump_to_vt(). https://bugzilla.gnome.org/show_bug.cgi?id=726380
* configure: bump to 3.11.923.11.92Ray Strode2014-03-191-1/+1
|
* NEWS: update for releaseRay Strode2014-03-191-0/+10
|
* build-goo: drop vestigul gdm-slave.xmlRay Strode2014-03-191-2/+0
| | | | fixes distcheck
* wayland: make optional for FreeBSDRay Strode2014-03-194-0/+43
| | | | | | | FreeBSD build broke, so this commit makes wayland a configure time argument https://bugzilla.gnome.org/show_bug.cgi?id=726380
* manager: get rid of dubious weak referencesRay Strode2014-03-191-40/+28
| | | | | | | | | | The previous commit uses weak references on weak references to manage transient session lifecycles without doing proper accounting. That was a bad idea. This commit uses a hash table to track things more explicitly. https://bugzilla.gnome.org/show_bug.cgi?id=726283
* manager: support just-in-time reauthentication for non-GDM sessionsRay Strode2014-03-191-17/+188
| | | | | | | | | | | | | | | Right now, gnome-shell can't unlock screens running on an X server that isn't managed by GDM (say Xvnc or startx). This is because GDM handles the backend processing for unlocking, and it handles that backend processing from the worker associated with the session. If there is no worker associated with the session (as is the case with Xvnc and startx), then there's no process to handle reauthentication. This commit notices that case, and creates a transient worker on the fly just to perform one off authentication for unlock of non-GDM managed sessions. https://bugzilla.gnome.org/show_bug.cgi?id=726283
* manager: collect more details about bus senderRay Strode2014-03-191-19/+211
| | | | | | | | | | | | In the future we're going to need to know more details about the sender to know how to move forward (such as seat id, session id, if it's remote, etc) in order to create a transient session soley for reauthentication. To prepare for that future, this commit adds the necessary functionality to get_display_and_details_for_bus_sender. https://bugzilla.gnome.org/show_bug.cgi?id=726283
* worker: support authentication without X11 displayRay Strode2014-03-191-25/+28
| | | | | | | | | | | At the moment we unconditionally set PAM_XDISPLAY and PAM_XAUTHDATA based on values passed to the worker. In a future commit, those values are going to become stubs, so as a first step, this commit makes PAM_XDISPLAY and PAM_XAUTHDATA optional. https://bugzilla.gnome.org/show_bug.cgi?id=726283
* manager: explicitly disallow login screen from opening reauth channelRay Strode2014-03-191-3/+113
| | | | | | | | | | | | | It doesn't make sense for it to do, and right now the shell does it up front, waits for the failure, and then does the "right" thing (opens a new auth session) after. This commit makes the failure explicit, so we can subsequently make other cases where a reauth channel is requested work even if there is no session to channel to by implicitly creating a transient one just in time. That will come later. https://bugzilla.gnome.org/show_bug.cgi?id=726283
* session: Wayland sessions are allocated on a new VTJasper St. Pierre2014-03-181-0/+7
| | | | | | | ... at least for now, until we land logind integration in mutter and turn on the Xorg logind-aware codepath in gdm. https://bugzilla.gnome.org/show_bug.cgi?id=726380
* session: Wayland sessions bypass XsessionJasper St. Pierre2014-03-181-0/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=726380
* session: Add a simple and naive way to detect Wayland sessionsJasper St. Pierre2014-03-181-5/+40
| | | | | | Simply look for "wayland-sessions" as a path element. https://bugzilla.gnome.org/show_bug.cgi?id=726380
* Add wayland-sessionsJasper St. Pierre2014-03-182-0/+2
| | | | | | Add the wayland-sessions directory, as shipped by gdm. https://bugzilla.gnome.org/show_bug.cgi?id=726380
* session-worker: Implement support for the different display server modesJasper St. Pierre2014-03-184-4/+181
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=726380
* manager: Don't reuse the same X server for alternate display modesJasper St. Pierre2014-03-181-1/+19
| | | | | | | | | | | | | | | GNOME is going to need a mode of operation in GDM where the session manages its own display server. In this mode of operation, we won't morph the login screen into a user session by reusing the same X server. Instead, we reset the login screen to prepare it for a future login, and then let GNOME or the session worker activate its own session. This commit adds the prerequisite work needed to gdm-manager.c, but only as dead code, since the way to "turn it on" is stubbed out to always reuse the existing server. https://bugzilla.gnome.org/show_bug.cgi?id=726380