Hiya, When cksum(1) is used with a -C checklist listing multiple algorithms, and a single -a algorithm is specified, cksum doesn't select the correct -a [algorithm], nor the correct line in the -C [checklist]:
$ uname -mrsv # standard 6.0 release OpenBSD 6.0 GENERIC#1917 i386 $ date Tue 28/Mar/2017 15:18:53 (BST) $ cksum -b -a cksum,MD5,RMD160,SHA1,SHA256 -h /tmp/bsd.digest /bsd $ cat /tmp/bsd.digest 933381050 10877658 /bsd MD5 (/bsd) = UFLKDWb0/g2onutHh770Vg== RMD160 (/bsd) = 3+idOPx57UFW02kkQE1wVL1MK+E= SHA1 (/bsd) = yH1U9YEeLz5dqvjwvvQPPuKt2Qc= SHA256 (/bsd) = bBwEp0Ns/t8yHBZmNuMdn9e/xU3pehB+yBRJMrAkyNY= $ cksum -a cksum -C /tmp/bsd.digest /bsd (CKSUM) /bsd: OK $ cksum -a MD5 -C /tmp/bsd.digest /bsd (MD5) /bsd: OK $ cksum -a RMD160 -C /tmp/bsd.digest /bsd (MD5) /bsd: OK $ cksum -a SHA1 -C /tmp/bsd.digest /bsd (MD5) /bsd: OK $ cksum -a SHA256 -C /tmp/bsd.digest /bsd (MD5) /bsd: OK $ vi /tmp/bsd.digest # change the line order $ cat /tmp/bsd.digest SHA256 (/bsd) = bBwEp0Ns/t8yHBZmNuMdn9e/xU3pehB+yBRJMrAkyNY= RMD160 (/bsd) = 3+idOPx57UFW02kkQE1wVL1MK+E= 933381050 10877658 /bsd SHA1 (/bsd) = yH1U9YEeLz5dqvjwvvQPPuKt2Qc= MD5 (/bsd) = UFLKDWb0/g2onutHh770Vg== $ cksum -a cksum -C /tmp/bsd.digest /bsd (SHA256) /bsd: OK $ cksum -a MD5 -C /tmp/bsd.digest /bsd (SHA256) /bsd: OK $ cksum -a RMD160 -C /tmp/bsd.digest /bsd (SHA256) /bsd: OK $ cksum -a SHA1 -C /tmp/bsd.digest /bsd (SHA256) /bsd: OK $ cksum -a SHA256 -C /tmp/bsd.digest /bsd (SHA256) /bsd: OK $ vi /tmp/bsd.digest # nuke all but 1 line $ cat /tmp/bsd.digest RMD160 (/bsd) = 3+idOPx57UFW02kkQE1wVL1MK+E= $ cksum -a RMD160 -C /tmp/bsd.digest /bsd (RMD160) /bsd: OK $ cksum -a SHA256 -C /tmp/bsd.digest /bsd (RMD160) /bsd: OK $ cksum -a MD5 -C /tmp/bsd.digest /bsd (RMD160) /bsd: OK etc... Is this enough to go on, or would you like it in a bug report? Regards, -- Craig Skinner | http://linkd.in/yGqkv7