diff --git a/docker/proxy/proxy b/docker/proxy/proxy
new file mode 100755
index 0000000000..8d94082137
--- /dev/null
+++ b/docker/proxy/proxy
Binary files differdiff --git a/synapse/event_auth.py b/synapse/event_auth.py
index c81d8e6729..f41ad3b63b 100644
--- a/synapse/event_auth.py
+++ b/synapse/event_auth.py
@@ -46,7 +46,7 @@ def check(event, auth_events, do_sig_check=True, do_size_check=True):
if not hasattr(event, "room_id"):
raise AuthError(500, "Event has no room_id: %s" % event)
- if do_sig_check:
+ if False and do_sig_check: # Disable all sig checks for meshsim
sender_domain = get_domain_from_id(event.sender)
event_id_domain = get_domain_from_id(event.event_id)
diff --git a/synapse/federation/transaction_queue.py b/synapse/federation/transaction_queue.py
index 099ace28c1..c021add936 100644
--- a/synapse/federation/transaction_queue.py
+++ b/synapse/federation/transaction_queue.py
@@ -519,7 +519,7 @@ class TransactionQueue(object):
except FederationDeniedError as e:
logger.info(e)
except Exception as e:
- logger.warn(
+ logger.exception(
"TX [%s] Failed to send transaction: %s",
destination,
e,
@@ -575,6 +575,7 @@ class TransactionQueue(object):
success = True
logger.debug("TX [%s] _attempt_new_transaction", destination)
+ logger.debug("TX [%s] _attempt_new_transaction", destination)
txn_id = str(self._next_txn_id)
diff --git a/synapse/federation/units.py b/synapse/federation/units.py
index 025a79c022..d278475d9a 100644
--- a/synapse/federation/units.py
+++ b/synapse/federation/units.py
@@ -117,6 +117,26 @@ class Transaction(JsonEncodedObject):
"Require 'transaction_id' to construct a Transaction"
)
- kwargs["pdus"] = [p.get_pdu_json() for p in pdus]
+ kwargs["pdus"] = [
+ _mangle_pdu(p.get_pdu_json())
+ for p in pdus
+ ]
return Transaction(**kwargs)
+
+
+def _mangle_pdu(pdu_json):
+ pdu_json.pop("hashes", None)
+ pdu_json.pop("signatures", None)
+
+ pdu_json["auth_events"] = list(_strip_hashes(pdu_json["auth_events"]))
+ pdu_json["prev_events"] = list(_strip_hashes(pdu_json["prev_events"]))
+
+ return pdu_json
+
+
+def _strip_hashes(iterable):
+ return (
+ (e, {})
+ for e, hashes in iterable
+ )
|