CLEANUP: lua: fix aliasing issues in the address matching code

Just use read_u32() instead of casting IPv6 addresses to uint32_t*.
diff --git a/src/hlua_fcn.c b/src/hlua_fcn.c
index f8024aa..29c0bf4 100644
--- a/src/hlua_fcn.c
+++ b/src/hlua_fcn.c
@@ -18,6 +18,7 @@
 #include <lua.h>
 #include <lualib.h>
 
+#include <common/net_helper.h>
 #include <common/time.h>
 #include <common/uri_auth.h>
 
@@ -1520,10 +1521,10 @@
 		int i;
 
 		for (i = 0; i < 16; i += 4) {
-			if ((*(uint32_t *)&addr1->addr.v6.ip.s6_addr[i] &
-			     *(uint32_t *)&addr2->addr.v6.mask.s6_addr[i]) !=
-			    (*(uint32_t *)&addr2->addr.v6.ip.s6_addr[i] &
-			     *(uint32_t *)&addr1->addr.v6.mask.s6_addr[i]))
+			if ((read_u32(&addr1->addr.v6.ip.s6_addr[i]) &
+			     read_u32(&addr2->addr.v6.mask.s6_addr[i])) !=
+			    (read_u32(&addr2->addr.v6.ip.s6_addr[i]) &
+			     read_u32(&addr1->addr.v6.mask.s6_addr[i])))
 				break;
 		}
 		if (i == 16) {