- 12 Jan, 2016 1 commit
-
-
Guus der Kinderen authored
-
- 08 Jan, 2016 1 commit
-
-
akrherz authored
-
- 06 Jan, 2016 15 commits
-
-
Tom Evans authored
Update dependencies and documentation to prep for pending Openfire 4.0 release.
-
Guus der Kinderen authored
-
Guus der Kinderen authored
Instead of rerequesting ack for every unack'ed stanza over the threshold, do this only for every few stanzas. This prevents a storm of ack-requests when data is transmitted to the client faster than it can respond.
-
Guus der Kinderen authored
When a peer refuses to ack data, we should not keep it in memory indefinately. This commit introduces a configurable upper bound, and when reached causes the queue to be cleared (dropped silently) while disabling the functionality for that connection.
-
Guus der Kinderen authored
The peer might send unsollicited acks. Instead of requesting ack after every so many stanzas that we send out, only request ack if we have unack'ed stanzas.
-
Guus der Kinderen authored
This commit fixes an overflow issue.
-
Guus der Kinderen authored
To safely determine what stanza has and has not been ack'ed by the peer, store the current value of 'x' with each stanza that's kept. This also allows for proper handling when the peer rolls over X (at x=2^32).
-
Guus der Kinderen authored
Previous commits have applied enough refactoring that it is now no longer needed to expose internal state. This saves on complexity and potential concurrency issues.
-
Guus der Kinderen authored
The 'enabled' field is unneeded - the presence of a namespace also indicates if SM is enabled. Reduces code, saves a little on memory.
-
Guus der Kinderen authored
By moving the processing of Stream Management elements into the StreamManager implementation, duplicated code can be removed.
-
Guus der Kinderen authored
To reduce the chance of lock contention, locks should only be put in effect when the code accesses data that is sensitive to concurrent access.
-
Guus der Kinderen authored
Prevent exposing access to a field that we're careful to modify under lock. Again, a defensive copy is a suitable alternative, but seems unneeded.
-
Guus der Kinderen authored
Do not expose the collection of packets that our implementation modifies only under a mutex (alternatively, we could return a defensive copy instead, but there does not seem to be a need to expose the collection in the first place).
-
Guus der Kinderen authored
Stream (debug) logging is very verbose, but does not provide any context. This commit adds the address of the peer to each log message. Additionally, some javadoc fixes were applied.
-
Christian Schudt authored
The issue is that messages, which get resent from offline storage already have an older timestamp. There should not be another delayed delivery extension, which "overwrites" the old one. Messages looked like that: <message><body>...</body><delay xmlns="urn:xmpp:delay" stamp="2016-01-06T13:48:45.312Z"></delay><delay xmlns="urn:xmpp:delay" stamp="2016-01-06T13:49:56.674Z"></delay></message> Instead the original timestamp should be preserved.
-
- 11 Dec, 2015 1 commit
-
-
Dave Cridland authored
-
- 09 Nov, 2015 1 commit
-
-
Christian Schudt authored
-
- 28 Jul, 2015 1 commit
-
-
Dave Cridland authored
After discussion with Jonny, switched the existing Map to a Deque, and in response to Tom's suggestion, added XEP-0203 (and legacy) delay stamping. Tested using Gajim and Swift; testing the delay stamping was done by disabling the acknowledgement handling to force retransmission.
-
- 27 Jul, 2015 1 commit
-
-
JonnyHeavey authored
-
- 24 Jul, 2015 1 commit
-
-
JonnyHeavey authored
This patch adds a basic, non-resumable, XEP-0198 acking solution. It will redirect "lost" messages to offline storage, but does not attempt to suspend the session, so will not allow any resumptions.
-