summaryrefslogtreecommitdiff
path: root/x11/gdm/files/patch-af
diff options
context:
space:
mode:
Diffstat (limited to 'x11/gdm/files/patch-af')
-rw-r--r--x11/gdm/files/patch-af48
1 files changed, 48 insertions, 0 deletions
diff --git a/x11/gdm/files/patch-af b/x11/gdm/files/patch-af
new file mode 100644
index 000000000000..5f1ca5623479
--- /dev/null
+++ b/x11/gdm/files/patch-af
@@ -0,0 +1,48 @@
+$NetBSD: patch-af,v 1.4 1999/11/11 11:57:20 tron Exp $
+
+--- daemon/slave.c.orig Thu Sep 30 00:56:35 1999
++++ daemon/slave.c Thu Nov 11 12:30:39 1999
+@@ -300,8 +300,8 @@
+ setegid (GdmGroupId);
+ seteuid (0);
+
+- session = gdm_slave_greeter_ctl (GDM_SESS, usrsess);
+- language = gdm_slave_greeter_ctl (GDM_LANG, usrlang);
++ session = gdm_slave_greeter_ctl (GDM_SESS, usrsess ? usrsess : "");
++ language = gdm_slave_greeter_ctl (GDM_LANG, usrlang ? usrlang : "");
+
+ if (strlen (gdm_slave_greeter_ctl (GDM_SSESS, "")))
+ savesess = TRUE;
+@@ -331,11 +331,11 @@
+ setenv ("DISPLAY", d->name, TRUE);
+ setenv ("LOGNAME", login, TRUE);
+ setenv ("USER", login, TRUE);
+- setenv ("USERNAME", login, TRUE);
+ setenv ("HOME", pwent->pw_dir, TRUE);
+ setenv ("GDMSESSION", session, TRUE);
+ setenv ("SHELL", pwent->pw_shell, TRUE);
+- putenv ("MAIL");
++ unsetenv ("GROUP");
++ unsetenv ("MAIL");
+
+ /* Special PATH for root */
+ if(pwent->pw_uid == 0)
+@@ -385,6 +385,9 @@
+ if (setgid (pwent->pw_gid) < 0)
+ gdm_remanage (_("gdm_slave_session_start: Could not setgid %d. Aborting."), pwent->pw_gid);
+
++ if (setlogin (login) < 0)
++ gdm_remanage (_("gdm_slave_session_start: Could not set login name %s. Aborting."), login);
++
+ if (initgroups (login, pwent->pw_gid) < 0)
+ gdm_remanage (_("gdm_slave_session_start: initgroups() failed for %s. Aborting."), login);
+
+@@ -423,7 +426,7 @@
+ /* Restore sigmask inherited from init */
+ sigprocmask (SIG_SETMASK, &sysmask, NULL);
+
+- execl (sesspath, NULL);
++ execl (sesspath, sesspath, NULL);
+
+ gdm_error (_("gdm_slave_session_start: Could not start session `%s'"), sesspath);
+