Posted to tcl by aspect at Tue May 06 07:36:10 GMT 2014view pretty

--- cksum.tcl       2014-05-02 19:25:10.000000000 +1000
+++ cksum.tcl   2014-05-06 17:34:33.001591537 +1000
@@ -95,11 +95,11 @@
     set t $state(t)
     binary scan $data c* r
     foreach {n} $r {
-        set t [expr {($t << 8)
+        set t [expr {0xffffffff & (($t << 8)
                      ^ [lindex $cksum_tbl [expr {
                                                  (($t >> 24) \
                                                       ^ ($n & 0xFF)) & 0xFF
-                                             }]]}]
+                                             }]])}]
         incr state(l)
     }
     set state(t) $t