From patchwork Tue Aug 23 13:41:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luis Henriques X-Patchwork-Id: 661876 X-Patchwork-Delegate: davem@davemloft.net 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.180.67]) by ozlabs.org (Postfix) with ESMTP id 3sJWnP4ZsHz9t0w for ; Tue, 23 Aug 2016 23:41:45 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757821AbcHWNlO (ORCPT ); Tue, 23 Aug 2016 09:41:14 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:34062 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757756AbcHWNlN (ORCPT ); Tue, 23 Aug 2016 09:41:13 -0400 Received: from av-217-129-130-179.netvisao.pt ([217.129.130.179] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.76) (envelope-from ) id 1bcBx0-0005aq-58; Tue, 23 Aug 2016 13:41:10 +0000 From: Luis Henriques To: Avijit Kanti Das Cc: "David S . Miller" , Ben Hutchings , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol() Date: Tue, 23 Aug 2016 14:41:08 +0100 Message-Id: <1471959668-18209-2-git-send-email-luis.henriques@canonical.com> In-Reply-To: <1471959668-18209-1-git-send-email-luis.henriques@canonical.com> References: <1471959668-18209-1-git-send-email-luis.henriques@canonical.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Avijit Kanti Das memset() the structure ethtool_wolinfo that has padded bytes but the padded bytes have not been zeroed out. Change-Id: If3fd2d872a1b1ab9521d937b86a29fc468a8bbfe Signed-off-by: Avijit Kanti Das --- net/core/ethtool.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/core/ethtool.c b/net/core/ethtool.c index 977489820eb9..6bf6362e8114 100644 --- a/net/core/ethtool.c +++ b/net/core/ethtool.c @@ -1435,11 +1435,13 @@ static int ethtool_reset(struct net_device *dev, char __user *useraddr) static int ethtool_get_wol(struct net_device *dev, char __user *useraddr) { - struct ethtool_wolinfo wol = { .cmd = ETHTOOL_GWOL }; + struct ethtool_wolinfo wol; if (!dev->ethtool_ops->get_wol) return -EOPNOTSUPP; + memset(&wol, 0, sizeof(struct ethtool_wolinfo)); + wol.cmd = ETHTOOL_GWOL; dev->ethtool_ops->get_wol(dev, &wol); if (copy_to_user(useraddr, &wol, sizeof(wol)))