diff --git a/synapse/federation/replication.py b/synapse/federation/replication.py
index 2346d55045..9363ac7300 100644
--- a/synapse/federation/replication.py
+++ b/synapse/federation/replication.py
@@ -319,7 +319,7 @@ class ReplicationLayer(object):
if hasattr(transaction, "edus"):
for edu in [Edu(**x) for x in transaction.edus]:
- self.received_edu(edu.origin, edu.edu_type, edu.content)
+ self.received_edu(transaction.origin, edu.edu_type, edu.content)
results = yield defer.DeferredList(dl)
diff --git a/synapse/federation/units.py b/synapse/federation/units.py
index ecca35ac43..d97aeb698e 100644
--- a/synapse/federation/units.py
+++ b/synapse/federation/units.py
@@ -156,11 +156,15 @@ class Edu(JsonEncodedObject):
]
required_keys = [
- "origin",
- "destination",
"edu_type",
]
+# TODO: SYN-103: Remove "origin" and "destination" keys.
+# internal_keys = [
+# "origin",
+# "destination",
+# ]
+
class Transaction(JsonEncodedObject):
""" A transaction is a list of Pdus and Edus to be sent to a remote home
diff --git a/tests/federation/test_federation.py b/tests/federation/test_federation.py
index 8d277d6612..d86ce83b28 100644
--- a/tests/federation/test_federation.py
+++ b/tests/federation/test_federation.py
@@ -211,6 +211,7 @@ class FederationTestCase(unittest.TestCase):
"pdus": [],
"edus": [
{
+ # TODO: SYN-103: Remove "origin" and "destination"
"origin": "test",
"destination": "remote",
"edu_type": "m.test",
diff --git a/tests/handlers/test_presence.py b/tests/handlers/test_presence.py
index 15022b8d05..84985a8066 100644
--- a/tests/handlers/test_presence.py
+++ b/tests/handlers/test_presence.py
@@ -43,6 +43,7 @@ def _expect_edu(destination, edu_type, content, origin="test"):
"pdus": [],
"edus": [
{
+ # TODO: SYN-103: Remove "origin" and "destination" keys.
"origin": origin,
"destination": destination,
"edu_type": edu_type,
diff --git a/tests/handlers/test_typing.py b/tests/handlers/test_typing.py
index 064b04c217..b685373deb 100644
--- a/tests/handlers/test_typing.py
+++ b/tests/handlers/test_typing.py
@@ -33,6 +33,7 @@ def _expect_edu(destination, edu_type, content, origin="test"):
"pdus": [],
"edus": [
{
+ # TODO: SYN-103: Remove "origin" and "destination" keys.
"origin": origin,
"destination": destination,
"edu_type": edu_type,
|