patches/gdm-03-sdtlogin.diff
branchgnome-2-30
changeset 20009 c535eef4db66
parent 17046 bd28dae03d8a
child 21963 fe0b85ec18a6
--- a/patches/gdm-03-sdtlogin.diff	Wed Aug 11 11:38:23 2010 +0000
+++ b/patches/gdm-03-sdtlogin.diff	Fri Aug 13 16:04:51 2010 +0000
@@ -56,7 +56,7 @@
  #include <security/pam_appl.h>
  
  #include <glib.h>
-@@ -64,6 +71,7 @@
+@@ -65,6 +72,7 @@
  #endif
  
  #include "gdm-session-settings.h"
@@ -64,7 +64,7 @@
  
  #define GDM_SESSION_WORKER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GDM_TYPE_SESSION_WORKER, GdmSessionWorkerPrivate))
  
-@@ -156,12 +164,115 @@ static void     gdm_session_worker_finalize     (GObject               *object);
+@@ -155,12 +163,115 @@ static void     gdm_session_worker_final
  static void     queue_state_change              (GdmSessionWorker      *worker);
  
  typedef int (* GdmSessionWorkerPamNewMessagesFunc) (int,
@@ -181,7 +181,7 @@
  GQuark
  gdm_session_worker_error_quark (void)
  {
-@@ -592,7 +703,11 @@ static gboolean
+@@ -591,7 +702,11 @@ static gboolean
  gdm_session_worker_get_username (GdmSessionWorker  *worker,
                                   char             **username)
  {
@@ -193,7 +193,7 @@
  
          g_assert (worker->priv->pam_handle != NULL);
  
-@@ -861,7 +976,7 @@ gdm_session_worker_process_pam_message (GdmSessionWorker          *worker,
+@@ -865,7 +980,7 @@ gdm_session_worker_process_pam_message (
  
  static int
  gdm_session_worker_pam_new_messages_handler (int                        number_of_messages,
@@ -202,9 +202,9 @@
                                               struct pam_response      **responses,
                                               GdmSessionWorker          *worker)
  {
-@@ -1987,6 +2102,11 @@ gdm_session_worker_start_user_session (GdmSessionWorker  *worker,
+@@ -2016,6 +2131,11 @@ gdm_session_worker_start_user_session (G
  
-         passwd_entry = getpwnam (worker->priv->username);
+         gdm_get_pwent_for_name (worker->priv->username, &passwd_entry);
  
 +#ifdef __sun
 +        solaris_xserver_cred (worker->priv->username,