Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

•Re: when eval corrupts the invoker

by merlyn (Sage)
on Jun 24, 2002 at 23:40 UTC ( #176987=note: print w/ replies, xml ) Need Help??


in reply to when eval corrupts the invoker

Well, anybody can put unlink $0 in their synopsis section. Or even system "rm","-rf",$ENV{HOME}. You really should be using Safe instead of eval.

-- Randal L. Schwartz, Perl hacker


Comment on •Re: when eval corrupts the invoker
Re: •Re: when eval corrupts the invoker
by epoptai (Curate) on Jun 25, 2002 at 03:48 UTC
    Since this is a utility script for use by people who know Perl I'm not too worried about deliberately dangerous input, just the off chance that someone will test an Acme module and accidentally toast the script.

    To summarize, after kicking it around the CB with fever and jarich it was revealed that Safe doesn't seem to allow use or require in its compartments, so it won't help in this case, since use is required (pun not intended but what the heck). Other ideas were to lock $0 somehow (Zaxo) or back it up in case of emergency, but I finally settled for not putting the example code from modules known to modify $0 into a form.

    Update: changed to perigeeV's brilliant strategy of redefining $0 in a begin block.

    ps - Mr. Muskrat, I know exactly what bleach does and that is what I'm trying to prevent ;^)

    --
    Check out my Perlmonks Related Scripts like framechat, reputer, and xNN.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (6)
As of 2014-09-18 11:55 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (113 votes), past polls