aboutsummaryrefslogtreecommitdiff
path: root/openssl-1.1.0h/ms/cmp.pl
diff options
context:
space:
mode:
Diffstat (limited to 'openssl-1.1.0h/ms/cmp.pl')
-rwxr-xr-xopenssl-1.1.0h/ms/cmp.pl53
1 files changed, 53 insertions, 0 deletions
diff --git a/openssl-1.1.0h/ms/cmp.pl b/openssl-1.1.0h/ms/cmp.pl
new file mode 100755
index 0000000..265ce56
--- /dev/null
+++ b/openssl-1.1.0h/ms/cmp.pl
@@ -0,0 +1,53 @@
+#! /usr/bin/env perl
+# Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License"). You may not use
+# this file except in compliance with the License. You can obtain a copy
+# in the file LICENSE in the source distribution or at
+# https://www.openssl.org/source/license.html
+
+($#ARGV == 1) || die "usage: cmp.pl <file1> <file2>\n";
+
+open(IN0,"<$ARGV[0]") || die "unable to open $ARGV[0]\n";
+open(IN1,"<$ARGV[1]") || die "unable to open $ARGV[1]\n";
+binmode IN0;
+binmode IN1;
+
+$tot=0;
+$ret=1;
+for (;;)
+{
+ $n1=sysread(IN0,$b1,4096);
+ $n2=sysread(IN1,$b2,4096);
+
+ last if ($n1 != $n2);
+ last if ($b1 ne $b2);
+ last if ($n1 < 0);
+ if ($n1 == 0)
+ {
+ $ret=0;
+ last;
+ }
+ $tot+=$n1;
+}
+
+close(IN0);
+close(IN1);
+if ($ret)
+{
+ printf STDERR "$ARGV[0] and $ARGV[1] are different\n";
+ @a1=unpack("C*",$b1);
+ @a2=unpack("C*",$b2);
+ for ($i=0; $i<=$#a1; $i++)
+ {
+ if ($a1[$i] ne $a2[$i])
+ {
+ printf "%02X %02X <<\n",$a1[$i],$a2[$i];
+ last;
+ }
+ }
+ $nm=$tot+$n1;
+ $tot+=$i+1;
+ printf STDERR "diff at char $tot of $nm\n";
+}
+exit($ret);