Because I forgot to run it. The function surely crashes or hangs up with corrupted messages, though it never happens unless your kernel generates such corrupted messages. The root cause is simply the lack of check for the length field of TLV-style messages.