Check memory share recipient.

Bug: 132420445
Change-Id: Ie333e3985633752b9995f0819f6dde71a46fab27
diff --git a/src/spci_architected_message.c b/src/spci_architected_message.c
index 614cd4d..7c9d2b7 100644
--- a/src/spci_architected_message.c
+++ b/src/spci_architected_message.c
@@ -593,6 +593,11 @@
 		return spci_error(SPCI_INVALID_PARAMETERS);
 	}
 
+	/* The recipient must match the message recipient. */
+	if (memory_region->attributes[0].receiver != to_locked.vm->id) {
+		return spci_error(SPCI_INVALID_PARAMETERS);
+	}
+
 	switch (share) {
 	case SPCI_MEMORY_DONATE:
 	case SPCI_MEMORY_LEND: