The previous code used GET_W twice on two int variables, for no
explicable reason. The top of these int variables was shifted left by
16, giving a 32-bit signed value. The fields in adns_rr_soa are
unsigned long. On a 64-bit machine, the 32-bit signed value is
implicitly sign extended. This is entirely wrong.
Found by AFL 2.35b.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>