Fix typo in SDBM hash function.

Thanks to Luis Carvalho for spotting the error.
diff --git a/src/dhcp.c b/src/dhcp.c
index c11675d..00145bc 100644
--- a/src/dhcp.c
+++ b/src/dhcp.c
@@ -651,7 +651,7 @@
   /* hash hwaddr: use the SDBM hashing algorithm.  Seems to give good
      dispersal even with similarly-valued "strings". */ 
   for (j = 0, i = 0; i < hw_len; i++)
-    j += hwaddr[i] + (j << 6) + (j << 16) - j;
+    j = hwaddr[i] + (j << 6) + (j << 16) - j;
   
   for (pass = 0; pass <= 1; pass++)
     for (c = context; c; c = c->current)
diff --git a/src/dhcp6.c b/src/dhcp6.c
index 93a359e..56eb0da 100644
--- a/src/dhcp6.c
+++ b/src/dhcp6.c
@@ -420,7 +420,7 @@
     j = rand64();
   else
     for (j = iaid, i = 0; i < clid_len; i++)
-      j += clid[i] + (j << 6) + (j << 16) - j;
+      j = clid[i] + (j << 6) + (j << 16) - j;
   
   for (pass = 0; pass <= plain_range ? 1 : 0; pass++)
     for (c = context; c; c = c->current)