Joe Greco wrote:
>
> > > I wrote a little line program to do a revoke(), it was basically
> > >
> > > int main(int argc, char *argv[]) { revoke(argv[1]); }
> > >
> > > Now this doesn't kill a darn thing. And you should be aware of it! But it
> > > does forcibly "close" any open fd's pointing at the tty in question, and
> > > most programs will get the hint and go away.
> >
> > Not all programs, and that can lead to all sorts of problems
> > with processes that never die. There are many stories of this
> > happening with vi, for example.
>
> That's why I said, "most programs".
>
> > > For some uses, especially predictable uses, this is probably a lot simpler
> > > and a lot more foolproof.
> >
> > Simple: yes. Foolproof: definitely no.
>
> Uh, well, "foolproof" != "calling ps and awk and grep and looking for
> processes". For ANY definition of foolproof.
No, but walking the active process table looking for session leaders is
not that difficult. In fact, this was the first program I ever wrote on
FreeBSD, back on 1.0. Unfortunately, it was a commercial product Axent
Technologies never released, but later folded into UNIX Resource Manager
that was bought by dozens. ;^)
--
"Where am I, and what am I doing in this handbasket?"
Wes Peters Softweyr LLC
[EMAIL PROTECTED] http://softweyr.com/
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message