Messages in this thread |  | | | Subject | Re: NFS bug in 2.1.48 | | From | Claus-Justus Heine <> | | Date | 16 Aug 1997 17:18:31 +0200 |
| |
Systemkennung Linux <linux@mailhost.uni-koblenz.de> writes:
> > > > #!/bin/bash > > > cat >/tmp/xxx <<BUGGY > > > asdf > > > BUGGY > > [...] > > > Your little script, however, does NOT result in this error (talking > > about 2.1.49). But there definitely is something wrong. What really > > strikes me that both constructs don't fiddle with file descriptors > > located on a NFS file system, only with pipes between processes. That > > -ESTALE error _should_ be impossible. > > Here documents are placed in a file in $TMPDIR by the shell. They do > not use pipes in any shell I know of.
Oh, sorry. Didn't know that. But then, what do you think of the following little shell script:
#!/bin/sh sh -s << _HERE_ ls -la $TMPDIR exit _HERE
If the Here document is placed in a file in $TMPDIR, then it should show up in the output of `ls -la'. But it doesn't. I really don't think that a decent shell implementation should create another file in $TMPDIR for Here documents. And I'm pretty sure that at least bash feds it to the standard input of the command using a pipe.
However, I didn't exmine the source code of bash or ksh or tcsh. You may still be right, but I don't think so.
But all of the above doesn't touch the real problem: that bogus ESTALE error (in the case of tclsh I _AM_ sure that no tmp file is created by tclsh for reading the stderr of "exec some_command", tclsh uses pipes)
Cheers
Claus
|  |