# HG changeset patch # User Dan # Date 1246539534 14400 # Node ID 23959360dcfda469d519a46377ed77b0320608a4 # Parent 1d9846ec37f537f6d95d200e3170d35cce47b1bf SHA256: Fixed broken hashes on 64-bit PHP diff -r 1d9846ec37f5 -r 23959360dcfd includes/diffiehellman.php --- a/includes/diffiehellman.php Thu Jul 02 08:57:13 2009 -0400 +++ b/includes/diffiehellman.php Thu Jul 02 08:58:54 2009 -0400 @@ -107,7 +107,8 @@ function safe_add ($x, $y) { $lsw = ($x & 0xFFFF) + ($y & 0xFFFF); $msw = ($x >> 16) + ($y >> 16) + ($lsw >> 16); - return ($msw << 16) | ($lsw & 0xFFFF); + // 2009-07-02 Added & 0xFFFFFFFF here to fix problem on PHP w/ native 64-bit integer support (rev. 1030) + return (($msw << 16) | ($lsw & 0xFFFF)) & 0xFFFFFFFF; } function rshz($X, $n) {