diff --git a/src/api.c b/src/api.c
index 4db97dd..19cbbd1 100644
--- a/src/api.c
+++ b/src/api.c
@@ -903,7 +903,7 @@
  * with the help of the primary VM.
  */
 static void deliver_msg(struct vm_locked to, struct vm_locked from,
-			uint32_t size, struct vcpu *current, struct vcpu **next)
+			struct vcpu *current, struct vcpu **next)
 {
 	struct spci_value primary_ret = {
 		.func = SPCI_MSG_SEND_32,
@@ -916,7 +916,8 @@
 		 * Only tell the primary VM the size if the message is for it,
 		 * to avoid leaking data about messages for other VMs.
 		 */
-		primary_ret.arg3 = size;
+		primary_ret.arg3 = to.vm->mailbox.recv_size;
+		primary_ret.arg4 = to.vm->mailbox.recv_attributes;
 
 		to.vm->mailbox.state = MAILBOX_STATE_READ;
 		*next = api_switch_to_primary(current, primary_ret,
@@ -1064,8 +1065,7 @@
 		ret = (struct spci_value){.func = SPCI_SUCCESS_32};
 	}
 
-	deliver_msg(vm_to_from_lock.vm1, vm_to_from_lock.vm2, size, current,
-		    next);
+	deliver_msg(vm_to_from_lock.vm1, vm_to_from_lock.vm2, current, next);
 
 out:
 	vm_unlock(&vm_to_from_lock.vm1);
diff --git a/test/vmapi/primary_with_secondaries/memory_sharing.c b/test/vmapi/primary_with_secondaries/memory_sharing.c
index bbd1c92..7723b4f 100644
--- a/test/vmapi/primary_with_secondaries/memory_sharing.c
+++ b/test/vmapi/primary_with_secondaries/memory_sharing.c
@@ -510,6 +510,8 @@
 	/* Have the memory be given. */
 	run_res = spci_run(SERVICE_VM1, 0);
 	EXPECT_EQ(run_res.func, SPCI_MSG_SEND_32);
+	EXPECT_EQ(spci_msg_send_attributes(run_res),
+		  SPCI_MSG_SEND_LEGACY_MEMORY);
 
 	/* Check the memory was cleared. */
 	memory_region = spci_get_memory_region(mb.recv);
@@ -540,6 +542,8 @@
 	/* Have the memory be lent. */
 	run_res = spci_run(SERVICE_VM1, 0);
 	EXPECT_EQ(run_res.func, SPCI_MSG_SEND_32);
+	EXPECT_EQ(spci_msg_send_attributes(run_res),
+		  SPCI_MSG_SEND_LEGACY_MEMORY);
 
 	/* Check the memory was cleared. */
 	memory_region = spci_get_memory_region(mb.recv);
