summaryrefslogtreecommitdiffstats
path: root/net/nfc
diff options
context:
space:
mode:
authorPan Bian <bianpan2016@163.com>2021-01-21 07:27:48 -0800
committerJakub Kicinski <kuba@kernel.org>2021-01-23 13:34:35 -0800
commit3a30537cee233fb7da302491b28c832247d89bbe (patch)
treec3e01dc6f57c2bfe66469c26028caccc0f13a162 /net/nfc
parentd8f923c3ab96dbbb4e3c22d1afc1dc1d3b195cd8 (diff)
downloadlinux-stable-3a30537cee233fb7da302491b28c832247d89bbe.tar.gz
linux-stable-3a30537cee233fb7da302491b28c832247d89bbe.tar.bz2
linux-stable-3a30537cee233fb7da302491b28c832247d89bbe.zip
NFC: fix resource leak when target index is invalid
Goto to the label put_dev instead of the label error to fix potential resource leak on path that the target index is invalid. Fixes: c4fbb6515a4d ("NFC: The core part should generate the target index") Signed-off-by: Pan Bian <bianpan2016@163.com> Link: https://lore.kernel.org/r/20210121152748.98409-1-bianpan2016@163.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/nfc')
-rw-r--r--net/nfc/rawsock.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/nfc/rawsock.c b/net/nfc/rawsock.c
index 955c195ae14b..9c7eb8455ba8 100644
--- a/net/nfc/rawsock.c
+++ b/net/nfc/rawsock.c
@@ -105,7 +105,7 @@ static int rawsock_connect(struct socket *sock, struct sockaddr *_addr,
if (addr->target_idx > dev->target_next_idx - 1 ||
addr->target_idx < dev->target_next_idx - dev->n_targets) {
rc = -EINVAL;
- goto error;
+ goto put_dev;
}
rc = nfc_activate_target(dev, addr->target_idx, addr->nfc_protocol);