I am checking the files on 2 different system.
Source: Linux RHEL5 x86_64
Target: (2 or more machines) Windows XP, Windows Server 2008
Target has ActiveState Perl 5.8 (v5.8.8 built for MSWin32-x86-multi-thread) installed.
In my source machine the checksum is calculated for the input file and sent across. The checksum on Linux is calculated using "/usr/bin/cksum"
LINUX checksum value = 1345810991
In windows I am using unpack to calculate the checksum to verify if file is correct or not.
use strict; use English; my $file = <windows path which recieved the input file>/filename.txt local $/ = undef; open(FILE, $file) or die "Can't open '$file': $!"; binmode(FILE); my $data = <FILE>; close FILE; my $cksum = unpack("%32C*",$data); print "|$cksum|\n";
Windows checksum value: |24253975|
Basically, I am not getting the same values. What am I missing here? Is there any algorithm or method to imitate linux's cksum on Windows (perl)
Please note that the source is not under my control, so can't ask them to calculate the checksum using md5sum (and subsequently use Digest::MD5 in perl windows)
In reply to Find checksum (Linux) equivalent in Perl windows by mihirk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |