sub queryhdrmd5 {
my ($binname) = @_;
- return Build::Rpm::queryhdrmd5($binname) if $do_rpm && $binname =~ /\.rpm$/;
- return Build::Deb::queryhdrmd5($binname) if $do_deb && $binname =~ /\.deb$/;
- return Build::Kiwi::queryhdrmd5($binname) if $do_kiwi && $binname =~ /\.iso$/;
- return Build::Kiwi::queryhdrmd5($binname) if $do_kiwi && $binname =~ /\.raw$/;
- return Build::Kiwi::queryhdrmd5($binname) if $do_kiwi && $binname =~ /\.raw.install$/;
+ return Build::Rpm::queryhdrmd5(@_) if $do_rpm && $binname =~ /\.rpm$/;
+ return Build::Deb::queryhdrmd5(@_) if $do_deb && $binname =~ /\.deb$/;
+ return Build::Kiwi::queryhdrmd5(@_) if $do_kiwi && $binname =~ /\.iso$/;
+ return Build::Kiwi::queryhdrmd5(@_) if $do_kiwi && $binname =~ /\.raw$/;
+ return Build::Kiwi::queryhdrmd5(@_) if $do_kiwi && $binname =~ /\.raw.install$/;
return undef;
}
use strict;
+use Digest::MD5;
+
sub expr {
my $expr = shift;
my $lev = shift;
}
sub queryhdrmd5 {
- my ($bin) = @_;
+ my ($bin, $leadsigp) = @_;
local *F;
open(F, '<', $bin) || die("$bin: $!\n");
}
}
close F;
+ $$leadsigp = Digest::MD5::md5_hex(substr($buf, 0, $hlen)) if $leadsigp;
my $idxarea = substr($buf, 96 + 16, $cnt * 16);
if ($idxarea !~ /\A(?:.{16})*\000\000\003\354\000\000\000\007(....)\000\000\000\020/s) {
warn("$bin: no md5 signature header\n");