diff options
| author | Niko Matsakis <niko@alum.mit.edu> | 2012-01-20 09:05:21 -0800 |
|---|---|---|
| committer | Niko Matsakis <niko@alum.mit.edu> | 2012-01-21 19:31:52 -0800 |
| commit | 42b97f317a92d6d88456a036728812f120e9fd3f (patch) | |
| tree | 7aadc59c8a5fe2f5fe16cba9ac3733c2505b9b27 | |
| parent | de2bb2806f02aa668e9cda8a86ec5b62c595c09b (diff) | |
| download | rust-42b97f317a92d6d88456a036728812f120e9fd3f.tar.gz rust-42b97f317a92d6d88456a036728812f120e9fd3f.zip | |
use u64 and not uint; otherwise shift results are undef. in 32 bit
Fixes #1605.
| -rw-r--r-- | src/libstd/md4.rs | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/libstd/md4.rs b/src/libstd/md4.rs index 9344767bed3..2d06c74f336 100644 --- a/src/libstd/md4.rs +++ b/src/libstd/md4.rs @@ -6,17 +6,17 @@ fn md4(msg: [u8]) -> {a: u32, b: u32, c: u32, d: u32} { // pad message let msg = msg + [0x80u8]; - let bitlen = orig_len + 8u; - while (bitlen + 64u) % 512u > 0u { + let bitlen = orig_len + 8u64; + while (bitlen + 64u64) % 512u64 > 0u64 { msg += [0u8]; - bitlen += 8u; + bitlen += 8u64; } // append length - let i = 0u; - while i < 8u { - msg += [(orig_len >> (i * 8u)) as u8]; - i += 1u; + let i = 0u64; + while i < 8u64 { + msg += [(orig_len >> (i * 8u64)) as u8]; + i += 1u64; } let a = 0x67452301u32; |
