From 68ca7baa726e29a016e2888b7fddd22936ecacaf Mon Sep 17 00:00:00 2001 From: Pascal Terjan Date: Thu, 11 Feb 2010 16:41:14 +0000 Subject: run_program: set XAUTHORITY and HOME for the user we will drop privileges to --- perl-install/Makefile.config | 2 +- perl-install/NEWS | 5 +++++ perl-install/run_program.pm | 5 ++++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/perl-install/Makefile.config b/perl-install/Makefile.config index 0fb48a342..d9d16f1e7 100644 --- a/perl-install/Makefile.config +++ b/perl-install/Makefile.config @@ -1,5 +1,5 @@ # -*- Makefile -*- -VERSION:=11.71.10 +VERSION:=11.71.11 SUDO = sudo TMPDIR = /tmp diff --git a/perl-install/NEWS b/perl-install/NEWS index a0edf7779..2d81b3495 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,3 +1,8 @@ +Version 11.71.11 - 11 February 2010 + +- run_program: set XAUTHORITY and HOME for the user we will drop + privileges to + Version 11.71.10 - 17 September 2009 - drakhelp: diff --git a/perl-install/run_program.pm b/perl-install/run_program.pm index 0f84b9087..a74935656 100644 --- a/perl-install/run_program.pm +++ b/perl-install/run_program.pm @@ -111,8 +111,11 @@ sub raw { } else { if ($options->{setuid}) { require POSIX; - $ENV{'LOGNAME'} = getpwuid($options->{setuid}) || $ENV{LOGNAME}; POSIX::setuid($options->{setuid}); + my ($logname, $home) = (getpwuid($options->{setuid}))[0,7]; + $ENV{'XAUTHORITY'} = "$home/.Xauthority"; + $ENV{'LOGNAME'} = $logname || $ENV{LOGNAME}; + $ENV{'HOME'} = $home; } sub die_exit { -- cgit v1.2.1