/usr/lib/radare/bin/bytediff is in radare-common 1:1.5.2-6.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #!/usr/bin/env perl
#
# bindiff like utility for radare
#
# This implementation checks only byte differences. Doesn't
# takes care about offsets. (Faster than bindiff). Useful
# for really big files where bindiff gets saturated.
#
# --pancake
my $a = $ARGV[0];
my $b = $ARGV[1];
die "Usage: rsc bytediff [file] [file]\n"
if ($a eq "" || $b eq "" || $a eq "-h");
my $sa = (stat $a)[7];
my $sb = (stat $b)[7];
print STDERR "Warning: files have different size.\n" if ($sa != $sb);
open A, "<$a" or die "Cannot open $a.";
open B, "<$b" or die "Cannot open $b.";
for my $offset (0 .. $sa) {
read A, $ba, 1 or last;
read B, $bb, 1 or last;
$ba = ord($ba);
$bb = ord($bb);
if ($ba != $bb) {
printf "%02x\t| %02x\n", $ba, $bb;
} else {
printf "%02x\t %02x\n", $ba, $bb;
}
}
close A;
close B;
|