Date: 17 Jul 2003 19:17:35 -0700 From: LLeweLLyn Reese <llewelly@lifesupport.shutdown.com> To: freebsd-questions@freebsd.org Cc: "Gerald S. Stoller" <gs_stoller@hotmail.com> Subject: Re: xterm Message-ID: <x33ch4shmo.fsf@lifesupport.shutdown.com> In-Reply-To: <44d6g989za.fsf@be-well.ilk.org> References: <Sea1-F77KUsqPQx0gdE0000bf0a@hotmail.com> <44d6g989za.fsf@be-well.ilk.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Lowell Gilbert <freebsd-questions-local@be-well.no-ip.com> writes: > "Gerald S. Stoller" <gs_stoller@hotmail.com> writes: > > > FreeBSD 4.3-RELEASE FreeBSD 4.3-RELEASE #0: Sat Apr 21 10:54:49 GMT 2001 > > jkh@narf.osd.bsdi.com:/usr/src/sys/compile/GENERIC i386 > > > > When working in a Unix system, I like to work with several > > windows (if possible) and organize my work among them. I use xterm > > (as on the line 'xterm &') to open new windows. Recently, I wanted > > to check on my processes and issued the command 'ps -l' and was > > surprised to not find any xterm processes among them. So I issued > > the command 'ps -la' and there I found the xterm processes but they > > were owned by root , not by me who had issued the command. Even > > though I wasn’t listed *by the ‘ps –la’ command as the > > owner, I could still kill the xterm processes. I don’t know > > where the incongruity is, in the kernel’s tables or in the > > reporting by ps . > > > > In multi-user (commercial) systems, I believe that the user > > who invokes the xterm processes is (listed as) its owner. > > I prefer that all processes running in FreeBSD be owned by > > the user who invoked them, the exceptions being some system ( root ) > > processes used in the login process. (The xterm processes are > > included here as non-system processes, so they should be owned by the > > user who invoked them.) I would like to see FreeBSD changed to > > reflect this, but the bug reporting site is down now. If anyone knows > > of any reasons why the current operation is correct and should be left > > as is, please inform me. > > xterm is suid-root, because it needs to open a terminal. The *shell* > running in the xterm should be owned by the user, but the user doesn't > have sufficient permissions for opening the terminal. > > I believe you're wrong about X behaving otherwise on other Unix > systems. [snip] I'm seeing rxvt processes started by uid 1001 showing up as uid 1001 with ps -l and ps -la. (xterm behaves as you describe, however). So I don't think that's the whole story. Also, I don't see why a program needing a terminal couldn't suid root, chown the terminal, and then suid original user. (I note the TT field of all my xterms shows up as '??', but the tty indicated by the TT field of my rxvt processes is owned by the user that started the rxvt.) I don't pretend to know precisely why any of this, however.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?x33ch4shmo.fsf>