Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1253623
| From | Robert Dolca <robert.dolca@intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v4 08/10] nfc: nci: fix possible crash in nci_core_conn_create |
| Date | 2015-10-22 11:20 +0200 |
| Message-ID | <qmkcq-6lH-25@gated-at.bofh.it> (permalink) |
| References | <qmkcp-6lH-9@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
If the number of destination speific parameters supplied is 0 the call will fail. If the first destination specific parameter does not have a value, curr_id will be set to 0. Signed-off-by: Robert Dolca <robert.dolca@intel.com> --- net/nfc/nci/core.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/net/nfc/nci/core.c b/net/nfc/nci/core.c index f66a5da..9d5f7a2 100644 --- a/net/nfc/nci/core.c +++ b/net/nfc/nci/core.c @@ -602,12 +602,19 @@ int nci_core_conn_create(struct nci_dev *ndev, u8 destination_type, if (!cmd) return -ENOMEM; + if (!number_destination_params) + return -EINVAL; + cmd->destination_type = destination_type; cmd->number_destination_params = number_destination_params; memcpy(cmd->params, params, params_len); data.cmd = cmd; - ndev->cur_id = params->value[DEST_SPEC_PARAMS_ID_INDEX]; + + if (params->length > 0) + ndev->cur_id = params->value[DEST_SPEC_PARAMS_ID_INDEX]; + else + ndev->cur_id = 0; r = __nci_request(ndev, nci_core_conn_create_req, (unsigned long)&data, -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
[PATCH v4 08/10] nfc: nci: fix possible crash in nci_core_conn_create Robert Dolca <robert.dolca@intel.com> - 2015-10-22 11:20 +0200
csiph-web