From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 21488C433FE for ; Wed, 2 Feb 2022 23:17:29 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1348053AbiBBXR2 (ORCPT ); Wed, 2 Feb 2022 18:17:28 -0500 Received: from mx-lax3-1.ucr.edu ([169.235.156.35]:5130 "EHLO mx-lax3-1.ucr.edu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239155AbiBBXRY (ORCPT ); Wed, 2 Feb 2022 18:17:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ucr.edu; i=@ucr.edu; q=dns/txt; s=selector3; t=1643843845; x=1675379845; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XA4HzDe0AEvwI/VRCaorqRe1KBJyowOMBeCxGfa6hn4=; b=RYGSZ8zv3ITIOjgDjJ8slDBjBbOHHtZ5odt60X8gi+e1dtGoJ5RIZh0X cgmLQ999y6X2IFhJTdYtfpwqgxvvlnL0Cv0ys+R7Bfot0DIbyGbjevw81 0bvk9056Rj3HZNeCqF4VEOrcunbJ8EpvDuhcFwJyhO91brrNYi2gizOdE +KMWR9u21R4W4syKY3PwrEmewj9kpmrl0aJLwpY5o6XTzzrO3kttMPXjD c7FpydZLEyzCbTsk8oR3cdcxkJV7zIQfYQ6Lx63zNPqSovKNAKFhGzp9o mFmyx22mze0Nse9XJQIQ1sx8evyr1r7SNZm3q8PxoiRI7v3zYoXFBz6va g==; X-IronPort-AV: E=Sophos;i="5.88,338,1635231600"; d="scan'208";a="102019921" Received: from mail-pl1-f200.google.com ([209.85.214.200]) by smtp-lax3-1.ucr.edu with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Feb 2022 15:17:25 -0800 Received: by mail-pl1-f200.google.com with SMTP id k7-20020a170902ba8700b0014c7e2870d4so136747pls.21 for ; Wed, 02 Feb 2022 15:17:24 -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=x0gpjDLXaul+KimMP/te05qJYZBYJvmQ+lbw67iuhZI=; b=FLTFy7FMQp58INHLttCuIHz294nTMtd3aPRvSF4FjqWZkgzHuAVT593n57gr6D3wr9 4So2/UsjM0gDmRsmqeuunUSEgE4Kov61tpxCHiUoF4ry6ArVAmuwNLKe8BL9PEdP3Ru3 MjqLnU4S6ttaaqm14Expc2Ep0ssiU9Ny3LUTM= 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=x0gpjDLXaul+KimMP/te05qJYZBYJvmQ+lbw67iuhZI=; b=SpVMBi8GvK5xOLx+QgfnLsMguM3uZGY9BNSMJVnl8HV9bmza25LgDaRouzNywIA4kE MwBZZ11bNI8asIYkBzoYQ1bGGnzugpDc2aP8BphmdKWe0d1524g+YyP4ohwnNvORAEmB ut2gCtbcR+ODocFzsLqxzMkEVd5T7dB3E+5oq+md6aiUJO5vo+V7bR8QqwG09ApjLFAp le/O+5C0vMc4L6PGdnELWTvQemUoXhxKdIcalkCWlztmZIquHRnvsXW7diX+j2SXNaqF 0Us5L3fRx4id0FhtvlAsm6szQsiQ+Szkh+uKyqKxCL0LVDXrdSwxwECVrRaOWfyLu/F/ NwPg== X-Gm-Message-State: AOAM530xrIaniSGw8hUXezBFhXAW+5eHQ6TNzaIRaXQyW9+dkNpAWqE6 1gUp7WF3VwmJ9abJSu5pS6Fr5opofihqJMuOCHgAC/TENpMSAhfCHZ0nNZuD3fBDiYbaDaADN8E dMkK5bD49jBVyT73cqNNWPExSng== X-Received: by 2002:a17:903:2307:: with SMTP id d7mr34166968plh.52.1643843844241; Wed, 02 Feb 2022 15:17:24 -0800 (PST) X-Google-Smtp-Source: ABdhPJxysLdmzckR8L/Q+cSNZ4JMxUGdQpQyEn+58bq1m8yYLz88d/OhDa7N65YARWKJRnqVgxOtgA== X-Received: by 2002:a17:903:2307:: with SMTP id d7mr34166950plh.52.1643843844033; Wed, 02 Feb 2022 15:17:24 -0800 (PST) Received: from kq.cs.ucr.edu (kq.cs.ucr.edu. [169.235.27.223]) by smtp.googlemail.com with ESMTPSA id j14sm27383525pfj.218.2022.02.02.15.17.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Feb 2022 15:17:23 -0800 (PST) From: Yizhuo Zhai Cc: Yizhuo Zhai , Helge Deller , Daniel Vetter , Matthew Wilcox , Sam Ravnborg , Alex Deucher , Guenter Roeck , Zheyu Ma , Tetsuo Handa , Zhen Lei , Xiyu Yang , linux-fbdev@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: [PATCH v4] fbdev: fbmem: Fix the implicit type casting Date: Wed, 2 Feb 2022 15:16:34 -0800 Message-Id: <20220202231636.1433050-2-yzhai003@ucr.edu> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220202231636.1433050-1-yzhai003@ucr.edu> References: <882bfe4e-a5b6-2b2c-167b-eda8c08419e3@gmx.de> <20220202231636.1433050-1-yzhai003@ucr.edu> 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..b3352e23caaa 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -1162,6 +1162,8 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, case FBIOBLANK: console_lock(); lock_fb_info(info); + if (arg > FB_BLANK_POWERDOWN) + return -EINVAL; ret = fb_blank(info, arg); /* might again call into fb_blank */ fbcon_fb_blanked(info, arg); -- 2.25.1 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CA472C433EF for ; Wed, 2 Feb 2022 23:17:32 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B15FF10E634; Wed, 2 Feb 2022 23:17:26 +0000 (UTC) Received: from mx5.ucr.edu (mx5.ucr.edu [138.23.62.67]) by gabe.freedesktop.org (Postfix) with ESMTPS id 4AAED10E634 for ; Wed, 2 Feb 2022 23:17:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=ucr.edu; i=@ucr.edu; q=dns/txt; s=selector3; t=1643843845; x=1675379845; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=XA4HzDe0AEvwI/VRCaorqRe1KBJyowOMBeCxGfa6hn4=; b=RYGSZ8zv3ITIOjgDjJ8slDBjBbOHHtZ5odt60X8gi+e1dtGoJ5RIZh0X cgmLQ999y6X2IFhJTdYtfpwqgxvvlnL0Cv0ys+R7Bfot0DIbyGbjevw81 0bvk9056Rj3HZNeCqF4VEOrcunbJ8EpvDuhcFwJyhO91brrNYi2gizOdE +KMWR9u21R4W4syKY3PwrEmewj9kpmrl0aJLwpY5o6XTzzrO3kttMPXjD c7FpydZLEyzCbTsk8oR3cdcxkJV7zIQfYQ6Lx63zNPqSovKNAKFhGzp9o mFmyx22mze0Nse9XJQIQ1sx8evyr1r7SNZm3q8PxoiRI7v3zYoXFBz6va g==; X-IronPort-AV: E=Sophos;i="5.88,338,1635231600"; d="scan'208";a="273432924" Received: from mail-pl1-f198.google.com ([209.85.214.198]) by smtpmx5.ucr.edu with ESMTP/TLS/ECDHE-RSA-AES128-GCM-SHA256; 02 Feb 2022 15:17:25 -0800 Received: by mail-pl1-f198.google.com with SMTP id p5-20020a170902bd0500b00148cb2d29ecso147477pls.4 for ; Wed, 02 Feb 2022 15:17:24 -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=x0gpjDLXaul+KimMP/te05qJYZBYJvmQ+lbw67iuhZI=; b=FLTFy7FMQp58INHLttCuIHz294nTMtd3aPRvSF4FjqWZkgzHuAVT593n57gr6D3wr9 4So2/UsjM0gDmRsmqeuunUSEgE4Kov61tpxCHiUoF4ry6ArVAmuwNLKe8BL9PEdP3Ru3 MjqLnU4S6ttaaqm14Expc2Ep0ssiU9Ny3LUTM= 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=x0gpjDLXaul+KimMP/te05qJYZBYJvmQ+lbw67iuhZI=; b=LcTdkXUEwfNcfoEuYVyzzA8XTyCxUY2YVQJxrIy/wQs3z/4kWhtF/LYV9kDp1ZJZt5 kVN1GkNFQwYimbbc//HO1lfsXMu8cQv81k6kALFRVuPFuXSJ17eQkcktA+GjRCHVQ+JO V9Gp68XjRXD4qwZ+OlzRVdyEP8AhAcdiSwQE9I62Y74rXiCTyvxH2YxzZZ1qEU7DqZ2c yTDAwP1BNIcgGxW1xraP4+kMjHmNAkiz6ub6TMdcR/JrMy+OgKboT26mu5Cx0qNeeClE WtDeGOjFBi11en1DF2DIQLITaTeDhKVyXhfbdzBZxzCijU/iasrH/XmcG0ZncGJ7RFob xH0w== X-Gm-Message-State: AOAM533sylqK94BDcUrmE2A1B9vZg4msMVKs666/EzoNVbcxSmal5oFg QMdE6kD+utKSZADzzF9W+r/S34/sqIlV7NXCiCerj9/D2AyTNAHNdnV8P0xI2tTUc8hwt0PCRET oo9Dm7blD2RP7opfFVYvMuYOunAU/0w== X-Received: by 2002:a17:903:2307:: with SMTP id d7mr34166962plh.52.1643843844240; Wed, 02 Feb 2022 15:17:24 -0800 (PST) X-Google-Smtp-Source: ABdhPJxysLdmzckR8L/Q+cSNZ4JMxUGdQpQyEn+58bq1m8yYLz88d/OhDa7N65YARWKJRnqVgxOtgA== X-Received: by 2002:a17:903:2307:: with SMTP id d7mr34166950plh.52.1643843844033; Wed, 02 Feb 2022 15:17:24 -0800 (PST) Received: from kq.cs.ucr.edu (kq.cs.ucr.edu. [169.235.27.223]) by smtp.googlemail.com with ESMTPSA id j14sm27383525pfj.218.2022.02.02.15.17.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Feb 2022 15:17:23 -0800 (PST) From: Yizhuo Zhai To: Subject: [PATCH v4] fbdev: fbmem: Fix the implicit type casting Date: Wed, 2 Feb 2022 15:16:34 -0800 Message-Id: <20220202231636.1433050-2-yzhai003@ucr.edu> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220202231636.1433050-1-yzhai003@ucr.edu> References: <882bfe4e-a5b6-2b2c-167b-eda8c08419e3@gmx.de> <20220202231636.1433050-1-yzhai003@ucr.edu> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-fbdev@vger.kernel.org, Xiyu Yang , Tetsuo Handa , Daniel Vetter , Helge Deller , Zheyu Ma , linux-kernel@vger.kernel.org, Matthew Wilcox , Yizhuo Zhai , dri-devel@lists.freedesktop.org, Zhen Lei , Alex Deucher , Sam Ravnborg , Guenter Roeck Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" 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..b3352e23caaa 100644 --- a/drivers/video/fbdev/core/fbmem.c +++ b/drivers/video/fbdev/core/fbmem.c @@ -1162,6 +1162,8 @@ static long do_fb_ioctl(struct fb_info *info, unsigned int cmd, case FBIOBLANK: console_lock(); lock_fb_info(info); + if (arg > FB_BLANK_POWERDOWN) + return -EINVAL; ret = fb_blank(info, arg); /* might again call into fb_blank */ fbcon_fb_blanked(info, arg); -- 2.25.1