Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: is_tainted function

by amarquis (Curate)
on Sep 20, 2007 at 13:00 UTC ( [id://640111]=note: print w/replies, xml ) Need Help??


in reply to is_tainted function

As to your main question, sadly, I don't know.

But my reading of the Kill function leads me to different conclusions. Kill seems to return the number of processes successfully signaled (processes sent in a list after the signal. The signal zero sends no signals, and there is no list, so that should always return zero.

Now, if that eval block gets to the "1;", it is because the join went off without a hitch because the stuff in @_ wasn't tainted. So the eval returns 1, the not turns it into false: the variables were not tainted.

If they are tainted, I'm not totally sure what is happening (most of this is guesswork, I'm not that good/experienced with Perl). I'm guessing that the join wets the bed and fails, the "kill" returns 0 (no processes were signaled), the eval grinds to a halt and returns the 0. The not turns that into a true, the variables were in fact tainted.

Again, not that experienced, may be way off base here.

Edit: Dave swooped in with the correct answer. I'm going to go back to reading "Programming Perl."

Replies are listed 'Best First'.
Re^2: is_tainted function
by DrHyde (Prior) on Sep 21, 2007 at 10:42 UTC
    signal 0 is special. In that case, the return value is the number of processes that would have been signalled if you'd sent a valid signal number. In other words, it checks to see if process IDs exist.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (5)
As of 2024-03-28 09:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found