You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Doug Luce <do...@modperl.con.com> on 2000/07/18 00:10:11 UTC

errno 19 with read() called from a mod_perl script

First, the setup:

I'm trying to use the Lingua::Ispell module from my script (running
Registry under mod_perl).  The Ispell module runs the ispell executable as
a coprocess via open2().  It then feeds the coprocess some lines of text
and reads the responses.

And, the problem:

After my script starts, Lingua::Ispell kicks off the ispell coprocess.  
The ispell executable terminates immediately (leaving a zombie).  After
picking through the ispell C code, I found that the program exits after
failed fgets().  The fgets() fails with errno set to 19 (ENODEV, Operation
not supported by device).

This same script works fine from the command line, AND when I call it
outside of mod_perl (i.e. as a non-Registry cgi-bin script).  This failure
occurs immediately upon invocation, so it's not a matter of pipes hanging
around and getting obliterated by something in the guts of the program.

Versions: Apache 1.3.12, mod_perl 1.24, Perl 5.6.

Anyone run into this one before?

Doug