Erik Johnston
|
6c485c282d
|
Catch exceptions when trying to add an entry to rooms tables
|
2014-11-26 16:06:20 +00:00 |
|
Erik Johnston
|
3598c11c8d
|
Correctly handle the case where we get an event for an unknown room, which turns out we are actually in
|
2014-11-26 10:41:08 +00:00 |
|
Erik Johnston
|
64fc859dac
|
Fix bugs in invite/join dances.
We now do more implement more of the auth on the events so that we
don't reject valid events.
|
2014-11-25 17:59:49 +00:00 |
|
Erik Johnston
|
4bd0ab76c6
|
We don't always want to Auth get_persisted_pdu
|
2014-11-24 12:56:17 +00:00 |
|
Mark Haines
|
fd40a80a68
|
Return 404 M_NOT_FOUND when trying to look up a room alias that doesn't exist
|
2014-11-21 15:11:48 +00:00 |
|
Paul "LeoNerd" Evans
|
5f19c55731
|
SYN-58: Allow passing explicit limit=0 to initialSync to request no messages at all; missing still implies default 10
|
2014-11-20 19:33:45 +00:00 |
|
Mark Haines
|
610c2ea131
|
Fix pep8 and pyflakes warnings
|
2014-11-20 18:00:10 +00:00 |
|
David Baker
|
f1c7f8e813
|
Merge branch 'develop' into http_client_refactor
|
2014-11-20 17:49:48 +00:00 |
|
David Baker
|
e377d33652
|
Separate out the matrix http client completely because just about all of its code it now separate from the simple case we need for standard HTTP(S)
|
2014-11-20 17:41:56 +00:00 |
|
Mark Haines
|
db9ce032a4
|
Fix pep8 codestyle warnings
|
2014-11-20 17:26:36 +00:00 |
|
Mark Haines
|
32090aee16
|
Add a few missing yields, Move deferred lists inside PreserveLoggingContext because they don't interact well with the logging contexts
|
2014-11-20 16:24:00 +00:00 |
|
David Baker
|
20326054da
|
Oops, I removed this param.
|
2014-11-20 15:24:38 +00:00 |
|
David Baker
|
dc60eee50e
|
Refactor the HTTP clients a little.
|
2014-11-20 13:53:34 +00:00 |
|
Mark Haines
|
dcb99e4972
|
SYN-153: Fix formatting of federation error message
|
2014-11-20 09:58:23 +00:00 |
|
Erik Johnston
|
415ddf59bb
|
Don't add a 'prev' key to m.room.member messages
|
2014-11-19 17:59:51 +00:00 |
|
Paul "LeoNerd" Evans
|
03dc63f6c8
|
Initialise UserPresenceCache instances to always contain a 'presence' key
|
2014-11-19 17:31:46 +00:00 |
|
Mark Haines
|
8993affdc0
|
SYN-153: Raise 404 if room alias is not found
|
2014-11-19 17:14:14 +00:00 |
|
Mark Haines
|
97c7c34f6f
|
Preserve logging context in a few more places, drop the logging context after it has been stashed to reduce potential for confusion
|
2014-11-19 16:37:43 +00:00 |
|
Mark Haines
|
54c438d8d3
|
Remove unused variable
|
2014-11-18 16:46:12 +00:00 |
|
Paul "LeoNerd" Evans
|
75e95c45a2
|
Rename message handler's new snapshot_room to room_initial_sync() as that better suits its purpose
|
2014-11-18 16:02:44 +00:00 |
|
Paul "LeoNerd" Evans
|
e9f587ecba
|
Merge remote-tracking branch 'origin/develop' into room-initial-sync
|
2014-11-18 15:48:30 +00:00 |
|
Mark Haines
|
b01dd76be1
|
SYN-149: Enable auth for events added during room creation since they should pass auth checks
|
2014-11-18 15:42:53 +00:00 |
|
Mark Haines
|
ae9c2ab165
|
SYN-149: Send join event immediately after the room create event
|
2014-11-18 15:29:48 +00:00 |
|
Paul "LeoNerd" Evans
|
33d328d967
|
Include room members' presence in room initialSync
|
2014-11-18 15:28:58 +00:00 |
|
Paul "LeoNerd" Evans
|
759db7d7d5
|
Added ability to .get_state() from the PresenceHandler by returning a complete m.presence event
|
2014-11-18 15:25:55 +00:00 |
|
Paul "LeoNerd" Evans
|
4c18e08036
|
Don't expect all _user_cachemap entries to definitely contain a "last_active" key
|
2014-11-18 15:10:11 +00:00 |
|
Mark Haines
|
a5b88c489e
|
Split out sending the room alias events from creating the alias so that we can do them in the right point when creating a room
|
2014-11-18 15:03:13 +00:00 |
|
Paul "LeoNerd" Evans
|
17f977a9de
|
Include 'messages' snapshot in room initialSync
|
2014-11-18 14:07:51 +00:00 |
|
Paul "LeoNerd" Evans
|
31a049eb69
|
Merge branch 'develop' into room-initial-sync
Conflicts:
synapse/handlers/message.py
|
2014-11-17 16:59:24 +00:00 |
|
Mark Haines
|
cf45e57d9c
|
SYN-148: Add the alias after creating the room
|
2014-11-17 16:37:33 +00:00 |
|
Mark Haines
|
2eaf689f71
|
These lines aren't doing anything
|
2014-11-17 10:41:35 +00:00 |
|
Mark Haines
|
cb4b6c844a
|
Merge PDUs and Events into one object
|
2014-11-14 21:25:02 +00:00 |
|
Mark Haines
|
8c2b5ea7c4
|
Fix PDU and event signatures
|
2014-11-14 19:11:04 +00:00 |
|
Mark Haines
|
de1ec90133
|
Validate signatures on incoming events
|
2014-11-14 19:11:04 +00:00 |
|
Erik Johnston
|
b2596c660b
|
Add a few more comments to the federation handler
|
2014-11-12 16:20:30 +00:00 |
|
Erik Johnston
|
6fea478d2e
|
Fix bugs with invites/joins across federatiom.
Both in terms of auth and not trying to fetch missing PDUs for invites,
joins etc.
|
2014-11-12 11:24:11 +00:00 |
|
Erik Johnston
|
61ecb13bf0
|
PEP8ify
|
2014-11-11 18:00:13 +00:00 |
|
Erik Johnston
|
37900a92db
|
Only allow people in a room to look up room state.
|
2014-11-11 17:55:32 +00:00 |
|
Erik Johnston
|
3db2c0d43e
|
Rename annotate_state_groups to annotate_event_with_state
|
2014-11-11 16:58:53 +00:00 |
|
Erik Johnston
|
5ff0bfb81d
|
Fix bug where we /always/ created a new state group
|
2014-11-11 14:16:41 +00:00 |
|
Paul "LeoNerd" Evans
|
c23afed39a
|
Include room membership in room initialSync
|
2014-11-10 19:34:47 +00:00 |
|
Paul "LeoNerd" Evans
|
1fd8139138
|
Put room state in room initialSync output - I guess this is right; I really can't find any other tests similar...
|
2014-11-10 19:29:58 +00:00 |
|
Paul "LeoNerd" Evans
|
269f80bf8e
|
Have room initialSync return the room's room_id
|
2014-11-10 19:02:19 +00:00 |
|
Erik Johnston
|
a8e565eca8
|
Add an EventValidator. Fix bugs in auth ++ storage
|
2014-11-10 18:25:42 +00:00 |
|
Erik Johnston
|
5d439b127b
|
PEP8
|
2014-11-10 13:46:44 +00:00 |
|
Erik Johnston
|
003668cfaa
|
Add auth to the various server-server APIs
|
2014-11-10 13:37:24 +00:00 |
|
Erik Johnston
|
6447db063a
|
Fix backfill to work. Add auth to backfill request
|
2014-11-10 11:59:51 +00:00 |
|
Erik Johnston
|
65f846ade0
|
Notify users about invites.
|
2014-11-10 11:15:02 +00:00 |
|
Erik Johnston
|
07286a73b1
|
Use current state to get room hosts, rather than querying the database
|
2014-11-07 16:03:31 +00:00 |
|
Erik Johnston
|
02c3b1c9e2
|
Add '/event_auth/' federation api
|
2014-11-07 15:35:53 +00:00 |
|
Erik Johnston
|
d2fb2b8095
|
Implement invite part of invite join dance
|
2014-11-07 13:41:00 +00:00 |
|
Erik Johnston
|
3b4dec442d
|
Return auth chain when handling send_join
|
2014-11-07 11:22:12 +00:00 |
|
Erik Johnston
|
49948d72f3
|
Fix joining over federation
|
2014-11-07 10:53:38 +00:00 |
|
Erik Johnston
|
bf6b72eb55
|
Start implementing auth chains
|
2014-11-07 10:53:38 +00:00 |
|
Erik Johnston
|
351c64e99e
|
Amalgamate all power levels.
Remove concept of reqired power levels, something similiar can be done
using the new power level event.
|
2014-11-06 16:59:13 +00:00 |
|
Erik Johnston
|
233969bb58
|
Update to use replaces_state rather than prev_state
|
2014-11-06 15:25:03 +00:00 |
|
Erik Johnston
|
4317c8e583
|
Implement new replace_state and changed prev_state
`prev_state` is now a list of previous state ids, similiar to
prev_events. `replace_state` now points to what we think was replaced.
|
2014-11-06 15:10:55 +00:00 |
|
Erik Johnston
|
96c001e668
|
Fix auth checks to all use the given old_event_state
|
2014-11-05 11:07:54 +00:00 |
|
Erik Johnston
|
dfb3d21a6d
|
Fix room handler tests
|
2014-11-04 17:12:39 +00:00 |
|
Erik Johnston
|
da4a09f977
|
Don't bother locking
|
2014-11-04 16:51:23 +00:00 |
|
Erik Johnston
|
2a49f177fe
|
On AuthError, raise a FederationError
|
2014-11-04 15:10:43 +00:00 |
|
Erik Johnston
|
aa76bf39ab
|
Remove unused imports
|
2014-11-04 14:14:02 +00:00 |
|
Erik Johnston
|
ad6eacb3e9
|
Rename PDU fields to match that of events.
|
2014-11-03 13:06:58 +00:00 |
|
Erik Johnston
|
7249785bcb
|
Sign events we create.
|
2014-11-03 11:33:28 +00:00 |
|
Erik Johnston
|
7a07263281
|
Merge branch 'develop' of github.com:matrix-org/synapse into federation_authorization
|
2014-11-03 10:17:37 +00:00 |
|
Erik Johnston
|
1c6825cc7a
|
Use python logger, not the twisted logger
|
2014-11-03 10:16:28 +00:00 |
|
Erik Johnston
|
21fe249d62
|
Actually don't store any PDUs
|
2014-10-31 10:47:34 +00:00 |
|
Erik Johnston
|
f2de2d644a
|
Move the impl of backfill to use events.
|
2014-10-31 09:59:02 +00:00 |
|
Erik Johnston
|
12ce441e67
|
Convert event ids to be of the form :example.com
|
2014-10-30 17:00:11 +00:00 |
|
Erik Johnston
|
da511334d2
|
Make federation return the old current state, so that we can use it to do auth
|
2014-10-30 11:53:35 +00:00 |
|
Erik Johnston
|
ef9c4476a0
|
Merge branch 'develop' of github.com:matrix-org/synapse into federation_authorization
|
2014-10-30 11:18:28 +00:00 |
|
Mark Haines
|
7d709542ca
|
Fix pep8 warnings
|
2014-10-30 11:10:17 +00:00 |
|
Erik Johnston
|
e7858b6d7e
|
Start filling out and using new events tables
|
2014-10-29 16:59:24 +00:00 |
|
Paul "LeoNerd" Evans
|
b1ee6fd7ed
|
Fix an off-by-one bug in presence event stream pagination; this might be responsible for any number of bug reports
|
2014-10-29 16:16:01 +00:00 |
|
Paul "LeoNerd" Evans
|
d6bcffa929
|
Construct a source-specific 'SourcePaginationConfig' to pass into get_pagination_rows; meaning each source doesn't have to care about its own name any more
|
2014-10-29 16:16:01 +00:00 |
|
Paul "LeoNerd" Evans
|
c5a25f610a
|
Remove redundant (and incorrect) presence pagination fetching code
|
2014-10-29 16:16:01 +00:00 |
|
Mark Haines
|
4841b6d4ba
|
Remove duplicate join_event from create_room
|
2014-10-27 16:55:51 +00:00 |
|
Erik Johnston
|
bb4a20174c
|
Merge branch 'develop' of github.com:matrix-org/synapse into federation_authorization
Conflicts:
synapse/federation/transport.py
synapse/handlers/message.py
|
2014-10-27 10:20:44 +00:00 |
|
Mark Haines
|
4be99c2989
|
Add get_json method to 3pid http client. Better logging for errors in 3pid requests
|
2014-10-20 14:10:08 +01:00 |
|
Erik Johnston
|
bf8cdda2f5
|
It doesn't want a dict
|
2014-10-17 20:10:34 +01:00 |
|
Erik Johnston
|
b3b1961496
|
Fix bug where people could join private rooms
|
2014-10-17 19:37:41 +01:00 |
|
Erik Johnston
|
5ffe5ab43f
|
Use state groups to get current state. Make join dance actually work.
|
2014-10-17 18:56:42 +01:00 |
|
Mark Haines
|
456017e0ae
|
SPEC-7: Don't stamp event contents with 'hsob_ts'
|
2014-10-17 16:55:55 +01:00 |
|
Erik Johnston
|
f71627567b
|
Finish implementing the new join dance.
|
2014-10-17 15:04:17 +01:00 |
|
Erik Johnston
|
1116f5330e
|
Start implementing the invite/join dance. Continue moving auth to use event.state_events
|
2014-10-16 16:56:51 +01:00 |
|
Erik Johnston
|
e7bc1291a0
|
Begin making auth use event.old_state_events
|
2014-10-15 16:06:59 +01:00 |
|
Mark Haines
|
b9cdc443d7
|
Fix pyflakes errors
|
2014-10-02 14:37:30 +01:00 |
|
Mark Haines
|
574377636e
|
Add a keyword argument to get_json to avoid retrying on DNS failures. Rather than passing MatrixHttpClient.RETRY_DNS_LOOKUP_FAILURES as a fake query string parameter
|
2014-10-02 14:26:13 +01:00 |
|
Mark Haines
|
4f11518934
|
Split PlainHttpClient into separate clients for talking to Identity servers and talking to Capatcha servers
|
2014-10-02 14:03:26 +01:00 |
|
Erik Johnston
|
e06adc6d7e
|
SYN-2: Allow server admins to delete room aliases
|
2014-09-30 11:31:42 +01:00 |
|
Erik Johnston
|
3ccb17ce59
|
SYN-48: Implement WHOIS rest servlet
|
2014-09-29 14:59:52 +01:00 |
|
Erik Johnston
|
37bfe44046
|
Merge branch 'deletions' of github.com:matrix-org/synapse into develop
|
2014-09-25 17:02:53 +01:00 |
|
Erik Johnston
|
1ca51c8586
|
SYN-46: An invite received from fedearation didn't wake up the event stream for the invited user.
|
2014-09-25 13:01:05 +01:00 |
|
Erik Johnston
|
72eb360f2d
|
Don't set the room name to be the room alias on room creation if the client didn't supply a name
|
2014-09-24 16:59:57 +01:00 |
|
Erik Johnston
|
70899d3ab2
|
Rename deletions to redactions
|
2014-09-24 15:27:59 +01:00 |
|
Erik Johnston
|
bc250a6afa
|
SYN-12: Implement auth for deletion by adding a 'delete_level' on the ops levels event
SYN-12 # comment Auth has been added.
|
2014-09-23 17:36:24 +01:00 |
|
Kegan Dougal
|
0c4ae63ad5
|
Implemented /rooms/$roomid/state API.
|
2014-09-23 15:35:58 +01:00 |
|
Kegan Dougal
|
c707b7d128
|
SYWEB-3 : Added 'visibility' key to rooms returned via /initialSync
|
2014-09-17 16:09:07 +01:00 |
|
Erik Johnston
|
b6818fd4d2
|
SYN-40: When a user updates their displayname or avatar update all their join events for all the rooms they are currently in.
|
2014-09-17 15:05:14 +01:00 |
|
Kegan Dougal
|
cc83b06cd1
|
Added support for the HS to send emails. Use it to send password resets. Added email_smtp_server and email_from_address config args. Added emailutils.
|
2014-09-16 12:36:39 +01:00 |
|
Kegan Dougal
|
5f30a69a9e
|
Added PasswordResetRestServlet. Hit the IS to confirm the email/user. Need to send email.
|
2014-09-16 11:22:40 +01:00 |
|
Erik Johnston
|
59516a8bb1
|
Correctly handle receiving 'missing' Pdus from federation, rather than just discarding them.
|
2014-09-15 16:40:44 +01:00 |
|
Erik Johnston
|
e639a3516d
|
Improve logging in federation handler.
|
2014-09-15 16:24:03 +01:00 |
|
Kegan Dougal
|
14bc4ed59f
|
Merge branch 'develop' of github.com:matrix-org/synapse into registration-api-changes in preparation for re-merge to develop.
|
2014-09-15 15:27:58 +01:00 |
|
Erik Johnston
|
5bd9369a62
|
Correctly handle the 'age' key in events and pdus
|
2014-09-15 13:26:11 +01:00 |
|
Kegan Dougal
|
285ecaacd0
|
Split out password/captcha/email logic.
|
2014-09-15 12:42:36 +01:00 |
|
Kegan Dougal
|
76fe7d4eba
|
Added num_joined_users key to /publicRooms for each room. Show this information in the webclient.
|
2014-09-08 12:15:29 -07:00 |
|
Erik Johnston
|
768ff1a850
|
Fix race in presence handler where we evicted things from cache while handling a key therein
|
2014-09-08 11:28:50 +02:00 |
|
Kegan Dougal
|
1a298aad9c
|
Added captcha support on both the HS and web client.
Merge branch 'captcha' of github.com:matrix-org/synapse into develop
|
2014-09-05 23:32:51 -07:00 |
|
Kegan Dougal
|
b5749c75d9
|
Reload captchas when they fail. Cleanup on success.
|
2014-09-05 23:08:39 -07:00 |
|
Kegan Dougal
|
3ea6f01b4e
|
80 chars please
|
2014-09-05 22:55:29 -07:00 |
|
Kegan Dougal
|
37e53513b6
|
Add config opion for XFF headers when performing ReCaptcha auth.
|
2014-09-05 22:51:11 -07:00 |
|
Kegan Dougal
|
1829b55bb0
|
Captchas now work on registration. Missing x-forwarded-for config arg support. Missing reloading a new captcha on the web client / displaying a sensible error message.
|
2014-09-05 19:18:23 -07:00 |
|
Erik Johnston
|
f47f42090d
|
Add support for inviting people when you create a room
|
2014-09-06 01:10:07 +01:00 |
|
Erik Johnston
|
9dd4570b68
|
Generate m.room.aliases event when the HS creates a room alias
|
2014-09-05 21:35:56 +01:00 |
|
Erik Johnston
|
95037d8d9d
|
Change the default power levels to be 0, 50 and 100
|
2014-09-05 17:13:03 +01:00 |
|
Erik Johnston
|
bcaea74352
|
Error code must be an integer
|
2014-09-03 19:19:24 +01:00 |
|
Erik Johnston
|
c9d1ee24ca
|
Import SynapseError
|
2014-09-03 19:15:55 +01:00 |
|
Erik Johnston
|
9b18151104
|
Handle timeouts slightly nicer.
|
2014-09-03 19:13:41 +01:00 |
|
Erik Johnston
|
5b645f9d34
|
Don't do auth for change_membership in federation handler, it doesn't work and federation doesn't do auth in general either. Add a hacky timeout when trying to join a remote room.
|
2014-09-03 19:08:39 +01:00 |
|
Erik Johnston
|
dce6395395
|
When creating a room and a user supplies a room_alias but no name, use the room_alias as the name.
|
2014-09-03 18:52:34 +01:00 |
|
David Baker
|
d72ce4da64
|
Merge branch 'develop' of github.com:matrix-org/synapse into develop
Conflicts:
synapse/http/client.py
|
2014-09-03 18:25:17 +01:00 |
|
David Baker
|
d6ecbbdf0a
|
Add support for registering with a threepid to the HS (get credentials from the client and check them against an ID server).
|
2014-09-03 18:22:27 +01:00 |
|
Matthew Hodgson
|
8a7c1d6a00
|
fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org hasn't been incorporated in time for launch.
|
2014-09-03 17:31:57 +01:00 |
|
Erik Johnston
|
30bcbc433a
|
Fix up directory server to not require uploading room hosts. Update the room hosts table with the current room hosts (if we have them) on GET.
|
2014-09-03 16:04:27 +01:00 |
|
Erik Johnston
|
e4c40158c5
|
Snapshot prev_state for generic events
|
2014-09-03 15:48:51 +01:00 |
|
Paul "LeoNerd" Evans
|
cda31fb755
|
Kill the state
... key from all the Presence messages
|
2014-09-03 15:37:10 +01:00 |
|
Paul "LeoNerd" Evans
|
dada11dc5f
|
Bugfix for back-pagination of presence
|
2014-09-03 15:28:03 +01:00 |
|
Kegan Dougal
|
7fc84c7019
|
Make retrying requests on DNS failures configurable, and turn off retrying only in directory.get_association
|
2014-09-03 14:26:52 +01:00 |
|
Paul "LeoNerd" Evans
|
da31b96b55
|
Implement presence state visibilty limiting when polling eventsource for stream
|
2014-09-03 13:46:52 +01:00 |
|
Kegan Dougal
|
c54d8df504
|
Update API docs to use 'presence' key not 'state'. Fixed error messages when setting presence.
|
2014-09-03 11:45:30 +01:00 |
|
Kegan Dougal
|
65693e9e15
|
Fixed GET /events/$id to be not broken.
|
2014-09-03 11:24:45 +01:00 |
|
Paul "LeoNerd" Evans
|
da3e04df8b
|
Rename the 'do_users_share_a_room' to something slightly less verb-sounding
|
2014-09-03 10:40:48 +01:00 |
|
Paul "LeoNerd" Evans
|
ddf3ca7ab3
|
Neater is_presence_visible() code
|
2014-09-03 10:40:21 +01:00 |
|
Mark Haines
|
c6eafdfbaf
|
Add copyright notices and fix pyflakes errors
|
2014-09-03 09:43:11 +01:00 |
|
Mark Haines
|
112c7ea315
|
Set status message for ratelimit error responses
|
2014-09-03 09:37:44 +01:00 |
|
Mark Haines
|
30ad0c5674
|
Merge branch 'ratelimiting' into develop
|
2014-09-03 09:15:52 +01:00 |
|
Mark Haines
|
683596f91e
|
Raise LimitExceedError when the ratelimiting is throttling requests
|
2014-09-03 08:58:48 +01:00 |
|
Mark Haines
|
780548b577
|
rate limiting for message sending
|
2014-09-02 18:22:15 +01:00 |
|
Mark Haines
|
c7a7cdf734
|
Add ratelimiting function to basehandler
|
2014-09-02 17:57:04 +01:00 |
|
Paul "LeoNerd" Evans
|
d9d6fbb085
|
Safer handling of incoming presence EDUs that may or maynot contain 'presence' or 'state'
|
2014-09-02 11:17:43 +01:00 |
|
Paul "LeoNerd" Evans
|
7b56a7a3cb
|
'continue' to go to the next item in a for loop, not 'break'
|
2014-09-02 11:15:46 +01:00 |
|
Erik Johnston
|
10e7821461
|
By default, only room ops can change the name and topic.
|
2014-09-02 11:11:47 +01:00 |
|
Erik Johnston
|
ed25abe05f
|
Add message to assertion
|
2014-09-02 10:58:33 +01:00 |
|
Erik Johnston
|
040d985908
|
Add support for setting room name and topic when creating rooms
|
2014-09-02 10:02:14 +01:00 |
|
Paul "LeoNerd" Evans
|
270d302834
|
Reënable presence visibility permission checking now it's not used on redundant code paths
|
2014-09-01 22:15:02 +01:00 |
|
Paul "LeoNerd" Evans
|
32fdf8efd6
|
No need to test is_presence_visible in _start_polling_local because we know it will be by when it's called
|
2014-09-01 22:15:02 +01:00 |
|
Erik Johnston
|
48142a01dd
|
Don't set a 'default' key in the creation event
|
2014-09-01 20:39:43 +01:00 |
|
Erik Johnston
|
6d28560626
|
Don't put required power levels on permission state events
|
2014-09-01 20:27:45 +01:00 |
|
Erik Johnston
|
b8ab9f1c0a
|
Add all the necessary checks to make banning work.
|
2014-09-01 18:24:56 +01:00 |
|