Holger Weiss
ba916c3162
XEP-0198: Fix stanza counting corner case issue
...
Don't forget to count outgoing stanzas that are processed while the
ejabberd_c2s process is already waiting for stream resumption.
2015-12-02 19:25:10 +01:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Christophe Romain
341be9b682
Remove supervisor option, disable it for c2s and muc
2015-11-04 16:24:35 +01:00
Holger Weiss
5e467b96a1
ejabberd_c2s: Let stop/1 close XEP-0198 sessions
...
The stop/1 function now terminates stream management sessions
immediately, just as it does for other sessions. The new
ejabberd_c2s:close/1 function can be used to close the socket without
terminating the stream management session, like stop/1 did before.
2015-10-17 23:15:31 +02:00
Holger Weiss
53bd0ee818
ejabberd_c2s: Close socket when waiting for resume
...
Make sure the socket is closed when mod_ping calls ejabberd_c2s:stop/1
for an XEP-0198 session.
2015-10-17 22:07:29 +02:00
Christophe Romain
6aeb9dcb38
cosmetic cleanup
2015-10-07 14:18:38 +02:00
Evgeniy Khramtsov
c7750689e8
Fix force_update_presence
2015-10-02 16:06:47 +02:00
Holger Weiss
59321ac56e
XEP-0198: Improve handling of non-message stanzas
...
When an XEP-0198 session times out, always return an error for
unacknowledged IQ stanzas, and always drop presence stanzas. That is,
the "resend_on_timeout" option no longer applies to those stanzas types,
but only to messages.
2015-09-15 22:42:22 +02:00
Holger Weiss
5095fdb6b0
New XEP-0198 option: "max_resume_timeout"
...
In the past, the "resume_timeout" option defined both the default resume
timeout and the maximum resume timeout clients are permitted to request.
Admins might want to allow clients to request a timeout value that's
larger than the default, though. This can now be done by specifying the
"max_resume_timeout" option.
2015-09-03 21:20:15 +02:00
Holger Weiss
1048e21643
XEP-0198: Don't add <delay/> tags to IQ stanzas
2015-07-28 21:00:12 +02:00
Paweł Chmielowski
8df134e025
Don't crash web admin when displaying info about websocket using users
2015-07-22 11:54:11 +02:00
Holger Weiss
b7d7dc5201
XEP-0198: Increase timeout during resumption
...
Give gen_fsm:sync_send_all_state_event/3 a little more time to transfer
the (possibly somewhat large) c2s #state during session resumption.
2015-07-03 11:35:22 +02:00
Holger Weiss
5856f6d06a
XEP-0198: Increase default "max_ack_queue" value
...
During login, clients might receive a relatively large number of stanzas
in one go. For some users, the default value of the "max_ack_queue"
option turned out to be too small in that situation.
2015-07-03 11:35:22 +02:00
Evgeniy Khramtsov
83cce468a5
Add MAM (XEP-0313) support
2015-06-22 16:56:08 +03:00
Badlop
1cf2dfe63a
New hide_sensitive_log_data option to hide client IP in log ( #452 #471 )
2015-06-17 11:32:42 +02:00
Alexey Shchepin
2110b929bc
Merge pull request #581 from weiss/dh-param-file
...
New options: dhfile and s2s_dhfile
2015-06-16 11:59:06 +03:00
Evgeniy Khramtsov
fb6267f38e
Add config validation at startup
2015-06-01 15:38:27 +03:00
Evgeniy Khramtsov
48213b09ce
Get rid of some fuzzy macros as it makes syntax tools getting mad
2015-06-01 15:19:56 +03:00
Holger Weiss
5585fb1ecf
New options: dhfile and s2s_dhfile
...
Let admins specify a file that contains custom parameters for
Diffie-Hellman key exchange.
2015-05-26 21:06:04 +02:00
Alexey Shchepin
b2f98099bb
Merge pull request #569 from weiss/send-element-error-checking
...
Update send_element error checking (EJAB-1739)
2015-05-26 15:59:50 +03:00
Badlop
0c725b5fac
Document protocol support (EJABS-1620)
2015-05-21 17:04:05 +02:00
Holger Weiss
6efce7f706
Cosmetic change: Simplify error checking
...
Let send_stanza_and_ack_req/2 update the #state instead of propagating
the value returned by send_element/2. This doesn't change the behavior.
2015-05-14 01:04:23 +02:00
Holger Weiss
42c7205739
Don't assume send_element/2 returns ok or error
...
Let send_text/2 and (therefore) send_element/2 return {error, Reason}
instead of error for consistency, and let send_stanza_and_ack_req/2
interpret any non-ok value as an error. (EJAB-1739)
2015-05-14 00:58:36 +02:00
Badlop
f7d9bb7ce4
Don't announce register feature once user is authenticated ( #41 )
2015-05-07 11:41:59 +02:00
Holger Weiss
94936b261e
Add privacy error stanza to XEP-0198 queue
2015-04-20 22:03:18 +02:00
Alexey Shchepin
fd54181435
Fixed error replying on blocked messages
2015-04-20 17:19:09 +03:00
Paweł Chmielowski
ba69c469b5
Remove http_poll module
...
For couple years browsers did limit ability to change cookies from js
for different domains, this made http_poll connections practically not
usuable. I don't think this module is used at all so it's time to put it
to rest.
2015-04-15 10:47:10 +02:00
Badlop
0cf8d1fa6e
Copy multicast code from ejabberd-contrib to provide XEP-0033 ( #521 )
2015-04-08 14:01:16 +02:00
Holger Weiss
2a94c68724
Don't call send_element/2 if previous call failed
...
Be sure not to try sending data over a TCP socket that is no longer
usable.
2015-04-06 22:34:48 +02:00
Evgeny Khramtsov
305b281c15
Merge pull request #493 from weiss/rfc-6121-routing
...
Update ejabberd_sm's routing rules as per RFC 6121
2015-04-01 11:41:05 +03:00
Badlop
176114d28e
Try to fix more Dialyzer warnings
2015-03-27 15:55:57 +01:00
Badlop
9c96d30719
Ensure set_presence changes are kept in state (thanks to Davide Colombo)(EJAB-1184)
2015-03-27 15:03:14 +01:00
Badlop
30dc82a98a
Fix even more dialyzer warnings
2015-03-27 12:28:24 +01:00
Badlop
8707c0b045
Fix set_presence command (ejabberd-contrib#61)
2015-03-27 11:43:56 +01:00
Holger Weiss
f40e6a0421
Don't bother with filtering out PEP error messages
...
Now that ejabberd_sm won't deliver error messages that were sent to bare
JIDs anymore, PEP error messages should no longer arrive.
2015-03-25 02:02:08 +01:00
Holger Weiss
33c9f21171
Return error when incoming message is blocked
...
As per XEP-0016 and XEP-0191, return a service-unavailable error when an
incoming message was blocked by a privacy list. This lets the user
appear offline to the contact.
2015-03-24 23:10:47 +01:00
Paweł Chmielowski
8e33f31f50
Try not to use c2s:send_text, it causes problem with websocket
2015-02-25 13:57:03 +01:00
Badlop
5a35405cd5
Update copyright dates to 2015 (EJAB-1733)
2015-01-08 17:34:43 +01:00
Holger Weiss
a78a0a65fe
Let CSI code add timestamp at later point in time
...
As a small optimization, make sure we won't add timestamps to presence
stanzas which end up being thrown away by the CSI code.
2014-12-07 16:27:51 +01:00
Holger Weiss
ba8f38e2eb
XEP-0198: Add timestamp to resent stanzas
...
When an unacknowledged stanza is resent from the Stream Management
queue, add a timestamp so that the receiving client can display the time
at which the stanza was originally sent.
2014-12-07 16:12:06 +01:00
Holger Weiss
9899935e42
Improve interface for adding timestamps
...
Provide a simpler interface for adding <delay/> and <x/> timestamps to
stanzas. This also makes sure that only one <delay/> tag and one <x/>
tag is added to a given stanza.
2014-12-07 15:55:18 +01:00
Holger Weiss
2cb16bc509
Remove unused field from c2s #state
2014-11-26 00:15:19 +01:00
Evgeny Khramtsov
e97e56d776
Merge pull request #363 from weiss/drop-pep-errors
...
Don't route PEP error messages to clients
2014-11-25 14:20:11 +03:00
Holger Weiss
16311b73c8
Add new hook: c2s_filter_packet_in
...
The c2s_filter_packet_in hook can be used to modify or drop incoming
packets before they are transmitted to the client.
2014-11-24 20:55:18 +01:00
Holger Weiss
c566b1d01e
Respect privacy lists for incoming PEP messages
2014-11-18 01:25:12 +01:00
Evgeny Khramtsov
d5ecd32cec
Merge pull request #345 from weiss/last-pep-items
...
Fix sending of last published PEP items to newly-available resources
2014-11-14 21:27:24 +03:00
Holger Weiss
2446b66016
Use correct type for initial c2s #state.user value
2014-11-14 15:32:48 +01:00
Holger Weiss
830fdccd21
Don't broadcast last published PEP items
...
When a client becomes available, don't send the last published PEP items
of all his peers to all his other peers, but only to that client.
2014-11-14 01:03:26 +01:00
Holger Weiss
2d748115ee
Don't advertise auth mechanisms too early
...
If "starttls_required: true" is specified for c2s connections,
authentication mechanisms shouldn't be offered before negotiating the
TLS connection.
2014-10-23 10:04:14 +02:00
Holger Weiss
0c24e18b5e
XEP-0198: Abort immediately on queue overflow
...
Terminate the ejabberd_c2s process immediately once stanza queue
overflow is detected. This makes sure the FSM won't process additional
stanzas before terminating if the recipient is flooded.
2014-10-17 01:35:30 +02:00