summaryrefslogtreecommitdiff
path: root/drivers/crypto
diff options
context:
space:
mode:
authorMichael Bestas <mkbestas@lineageos.org>2020-12-09 20:52:59 +0200
committerMichael Bestas <mkbestas@lineageos.org>2020-12-09 20:52:59 +0200
commit7b1ec6c9c1ad407744d6480da1ef9d650679e831 (patch)
treed31f3414e510917cdde91dacc9c4dea5e4d32325 /drivers/crypto
parent6107aa6dc24cc8c196bb18e5b5ec81f8f1a275a8 (diff)
parent0d6f3a76cfb07190719a68f7e73890f530427b91 (diff)
Merge tag 'LA.UM.8.4.r1-06200-8x98.0' of https://source.codeaurora.org/quic/la/kernel/msm-4.4 into lineage-17.1-caf-msm8998
* tag 'LA.UM.8.4.r1-06200-8x98.0' of https://source.codeaurora.org/quic/la/kernel/msm-4.4: crypto: Fix possible stack out of bound error ASoC: sdm660_cdc: Fix ear_pa_gain control soc: qcom: service-locator: Free PD list after client use cfg80211: Enhance the AKM advertizement to support per interface msm: kgsl: Don't wait for room in context queue when context is invalidated msm: kgsl: Don't allow re-importing memory owned by KGSL usb: dwc3: ep0: Return from handle_status if ep0_delegate_req succeeds scsi: ufs: Flush exception event before suspend msm: ipa: Fix deleting the routing entries mm-camera2:isp2: Add support for 12bit-plain16 raw format Revert "ipv6: defrag: drop non-last frags smaller than min mtu" usb: dwc3: ep0: Return from handle_status if ep0_delegate_req succeeds Change-Id: Ifcb5f033b250feaa41c4916bbbec757334e3429e
Diffstat (limited to 'drivers/crypto')
-rw-r--r--drivers/crypto/msm/qce50.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/crypto/msm/qce50.c b/drivers/crypto/msm/qce50.c
index 598b1aa0f4d7..7740a8c59126 100644
--- a/drivers/crypto/msm/qce50.c
+++ b/drivers/crypto/msm/qce50.c
@@ -1,6 +1,6 @@
/* Qualcomm Crypto Engine driver.
*
- * Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2018, 2020 The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
@@ -846,6 +846,11 @@ static int _ce_setup_cipher(struct qce_device *pce_dev, struct qce_req *creq,
switch (creq->alg) {
case CIPHER_ALG_DES:
if (creq->mode != QCE_MODE_ECB) {
+ if (ivsize > MAX_IV_LENGTH) {
+ pr_err("%s: error: Invalid length parameter\n",
+ __func__);
+ return -EINVAL;
+ }
_byte_stream_to_net_words(enciv32, creq->iv, ivsize);
pce = cmdlistinfo->encr_cntr_iv;
pce->data = enciv32[0];