Date: Mon, 27 Jul 1998 17:35:31 +0300 (IDT) From: Eli Zaretskii To: DJ Delorie cc: salvador AT inti DOT gov DOT ar, djgpp-workers AT delorie DOT com Subject: Re: Pipes In-Reply-To: <199807271309.JAA21579@delorie.com> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Mon, 27 Jul 1998, DJ Delorie wrote: > * In fact, gdb traps int 0x31. Maybe your shell could somehow trap > that *before* it gets to the DPMI server, so that longjump is still an > option? I think there's no problem to longjmp from a software interrupt handler. GDB's source is full of longjmp's (that's Richard Stallman's way of writing interactive programs, Emacs does the same), and we never have any problems with that, even though GDB hooks PM Int 31h for its work. > * Has anyone tried longjumping from one djgpp program to another > (parent/child) program? Will longjmp work across different selectors? (The child has a different CS/DS/SS, right?) > If this works, the fsext can longjump > to the shell, which can longjump to the other programs. This would require cooperation from the child. (It needs to install an FSEXT hook itself.) In contrast, hooking Int 31h in PM only requires the parent to do something special, while the child is oblivious.