nr rlc: bugfix: fix NACK with range
We do some sanity checks for incoming rlc control packets. One of them is to check that so_start is not > so_end when present.
But when 'range' is present and bigger than 1 it means that so_start refers to one PDU and so_end to another one. So we may well have so_start > so_end.
This commit fixes that and reorganizes a bit the code to do the check before processing and rejecting the PDU if the values are not correct. (Before this commit we were NACKing the whole PDUs if so_start > so_end.)