瀏覽代碼

[IPV6]: Fix unbalanced socket reference with MSG_CONFIRM.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
YOSHIFUJI Hideaki 17 年之前
父節點
當前提交
3ef9d943d2
共有 1 個文件被更改,包括 1 次插入2 次删除
  1. 1 2
      net/ipv6/raw.c

+ 1 - 2
net/ipv6/raw.c

@@ -882,11 +882,10 @@ back_from_confirm:
 			ip6_flush_pending_frames(sk);
 			ip6_flush_pending_frames(sk);
 		else if (!(msg->msg_flags & MSG_MORE))
 		else if (!(msg->msg_flags & MSG_MORE))
 			err = rawv6_push_pending_frames(sk, &fl, rp);
 			err = rawv6_push_pending_frames(sk, &fl, rp);
+		release_sock(sk);
 	}
 	}
 done:
 done:
 	dst_release(dst);
 	dst_release(dst);
-	if (!inet->hdrincl)
-		release_sock(sk);
 out:
 out:
 	fl6_sock_release(flowlabel);
 	fl6_sock_release(flowlabel);
 	return err<0?err:len;
 	return err<0?err:len;