Messages in this thread | | | Date | Sun, 15 Sep 2002 22:06:51 +0200 | From | Ingo Oeser <> | Subject | Re: [BUG?] binfmt_script: interpreted interpreter doesn't work |
| |
Hi Pozsar,
On Sun, Sep 15, 2002 at 07:15:38PM +0200, Pozsar Balazs wrote: > This may well not be bug, rather an intended feature, but please enlighten > me why the following doesn't work: > > I have two scripts: > /home/pozsy/a: > #!/bin/sh > echo "Hello from a!" > > /home/pozsy/b: > #!/home/pozsy/a > echo "hello from b!" > > Both of them has +x permissions. > But I cannot execute the /home/pozsy/b script: > > Isn't this "indirection" allowed?
Right, this isn't allowed to avoid eating kernel resources without getting anything done.
Solution is to always compile an interpreter or to write a wrapper in C, which is compiled and calls the perl interpreter with your perl script. This wrapper would be ANSI-C with really basic POSIX extensions and should thus be as portable as perl ;-)
So you hide the indirection from the kernel this way.
Of course you now define the wrapper as the interpreter for your perl scripts.
Hope that helps.
Regards
Ingo Oeser -- Science is what we can tell a computer. Art is everything else. --- D.E.Knuth - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |