Re: Broken su in current - trying to fix myself, help needed!

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Wed, 17 Oct 2007 22:42:52 +0300
On Wed, Oct 17, 2007 at 11:26:48PM +0400, Artem Kuchin wrote:
> >>if you try to run a very simple perl script:
> >>
> >>#!/usr/bin/perl
> >>$com="/usr/bin/su root -c 'echo heck'";
> >>system($com);
> >>print "done!\n";
> >
> >This works fine for me. If I run it as root (and change the user it's
> >su'ing to to a normal user), it runs find and prints:
> >
> >heck
> >done
> >
> 
> OH MY GOD!!! I have posted this problem before and saw many 'me too'
> reponses and thought that this problem is everywhere. After your and
> Kostik's posts and decided to make a clean test. Turned off jails
> and all custom kernel sysctls. Entered shell and run this cript - it 
> printed:
> 
> heck
> done!
> 
> I have rerun all configs and  started jails - still works. Then i remembered
> that i have always run this script fro midnight commander.
> Started mc
> Pressed ENTER on this script and it got suspended.
> 
> Now i am lost, whose problem is this? su's or mc's? or both?
> If i remove su from the script and run simply
> system('echo heck');
> from mc it work fine. With su it gets suspended.

Ah, mc.
Ok, it is reproducable in the following way:
pooma% sh +m                                                                  ~
$ ~/work/scratch/su.pl
Password:
heck
done!
$ [1]  + 1725 suspended (tty input)  sh +m
pooma%

Note the +m, that turns off the job control.

Received on Wed Oct 17 2007 - 17:42:59 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:19 UTC