Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp3004857ybi; Mon, 17 Jun 2019 14:30:07 -0700 (PDT) X-Google-Smtp-Source: APXvYqxeoBihkaMBu4Wun2lx/Nd4V0ArvmW3VVsEGGW1SNxuv+rEivc89ktCtZgyE1SdJhqaoGQ7 X-Received: by 2002:aa7:8294:: with SMTP id s20mr106480349pfm.75.1560807007429; Mon, 17 Jun 2019 14:30:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560807007; cv=none; d=google.com; s=arc-20160816; b=kGEWgxbBy7m/EJ+4IR8HDQT5UmCMgVc2AcZ68lEvKNOI8GfYfcpcHz2oO2/JYoNbG6 R7qbKlBR8yG+2XTVIXlLosJPRR+aLTmux6AxaHS603JPg6SDbWGg7y9V2Yb5PQjzCBCP n2OiG9rCCuNq9l7WsOYyKL7mevkocklxDouRbC1zbqzXic9/2+eP8uLdh1a/BaSDbC0D X9Ss3loPtf01bgJkQbVfwgUhZ1YQvjeGqHpCGPsmxMz+aVAdLtjaPm2yQvE2MuG4AKmL euoU5GvstWsvM2Pqv/RocH+z44z/df6nZ3tminlxbny1D1YXp5f/dTgTIA7VsfQ5J6eO qoFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=cXfAoA+HxOnMfkWs9oUU/hDrBkGYT468rA6C7yhpP+w=; b=spCOsro+PE7dNs1ZvhYo61yJmrv0Mwn0pMR+vh4xYD8ijrpkYgyyVARKx7Ygjqn4vU vh5FXi986xoZQA/qjVdTPYygpS4lLijP3WuskHSNF/CzKZfKuH1Qxzm+MgAvCGoaMEyh 3mt1UuNZQtzwZo3BeNl30QjfIFbYaoxQnoK/H1mljd85pKC3gEb+RP6d8VYhmKhciMyX YFeuaI98X2xKOc4cE14LH1M3gmSQV8CQMtIBSw38iacFeH31Dkx6jLH2f4bLhRTY7h9I cf6Imd4UKBwuJLABSppS7dfaE4xyHFt+Nhy5px5P8jYnm84GEaRQZl55GUsGYg8n8usx Gu+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XmM1yvRg; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c9si318198pjq.61.2019.06.17.14.29.52; Mon, 17 Jun 2019 14:30:07 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=XmM1yvRg; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730482AbfFQV2C (ORCPT + 99 others); Mon, 17 Jun 2019 17:28:02 -0400 Received: from mail.kernel.org ([198.145.29.99]:55098 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730471AbfFQV2A (ORCPT ); Mon, 17 Jun 2019 17:28:00 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 5B2EA2070B; Mon, 17 Jun 2019 21:27:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1560806879; bh=fbGvPZ25gCe7rEIKGfc4261fjQ3/MdtuSPcqtlbZJsw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=XmM1yvRghidSaS7x+wmzshPbZpZyj5oFtvYgFxjZazLYP3AiPLrRLv5m/VdgmYCKF lGuhis2Llgv45wuUw4ZTxLot/0BWvuuKcFeYzFk4RjZNr/Ag5huVtnrWy5Mmh7BJAp vQxoOYHLGwQjB5+LAY611QQmNxRmE6PkpHWx7BxI= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Hans Verkuil , Hans de Goede , Mauro Carvalho Chehab , Naresh Kamboju Subject: [PATCH 4.14 14/53] media: v4l2-ioctl: clear fields in s_parm Date: Mon, 17 Jun 2019 23:09:57 +0200 Message-Id: <20190617210747.955616944@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190617210745.104187490@linuxfoundation.org> References: <20190617210745.104187490@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Hans Verkuil commit 8a7c5594c02022ca5fa7fb603e11b3e1feb76ed5 upstream. Zero the reserved capture/output array. Zero the extendedmode (it is never used in drivers). Clear all flags in capture/outputmode except for V4L2_MODE_HIGHQUALITY, as that is the only valid flag. Signed-off-by: Hans Verkuil Reviewed-by: Hans de Goede Signed-off-by: Mauro Carvalho Chehab Cc: Naresh Kamboju Signed-off-by: Greg Kroah-Hartman --- drivers/media/v4l2-core/v4l2-ioctl.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -1945,7 +1945,22 @@ static int v4l_s_parm(const struct v4l2_ struct v4l2_streamparm *p = arg; int ret = check_fmt(file, p->type); - return ret ? ret : ops->vidioc_s_parm(file, fh, p); + if (ret) + return ret; + + /* Note: extendedmode is never used in drivers */ + if (V4L2_TYPE_IS_OUTPUT(p->type)) { + memset(p->parm.output.reserved, 0, + sizeof(p->parm.output.reserved)); + p->parm.output.extendedmode = 0; + p->parm.output.outputmode &= V4L2_MODE_HIGHQUALITY; + } else { + memset(p->parm.capture.reserved, 0, + sizeof(p->parm.capture.reserved)); + p->parm.capture.extendedmode = 0; + p->parm.capture.capturemode &= V4L2_MODE_HIGHQUALITY; + } + return ops->vidioc_s_parm(file, fh, p); } static int v4l_queryctrl(const struct v4l2_ioctl_ops *ops,