decode: remove NULL checks after header casts
Decoders should never be called with a NULL pointer as their
pkt input, yet a common pattern is that a NULL check is done after a cast of this pointer to a header specific type.
We should remove these checks but put a
DEBUG_VALIDATE_BUG_ON(pkt == NULL); at the top of each decode function. This way fuzzing can try to falsify this assumption.