From 95e22d6798a07f01ad445263f44d6743b13bc2ce Mon Sep 17 00:00:00 2001 From: Guolin Yang Date: Wed, 4 Sep 2013 09:00:12 -0700 Subject: [PATCH] cfm: Fix a memory allocation bug in cfm_get_remove_mpids(). In cfm, when allocating the rmp array, the size is not calculated correctly which cause the remote MPID not correctly updated in ovsdb. This bug was introduced by commit 13b1b2ae70 (cfm: Make the CFM module thread safe.). Signed-off-by: Guolin Yang Signed-off-by: Ben Pfaff --- lib/cfm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/cfm.c b/lib/cfm.c index 297894ea6..4a46c0556 100644 --- a/lib/cfm.c +++ b/lib/cfm.c @@ -862,7 +862,7 @@ cfm_get_remote_mpids(const struct cfm *cfm, uint64_t **rmps, size_t *n_rmps) OVS_EXCLUDED(mutex) { ovs_mutex_lock(&mutex); - *rmps = xmemdup(cfm->rmps_array, cfm->rmps_array_len); + *rmps = xmemdup(cfm->rmps_array, cfm->rmps_array_len * sizeof **rmps); *n_rmps = cfm->rmps_array_len; ovs_mutex_unlock(&mutex); } -- 2.43.0