summaryrefslogtreecommitdiff
path: root/daemon/gdm-simple-slave.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix cancel buttonRay Strode2010-08-161-1/+1
| | | | | | After commit 378ed9c6423a801f552fdf8ff774f6b2b6b09897 it stopped working. This commit fixes it by making sure the greeter is sent a "reset" request after the cancel operation is completed.
* Add ability to retry login on failuresWilliam Jon McCann2010-06-211-1/+31
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=622326
* Various memory leak fixesWang Xin2010-06-171-4/+12
| | | | | https://bugzilla.gnome.org/show_bug.cgi?id=620430 With help from Pablo Castellano
* Don't wait a mandatory 2 seconds when resetting greeterWilliam Jon McCann2010-06-101-1/+1
|
* Reapply a better fix for bug #594818 that addresses the problem with theBrian Cameron2010-05-191-0/+5
| | | | previous commit.
* String fixes. Patch by Philip Withnall. Fixes bug #609178.Brian Cameron2010-05-031-1/+1
|
* Ensure Init script is called before starting autologin (fixes bug #614488).Brian Cameron2010-04-211-0/+2
|
* Don't tear down greeter until pam_open_session finishesRay Strode2010-02-081-1/+30
| | | | | | Some PAM modules ask questions at that late stage of the game, and so we need a greeter to forward the questions on to the user.
* Rename session "Open" method to "StartConversation"Ray Strode2010-02-081-7/+7
| | | | | | | Open is very general. If we rename it, then we can use the term "open" for the state after PAM finishes checking identity, authorizing, and giving out credentials, before a session is started.
* Only run PostLogin script post loginRay Strode2010-01-131-1/+4
| | | | | | | | We don't want to run it when stopping the greeter for other reasons. Spotted by Halton. See https://bugzilla.gnome.org/show_bug.cgi?id=602403#c6
* Run PostLogin script as normal userBrian Cameron2010-01-131-1/+4
| | | | | | | | | | | | | | | | | 1) In daemon/gdm-slave.c it now sets PATH to GDM_SESSION_DEFAULT_PATH so that the scripts have the system normal PATH when run. This is much better than hardcoding the PATH in the scripts themselves, especially since the Init, PreSession, PostSession, and PostLogin scripts are designed to run per-display and it makes things just complicated if users need to add the common system path to any per-display script they might want to use. 2) The Init and PreSession scripts are fixed to set the PATH to "@X_PATH:$PATH" and not add "/bin:/usr/bin" since this isn't neeed since PATH is already set to GDM_SESSION_DEFAULT_PATH before running the script. See https://bugzilla.gnome.org/show_bug.cgi?id=602403
* Fix X-GDM-BypassXSession to X-GDM-BypassXsession.Brian Cameron2009-11-241-2/+3
|
* Allow session scripts to bypass Xsession launcherNiall Power2009-11-181-1/+5
| | | | | | | | | | | It is occasionally useful to launch sessions that aren't run through Xsession. This is good, for starting a bare xterm session for instance. We now allow a session to specify that it shouldn't be run through the Xsession script with the key file entry: X-GDM-BypassXsession=true
* Forward accreditation failed messages to greeterVincent Untz2009-07-171-1/+7
| | | | | | Before the details were getting dropped. See http://bugzilla.gnome.org/show_bug.cgi?id=569741
* Don't wait 1/2sec before connecting to displayRay Strode2009-07-161-1/+1
| | | | | | It told us it's ready so let's not waste time. See bug http://bugzilla.gnome.org/show_bug.cgi?id=570615
* Propagate PAM error messages up to userDavid Liang2009-07-151-3/+3
| | | | | | Previously, some messages were getting dropped. http://bugzilla.gnome.org/show_bug.cgi?id=574338
* Enable XDMCP configuration so it works. Previously only xdmcp/Enable wasBrian Cameron2009-02-171-1/+9
| | | | | | | | | | | | | | | | | 2009-02-17 Brian Cameron <brian.cameron@sun.com> * common/gdm-settings-direct.[ch], common/gdm-settings-keys.h, daemon/gdm-simple-slave.c, daemon/gdm-xdmcp-chooser-slave.c, daemon/gdm-xdmcp-display-factory.c, data/gdm.schemas.in.in, docs/C/gdm.xml: Enable XDMCP configuration so it works. Previously only xdmcp/Enable was being used in the code. Also add support for chooser/Multicast and chooser/MulticastAddr configuration options. Now set the default values of MAX_DISPLAY_PER_HOST to 1 and MAX_WAIT to 30 as specified in the docs. Add a gdm_settings_direct_get_uint function to get unsigned integer configuration values more cleanly without the need to cast. Fixes bug #569876. svn path=/trunk/; revision=6715
* Add support for a real automatic login. Make automatic and timed loginWilliam Jon McCann2008-10-241-71/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-10-23 William Jon McCann <jmccann@redhat.com> * daemon/gdm-display.c (gdm_display_real_get_timed_login_details), (gdm_display_get_timed_login_details), (gdm_display_real_unmanage), (gdm_display_class_init): * daemon/gdm-display.h: * daemon/gdm-display.xml: * daemon/gdm-simple-slave.c (greeter_reset_timeout), (on_session_setup_failed), (on_session_authentication_failed), (on_session_authorized), (on_session_authorization_failed), (stop_greeter), (start_session_timeout), (on_session_accredited), (on_session_accreditation_failed), (on_session_info), (on_session_opened), (on_session_selected_user_changed), (on_default_language_name_changed), (on_default_layout_name_changed), (on_default_session_name_changed), (start_greeter), (idle_connect_to_display), (gdm_simple_slave_stop): * daemon/gdm-slave.c (gdm_slave_get_timed_login_details): * daemon/gdm-slave.h: * daemon/gdm-static-display.c (gdm_static_display_unmanage), (gdm_static_display_get_timed_login_details), (gdm_static_display_class_init), (gdm_static_display_init): * daemon/gdm-transient-display.c (gdm_transient_display_get_timed_login_details), (gdm_transient_display_class_init): * daemon/gdm-xdmcp-display.c (gdm_xdmcp_display_get_timed_login_details), (gdm_xdmcp_display_class_init): Add support for a real automatic login. Make automatic and timed login only work the first time a display is managed. Also prevent automatic and timed login from working on transient and xdmcp displays. svn path=/trunk/; revision=6582
* Make old AutomaticLogin key initiate a timed login of 0 seconds forRay Strode2008-09-031-1/+15
| | | | | | | | | | | | | 2008-09-03 Ray Strode <rstrode@redhat.com> * common/gdm-settings-keys.h: * daemon/gdm-simple-slave.c (get_timed_login_details): * data/gdm.schemas.in.in: Make old AutomaticLogin key initiate a timed login of 0 seconds for backward compatibility. svn path=/trunk/; revision=6458
* Allow the gdm greeter username to be configured at build time. Patch fromWilliam Jon McCann2008-08-201-2/+2
| | | | | | | | | | | | | | | | | | | | | 2008-08-19 William Jon McCann <jmccann@redhat.com> * configure.ac: * daemon/gdm-chooser-server.c (gdm_chooser_server_class_init): * daemon/gdm-display.c (gdm_display_real_create_authority): * daemon/gdm-factory-slave.c (run_greeter): * daemon/gdm-greeter-server.c (gdm_greeter_server_class_init): * daemon/gdm-simple-slave.c (on_session_accredited), (run_greeter): * daemon/gdm-welcome-session.c (gdm_welcome_session_class_init): * daemon/gdm-xdmcp-chooser-slave.c (run_chooser): * data/Makefile.am: * gui/simple-greeter/gdm-user-manager.c: Allow the gdm greeter username to be configured at build time. Patch from Patryk Zawadzki <patrys@pld-linux.org> Fixes #504565 svn path=/trunk/; revision=6395
* By popular demand, add DisallowTCP back.Ray Strode2008-06-251-0/+10
| | | | | | | | | | | | | | | 2008-06-25 Ray Strode <rstrode@redhat.com> By popular demand, add DisallowTCP back. * common/gdm-settings-keys.h: * data/gdm.schemas.in.in: * data/gdm.conf-custom.in Add new setting security/DisallowTCP * daemon/gdm-simple-slave.c (gdm_simple_slave_run): If DisallowTCP is false, then don't pass -nolisten tcp to X svn path=/trunk/; revision=6275
* Now support PostLogin, PreSession, and PostSession hooks. Approval by RayBrian Cameron2008-06-031-1/+16
| | | | | | | | | | | 2008-06-03 Brian Cameron <brian.cameron@sun.com> * daemon/gdm-factory-slave.c, daemon/gdm-simple-slave.c, daemon/gdm-xdmcp-chooser-slave: Now support PostLogin, PreSession, and PostSession hooks. Approval by Ray Strode. Fixes bug #536371. svn path=/trunk/; revision=6255
* Add a keyboard chooserMatthias Clasen2008-05-051-0/+27
| | | | svn path=/trunk/; revision=6212
* Close out sessions after each failure to ensure no information leakage.William Jon McCann2008-04-291-22/+28
| | | | | | | | | | | | | | | | 2008-04-29 William Jon McCann <jmccann@redhat.com> * daemon/gdm-simple-slave.c: (destroy_session), (reset_session), (greeter_reset_timeout), (on_session_setup_failed), (on_session_authentication_failed), (on_session_authorization_failed), (start_session_timeout), (on_session_accreditation_failed), (on_greeter_cancel): Close out sessions after each failure to ensure no information leakage. Make sure to close/reopen sessions upon reset. svn path=/trunk/; revision=6183
* Revert svn change 6041 from 2008-03-18. We don't stop the slave afterWilliam Jon McCann2008-04-291-8/+14
| | | | | | | | | | | | | | | | 2008-04-29 William Jon McCann <jmccann@redhat.com> * daemon/gdm-simple-slave.c (start_session_timeout), (on_session_accreditation_failed): Revert svn change 6041 from 2008-03-18. We don't stop the slave after migrating because when Xorg exits it switches to the VT it was started from. That interferes with fast user switching. We'll want to start using a factory greeter soon. svn path=/trunk/; revision=6181
* reset "waiting_to_start_session" state variable to FALSE once we'veRay Strode2008-03-191-0/+2
| | | | | | | | | | | 2008-03-19 Ray Strode <rstrode@redhat.com> * daemon/gdm-simple-slave.c (gdm_simple_slave_accredit_when_ready): reset "waiting_to_start_session" state variable to FALSE once we've initiated a session start operation svn path=/trunk/; revision=6046
* Make sure to kill the simple slave after switching to an existing session.William Jon McCann2008-03-181-7/+11
| | | | | | | | | | | | | 2008-03-18 William Jon McCann <jmccann@redhat.com> * daemon/gdm-simple-slave.c: (gdm_simple_slave_accredit_when_ready), (start_session_timeout), (on_session_accreditation_failed): Make sure to kill the simple slave after switching to an existing session. svn path=/trunk/; revision=6041
* Close the session immediately after migration so there are no races.William Jon McCann2008-03-181-0/+13
| | | | | | | | | | | | | 2008-03-17 William Jon McCann <jmccann@redhat.com> * daemon/gdm-session-worker.c: (on_start_program): * daemon/gdm-simple-slave.c: (start_session_timeout), (on_session_accreditation_failed), (on_greeter_cancel): Close the session immediately after migration so there are no races. svn path=/trunk/; revision=6039
* Don't pretend to support refreshing creds.William Jon McCann2008-03-171-3/+2
| | | | | | | | | | | 2008-03-17 William Jon McCann <jmccann@redhat.com> * daemon/gdm-simple-slave.c: (on_session_started), (gdm_simple_slave_accredit_when_ready): Don't pretend to support refreshing creds. svn path=/trunk/; revision=6028
* Refactor things a little. Rename renew to refresh. Add a pid to theWilliam Jon McCann2008-03-141-6/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-03-14 William Jon McCann <jmccann@redhat.com> * daemon/gdm-manager.c: (bus_name_owner_changed): * daemon/gdm-product-slave.c: (send_dbus_string_method), (send_dbus_void_method), (send_dbus_int_method), (relay_session_started), (on_session_started), (on_relay_refresh_credentials), (relay_dbus_handle_message): * daemon/gdm-session-direct.c: (gdm_session_direct_handle_session_started), (do_introspect), (gdm_session_direct_accredit): * daemon/gdm-session-private.h: * daemon/gdm-session-relay.c: (gdm_session_relay_accredit), (handle_secret_info_query), (handle_info), (handle_problem), (handle_session_started), (do_introspect), (gdm_session_iface_init): * daemon/gdm-session-worker.c: (gdm_session_worker_update_environment_from_passwd_info), (_change_user), (_lookup_passwd_info), (gdm_session_worker_accredit_user), (on_refresh_credentials), (worker_dbus_handle_message): * daemon/gdm-session.c: (gdm_session_class_init), (_gdm_session_session_started): * daemon/gdm-session.h: * daemon/gdm-simple-slave.c: (on_session_started), (gdm_simple_slave_accredit_when_ready), (on_greeter_connected): * daemon/gdm-slave.c: (gdm_slave_get_primary_session_id_for_user), (gdm_slave_switch_to_user_session): * daemon/gdm-slave.h: Refactor things a little. Rename renew to refresh. Add a pid to the session started signal. svn path=/trunk/; revision=6018
* When the user has successfully been verified, inform the greeter, so thatRay Strode2008-03-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-03-09 Ray Strode <rstrode@redhat.com> * daemon/gdm-simple-slave.c: (on_session_authorized), * daemon/gdm-greeter-server.[ch]: (gdm_greeter_server_user_authorized), (do_introspect): When the user has successfully been verified, inform the greeter, so that it can make a judgement about whether the user's session should be opened. * gui/simple-greeter/gdm-greeter-client.c: (on_user_authorized), (client_dbus_handle_message), (gdm_greeter_client_class_init): * gui/simple-greeter/gdm-greeter-session.c (on_user_authorized), (gdm_greeter_session_init): forward "user-authorized" signal from slave to login window * gui/simple-greeter/gdm-greeter-login-window.c: (gdm_greeter_login_window_user_authorized): When the user is verified start the session as soon as the user has had an opporunity to interact with language and session choosers svn path=/trunk/; revision=5978
* Rename "Timed Login" request on the slave to "Auto Login" since that'sRay Strode2008-03-091-24/+6
| | | | | | | | | | | | | | | | | | | | | | 2008-03-09 Ray Strode <rstrode@redhat.com> * daemon/gdm-simple-slave.c (on_greeter_auto_login): * daemon/gdm-greeter-server.[ch]: (handle_begin_auto_login), (greeter_handle_child_message), (gdm_greeter_server_class_init): * gui/gdm-greeter-client.[ch]: (gdm_greeter_client_call_begin_auto_login): * gui/gdm-greeter-session.[ch]: (on_begin_auto_login): * gui/gdm-greeter-login-window.[ch]: (timed_login_timer), (on_login_button_clicked_answer_query), (on_user_chosen), (gdm_greeter_login_window_class_init): Rename "Timed Login" request on the slave to "Auto Login" since that's what it is. All the delay logic happens in the greeter and the slave just logins in immediately after getting the request svn path=/trunk/; revision=5973
* Read timed login configuration from the daemon, and pass along rather thanRay Strode2008-03-091-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-03-09 Ray Strode <rstrode@redhat.com> Read timed login configuration from the daemon, and pass along rather than reading it from the daemon and greeter. * daemon/gdm-simple-slave.c: (get_timed_login_details): (on_session_opened): * daemon/gdm-greeter-server.[ch]: (gdm_server_request_timed_login): Read timed login configuration and forward to greeter * gui/simple-greeter/gdm-greeter-client.[ch]: (on_timed_login_requested), (client_dbus_handle_message), (gdm_greeter_client_class_init): * gui/simple-greeter/gdm-greeter-session.[ch]: (on_timed_login_requested), (gdm_greeter_session_init): Forward timed login requests from slave to login window * gui/simple-greeter/gdm-greeter-login-window.[ch]: (load_theme): don't show "automatic login" entry here anymore (gdm_greeter_login_window_request_timed_login): show "automatic login" entry in face browser, start timer (read_configuration): drop function (gdm_greeter_login_window_constructor): don't call read_configuration anymore (gdm_greeter_login_window_init): don't initialized timed_login_delay here anymore since it's sent up from slave now svn path=/trunk/; revision=5971
* After successfully verifying the user, wait until the greeter gives the goRay Strode2008-03-091-5/+47
| | | | | | | | | | | | | | | | | | | | | | | 2008-03-09 Ray Strode <rstrode@redhat.com> * daemon/gdm-simple-slave.c: (GdmSimpleSlavePrivate), (gdm_simple_slave_accredit_when_ready), (on_start_session_when_ready), (on_start_session_later), (setup_server): * daemon/gdm-greeter-server.[ch]: (handle_start_session_when_ready): (greeter_handle_child_message): (do_introspect): (gdm_greeter_server_class_init): * gui/simple-greeter/gdm-greeter-client.[ch]: (gdm_greeter_client_call_start_session_when_ready): After successfully verifying the user, wait until the greeter gives the go ahead before starting the user's session svn path=/trunk/; revision=5968
* Put the SessionDirect on the bus. Doesn't do anything yet.William Jon McCann2008-03-061-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | 2008-03-05 William Jon McCann <jmccann@redhat.com> * daemon/Makefile.am: * daemon/gdm-product-slave.c: (create_new_session): * daemon/gdm-session-direct.c: (gdm_session_direct_init), (_gdm_session_direct_set_display_id), (gdm_session_direct_set_property), (gdm_session_direct_get_property), (gdm_session_direct_dispose), (gdm_session_direct_finalize), (register_session), (gdm_session_direct_constructor), (gdm_session_direct_class_init), (gdm_session_direct_new), (gdm_session_direct_restart), (gdm_session_direct_stop), (gdm_session_direct_detach): * daemon/gdm-session-direct.h: * daemon/gdm-session-direct.xml: * daemon/gdm-simple-slave.c: (create_new_session): * daemon/gdm-slave.c: (gdm_slave_constructor): * daemon/test-session.c: (main): * data/gdm.conf: Put the SessionDirect on the bus. Doesn't do anything yet. svn path=/trunk/; revision=5938
* Change "SavedLanguageNameRead"/"SavedSessionNameRead" toRay Strode2008-02-251-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-25 Ray Strode <rstrode@redhat.com> * daemon/gdm-session-private.h: * daemon/gdm-session.h: * daemon/gdm-session.c: (gdm_session_class_init), (_gdm_session_default_language_name_changed), (_gdm_session_default_session_name_changed), (_gdm_session_default_session_name_changed), * daemon/gdm-session-direct.c: (get_default_language_name), (get_default_session_name), (gdm_session_direct_defaults_changed), (gdm_session_direct_select_user), (gdm_session_direct_handle_username_changed), (gdm_session_direct_handle_saved_language), (gdm_session_direct_setup), (gdm_session_direct_setup_for_user), (get_language_name), (get_session_name): * daemon/gdm-simple-slave: (on_default_language_name_changed): (on_default_session_name_changed): (create_new_session): * daemon/gdm-greeter-server.[ch]: (gdm_greeter_server_default_language_name_changed), (gdm_greeter_server_default_session_name_changed), (do_introspect): Change "SavedLanguageNameRead"/"SavedSessionNameRead" to "DefaultLanguageNameChanged"/"DefaultSessionNameChanged" and call it with system fallbacks whenever a new user is authenticating before ~/.dmrc is read. svn path=/trunk/; revision=5847
* Run /etc/gdm/Init/Default, not /etc/gdm/Init. We should probably run theRay Strode2008-02-201-1/+1
| | | | | | | | | | | | | | | | 2008-02-20 Ray Strode <rstrode@redhat.com> * daemon/gdm-factory-slave.c (run_greeter): * daemon/gdm-simple-slave.c (run_greeter): * daemon/gdm-xdmcp-chooser-slave.c: (run_chooser): Run /etc/gdm/Init/Default, not /etc/gdm/Init. We should probably run the per-display scripts, too. svn path=/trunk/; revision=5828
* Add initial support for timed login.William Jon McCann2008-02-201-1/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-20 William Jon McCann <jmccann@redhat.com> * common/gdm-settings-client.c: (gdm_settings_client_get_string): * common/gdm-settings-keys.h: * daemon/gdm-factory-slave.c: (on_greeter_begin_verification), (on_greeter_begin_verification_for_user): * daemon/gdm-greeter-server.c: (handle_begin_timed_login), (greeter_handle_child_message), (do_introspect), (gdm_greeter_server_class_init): * daemon/gdm-greeter-server.h: * daemon/gdm-product-slave.c: (on_relay_setup), (on_relay_setup_for_user): * daemon/gdm-session-direct.c: (gdm_session_direct_init), (send_setup), (send_setup_for_user), (gdm_session_direct_setup), (gdm_session_direct_setup_for_user), (gdm_session_direct_set_property), (gdm_session_direct_get_property), (gdm_session_direct_dispose), (gdm_session_direct_class_init): * daemon/gdm-session-relay.c: (send_dbus_string_string_signal), (gdm_session_relay_setup), (gdm_session_relay_setup_for_user), (do_introspect): * daemon/gdm-session.c: (gdm_session_setup), (gdm_session_setup_for_user): * daemon/gdm-session.h: * daemon/gdm-simple-slave.c: (on_greeter_begin_verification), (on_greeter_begin_timed_login), (on_greeter_begin_verification_for_user), (run_greeter): * daemon/simple-slave-main.c: (main): * daemon/test-session.c: (on_open): * gui/simple-greeter/gdm-greeter-client.c: (emit_string_signal_for_message), (gdm_greeter_client_call_begin_timed_login): * gui/simple-greeter/gdm-greeter-client.h: * gui/simple-greeter/gdm-greeter-login-window.c: (remove_timed_login_timeout), (timed_login_timer), (restart_timed_login_timeout), (on_login_button_clicked_answer_query), (on_login_button_clicked_timed_login), (set_log_in_button_mode), (switch_mode), (do_cancel), (reset_dialog), (gdm_greeter_login_window_info_query), (gdm_greeter_login_window_secret_info_query), (on_user_chosen), (load_theme), (read_configuration), (gdm_greeter_login_window_constructor), (gdm_greeter_login_window_class_init), (gdm_greeter_login_window_init): * gui/simple-greeter/gdm-greeter-login-window.h: * gui/simple-greeter/gdm-greeter-session.c: (on_begin_timed_login), (toggle_login_window): * gui/simple-greeter/gdm-user-chooser-dialog.c: (gdm_user_chooser_dialog_set_show_other_user), (gdm_user_chooser_dialog_set_show_guest_user), (gdm_user_chooser_dialog_set_show_auto_user), (gdm_user_chooser_dialog_init): * gui/simple-greeter/gdm-user-chooser-dialog.h: * gui/simple-greeter/gdm-user-chooser-widget.c: (add_user_other), (add_user_guest), (add_user_auto), (remove_user_other), (remove_user_guest), (remove_user_auto), (gdm_user_chooser_widget_set_show_other_user), (gdm_user_chooser_widget_set_show_guest_user), (gdm_user_chooser_widget_set_show_auto_user), (gdm_user_chooser_widget_constructor), (gdm_user_chooser_widget_init): * gui/simple-greeter/gdm-user-chooser-widget.h: * gui/simple-greeter/greeter-main.c: (main): * gui/simple-greeter/test-greeter-login-window.c: (main): * gui/simple-greeter/test-user-chooser.c: (main): Add initial support for timed login. svn path=/trunk/; revision=5820
* Fix a bunch of compiler warnings and remove unused code. Patch from:William Jon McCann2008-02-191-17/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-19 William Jon McCann <jmccann@redhat.com> * common/gdm-settings-client.c: (gdm_settings_client_get_locale_string), (gdm_settings_client_init): * common/gdm-settings-desktop-backend.c: (save_settings): * common/gdm-settings-direct.c: (gdm_settings_direct_init): * common/test-log.c: (test_log): * common/test-settings-client.c: (test_settings_client): * daemon/gdm-chooser-server.c: (gdm_chooser_server_constructor): * daemon/gdm-chooser-session.c: (gdm_chooser_session_set_property), (gdm_chooser_session_get_property), (gdm_chooser_session_constructor): * daemon/gdm-display-access-file.c: * daemon/gdm-display.c: (_create_access_file_for_user), (gdm_display_constructor): * daemon/gdm-factory-slave.c: (gdm_factory_slave_start), (gdm_factory_slave_stop), (gdm_factory_slave_set_property), (gdm_factory_slave_get_property), (gdm_factory_slave_constructor): * daemon/gdm-greeter-server.c: (gdm_greeter_server_constructor): * daemon/gdm-greeter-session.c: (gdm_greeter_session_set_property), (gdm_greeter_session_get_property): * daemon/gdm-local-display-factory.c: (gdm_local_display_factory_set_property), (gdm_local_display_factory_get_property), (gdm_local_display_factory_constructor): * daemon/gdm-manager.c: (gdm_manager_constructor): * daemon/gdm-product-display.c: (gdm_product_display_constructor): * daemon/gdm-product-slave.c: (gdm_product_slave_start), (gdm_product_slave_stop), (gdm_product_slave_set_property), (gdm_product_slave_get_property), (gdm_product_slave_constructor): * daemon/gdm-server.c: (gdm_server_constructor): * daemon/gdm-session-auditor.c: * daemon/gdm-session-direct.c: (gdm_session_direct_open): * daemon/gdm-session-linux-auditor.c: * daemon/gdm-session-relay.c: (gdm_session_relay_set_property), (gdm_session_relay_get_property), (gdm_session_relay_constructor): * daemon/gdm-session-settings.c: * daemon/gdm-session-worker-job.c: (gdm_session_worker_job_constructor): * daemon/gdm-session-worker.c: (gdm_session_worker_constructor): * daemon/gdm-simple-slave.c: (gdm_simple_slave_start), (gdm_simple_slave_stop), (gdm_simple_slave_set_property), (gdm_simple_slave_get_property), (gdm_simple_slave_constructor): * daemon/gdm-slave.c: (gdm_slave_run_script), (_get_primary_user_session_id), (gdm_slave_constructor): * daemon/gdm-static-display.c: (gdm_static_display_set_property), (gdm_static_display_get_property): * daemon/gdm-static-factory-display.c: (gdm_static_factory_display_set_property), (gdm_static_factory_display_get_property), (gdm_static_factory_display_constructor): * daemon/gdm-transient-display.c: (gdm_transient_display_set_property), (gdm_transient_display_get_property): * daemon/gdm-welcome-session.c: (parse_dbus_launch_output), (gdm_welcome_session_constructor): * daemon/gdm-xdmcp-chooser-slave.c: (gdm_xdmcp_chooser_slave_start), (gdm_xdmcp_chooser_slave_stop), (gdm_xdmcp_chooser_slave_set_property), (gdm_xdmcp_chooser_slave_get_property), (gdm_xdmcp_chooser_slave_constructor): * daemon/gdm-xdmcp-display-factory.c: (do_bind), (indirect_client_create), (gdm_xdmcp_handle_forward_query): * daemon/test-session.c: (main): * gui/simple-chooser/gdm-chooser-client.c: (gdm_chooser_client_set_property), (gdm_chooser_client_get_property), (gdm_chooser_client_constructor), (gdm_chooser_client_dispose): * gui/simple-chooser/gdm-chooser-session.c: (gdm_chooser_session_set_property), (gdm_chooser_session_get_property), (gdm_chooser_session_constructor), (gdm_chooser_session_dispose): * gui/simple-chooser/gdm-host-chooser-dialog.c: (gdm_host_chooser_dialog_set_property), (gdm_host_chooser_dialog_get_property), (gdm_host_chooser_dialog_constructor), (gdm_host_chooser_dialog_dispose): * gui/simple-chooser/gdm-host-chooser-widget.c: (gdm_host_chooser_widget_set_property), (gdm_host_chooser_widget_get_property), (gdm_host_chooser_widget_constructor): * gui/simple-greeter/gdm-a11y-preferences-dialog.c: (gdm_a11y_preferences_dialog_set_property), (gdm_a11y_preferences_dialog_get_property), (gdm_a11y_preferences_dialog_constructor), (gdm_a11y_preferences_dialog_dispose): * gui/simple-greeter/gdm-chooser-widget.c: (shrink_edge_toward_active_row), (gdm_chooser_widget_constructor): * gui/simple-greeter/gdm-greeter-client.c: (gdm_greeter_client_set_property), (gdm_greeter_client_get_property), (gdm_greeter_client_constructor), (gdm_greeter_client_dispose): * gui/simple-greeter/gdm-greeter-login-window.c: (gdm_greeter_login_window_constructor): * gui/simple-greeter/gdm-greeter-panel.c: (gdm_greeter_panel_set_property), (gdm_greeter_panel_get_property), (gdm_greeter_panel_constructor), (gdm_greeter_panel_dispose): * gui/simple-greeter/gdm-greeter-session.c: (gdm_greeter_session_set_property), (gdm_greeter_session_get_property), (gdm_greeter_session_constructor), (gdm_greeter_session_dispose): * gui/simple-greeter/gdm-language-chooser-widget.c: (gdm_language_chooser_widget_dispose): * gui/simple-greeter/gdm-option-widget.c: (activate_from_item_id), (gdm_option_widget_constructor): * gui/simple-greeter/gdm-recent-option-widget.c: (gdm_recent_option_widget_dispose): * gui/simple-greeter/gdm-remote-login-window.c: (gdm_remote_login_window_set_property), (gdm_remote_login_window_get_property), (gdm_remote_login_window_constructor): * gui/simple-greeter/gdm-session-client.c: (gdm_session_client_constructor), (gdm_session_client_dispose): * gui/simple-greeter/gdm-session-manager.c: (gdm_session_manager_set_property), (gdm_session_manager_get_property), (gdm_session_manager_constructor), (gdm_session_manager_dispose): * gui/simple-greeter/gdm-user-chooser-dialog.c: (gdm_user_chooser_dialog_set_property), (gdm_user_chooser_dialog_get_property), (gdm_user_chooser_dialog_constructor), (gdm_user_chooser_dialog_dispose): * gui/simple-greeter/gdm-user-chooser-widget.c: (gdm_user_chooser_widget_set_property), (gdm_user_chooser_widget_get_property), (gdm_user_chooser_widget_constructor): * gui/simple-greeter/gdm-user-manager.c: (_get_primary_user_session_id), (_get_login_window_session_id): * gui/simple-greeter/gdm-user.c: * gui/simple-greeter/libnotificationarea/na-tray-manager.c: (na_tray_manager_handle_begin_message): * gui/simple-greeter/libnotificationarea/na-tray.c: * gui/user-switch-applet/applet.c: (prefs_cb), (switch_to_user_session), (display_key_changed), (applet_fill_cb): * gui/user-switch-applet/gdm-user-menu-item.c: * tests/s-common-address.c: (START_TEST): * utils/gdmflexiserver.c: (get_login_window_session_id): Fix a bunch of compiler warnings and remove unused code. Patch from: Kjartan Maraas <kmaraas@broadpark.no> svn path=/trunk/; revision=5800
* Read ~/.dmrc when available, and bubble the results up to the greeterRay Strode2008-02-181-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-18 Ray Strode <rstrode@redhat.com> Read ~/.dmrc when available, and bubble the results up to the greeter * daemon/Makefile.am: add gdm-session-settings.[ch] to worker sources * daemon/gdm-session-private.h: * daemon/gdm-session.[ch]: (_gdm_session_saved_language_name_read), (_gdm_session_saved_session_name_read), (gdm_session_class_init): Add two new signals: "saved-language-name-read" and "saved-session-name-read" * daemon/gdm-session-worker.c (GdmSessionWorkerPrivate): session settings object to hold ~/.dmrc info. (attempt_to_load_user_settings_as_root): new function to switch from root to user, load settings, and switch back (do_setup), (gdm_session_worker_update_username): Create session settings object, and try to load ~/.dmrc in to object at various points in the pam conversation. (on_saved_language_name_read), (on_saved_session_name_read): report session settings changes from worker to slave * daemon/gdm-greeter-server.[ch]: (gdm_greeter_server_saved_language_name_read), (gdm_greeter_server_saved_session_name_read), (do_introspect): send language and session name to greeter svn path=/trunk/; revision=5789
* Make sure we catch the xserver exiting.William Jon McCann2008-02-071-3/+32
| | | | | | | | | | | | | | | | | | | | 2008-02-06 William Jon McCann <jmccann@redhat.com> * daemon/gdm-factory-slave.c: (on_server_ready), (on_server_exited), (on_server_died), (gdm_factory_slave_run): * daemon/gdm-product-slave.c: (on_server_ready), (on_server_exited), (on_server_died), (gdm_product_slave_create_server): * daemon/gdm-server.c: (server_child_watch), (gdm_server_class_init): * daemon/gdm-server.h: * daemon/gdm-simple-slave.c: (on_server_ready), (on_server_exited), (on_server_died), (gdm_simple_slave_run): * daemon/gdm-slave.c: (gdm_slave_connect_to_x11_display): Make sure we catch the xserver exiting. svn path=/trunk/; revision=5711
* Make sure we retry connecting to the xserver. This also ensures that weWilliam Jon McCann2008-02-061-0/+1
| | | | | | | | | | | | | | | | 2008-02-06 William Jon McCann <jmccann@redhat.com> * daemon/gdm-factory-slave.c: (idle_connect_to_display): * daemon/gdm-product-slave.c: (idle_connect_to_display): * daemon/gdm-simple-slave.c: (idle_connect_to_display): * daemon/gdm-slave.c: (gdm_slave_run_script): * daemon/gdm-xdmcp-chooser-slave.c: (idle_connect_to_display): * daemon/simple-slave-main.c: (main): Make sure we retry connecting to the xserver. This also ensures that we reach the exit if we fail the max number of times. svn path=/trunk/; revision=5703
* Make sure slaves respond to exit of welcome session.William Jon McCann2008-02-011-6/+33
| | | | | | | | | | | | | | | | | 2008-02-01 William Jon McCann <mccann@jhu.edu> * daemon/gdm-factory-slave.c: (on_greeter_session_start), (on_greeter_session_stop), (on_greeter_session_exited), (on_greeter_session_died), (run_greeter): * daemon/gdm-simple-slave.c: (on_greeter_session_start), (on_greeter_session_stop), (on_greeter_session_exited), (on_greeter_session_died), (run_greeter): * daemon/gdm-welcome-session.c: (stop_dbus_daemon), (welcome_session_child_watch), (start_dbus_daemon): Make sure slaves respond to exit of welcome session. svn path=/trunk/; revision=5679
* Add a base class to share code between chooser and greeter sessions.William Jon McCann2008-02-011-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-01 William Jon McCann <mccann@jhu.edu> * daemon/Makefile.am: * daemon/gdm-chooser-session.c: (gdm_chooser_session_set_property), (gdm_chooser_session_get_property), (gdm_chooser_session_class_init), (gdm_chooser_session_init), (gdm_chooser_session_finalize), (gdm_chooser_session_new): * daemon/gdm-chooser-session.h: * daemon/gdm-factory-slave.c: (run_greeter), (gdm_factory_slave_stop): * daemon/gdm-greeter-session.c: (gdm_greeter_session_set_property), (gdm_greeter_session_get_property), (gdm_greeter_session_class_init), (gdm_greeter_session_init), (gdm_greeter_session_finalize), (gdm_greeter_session_new): * daemon/gdm-greeter-session.h: * daemon/gdm-simple-slave.c: (start_session_timeout), (run_greeter), (gdm_simple_slave_stop): * daemon/gdm-welcome-session.c: (listify_hash), (open_welcome_session), (close_welcome_session), (get_welcome_environment), (welcome_session_child_watch), (spawn_child_setup), (spawn_command_line_sync_as_user), (spawn_command_line_async_as_user), (parse_value_as_integer), (parse_dbus_launch_output), (start_dbus_daemon), (stop_dbus_daemon), (gdm_welcome_session_spawn), (gdm_welcome_session_start), (wait_on_child), (welcome_session_died), (gdm_welcome_session_stop), (gdm_welcome_session_set_server_address), (_gdm_welcome_session_set_x11_display_name), (_gdm_welcome_session_set_x11_display_hostname), (_gdm_welcome_session_set_x11_display_device), (_gdm_welcome_session_set_x11_display_is_local), (_gdm_welcome_session_set_x11_authority_file), (_gdm_welcome_session_set_user_name), (_gdm_welcome_session_set_group_name), (_gdm_welcome_session_set_server_dbus_path), (_gdm_welcome_session_set_server_dbus_interface), (_gdm_welcome_session_set_command), (_gdm_welcome_session_set_server_env_var_name), (_gdm_welcome_session_set_register_ck_session), (gdm_welcome_session_set_property), (gdm_welcome_session_get_property), (gdm_welcome_session_constructor), (gdm_welcome_session_class_init), (gdm_welcome_session_init), (gdm_welcome_session_finalize): * daemon/gdm-welcome-session.h: * daemon/gdm-xdmcp-chooser-slave.c: (run_chooser), (gdm_xdmcp_chooser_slave_stop): Add a base class to share code between chooser and greeter sessions. svn path=/trunk/; revision=5676
* Patch from Eamon Walsh <ewalsh@tycho.nsa.gov> to pass path of authorityRay Strode2008-02-011-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | 2008-02-01 Ray Strode <rstrode@redhat.com> Patch from Eamon Walsh <ewalsh@tycho.nsa.gov> to pass path of authority file to pam code so that it can be given to PAM at a later time. * daemon/test-session.c (main): * daemon/gdm-product-slave.c (create_new_session): * daemon/gdm-simple-slave.c (create_new_session): grab authority file and pass to session direct object * daemon/gdm-session-worker.c (do_setup), (on_setup_for_user):, stash away location for authority file * daemon/gdm-session-direct.c (do_introspect), (send_setup), (send_setup_for_user): add authority file to dbus interface (_gdm_session_direct_set_display_x11_authority_file): (gdm_session_direct_new): stash away location for authority file svn path=/trunk/; revision=5674
* Initial support for XDMCP IndirectQuery choosers. Also fix brokenWilliam Jon McCann2008-01-311-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-01-30 William Jon McCann <mccann@jhu.edu> * common/gdm-address.c: (add_local_siocgifconf), (add_local_addrinfo), (gdm_address_peek_local_list): * daemon/Makefile.am: * daemon/gdm-chooser-server.c: (generate_address), (handle_select_hostname), (handle_disconnect), (chooser_handle_child_message), (do_introspect), (chooser_server_message_handler), (chooser_server_unregister_handler), (connection_filter_function), (allow_user_function), (handle_connection), (gdm_chooser_server_start), (gdm_chooser_server_stop), (gdm_chooser_server_get_address), (_gdm_chooser_server_set_display_id), (_gdm_chooser_server_set_user_name), (_gdm_chooser_server_set_group_name), (gdm_chooser_server_set_property), (gdm_chooser_server_get_property), (gdm_chooser_server_constructor), (gdm_chooser_server_class_init), (gdm_chooser_server_init), (gdm_chooser_server_finalize), (gdm_chooser_server_new): * daemon/gdm-chooser-server.h: * daemon/gdm-chooser-session.c: (listify_hash), (get_chooser_environment), (chooser_session_child_watch), (spawn_child_setup), (spawn_command_line_sync_as_user), (spawn_command_line_async_as_user), (parse_value_as_integer), (parse_dbus_launch_output), (start_dbus_daemon), (stop_dbus_daemon), (gdm_chooser_session_spawn), (gdm_chooser_session_start), (wait_on_child), (chooser_session_died), (gdm_chooser_session_stop), (gdm_chooser_session_set_server_address), (_gdm_chooser_session_set_x11_display_name), (_gdm_chooser_session_set_x11_display_hostname), (_gdm_chooser_session_set_x11_display_device), (_gdm_chooser_session_set_x11_authority_file), (_gdm_chooser_session_set_user_name), (_gdm_chooser_session_set_group_name), (gdm_chooser_session_set_property), (gdm_chooser_session_get_property), (gdm_chooser_session_constructor), (gdm_chooser_session_class_init), (gdm_chooser_session_init), (gdm_chooser_session_finalize), (gdm_chooser_session_new): * daemon/gdm-chooser-session.h: * daemon/gdm-display.c: (gdm_display_real_set_slave_bus_name), (gdm_display_set_slave_bus_name), (gdm_display_class_init): * daemon/gdm-display.h: * daemon/gdm-display.xml: * daemon/gdm-factory-slave.c: * daemon/gdm-greeter-server.c: * daemon/gdm-greeter-session.c: (gdm_greeter_session_init): * daemon/gdm-product-slave.c: * daemon/gdm-simple-slave.c: * daemon/gdm-slave.c: (gdm_slave_set_slave_bus_name), (gdm_slave_real_start), (register_slave), (gdm_slave_constructor): * daemon/gdm-xdmcp-chooser-display.c: (on_hostname_selected), (gdm_xdmcp_chooser_display_set_slave_bus_name), (gdm_xdmcp_chooser_display_manage), (gdm_xdmcp_chooser_display_class_init), (gdm_xdmcp_chooser_display_init), (gdm_xdmcp_chooser_display_finalize), (gdm_xdmcp_chooser_display_new): * daemon/gdm-xdmcp-chooser-display.h: * daemon/gdm-xdmcp-chooser-display.xml: * daemon/gdm-xdmcp-chooser-slave.c: (on_chooser_session_start), (on_chooser_session_stop), (on_chooser_session_exited), (on_chooser_session_died), (on_chooser_hostname_selected), (on_chooser_disconnected), (on_chooser_connected), (setup_server), (run_chooser), (idle_connect_to_display), (gdm_xdmcp_chooser_slave_run), (gdm_xdmcp_chooser_slave_start), (gdm_xdmcp_chooser_slave_stop), (gdm_xdmcp_chooser_slave_set_property), (gdm_xdmcp_chooser_slave_get_property), (gdm_xdmcp_chooser_slave_constructor), (gdm_xdmcp_chooser_slave_class_init), (gdm_xdmcp_chooser_slave_init), (gdm_xdmcp_chooser_slave_finalize), (gdm_xdmcp_chooser_slave_new): * daemon/gdm-xdmcp-chooser-slave.h: * daemon/gdm-xdmcp-display-factory.c: (set_port_for_request), (gdm_xdmcp_send_forward_query), (indirect_client_create), (indirect_client_destroy), (indirect_client_lookup_by_chosen), (indirect_client_lookup), (gdm_xdmcp_handle_indirect_query), (forward_query_destroy), (remove_oldest_forward), (forward_query_create), (forward_query_lookup), (gdm_xdmcp_handle_forward_query), (gdm_xdmcp_send_decline), (on_hostname_selected), (gdm_xdmcp_display_create), (gdm_xdmcp_handle_request), (gdm_xdmcp_send_refuse), (gdm_xdmcp_handle_manage), (gdm_xdmcp_handle_managed_forward): * daemon/gdm-xdmcp-display.c: (gdm_xdmcp_display_class_init), (gdm_xdmcp_display_finalize): * daemon/gdm-xdmcp-display.h: * daemon/gdm-xdmcp-display.xml: * daemon/gdm-xdmcp-greeter-display.c: (gdm_xdmcp_greeter_display_class_init), (gdm_xdmcp_greeter_display_init), (gdm_xdmcp_greeter_display_finalize), (gdm_xdmcp_greeter_display_new): * daemon/gdm-xdmcp-greeter-display.h: * daemon/xdmcp-chooser-slave-main.c: (get_system_bus), (signal_cb), (on_slave_stopped), (main): * data/gdm.conf: * gui/simple-chooser/Makefile.am: * gui/simple-chooser/chooser-main.c: (assistive_registry_launch), (filter_watch), (filter_timeout), (assistive_registry_start), (at_set_gtk_modules), (load_a11y), (main): * gui/simple-chooser/gdm-chooser-client.c: (gdm_chooser_client_error_quark), (send_dbus_string_method), (send_dbus_void_method), (gdm_chooser_client_call_select_hostname), (gdm_chooser_client_call_disconnect), (client_dbus_handle_message), (client_dbus_filter_function), (gdm_chooser_client_start), (gdm_chooser_client_stop), (gdm_chooser_client_set_property), (gdm_chooser_client_get_property), (gdm_chooser_client_constructor), (gdm_chooser_client_dispose), (gdm_chooser_client_class_init), (gdm_chooser_client_init), (gdm_chooser_client_finalize), (gdm_chooser_client_new): * gui/simple-chooser/gdm-chooser-client.h: * gui/simple-chooser/gdm-chooser-session.c: (launch_compiz), (launch_metacity), (start_window_manager), (start_settings_daemon), (on_dialog_response), (gdm_chooser_session_start), (gdm_chooser_session_stop), (gdm_chooser_session_set_property), (gdm_chooser_session_get_property), (gdm_chooser_session_constructor), (gdm_chooser_session_dispose), (gdm_chooser_session_class_init), (gdm_chooser_session_init), (gdm_chooser_session_finalize), (gdm_chooser_session_new): * gui/simple-chooser/gdm-chooser-session.h: * gui/simple-chooser/test-host-chooser.c: (assistive_registry_launch), (filter_watch), (filter_timeout), (assistive_registry_start), (at_set_gtk_modules), (load_a11y), (main): * gui/simple-greeter/greeter-main.c: (load_a11y), (main): Initial support for XDMCP IndirectQuery choosers. Also fix broken gdm_address_is_local. svn path=/trunk/; revision=5645
* Initial session migration support. We still need to make the slave dieWilliam Jon McCann2008-01-281-9/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-01-28 William Jon McCann <mccann@jhu.edu> * daemon/gdm-display.c: (gdm_display_get_seat_id), (gdm_display_class_init): * daemon/gdm-display.h: * daemon/gdm-display.xml: * daemon/gdm-local-display-factory.c: (gdm_local_display_factory_create_transient_display), (gdm_local_display_factory_create_product_display), (create_display): * daemon/gdm-simple-slave.c: (on_session_authorized), (try_migrate_session), (start_session_timeout), (queue_start_session), (on_session_accredited), (on_session_accreditation_failed): * daemon/gdm-slave.c: (gdm_slave_real_start), (_get_uid_and_gid_for_user), (x11_session_is_on_seat), (_get_primary_user_session_id), (activate_session_id), (gdm_slave_switch_to_user_session), (_gdm_slave_set_display_seat_id), (gdm_slave_set_property), (gdm_slave_get_property), (gdm_slave_class_init): * daemon/gdm-slave.h: Initial session migration support. We still need to make the slave die after if it is a transient display. svn path=/trunk/; revision=5639
* Make user auth work for factory display again.William Jon McCann2008-01-221-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-01-22 William Jon McCann <mccann@jhu.edu> * daemon/gdm-display.c: (gdm_display_real_add_user_authorization), (gdm_display_real_unmanage), (gdm_display_unmanage), (gdm_display_dispose), (gdm_display_finalize): * daemon/gdm-factory-slave.c: (on_session_session_started): * daemon/gdm-product-display.c: (gdm_product_display_add_user_authorization), (gdm_product_display_remove_user_authorization): * daemon/gdm-product-slave.c: (add_user_authorization), (setup_session), (on_relay_establish_credentials), (on_relay_renew_credentials): * daemon/gdm-session-direct.c: (gdm_session_direct_select_user), (gdm_session_direct_handle_username_changed), (gdm_session_direct_setup_for_user), (open_ck_session): * daemon/gdm-session-worker.c: (gdm_session_worker_update_username): * daemon/gdm-simple-slave.c: (on_session_accredited): * daemon/gdm-static-factory-display.c: (gdm_static_factory_display_add_user_authorization), (gdm_static_factory_display_remove_user_authorization): Make user auth work for factory display again. svn path=/trunk/; revision=5622
* With this patch we now invoke the X server with the -auth argument andWilliam Jon McCann2007-11-091-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-11-09 William Jon McCann <mccann@jhu.edu> * common/gdm-common.c: (gdm_string_hex_decode): * common/gdm-common.h: * daemon/Makefile.am: * daemon/auth.c: * daemon/auth.h: * daemon/gdm-display.c: (_create_access_file_for_user), (gdm_display_real_create_authority), (gdm_display_real_add_user_authorization), (gdm_display_real_remove_user_authorization), (gdm_display_get_x11_cookie), (gdm_display_get_x11_authority_file), (gdm_display_real_unmanage), (gdm_display_set_property), (gdm_display_get_property), (gdm_display_class_init), (gdm_display_finalize): * daemon/gdm-display.h: * daemon/gdm-factory-slave.c: (gdm_factory_slave_run): * daemon/gdm-local-display-factory.c: (create_display_for_device): * daemon/gdm-manager.c: (gdm_manager_init), (gdm_manager_finalize): * daemon/gdm-product-slave.c: (gdm_product_slave_create_server): * daemon/gdm-server.c: (_gdm_server_set_auth_file), (gdm_server_set_property), (gdm_server_get_property), (gdm_server_class_init), (gdm_server_new): * daemon/gdm-server.h: * daemon/gdm-simple-slave.c: (gdm_simple_slave_run): * daemon/gdm-slave.c: (gdm_slave_connect_to_x11_display), (gdm_slave_real_start), (gdm_slave_set_property), (gdm_slave_get_property), (gdm_slave_class_init): * daemon/gdm-static-display.c: (gdm_static_display_add_user_authorization), (gdm_static_display_remove_user_authorization): * daemon/gdm-xdmcp-display-factory.c: (gdm_xdmcp_handle_request): * daemon/gdm-xdmcp-display.c: (gdm_xdmcp_display_create_authority), (gdm_xdmcp_display_add_user_authorization), (gdm_xdmcp_display_remove_user_authorization), (gdm_xdmcp_display_unmanage): * daemon/gdm-display-access-file.c: * daemon/gdm-display-access-file.h: With this patch we now invoke the X server with the -auth argument and disable machine wide access to the X server. This patch also drops the md5 hashing of random bytes to create cookies and instead just creates cookies directly (like the X server would if we asked the X server to generate the cookies for us). Patch from: Ray Strode <rstrode@redhat.com> svn path=/trunk/; revision=5499
* Split up the Verification step in the GdmSession interface into componentWilliam Jon McCann2007-11-071-45/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-11-07 William Jon McCann <mccann@jhu.edu> * daemon/gdm-factory-slave.c: (greeter_reset_timeout), (queue_greeter_reset), (on_session_setup_complete), (on_session_setup_failed), (on_session_reset_complete), (on_session_reset_failed), (on_session_authenticated), (on_session_authentication_failed), (on_session_authorized), (on_session_authorization_failed), (on_session_accredited), (on_session_accreditation_failed), (on_greeter_begin_verification), (on_greeter_begin_verification_for_user), (gdm_factory_slave_start): * daemon/gdm-product-slave.c: (on_session_setup_complete), (on_session_setup_failed), (on_session_reset_complete), (on_session_reset_failed), (on_session_authenticated), (on_session_authentication_failed), (on_session_authorized), (on_session_authorization_failed), (on_session_accredited), (on_session_accreditation_failed), (on_relay_setup), (on_relay_setup_for_user), (on_relay_authenticate), (on_relay_authorize), (on_relay_establish_credentials), (on_relay_renew_credentials), (create_new_session), (relay_dbus_handle_message): * daemon/gdm-session-direct.c: (send_dbus_void_signal), (on_authentication_failed), (on_session_start_failed), (gdm_session_direct_handle_setup_complete), (gdm_session_direct_handle_setup_failed), (gdm_session_direct_handle_reset_complete), (gdm_session_direct_handle_reset_failed), (gdm_session_direct_handle_authenticated), (gdm_session_direct_handle_authentication_failed), (gdm_session_direct_handle_authorized), (gdm_session_direct_handle_authorization_failed), (gdm_session_direct_handle_accredited), (gdm_session_direct_handle_accreditation_failed), (gdm_session_direct_handle_start_failed), (session_worker_message), (do_introspect), (gdm_session_direct_init), (worker_exited), (worker_died), (gdm_session_direct_open), (send_setup), (send_setup_for_user), (gdm_session_direct_setup), (gdm_session_direct_setup_for_user), (gdm_session_direct_authenticate), (gdm_session_direct_authorize), (gdm_session_direct_accredit), (gdm_session_direct_close), (gdm_session_iface_init): * daemon/gdm-session-direct.h: * daemon/gdm-session-private.h: * daemon/gdm-session-relay.c: (send_dbus_string_signal), (send_dbus_void_signal), (gdm_session_relay_setup), (gdm_session_relay_setup_for_user), (gdm_session_relay_authenticate), (gdm_session_relay_authorize), (gdm_session_relay_accredit), (gdm_session_relay_answer_query), (handle_setup_complete), (handle_setup_failed), (handle_authenticated), (handle_authentication_failed), (handle_authorized), (handle_authorization_failed), (handle_accredited), (handle_accreditation_failed), (handle_session_started), (handle_session_stopped), (handle_opened), (session_handle_child_message), (do_introspect), (gdm_session_iface_init): * daemon/gdm-session-worker.c: (gdm_session_execute), (gdm_session_worker_update_username), (gdm_session_worker_initialize_pam), (gdm_session_worker_accredit_user), (session_worker_child_watch), (gdm_session_worker_start_user_session), (do_setup), (do_authenticate), (do_authorize), (do_accredit), (do_open_session), (do_start_session), (state_change_idle), (on_setup), (on_setup_for_user), (on_authenticate), (on_authorize), (on_establish_credentials), (on_renew_credentials), (worker_dbus_handle_message): * daemon/gdm-session.c: (gdm_session_setup), (gdm_session_setup_for_user), (gdm_session_authenticate), (gdm_session_authorize), (gdm_session_accredit), (gdm_session_class_init), (_gdm_session_setup_complete), (_gdm_session_setup_failed), (_gdm_session_reset_complete), (_gdm_session_reset_failed), (_gdm_session_authenticated), (_gdm_session_authentication_failed), (_gdm_session_authorized), (_gdm_session_authorization_failed), (_gdm_session_accredited), (_gdm_session_accreditation_failed), (_gdm_session_session_start_failed): * daemon/gdm-session.h: * daemon/gdm-simple-slave.c: (greeter_reset_timeout), (queue_greeter_reset), (on_session_setup_complete), (on_session_setup_failed), (on_session_reset_complete), (on_session_reset_failed), (on_session_authenticated), (on_session_authentication_failed), (on_session_authorized), (on_session_authorization_failed), (on_session_accredited), (on_session_accreditation_failed), (create_new_session), (on_greeter_begin_verification), (on_greeter_begin_verification_for_user): * daemon/test-session.c: (on_open), (on_session_setup_complete), (on_session_setup_failed), (on_session_reset_complete), (on_session_reset_failed), (on_session_authenticated), (on_session_authentication_failed), (on_session_authorized), (on_session_authorization_failed), (on_session_accredited), (on_session_accreditation_failed), (on_session_started), (on_session_exited), (on_session_died), (main): Split up the Verification step in the GdmSession interface into component parts: setup, authenticate, authorize, accredit. svn path=/trunk/; revision=5496