From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Arturo Giusti <koredump@protonmail.com>, Jan Kara <jack@suse.cz>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH AUTOSEL 4.9 10/35] udf: Fix NULL pointer dereference in udf_symlink function
Date: Tue, 6 Jul 2021 07:28:22 -0400 [thread overview]
Message-ID: <20210706112848.2066036-10-sashal@kernel.org> (raw)
In-Reply-To: <20210706112848.2066036-1-sashal@kernel.org>
From: Arturo Giusti <koredump@protonmail.com>
[ Upstream commit fa236c2b2d4436d9f19ee4e5d5924e90ffd7bb43 ]
In function udf_symlink, epos.bh is assigned with the value returned
by udf_tgetblk. The function udf_tgetblk is defined in udf/misc.c
and returns the value of sb_getblk function that could be NULL.
Then, epos.bh is used without any check, causing a possible
NULL pointer dereference when sb_getblk fails.
This fix adds a check to validate the value of epos.bh.
Link: https://bugzilla.kernel.org/show_bug.cgi?id=213083
Signed-off-by: Arturo Giusti <koredump@protonmail.com>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
fs/udf/namei.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/fs/udf/namei.c b/fs/udf/namei.c
index 348b922d1b6a..bfa53dead8c8 100644
--- a/fs/udf/namei.c
+++ b/fs/udf/namei.c
@@ -956,6 +956,10 @@ static int udf_symlink(struct inode *dir, struct dentry *dentry,
iinfo->i_location.partitionReferenceNum,
0);
epos.bh = udf_tgetblk(sb, block);
+ if (unlikely(!epos.bh)) {
+ err = -ENOMEM;
+ goto out_no_entry;
+ }
lock_buffer(epos.bh);
memset(epos.bh->b_data, 0x00, bsize);
set_buffer_uptodate(epos.bh);
--
2.30.2
next prev parent reply other threads:[~2021-07-06 12:02 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-06 11:28 [PATCH AUTOSEL 4.9 01/35] net: pch_gbe: Use proper accessors to BE data in pch_ptp_match() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 02/35] hugetlb: clear huge pte during flush function on mips platform Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 03/35] atm: iphase: fix possible use-after-free in ia_module_exit() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 04/35] mISDN: fix possible use-after-free in HFC_cleanup() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 05/35] atm: nicstar: Fix possible use-after-free in nicstar_cleanup() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 06/35] net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 07/35] reiserfs: add check for invalid 1st journal block Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 08/35] drm/virtio: Fixes a potential NULL pointer dereference on probe failure Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 09/35] drm/virtio: Fix double free " Sasha Levin
2021-07-06 11:28 ` Sasha Levin [this message]
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 11/35] e100: handle eeprom as little endian Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 12/35] clk: tegra: Ensure that PLLU configuration is applied properly Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 13/35] ipv6: use prandom_u32() for ID generation Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 14/35] RDMA/cxgb4: Fix missing error code in create_qp() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 15/35] dm space maps: don't reset space map allocation cursor when committing Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 16/35] net: micrel: check return value after calling platform_get_resource() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 17/35] net: moxa: Use devm_platform_get_and_ioremap_resource() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 18/35] fjes: check return value after calling platform_get_resource() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 19/35] selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 20/35] xfrm: Fix error reporting in xfrm_state_construct Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 21/35] wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 22/35] wl1251: Fix possible buffer overflow in wl1251_cmd_scan Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 23/35] cw1200: add missing MODULE_DEVICE_TABLE Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 24/35] MIPS: add PMD table accounting into MIPS'pmd_alloc_one Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 25/35] atm: nicstar: use 'dma_free_coherent' instead of 'kfree' Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 26/35] atm: nicstar: register the interrupt handler in the right place Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 27/35] RDMA/rxe: Don't overwrite errno from ib_umem_get() Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 28/35] sfc: avoid double pci_remove of VFs Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 29/35] sfc: error code if SRIOV cannot be disabled Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 30/35] wireless: wext-spy: Fix out-of-bounds warning Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 31/35] RDMA/cma: Fix rdma_resolve_route() memory leak Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 32/35] Bluetooth: Fix the HCI to MGMT status conversion table Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 33/35] Bluetooth: Shutdown controller after workqueues are flushed or cancelled Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 34/35] Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc Sasha Levin
2021-07-06 11:28 ` [PATCH AUTOSEL 4.9 35/35] sctp: add size validation when walking chunks Sasha Levin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210706112848.2066036-10-sashal@kernel.org \
--to=sashal@kernel.org \
--cc=jack@suse.cz \
--cc=koredump@protonmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox