[Bridge] [PATCH] net: fix bridge multicast packet checksum validation

David Miller davem at davemloft.net
Thu Feb 18 20:35:42 UTC 2016


From: Linus Lüssing <linus.luessing at c0d3.blue>
Date: Mon, 15 Feb 2016 03:07:06 +0100

> @@ -4084,10 +4089,22 @@ struct sk_buff *skb_checksum_trimmed(struct sk_buff *skb,
>  	if (!pskb_may_pull(skb_chk, offset))
>  		goto err;
>  
> -	__skb_pull(skb_chk, offset);
> +	ip_summed = skb->ip_summed;
> +	csum_valid = skb->csum_valid;
> +	csum_level = skb->csum_level;
> +	csum_bad = skb->csum_bad;
> +	csum = skb->csum;
> +
> +	skb_pull_rcsum(skb_chk, offset);
>  	ret = skb_chkf(skb_chk);
>  	__skb_push(skb_chk, offset);
>  
> +	skb->ip_summed = ip_summed;
> +	skb->csum_valid = csum_valid;
> +	skb->csum_level = csum_level;
> +	skb->csum_bad = csum_bad;
> +	skb->csum = csum;
> +

There really has to be a better way to fix this :-/


More information about the Bridge mailing list