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

Reply via email to