Very nice; and ultimately will be very interesting to see what percentage of checksum errors within a particular deployment turn out to most likely be correctable single bit errors. (And thereby possibly even measurably help improve the integrity of non-redundant array configurations, short of the catastrophic failure of a sector or drive itself.)
After reviewing the code (and presuming you intended "if (base->a less-than bad->a)"), I can't quite seem to convince myself the implementation is immune from misdiagnosing a double/triple bit error as a single bit error in general (although likely staring me in the face; as all correct, single, and double bit error checksums are warranted to be unique; as should also be all 4 and 5 bit error checksums for a corrected fletcher4 implementation to my understanding)? -- This message posted from opensolaris.org