[dpdk-stable] patch 'ipc: handle more invalid parameter cases' has been queued to LTS release 18.11.2

Kevin Traynor ktraynor at redhat.com
Wed May 8 18:02:10 CEST 2019


Hi,

FYI, your patch has been queued to LTS release 18.11.2

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 05/14/19. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable-queue/commit/0a784ce51f4fbcb7c0cb9f3875c2082fa52639f1

Thanks.

Kevin Traynor

---
>From 0a784ce51f4fbcb7c0cb9f3875c2082fa52639f1 Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov at intel.com>
Date: Mon, 29 Apr 2019 14:59:28 +0100
Subject: [PATCH] ipc: handle more invalid parameter cases

[ upstream commit 6e5d779ecb9acd034f90af1de8f9416832d663d0 ]

Length of buffer and number of fd's to send are signed values, so
they can be negative, but the API doesn't check for that. Fix it
by checking for negative values as well.

Fixes: bacaa2754017 ("eal: add channel for multi-process communication")

Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
---
 lib/librte_eal/common/eal_common_proc.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/lib/librte_eal/common/eal_common_proc.c b/lib/librte_eal/common/eal_common_proc.c
index 6ffd47686..d098803b1 100644
--- a/lib/librte_eal/common/eal_common_proc.c
+++ b/lib/librte_eal/common/eal_common_proc.c
@@ -762,4 +762,16 @@ check_input(const struct rte_mp_msg *msg)
 		return false;
 
+	if (msg->len_param < 0) {
+		RTE_LOG(ERR, EAL, "Message data length is negative\n");
+		rte_errno = EINVAL;
+		return false;
+	}
+
+	if (msg->num_fds < 0) {
+		RTE_LOG(ERR, EAL, "Number of fd's is negative\n");
+		rte_errno = EINVAL;
+		return false;
+	}
+
 	if (msg->len_param > RTE_MP_MAX_PARAM_LEN) {
 		RTE_LOG(ERR, EAL, "Message data is too long\n");
-- 
2.20.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2019-05-08 16:33:58.137455480 +0100
+++ 0013-ipc-handle-more-invalid-parameter-cases.patch	2019-05-08 16:33:57.367579590 +0100
@@ -1 +1 @@
-From 6e5d779ecb9acd034f90af1de8f9416832d663d0 Mon Sep 17 00:00:00 2001
+From 0a784ce51f4fbcb7c0cb9f3875c2082fa52639f1 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 6e5d779ecb9acd034f90af1de8f9416832d663d0 ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org


More information about the stable mailing list