Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!husc6!rutgers!clyde!cbatt!cwruecmp!hal!ncoast!tdi2!brandon From: brandon@tdi2.UUCP (Brandon Allbery) Newsgroups: comp.unix.wizards Subject: System V job control idea Message-ID: <337@tdi2.UUCP> Date: Sun, 12-Apr-87 19:11:24 EST Article-I.D.: tdi2.337 Posted: Sun Apr 12 19:11:24 1987 Date-Received: Tue, 21-Apr-87 03:46:53 EST Reply-To: brandon@tdi2.UUCP (Brandon Allbery) Distribution: world Organization: Tridelta Industries, Inc., Mentor, Ohio Lines: 20 Recently it occurred to me that there exists a form of simple job control under every version of UNIX since the Seventh Edition (at least). It's called ptrace(). A shell could fork a child which does a ptrace(0) then execs the intended target program. The parent (after continuing the child from the SIGTRAP stop caused by the exec) then can wait() for the child; SIGQUIT (for example) can be usurped as the stop character and used by the shell as a special case for continuation. Aside from the inhibition of setuid (which should be reconsidered for this application, maybe; what kind of ``fraud'' is it designed to prevent?), are there any reasons this won't work? (I know, no SIGTTIN/SIGTTOU. Oh well.) ++Brando -- Brandon S. Allbery UUCP: cbatt!cwruecmp!ncoast!tdi2!brandon Tridelta Industries, Inc. CSNET: ncoast!allbery@Case 7350 Corporate Blvd. INTERNET: ncoast!allbery%Case.CSNET@relay.CS.NET Mentor, Ohio 44060 PHONE: +1 216 255 1080 (home) +1 216 974 9210