Colin Percival 23f6784297 Use unsigned comparisons. Prior to this commit, SHA1_Update and
RIPEMD160_Update were broken when all of the following conditions
applied:
(1) The platform is i386.
(2) The program calling *_Update is statically linked to libmd.
(3) The buffer provided to *_Update is aligned modulo 4 bytes.
(4) The buffer extends beyond 2GB.

Due to the design of this code, SHA1_Update and RIPEMD160_Update will
still be broken if conditions (1)-(3) apply AND the buffer extends
beyond 4GB (i.e., there is an integer overflow in computing "data + len").
Since this remaining bug simply replaces SIGSEGV with a bogus hash (and
non-broken programs should never provide such operands) I don't consider
it to be a serious problem.

MFC After:      1 week
PR:             kern/102795
2007-05-14 05:00:37 +00:00
..
2007-05-02 05:29:55 +00:00
2007-04-04 14:04:55 +00:00
2006-09-17 21:27:35 +00:00
2006-10-09 05:12:54 +00:00
2007-04-24 06:29:27 +00:00
2007-04-09 01:45:30 +00:00
2007-04-09 01:45:30 +00:00
2006-10-28 10:53:39 +00:00
2006-10-21 15:12:36 +00:00
2007-01-20 07:48:10 +00:00