<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Puxa vida!...Que desleixo iMperdoável o meu!!!...acho que fiz a
tiazinha revirar na tuMba!<br>
Por favor me desculpe, oh amado mestre!<br>
<br>
Em 13-07-2010 14:09, Alexei Znamensky escreveu:
<blockquote
 cite="mid:AANLkTimTtvvfJ3NIKtkvzQxgPPE5ejO9W4sxLY-ifwNv@mail.gmail.com"
 type="cite">vou ver se implemento um modulo chamado "Portugues" que
ira apontador erros crassos na lingua materna, como por exemplo
"desemcripta". Como diria a tia da 1a. série: "m só antes de p ou b"<br>
  <br>
  <div class="gmail_quote">2010/7/13 Giuliani Sanches <span dir="ltr">&lt;<a
 moz-do-not-send="true" href="mailto:giulianisanches@gmail.com">giulianisanches@gmail.com</a>&gt;</span><br>
  <blockquote class="gmail_quote"
 style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Flávio,<br>
    <br>
troca o seu $diretorios por:<br>
    <br>
@diretorios = ('meu_diretorio/')<br>
    <br>
Dentro da sua sub busca, você não precisa fazer um foreach pois a<br>
função find automaticamente percorre o array passado e<br>
disponibilizando o path dentro do callback que você passou, na<br>
variável $_.<br>
    <br>
[]'s<br>
    <br>
2010/7/13 "Flávio R. Lopes" &lt;<a moz-do-not-send="true"
 href="mailto:flavio.lopes@links.inf.br">flavio.lopes@links.inf.br</a>&gt;:<br>
    <div>
    <div class="h5">&gt; Olá Alexei!<br>
&gt; Ok, vou dar uma lida novamente!<br>
&gt;<br>
&gt; De qualquer forma, abaixo segue o erro:<br>
&gt;<br>
&gt; #############<br>
&gt; Use of uninitialized value $cmd in pattern match (m//) at<br>
&gt; /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 736,
&lt;GEN0&gt; line 1.<br>
&gt; Use of uninitialized value $cmd in concatenation (.) or string at<br>
&gt; /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 736,
&lt;GEN0&gt; line 1.<br>
&gt; protocol error: expected ENC_TO got :<br>
&gt;  at /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 154<br>
&gt;     GnuPG::abort_gnupg('GnuPG=HASH(0x176b220)', 'protocol error:
expected<br>
&gt; ENC_TO got : \x{a}') called at<br>
&gt; /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 736<br>
&gt;     GnuPG::decrypt_postwrite('GnuPG=HASH(0x176b220)',
'ciphertext', ' . ',<br>
&gt; 'output', ' . ', 'recipient', '0D59E2D1', 'passphrase',<br>
&gt; '123-minha-senha-321', ...) called at<br>
&gt; /usr/local/lib/perl5/site_perl/5.12.1/GnuPG.pm line 725<br>
&gt;     GnuPG::decrypt('GnuPG=HASH(0x176b220)', 'ciphertext', ' . ',
'output', '<br>
&gt; . ', 'recipient', '0D59E2D1', 'passphrase', '123-minha-senha-321',
...)<br>
&gt; called at /home/flavio/workspace/Ferramentas/Desemcripta.pl line 23<br>
&gt;     main::busca() called at
/usr/local/lib/perl5/5.12.1/File/Find.pm line<br>
&gt; 854<br>
&gt;     File::Find::_find_dir('HASH(0x1781b90)',
'/home/flavio/teste_cripto', 5)<br>
&gt; called at /usr/local/lib/perl5/5.12.1/File/Find.pm line 722<br>
&gt;     File::Find::_find_opt('HASH(0x1781b90)',
'/home/flavio/teste_cripto')<br>
&gt; called at /usr/local/lib/perl5/5.12.1/File/Find.pm line 1297<br>
&gt; #############<br>
&gt;<br>
&gt; Abraço!<br>
&gt;<br>
&gt; Em 13-07-2010 13:44, Alexei Znamensky escreveu:<br>
&gt;<br>
&gt; Se você não mostra a mensagem de erro, fica bem difícil de alguém
te ajudar.<br>
&gt; De cara, apesar de não causar (à primeira vista) um problema na
execução,<br>
&gt; você ter um laço do tipo foreach($_) { .. } dentro das suas subs é
algo<br>
&gt; desnecessário e indicativo de que você não entende direito o que
está<br>
&gt; fazendo.<br>
&gt; Sugiro ler novamente, com mais cudado desta vez, a documentação do<br>
&gt; File::Find.<br>
&gt;<br>
&gt; []s,<br>
&gt; Russian<br>
&gt; 2010/7/13 "Flávio R. Lopes" &lt;<a moz-do-not-send="true"
 href="mailto:flavio.lopes@links.inf.br">flavio.lopes@links.inf.br</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; Pessoal, ainda não consegui fazer funcionar o programa para<br>
&gt;&gt; descriptografar os arquivos!<br>
&gt;&gt; Alguém poderia me dar uma ajudar?<br>
&gt;&gt;<br>
&gt;&gt; Abraço,<br>
&gt;&gt; Flávio<br>
&gt;&gt;<br>
&gt;&gt; Em 12-07-2010 20:40, "Flávio R. Lopes" escreveu:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Boa noite pessoal!<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Fiz um programa (Encripta.pl) para encryptar
recursivamente os arquivos<br>
&gt;&gt;&gt; que ficam debaixo de uma árvore de um determinado
diretório.<br>
&gt;&gt;&gt; E o outro programa para desencriptar (Desencripta.pl) os
arquivos que<br>
&gt;&gt;&gt; foram encriptados pelo programa anterior.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; O programa para encriptar está funcionando:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Encripta.pl:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; #!/usr/bin/perl<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; use strict;<br>
&gt;&gt;&gt; use warnings;<br>
&gt;&gt;&gt; use 5.012;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; use File::Find;<br>
&gt;&gt;&gt; use GnuPG qw( :algo );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $gpg = new GnuPG();<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $diretorios = "/home/flavio/teste_cripto"; ## Aqui
ainda pretendo<br>
&gt;&gt;&gt; criar um array para "armazenar" uma lista com mais
diretórios<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $secret = "123-minha-senha-321"; ## Senha utilizada
para criação da<br>
&gt;&gt;&gt; Chave<br>
&gt;&gt;&gt; my $arquivos;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; find( \&amp;busca, $diretorios );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; sub busca {<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; foreach ($_) {<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; $gpg-&gt;encrypt(<br>
&gt;&gt;&gt; plaintext =&gt; "$_",<br>
&gt;&gt;&gt; output =&gt; "$_.gpg",<br>
&gt;&gt;&gt; armor =&gt; 1,<br>
&gt;&gt;&gt; sign =&gt; 1,<br>
&gt;&gt;&gt; recipient =&gt; "0D59E2D1", ## Minha Chave<br>
&gt;&gt;&gt; passphrase =&gt; $secret<br>
&gt;&gt;&gt; );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; # say $_;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; }<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; # unlink $_ if /\.gpg$/;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; # print "$arquivos\n" if -f $arquivos;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; }<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; O meu problema é para desencriptar os dados. Eu rodo o
programa abaixo<br>
&gt;&gt;&gt; (Desencripta.pl) e dá um erro que não estou conseguindo
entender:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Desencripta.pl:<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; #!/usr/bin/perl<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; use strict;<br>
&gt;&gt;&gt; use warnings;<br>
&gt;&gt;&gt; use 5.012;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; use File::Find;<br>
&gt;&gt;&gt; use GnuPG qw( :algo );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $gpg = new GnuPG();<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $diretorios = "/home/flavio/teste_cripto";<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; my $secret = "123-minha-senha-321";<br>
&gt;&gt;&gt; my $arquivos;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; find( \&amp;busca, $diretorios );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; sub busca {<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; foreach ($_) {<br>
&gt;&gt;&gt; $gpg-&gt;decrypt(<br>
&gt;&gt;&gt; ciphertext =&gt; " $_ ",<br>
&gt;&gt;&gt; output =&gt; " $_ ",<br>
&gt;&gt;&gt; recipient =&gt; "0D59E2D1",<br>
&gt;&gt;&gt; passphrase =&gt; $secret<br>
&gt;&gt;&gt; );<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; ## say $_; --&gt; Aqui eu dei um "say" nesta variável para
verificar se<br>
&gt;&gt;&gt; realmente estava trazendo os nomes dos arquivos e o<br>
&gt;&gt;&gt; gozado é que é que ela lista todos os arquivos que foram<br>
&gt;&gt;&gt; encriptados, mas mesmo assim dá um erro quando rodo o<br>
&gt;&gt;&gt; programa<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt;  }<br>
&gt;&gt;&gt; }<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; O que está errado no meu programa?<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Abraço,<br>
&gt;&gt;&gt; Flávio<br>
&gt;&gt;&gt; _______________________________________________<br>
&gt;&gt;&gt; SaoPaulo-pm mailing list<br>
&gt;&gt;&gt; <a moz-do-not-send="true" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt;&gt;&gt; <a moz-do-not-send="true"
 href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; SaoPaulo-pm mailing list<br>
&gt;&gt; <a moz-do-not-send="true" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt;&gt; <a moz-do-not-send="true"
 href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Alexei Znamensky [russoz_gmail_com] [<a moz-do-not-send="true"
 href="http://russoz.wordpress.com" target="_blank">russoz.wordpress.com</a>]<br>
&gt; [<a moz-do-not-send="true"
 href="http://www.flickr.com/photos/alexeiz" target="_blank">www.flickr.com/photos/alexeiz</a>]<br>
&gt; "Though we live in trying times, we're the ones who have to try"<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; SaoPaulo-pm mailing list<br>
&gt; <a moz-do-not-send="true" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt; <a moz-do-not-send="true"
 href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; SaoPaulo-pm mailing list<br>
&gt; <a moz-do-not-send="true" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
&gt; <a moz-do-not-send="true"
 href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a><br>
&gt;<br>
    <br>
    <br>
    <br>
    </div>
    </div>
    <font color="#888888">--<br>
Giuliani Sanches<br>
    <a moz-do-not-send="true" href="http://twitter.com/giulianisanches"
 target="_blank">twitter.com/giulianisanches</a><br>
    <a moz-do-not-send="true" href="http://giulianisanches.blogspot.com"
 target="_blank">giulianisanches.blogspot.com</a><br>
    <br>
Como elaborar uma pergunta:<br>
    <a moz-do-not-send="true" href="http://www.istf.com.br/perguntas/"
 target="_blank">http://www.istf.com.br/perguntas/</a><br>
    </font>
    <div>
    <div class="h5">_______________________________________________<br>
SaoPaulo-pm mailing list<br>
    <a moz-do-not-send="true" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
    <a moz-do-not-send="true"
 href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a></div>
    </div>
  </blockquote>
  </div>
  <br>
  <br clear="all">
  <br>
-- <br>
Alexei Znamensky [russoz_gmail_com] [<a moz-do-not-send="true"
 href="http://russoz.wordpress.com">russoz.wordpress.com</a>] [<a
 moz-do-not-send="true" href="http://www.flickr.com/photos/alexeiz">www.flickr.com/photos/alexeiz</a>]<br>
"Though we live in trying times, we're the ones who have to try"<br>
  <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
SaoPaulo-pm mailing list
<a class="moz-txt-link-abbreviated" href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a>
<a class="moz-txt-link-freetext" href="http://mail.pm.org/mailman/listinfo/saopaulo-pm">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a></pre>
</blockquote>
<br>
</body>
</html>