Thread Saubere Perl-Syntax Variable in sub behalten (19 answers)
Opened by bianca at 2014-09-16 08:07

bianca
 2014-09-16 08:07
#177297 #177297
User since
2009-09-13
6976 Artikel
BenutzerIn

user image
Guten Morgen!

Ich würde gern die folgende sub in vernünftige Perl Syntax bringen. Mich stört, dass das aufrufende Programm ein Hash dafür vorhalten muss. Gibt es eine andere Syntax wie die sub für sich allein diesen Cipher bildet und ihn auch beibehält bis das aufrufende Programm beendet ist?
Diese Verschlüsselung steht jetzt stellvertretend auch für andere Anwendungen.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/usr/bin/perl
use 5.010;
use strict;
use warnings;
use Crypt::CBC;
use Date::Calc qw(Localtime);

my $crypt = sub {
    my ($cb,$val) = @_;
    if (!defined $cb->{cipher}) {
        say "Debug: erzeuge Objekt";
        $cb->{cipher} = Crypt::CBC->new(
            -key    => 'foobar',
            -cipher => 'Blowfish',
        );
    }
    if (defined $val) { return $cb->{cipher}->encrypt($val); }
};

my %crypthash;
say $crypt->(\%crypthash,'foo');
say $crypt->(\%crypthash,'bar');


modedit Editiert von GwenDragon: Titel erklärend
Last edited: 2014-09-16 09:11:48 +0200 (CEST)
10 print "Hallo"
20 goto 10

View full thread Saubere Perl-Syntax Variable in sub behalten