Работаю над ядерным модулем, где добавляется «новый» Ethernet заголовок к оригинальному пакету:
..[EtherType][DataLength][T|L|Payload][T|L|Payload][T|L|Payload]... [OriginalPacket]
То есть за заголовком следуют данные в формате TLV. Необходимо создать код для проверки TLV, то есть чтобы некорректно построенный пакет не мог бы грохнуть модуль. Например, я проверяю что DataLength не более skb->len. Что еще можете посоветовать для валидации,