From patchwork Thu Jan 15 00:50:11 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Hongyang X-Patchwork-Id: 18564 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by ozlabs.org (Postfix) with ESMTP id F2456DE10D for ; Thu, 15 Jan 2009 11:50:19 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753351AbZAOAuQ (ORCPT ); Wed, 14 Jan 2009 19:50:16 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752732AbZAOAuO (ORCPT ); Wed, 14 Jan 2009 19:50:14 -0500 Received: from cn.fujitsu.com ([222.73.24.84]:55349 "EHLO song.cn.fujitsu.com" rhost-flags-OK-FAIL-OK-OK) by vger.kernel.org with ESMTP id S1752513AbZAOAuM (ORCPT ); Wed, 14 Jan 2009 19:50:12 -0500 Received: from tang.cn.fujitsu.com (tang.cn.fujitsu.com [10.167.250.3]) by song.cn.fujitsu.com (Postfix) with ESMTP id 14AA2170138; Thu, 15 Jan 2009 09:15:09 +0800 (CST) Received: from fnst.cn.fujitsu.com (localhost.localdomain [127.0.0.1]) by tang.cn.fujitsu.com (8.13.1/8.13.1) with ESMTP id n0F0oFSh009601; Thu, 15 Jan 2009 08:50:15 +0800 Received: from localhost.localdomain (unknown [10.167.141.200]) by fnst.cn.fujitsu.com (Postfix) with ESMTPA id 043E3D43FC; Thu, 15 Jan 2009 08:49:49 +0800 (CST) Message-ID: <496E8843.8000906@cn.fujitsu.com> Date: Thu, 15 Jan 2009 08:50:11 +0800 From: Yang Hongyang User-Agent: Thunderbird 2.0.0.17 (X11/20081009) MIME-Version: 1.0 To: Herbert Xu , davem@davemloft.net CC: Shan Wei , Wei Yongjun , netdev@vger.kernel.org Subject: Re: [PATCHv2]IPv6:remove duplicate check when setsockopt with IPV6_PKTINFO option References: <20090114034711.GA8361@gondor.apana.org.au> <496D61FE.7080500@cn.fujitsu.com> <496D651B.2000106@cn.fujitsu.com> <496D77B8.2000001@cn.fujitsu.com> <496DA1D1.2050005@cn.fujitsu.com> In-Reply-To: <496DA1D1.2050005@cn.fujitsu.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Actually the condition (optlen == 0) is included in (optlen < sizeof(struct in6_pktinfo)), so we do not need to check it separately. We don't need to check (optval==NULL) either,because copy_from_user() will do the job. Signed-off-by: Yang Hongyang --- net/ipv6/ipv6_sockglue.c | 4 +--- 1 files changed, 1 insertions(+), 3 deletions(-) diff --git a/net/ipv6/ipv6_sockglue.c b/net/ipv6/ipv6_sockglue.c index 40f3246..1c203b6 100644 --- a/net/ipv6/ipv6_sockglue.c +++ b/net/ipv6/ipv6_sockglue.c @@ -399,9 +399,7 @@ sticky_done: { struct in6_pktinfo pkt; - if (optlen == 0) - goto e_inval; - else if (optlen < sizeof(struct in6_pktinfo) || optval == NULL) + if (optlen < sizeof(struct in6_pktinfo)) goto e_inval; if (copy_from_user(&pkt, optval, sizeof(struct in6_pktinfo))) {