Date: Mon, 27 Jul 1998 18:15:26 +0300 (IDT) From: Eli Zaretskii To: "Salvador Eduardo Tropea (SET)" cc: DJ Delorie , djgpp-workers AT delorie DOT com Subject: Re: Pipes In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Precedence: bulk On Mon, 27 Jul 1998, Salvador Eduardo Tropea (SET) wrote: > DJ Delorie wrote: > > > * gdb traps the program exit. Do the same thing as it does. > > > > * 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? > > Hmmm.... but I want a djgpp shell because in this way we can try to add it to > bash. I understand that DJ suggested to use these techniques in the shell you are writing. > > * Why not add a FSEXT that implements named pipes via your shell? > > Don't know what's it. Please explain me a little. FSEXT is the Filesystem Extensions feature which is built into the libc. It allows you to install hooks for specific handles and monitor low-level functions called by the library. For example, you can arrange for your function to be called when the library calls _write on handle 2. Your function can then either handle the call and return zero, or return non-zero, and libc will then do its usual thing (i.e. call DOS via __dpmi_int). It's a great feature. More info about it is available in the libc docs (look for "File System Extensions").