mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2025-05-28 09:32:11 -04:00
Allow backslashes in event field filters
Fixes a bug introduced in https://github.com/matrix-org/synapse/pull/1783 which meant that single backslashes were not allowed in event field filters. The intention here is to allow single-backslashes, but disallow double-backslashes.
This commit is contained in:
parent
e0b9d5f0af
commit
7e07d25ed6
3 changed files with 16 additions and 2 deletions
|
@ -60,7 +60,7 @@ class FilteringTestCase(unittest.TestCase):
|
|||
invalid_filters = [
|
||||
{"boom": {}},
|
||||
{"account_data": "Hello World"},
|
||||
{"event_fields": ["\\foo"]},
|
||||
{"event_fields": [r"\\foo"]},
|
||||
{"room": {"timeline": {"limit": 0}, "state": {"not_bars": ["*"]}}},
|
||||
{"event_format": "other"},
|
||||
{"room": {"not_rooms": ["#foo:pik-test"]}},
|
||||
|
@ -109,6 +109,16 @@ class FilteringTestCase(unittest.TestCase):
|
|||
"event_format": "client",
|
||||
"event_fields": ["type", "content", "sender"],
|
||||
},
|
||||
|
||||
# a single backslash should be permitted (though it is debatable whether
|
||||
# it should be permitted before anything other than `.`, and what that
|
||||
# actually means)
|
||||
#
|
||||
# (note that event_fields is implemented in
|
||||
# synapse.events.utils.serialize_event, and so whether this actually works
|
||||
# is tested elsewhere. We just want to check that it is allowed through the
|
||||
# filter validation)
|
||||
{"event_fields": [r"foo\.bar"]},
|
||||
]
|
||||
for filter in valid_filters:
|
||||
try:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue