Perl (MD5, "Can't locate object method 'reset' ")

Post Reply
Message
Author
Jakob

Perl (MD5, "Can't locate object method 'reset' ")

#1 Post by Jakob »

Hallo zusammen,

ich versuche mich ein bisschen in Perl einzuarbeiten und hab' ein kleines Programm zur Berechtigungs- und Integritaetspruefung abgetippt.

Leider laeuft es nicht so ganz, und ich hab' leider noch wenige Perl-Erfahren, insbesondere mit Modulen.

Hier erstmal das Programm:

---

#!/usr/bin/perl
use Digest::MD5;
require 'find.pl';
$md5 = MD5;
@dirs = @ARGV;

for $dir (@dirs) { find($dir); }
sub wanted { push @files, $name; }

for $name ( sort @files ) {
($uid,$gid) = (stat $name)[4,5];
$stat = sprintf "%0o", (stat _)<font size="2">;
unless ( -f $name ) {
printf "$stat\t$uid $gid\t\t\t\t\t\t$name
";
next;
}

$md5->reset();
^^^^^^^^^^^^^^^^^^
open FILE, $name or print(STDERR "Kann die Datei $name nicht oeffnen
"), next;
$md5->addfile(FILE);
close FILE;
$checksum = $md5->hexdigest();
printf "$stat\t$uid $gid $checksum\t$name
";
}

---

Wenn ich es jetzt starten lasse, kommt diese Meldung:

kirk:/home/kirk/perl # ./perl /tmp/
41777 0 0 /tmp
41777 0 0 /tmp/.ICE-unix
140700 500 100 /tmp/.ICE-unix/1021
140700 500 100 /tmp/.ICE-unix/1055

Can't locate object method "reset" via package "MD5" (perhaps you forgot to load "MD5"?) at ./perl line 18.

Kann mir jemand sagen, was mit dem MD5-Modul im Zusammehang mit dem reset nicht funktioniert?

Ueber hilfreiche Antworten wuede ich mich sehe freuen.

Gruss,

Jakob

Post Reply