The current code resets the network header pointer to the beginning of the skb, which is wrong. The skb's linear section starts with the MAC header, followed by the IP header.
This is not an issue as long as the kernel's IP stack passes the skb unmodified to the network interface for egress. If the flow in intercepted by an nft hook, however, the correctness of the header pointers matters.
The current code resets the network header pointer to the beginning of the skb, which is wrong. The skb's linear section starts with the MAC header, followed by the IP header.
This is not an issue as long as the kernel's IP stack passes the skb unmodified to the network interface for egress. If the flow in intercepted by an nft hook, however, the correctness of the header pointers matters.