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

Kostik Belousov kostikbel at gmail.com
Wed Oct 17 12:42:59 PDT 2007


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.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20071017/7b8bb369/attachment.pgp


More information about the freebsd-current mailing list