Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp2626904pxb; Thu, 3 Feb 2022 10:27:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJyBLzVQb1A5jglySt+dF6MTEn+T9QUXH1yELMHeIwUdrKS24u8bR6SYeACFsT+siGw9zrU7 X-Received: by 2002:a17:902:7784:: with SMTP id o4mr36375207pll.173.1643912830123; Thu, 03 Feb 2022 10:27:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643912830; cv=none; d=google.com; s=arc-20160816; b=Jt6PKmjuP0OrYyYkTWjY0hHjI308LQnE1fDb3V5ZpqxSxmTaqvmDp20RDEB49MhjPA 8Bm5z0ssNmdEMA8WMEZlGh0+Wiz0FV8v8alQFaSgQmpay1p+AWYcWcIZc9BE5bt0CRqv q3+ExFRT2sRC0TSkWcvDGLH7biF2sF6mNbSmGB+n2WvY2k4i2W+FRbHYLhCJ9Efs+gMW 4XYcZhtTFQaiOCZKLl7D6/KnNf3GdlS4trTupDGTqXh1x/uwebJQOA5qv5O11ilS8Pp0 FhnHROQTGTTOMdB6HKXMl2R7yxT2xcOC4WBXBMSuecff3a5av05+RWEvjkogRwmrma33 i8+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:from :dkim-signature:dkim-signature; bh=GUOM8bvwC+la2NKqFvk2uI9Asw+K/wrTaRpdb2Kdz7U=; b=c4csgcNChw8b/e1Nk8hvN5OpS+6rBZ3f5VVxCWJRdNDEbn5zLekSIxKdso9au2aYe1 KcQhoFsvtXjBOX5ZYj7m8F67PtPgblAJeYw4HiV5LJfxs9cjsQ9tvr5NvHxvSaZ1WLQs SiRNn93XUswr06Mr7twsypcSz8tZtsGcy/ZZg/EJRe2pYmiEY5vZO21mGP+KTnkBlR2n K6+ATZ5vSigcan4W+fv9HsuMy3B+W+iHtrRtgTRmG685l5MGY2OBCR4rgNmtgNgKnzdZ 8zGBQ8+D4WBRuBDcruV1K4zyInoFdDPdZY33p0JX03lY6cAfu0VeHqZAP0rERriXGa/r twSg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@ucr.edu header.s=selector3 header.b=CPFrLbHL; dkim=fail header.i=@ucr.edu header.s=rmail header.b=HrYsDT4A; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ucr.edu Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c8si25644605pgq.34.2022.02.03.10.26.58; Thu, 03 Feb 2022 10:27:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=fail header.i=@ucr.edu header.s=selector3 header.b=CPFrLbHL; dkim=fail header.i=@ucr.edu header.s=rmail header.b=HrYsDT4A; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ucr.edu Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1348200AbiBBX6I (ORCPT + 99 others); Wed, 2 Feb 2022 18:58:08 -0500 Received: from mx-lax3-1.ucr.edu ([169.235.156.35]:12195 "EHLO mx-lax3-1.ucr.edu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348185AbiBBX6G (ORCPT ); Wed, 2 Feb 2022 18:58:06 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ucr.edu; i=@ucr.edu; q=dns/txt; s=selector3; t=1643846286; x=1675382286; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=xYvx8fe8wRHtOQTQUEuPl7xZb+NEUT35cy+DHSkqPn4=; b=CPFrLbHLUEruZERJu8vJSXVoF0H0+jypGndiTU28gwejER9Y9m2iKCaU cm8CKYjsv2nBMeQmMjCyVjdwivrO3rSigtER9g07Enz+jEH1J64rWmrKo jPmVoUhvSdoS+/4eY7rU+gbARDb5n1Szj1CGVdT9S/23xWgR04ynHFEzH vyjWOIYhpX3cfszj9Rb7l6q1FscaV5bOWoNZ7VB75Dn7XPFH5AdK36fxh JbxesJxg1Yv/hYNLFfXADF2rcnoPaXGg2unJdGSQtQr3eDUlBHrRILyRg RXpB2bdj636yLhwHFkIJeOOgegaOmimy3R3tTHKM3huDzxLNoF38XPzKc Q==; X-IronPort-AV: E=Sophos;i="5.88,338,1635231600"; d="scan'208";a="102028824" Received: from mail-pj1-f70.google.com ([209.85.216.70]) by smtp-lax3-1.ucr.edu with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Feb 2022 15:58:06 -0800 Received: by mail-pj1-f70.google.com with SMTP id i10-20020a17090acf8a00b001b82365dbcfso556062pju.0 for ; Wed, 02 Feb 2022 15:58:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ucr.edu; s=rmail; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=GUOM8bvwC+la2NKqFvk2uI9Asw+K/wrTaRpdb2Kdz7U=; b=HrYsDT4AbEktOiXWlPEMn/m7e6zv2dsefdTeMC5C2hJLezPbv+I1/ftDBXrJt6Un0z GqSD3kzgEw3q1pfOdDoOgKDJvmgHKg8NIkh4s4COvIsupoE4p/b9lbZQZ4gbhXZtj7sK 4vUh0ntfzQGjCKF3AZQ0GIBqkvnKIMkIts8xw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=GUOM8bvwC+la2NKqFvk2uI9Asw+K/wrTaRpdb2Kdz7U=; b=Czb0ZL/a9kwF01M/K+m1uGcYQrJMR9X9Xig7kIevNEAP3Enyi5jlLGfHCEPYBeNo3Q lNhdC4RVydHEzUbrtatAQI5YinMNw/Nxh0MElEqlvZwEmlbTyhuEnaqcqz1zQ1YC+U8H KFuD/VbeUK6IEoXrjju8EoFuwQ1wc1FSHXJ+M8fmam5HqAJCylJ3a6tvXWf/Rpm++kNJ WFjZUiBmURfYcEuB2YTzPBtcs2f7bnH3lyM8mbpWQBl1LCGgAakrWOOPzlwVV3JbdUe7 AFGM6TNHrk0NT8JM0w5rvnSiMaC9ZEip+nkIEUNBDGPX6PutilhqOoPL5D66hLsEDevF fogw== X-Gm-Message-State: AOAM530joS2svCLmQcNfR3evX89beQpcD3w/Eo5jLrcQOLp8Uo+Ep4vx R4zlJ53ttdZMwXlfI35/J42u4j7FMkrdTEFZz+LRQYUO1HFX1X68VzYiKzB9sIit+n5ncq1Jzpo g3KULklGyA2VCCw2dTKqaMoEoTg== X-Received: by 2002:a17:903:2310:: with SMTP id d16mr33430925plh.20.1643846285923; Wed, 02 Feb 2022 15:58:05 -0800 (PST) X-Received: by 2002:a17:903:2310:: with SMTP id d16mr33430902plh.20.1643846285669; Wed, 02 Feb 2022 15:58:05 -0800 (PST) Received: from kq.cs.ucr.edu (kq.cs.ucr.edu. [169.235.27.223]) by smtp.googlemail.com with ESMTPSA id b22sm27854781pfl.121.2022.02.02.15.58.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Feb 2022 15:58:05 -0800 (PST) From: Yizhuo Zhai Cc: Yizhuo Zhai , Helge Deller , Daniel Vetter , Sam Ravnborg , Matthew Wilcox , Alex Deucher , Xin Tan , Xiyu Yang , Tetsuo Handa , Zhen Lei , Zheyu Ma , Guenter Roeck , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v6] fbdev: fbmem: Fix the implicit type casting Date: Wed, 2 Feb 2022 15:58:08 -0800 Message-Id: <20220202235811.1621017-1-yzhai003@ucr.edu> X-Mailer: git-send-email 2.25.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit To: unlisted-recipients:; (no To-header on input) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In function do_fb_ioctl(), the "arg" is the type of unsigned long, and in "case FBIOBLANK:" this argument is casted into an int before passig to fb_blank(). In fb_blank(), the comparision if (blank > FB_BLANK_POWERDOWN) would be bypass if the original "arg" is a large number, which is possible because it comes from the user input. Fix this by adding the check before the function call. Signed-off-by: Yizhuo Zhai --- drivers/video/fbdev/core/fbmem.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/video/fbdev/core/fbmem.c b/drivers/video/fbdev/core/fbmem.c index 0fa7ede94fa6..13083ad8d751 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -1160,6 +1160,8 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, ret = fbcon_set_con2fb_map_ioctl(argp); break; case FBIOBLANK: + if (arg > FB_BLANK_POWERDOWN) + return -EINVAL; console_lock(); lock_fb_info(info); ret = fb_blank(info, arg); -- 2.25.1