<html>
<head>
<style>
P
{
margin:0px;
padding:0px
}
body
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body>&gt; From: luismottacampos@yahoo.co.uk<br>&gt; Date: Fri, 15 Jun 2007 17:20:26 +0200<br><br>&gt;    Esta merda estah cheia de problemas, a comecar pela falta de  <br>&gt; documentacao.<br><br>Que boca suja! :-D<br><br>&gt;    Alguém pode por favor rodar o perlcritic nisto e mandar o  <br>&gt; resultado para a lista?<br>&gt;    Eu acho que a gente pode sugerir MUITAS melhorias.<br><br>Vai meus dois centavos. Fiquei com preguiça de fazer mais que isso:<br><br>&lt;code&gt;<br>#!/usr/bin/perl<br>use warnings;<br>use strict;<br>use CGI qw ( :standard );<br><br>use constant ARQUIVO =&gt; '/etc/squid/arquivos/liberados/dl_geral';<br>use constant SERVIDOR =&gt;<br>&nbsp; 'http://meuservidor.no-ip.info/arquivos/siteinexist.htm';<br><br>open( LIBERADOS, $arquivo );<br>my @linhas = &lt;LIBERADOS&gt;;<br>close(LIBERADOS);<br><br>my $site = param("site");<br>my $www&nbsp; = param("www");<br><br>open( LIBERADOS, '&lt;', ARQUIVO );<br><br>my $linhas = "@linhas";<br><br>if ( $site eq /^[.]$/ ) {<br>&nbsp;&nbsp;&nbsp; print redirect(SERVIDOR);<br>&nbsp;&nbsp;&nbsp; close(LIBERADOS);<br>&nbsp;&nbsp;&nbsp; exit;<br>}<br><br>open( LIBERADOS, "$arquivo" );<br><br>if ( $linhas =~ /^(?:.)(.{2})+.$site/ ) {<br>&nbsp;&nbsp;&nbsp; print redirect (SERVIDOR);<br><br>&nbsp;&nbsp;&nbsp; close(LIBERADOS);<br>&nbsp;&nbsp;&nbsp; exit;<br>}<br><br>open( LIBERADOS, "$arquivo" );<br><br>if ( $linhas =~ m/^(\d{3}))+(?:.)+$site/ ) {<br>&nbsp;&nbsp;&nbsp; print redirect (SERVIDOR);<br>&nbsp;&nbsp;&nbsp; close(LIBERADOS);<br>&nbsp;&nbsp;&nbsp; exit;<br>}<br>else {<br>&nbsp;&nbsp;&nbsp; open( LIBERADOS, '+&gt;&gt;', ARQUIVO );<br>&nbsp;&nbsp;&nbsp; print LIBERADOS "\n$www$site";<br>&nbsp;&nbsp;&nbsp; close(LIBERADOS);<br><br>&nbsp;&nbsp;&nbsp; # argh! sem verificação se executou ou não isso!<br>&nbsp;&nbsp;&nbsp; # esse script rodar com setuid?<br>&nbsp;&nbsp;&nbsp; system("squid -k reconfigure");<br>&nbsp;&nbsp;&nbsp; print redirect (SERVIDOR);<br>}<br>&lt;/code&gt;<br><br>temp.pl|10 col 1| Two-argument "open" used.&nbsp; See page 207 of PBP&nbsp; (Severity: 5)<br>temp.pl|10 col 1| Bareword file handle opened.&nbsp; See pages 202,204 of PBP&nbsp; (Severity: 5)<br>temp.pl|17 col 1| Bareword file handle opened.&nbsp; See pages 202,204 of PBP&nbsp; (Severity: 5)<br>temp.pl|27 col 1| Two-argument "open" used.&nbsp; See page 207 of PBP&nbsp; (Severity: 5)<br>temp.pl|27 col 1| Bareword file handle opened.&nbsp; See pages 202,204 of PBP&nbsp; (Severity: 5)<br>temp.pl|36 col 1| Two-argument "open" used.&nbsp; See page 207 of PBP&nbsp; (Severity: 5)<br>temp.pl|36 col 1| Bareword file handle opened.&nbsp; See pages 202,204 of PBP&nbsp; (Severity: 5)<br>temp.pl|44 col 5| Bareword file handle opened.&nbsp; See pages 202,204 of PBP&nbsp; (Severity: 5)<br><br>[]'s<br>Alceu<br><br><br /><hr />Make every IM count. Download Windows Live Messenger and join the i'm Initiative now. It's free.   <a href='http://im.live.com/messenger/im/home/?source=TAGWL_June07' target='_new'>Make it count!</a></body>
</html>