2009/7/21 Adam Kennedy <adamkennedybackup@gmail.com>:
Show quoted text> There are a number of fixes for this, probably including
> ExtUtils::MakeMaker attempting to handle unusual cases better, and
How? You can construct this kind of attack through almost any
seemingly trivial code, including regexes. The only way to track it is
something along the lines of alarm, which isnt portable. And i dont
think the solution to this is technical, beyond specialized gateway
scenarios like the CPAN upload framework. Alarm works there, and if it
didnt we could hack a custom perl for andreas to gateway test code
for stuff like that. I mean it seems to me that if you download code
from CPAN the one thing that should be pretty reliably "safe" is the
version line in a file.
The real "solution" to this "problem" is what we do now. We armor the
gateway, and then use community vigilance to catch the rest. If people
upload bombs, they break someones setup, and we delete the module, and
etc. I mean someone once put a "et phone home" in their Makefile.PL.
The community found out, went berserk, and in the end the problem was
resolved. Thats how you deal with stuff like that. Its not the perl
way to try to blockade everything behind defensive barriers. We invite
people into our living room because we trust them not to shit on the
couch while they are there, and if people do, we dont invite them
back.
This "issue" seems to me to be much akin to saying that there is an
"issue" that glass windows are suspectible to breakge due to having
rocks thrown through them. Sure the police station (say Andreas'
machines), might see this a real problem, as might certain other types
of establishment, but for the common scenario, we assume that people
wont be throwing rocks through peoples windows, and that if they do
they will be caught. The problem isnt that the glass is not resistant
to rocks it is the people throwing them who are the problem. To me
this is the same.
Show quoted text> Acme::BadExample failing (or hanging, or both) it's tests so that it
> can't be installed.
If i had found a ok(0); in the test file id have had no issues with it.
cheers,
Yves