2026-01-30, 18:32:49 +0100, Ralf Lici wrote:
> When building the skb_list in ovpn_net_xmit, skb_share_check will free
> the original skb if it is shared. The current implementation continues
> to use the stale skb pointer for subsequent operations:
> - peer lookup,
> - skb_dst_drop (even though all segments produced by skb_gso_segment
>   will have a dst attached),
> - ovpn_peer_stats_increment_tx.
> 
> Fix this by moving the peer lookup and skb_dst_drop before segmentation
> so that the original skb is still valid when used. Return early if all
> segments fail skb_share_check and the list ends up empty.
> Also switch ovpn_peer_stats_increment_tx to use skb_list.next; the next
> patch fixes the stats logic.
> 
> Fixes: 08857b5ec5d9 ("ovpn: implement basic TX path (UDP)")
> Signed-off-by: Ralf Lici <[email protected]>

Reviewed-by: Sabrina Dubroca <[email protected]>

Thanks Ralf.

-- 
Sabrina


_______________________________________________
Openvpn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to