| From 3a30537cee233fb7da302491b28c832247d89bbe Mon Sep 17 00:00:00 2001 |
| From: Pan Bian <bianpan2016@163.com> |
| Date: Thu, 21 Jan 2021 07:27:48 -0800 |
| Subject: NFC: fix resource leak when target index is invalid |
| |
| From: Pan Bian <bianpan2016@163.com> |
| |
| commit 3a30537cee233fb7da302491b28c832247d89bbe upstream. |
| |
| 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> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| net/nfc/rawsock.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/net/nfc/rawsock.c |
| +++ b/net/nfc/rawsock.c |
| @@ -117,7 +117,7 @@ static int rawsock_connect(struct socket |
| 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); |