Use unsigned arithmetic when shifting by 24
requested to merge 3176-issue-45110-by-clusterfuzz-external-bind9-dns_master_load_fuzzer-undefined-shift-in-soa_get-v9_18 into v9_18
By default C promotes short unsigned values to signed int which leads to undefined behaviour when the value is shifted by too much. Force unsigned arithmetic to be perform by explicitly casting to a unsigned type.
(cherry picked from commit b8b99603)
Closes #3176 (closed)