f73daf4d1c
fix(core): Fix getting stuck on invalid stream ends
...
Whenever the stream ends in a weird state, for example with
`<some-tag`, initiating a new stream will confuse the XML parser
and lead errors causing the connection to get stuck.
To fix this, we had to work around xml's extension methods and implement
the extensions in the new "stream parser" where we can reset the parser
(and by reset I mean replace) and thus continue with a fresh parsing state
whenever we reconnect (or connect).
2023-05-06 20:58:34 +02:00
a8693da262
chore(xep): Formatting
2023-04-09 13:17:21 +02:00
0fb66f6aca
fix(xep,core): Fix some reconnection issues
...
- Use handleError instead of directly invoking onFailure
- Stop the ack timer only when we receive ack responses
- NoConnectionPossibleErrors are not irrecoverable
2023-04-09 13:14:53 +02:00
c9173c49bd
feat(tests): Add a MUC component for testing
2023-04-09 13:14:30 +02:00
2de1126fa9
fix(example): Remove useDirectTLS
2023-04-09 13:14:06 +02:00
4d312b2100
chore(docs): Update changelog
2023-04-07 15:28:43 +02:00
c1ad646905
fix(core,xep): Fix multiple issues
...
- Fix a deadlock in the RandomBackoffReconnectionPolicy on failure
- Fix enablement of stream management happening too early
2023-04-07 15:26:49 +02:00
c88ab940c4
release: Version 0.3.1
2023-04-05 13:20:16 +02:00
916be1c927
fix(core): Fix components' stanza matching
2023-04-05 13:17:18 +02:00
5c47c35a46
chore(docs): Bump version of derivation
2023-04-04 16:03:42 +02:00
7f3538875b
feat(core): Make all managers optional
2023-04-04 15:59:07 +02:00
f6efa20ff4
chore(meta): Bump versions
2023-04-04 15:55:52 +02:00
8443411f07
fix(docs): XEP-0144 -> XEP-0114
2023-04-04 15:53:57 +02:00
dc24b3c48a
chore(core): Remove useDirectTLS
2023-04-04 15:52:56 +02:00
f6abf3d5b5
feat(xep): Implement XEP-0114
2023-04-04 15:48:26 +02:00
63c84d9479
feat(core): Allow tracking the stream id
2023-04-03 23:18:10 +02:00
3e43ac22d7
feat(core): Remove getter and setter for connectionSettings
2023-04-03 17:56:31 +02:00
47d821c02e
docs(core): Add comments to NegotiationsHandler
2023-04-03 16:17:09 +02:00
355d580a9a
fix(tests): Fix negotiator tests
2023-04-03 16:15:46 +02:00
03328bdf7a
feat(core): Allow implementing different negotiation strategies
...
Fixes #27 .
2023-04-03 16:05:20 +02:00
275d6e0346
feat(core): Attempt to improve the ReconnectionPolicy
2023-04-03 13:40:13 +02:00
0d9afd546c
feat(core): Remove ignoreLock
2023-04-03 12:47:38 +02:00
3da334b5cf
feat(core): Remove the connection lock
2023-04-03 12:46:15 +02:00
2947e2c539
Merge pull request 'SASL2 and friends' ( #34 ) from feat/sasl2 into master
...
Reviewed-on: https://codeberg.org/moxxy/moxxmpp/pulls/34
2023-04-02 21:36:02 +00:00
ac8433f51f
chore(core): Refactor RFC6120 implementations
2023-04-02 23:33:53 +02:00
808371b271
chore(tests): Fix tests
2023-04-02 23:23:50 +02:00
7fdd83ea69
chore(xep): Clean the SASL2 implementation
2023-04-02 23:06:02 +02:00
68e2a65dcf
docs(tests): Mention that we need prosody-trunk
2023-04-02 19:49:00 +02:00
d977a74446
feat(tests): Add an integration test for SASL2
2023-04-02 17:20:14 +02:00
29f0419154
feat(meta): Remove log redaction
2023-04-02 14:38:32 +02:00
b354ca8d0a
feat(xep): Improve the ergonomics of Bind2 negotiators
2023-04-02 13:39:43 +02:00
ec6b5ab753
feat(xep): Allow inline enablement of carbons
2023-04-02 12:44:09 +02:00
ce1815d1f3
fix(tests): Fix namespace of <bound />
2023-04-02 12:43:28 +02:00
fbb495dc2f
feat(xep): Allow inlining CSI
2023-04-01 23:16:37 +02:00
4a6aa79e56
fix(xep): When using FAST, fallback to other SASL mechanisms on failure
2023-04-01 21:42:52 +02:00
0033d0eb6e
feat(xep): Implement FAST
2023-04-01 21:10:46 +02:00
24cb05f91b
feat(xep): Handle inline stream enablement with Bind2
2023-04-01 17:38:40 +02:00
91f763ac26
feat(xep): Allow negotiating SM enabling inline with Bind2
2023-04-01 17:16:29 +02:00
51edb61443
feat(xep): Implement SASL2 inline stream resumption
2023-04-01 15:50:13 +02:00
4e01d32e90
feat(xep): Allow setting a tag when using Bind2
2023-04-01 13:15:46 +02:00
f2fe06104c
fix(core): Fix formatting
2023-04-01 13:13:19 +02:00
89fe8f0a9c
feat(core): Make the PresenceManager optional
2023-04-01 13:09:43 +02:00
9358175925
feat(xep): Inline resource binding with Bind2
2023-04-01 13:00:35 +02:00
564a237986
feat(xep): Set the resource if SASL2 resulted in a resource
2023-04-01 12:51:26 +02:00
cf425917cf
feat(core): Reset the resource if lastResource is null
2023-04-01 12:39:15 +02:00
63b7abd6f9
fix(core): Prevent resource binding if we already have a resource
2023-04-01 12:38:18 +02:00
f460e5ebe9
feat(core): Handle less resource binding in the core connection class
2023-04-01 12:28:11 +02:00
af8bc606d6
feat(xep): Guard against random data in the SASL2 result
2023-04-01 00:51:51 +02:00
30482c86f0
feat(xep): Implement inline negotiation
2023-04-01 00:47:45 +02:00
f86dbe6af8
feat(core): Verify the server signature with SASL2
2023-03-31 23:52:48 +02:00