Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options

Re: Newbie Tainted glob question

by DamnDirtyApe (Curate)
on Oct 25, 2001 at 02:30 UTC ( #121295=note: print w/replies, xml ) Need Help??

in reply to Newbie Tainted glob question

I tried running elbie's code with Perl 5.6.1, and I got the following error:

Too late for "-T" option at line 1.

I got the same error on Windows and BSD. Can someone please explain what's with this?

Home Node | Email

Replies are listed 'Best First'.
Re: Re: Newbie Tainted glob question
by blakem (Monsignor) on Oct 25, 2001 at 02:58 UTC
(elbie): Newbie Tainted glob question
by elbie (Curate) on Oct 25, 2001 at 05:37 UTC
    I suspect that it's not as complicated as all that NT specific stuff blakem mentions, if the problem is happening on BSD as well.

    If you're invoking the script as 'perl', then the switches in your hashbang line aren't being executed as early on as they possibly could be.

    Assuming this is the case, you have two options (at least on BSD):

    Invoke it as 'perl -T', or make the script executeable and invoke it as './'

    Have fun!


      Yup, a simple matter of adding the -T to the command line.

      Something struck me as a little odd there, so I played around and discovered that warnings don't follow the same rule -- warnings can be turned on or off from the shebang without appearing on the command line. So, is -w the only option to which this applies?

      (Not that it matters much; I always use use strict; use warnings; use diagnostics;, but I'm curious to know how it works.)

      Home Node | Email
        You might be able to find the answer in this tpj article (would have linked to the official archive but it always seems to hang in my browser)

        I have to admit that I don't understand it enough to actually answer your question, but the article above ends with:

        And now you know why perl 5.004 has the new warning Too late for -T option. Taint mode isn't effective unless it's done from the very start, i.e. from the real command line. By the time yylex is called, a lot of taint-related things should already have happened, so perl can't guarantee that your data is safe. To avoid this problem, always make -T the first option on the shebang line.
        So, I assume the answer can be found somewhere in there....
        time for me to go read it myself, now.


Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://121295]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2021-12-04 20:13 GMT
Find Nodes?
    Voting Booth?
    R or B?

    Results (30 votes). Check out past polls.