You are correct. What I had failed to see is the try_again case with
multiple corruped datagrams. In this case the code is not correct,
len could already have been modified in the previous
iteration. Reverting the commit is the sanest option. Thank you.