Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1b0ccfe5 authored by David S. Miller's avatar David S. Miller
Browse files

Revert "ipv6: Fix protocol resubmission"



This reverts commit 0243508e.

It introduces new regressions.

Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9c5a18a3
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -212,13 +212,13 @@ static int ip6_input_finish(struct sock *sk, struct sk_buff *skb)
	 */

	rcu_read_lock();
resubmit:
	idev = ip6_dst_idev(skb_dst(skb));
	if (!pskb_pull(skb, skb_transport_offset(skb)))
		goto discard;
	nhoff = IP6CB(skb)->nhoff;
	nexthdr = skb_network_header(skb)[nhoff];

resubmit:
	raw = raw6_local_deliver(skb, nexthdr);
	ipprot = rcu_dereference(inet6_protos[nexthdr]);
	if (ipprot) {
@@ -246,12 +246,10 @@ static int ip6_input_finish(struct sock *sk, struct sk_buff *skb)
			goto discard;

		ret = ipprot->handler(skb);
		if (ret < 0) {
			nexthdr = -ret;
		if (ret > 0)
			goto resubmit;
		} else if (ret == 0) {
		else if (ret == 0)
			IP6_INC_STATS_BH(net, idev, IPSTATS_MIB_INDELIVERS);
		}
	} else {
		if (!raw) {
			if (xfrm6_policy_check(NULL, XFRM_POLICY_IN, skb)) {