Front load the protocol type check so we do not wind up creating listeners of types that are not usable for this interface (for example, UDP). Fixes #8647.
FinalizeBlock