aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_sm.erl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright year to 2022Badlop2022-02-111-1/+1
|
* Change tag name because there's already a command called "stats"Badlop2021-04-151-1/+1
|
* Update newest copyright year to 2021 (#3464)Badlop2021-01-271-1/+1
|
* Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson2020-09-031-1/+1
|
* Fix potential message loss in terminating c2s sessionsPaweł Chmielowski2020-04-011-1/+1
| | | | | | | | | | Calling sync version of xmpp_stream_in/out:stop could lead to messages never being processed by c2s process if they were queued in p1_server. This could be reproduced by when having messages in offline storage, starting sessions, enabling stream_mgmt, sending initial presence, and then immediately </stream:stream>, messages that mod_offline would send process would not be bounced back by stream_mgmt.
* Update copyright to 2020 (#3149)Badlop2020-01-281-1/+1
|
* Correctly handle unicode in log messagesEvgeny Khramtsov2019-09-231-12/+12
|
* Implement read-repair for session pidsEvgeny Khramtsov2019-07-301-4/+18
|
* Remove dead codeEvgeny Khramtsov2019-07-301-3/+0
|
* Improve ejabberd halting procedureEvgeny Khramtsov2019-07-261-5/+6
|
* Get rid of useless codeEvgeny Khramtsov2019-07-181-9/+0
|
* Process unexpected messages uniformlyEvgeny Khramtsov2019-07-121-3/+6
|
* Improve formatting of exceptionsEvgeny Khramtsov2019-07-071-14/+17
|
* Make sure queue bouncing doesn't yield into infinite recursionEvgeny Khramtsov2019-06-261-0/+11
|
* Use correct stacktrace in logging macrosEvgeny Khramtsov2019-06-261-1/+2
| | | | | | | By calling erlang:get_stacktrace() inside a lager function we obtain actually a stacktrace of the lager function, not the one we got during exception. This is not a problem for newest Erlang versions though.
* Make logging messages more consistentEvgeny Khramtsov2019-06-241-16/+16
|
* Improve extraction of translated stringsEvgeny Khramtsov2019-06-221-6/+5
| | | | | | | | | | | | | Now every such string MUST be encapsulated into ?T() macro. The macro itself is defined in include/translate.hrl. Example: -module(foo). -export([bar/1]). -include("translate.hrl"). bar(Lang) -> translate:translate(Lang, ?T("baz")).
* Use list_to_existing_atom/1 wherever possibleEvgeny Khramtsov2019-06-151-1/+1
|
* Get rid of "well-known" typeEvgeny Khramtsov2019-06-151-4/+1
|
* Use new configuration validatorEvgeny Khramtsov2019-06-141-47/+21
|
* Copy p1_time_compat:unique_timestamp() to misc and make use of itPaweł Chmielowski2019-02-271-1/+1
|
* Merge branch 'mix'Evgeny Khramtsov2019-02-211-19/+33
|\
| * Merge branch 'master' into mixEvgeny Khramtsov2018-12-101-2/+2
| |\
| * \ Merge branch 'master' into mixEvgeny Khramtsov2018-12-101-18/+40
| |\ \
| * | | Update MIX code to reflect newest specificationEvgeny Khramtsov2018-12-051-19/+33
| | | | | | | | | | | | | | | | | | | | | | | | Note that support for older specification is completely dropped, i.e. no backward compatibility is provided since the XEPs are still very experimental and being changed drastically
* | | | Update copyright to 2019 (#2756)Badlop2019-01-081-1/+1
| | | |
* | | | Add code for handling deprecations of get_stacktrace()Paweł Chmielowski2018-12-131-3/+3
| |_|/ |/| |
* | | Fix (un)setting of priorityEvgeny Khramtsov2018-12-101-2/+2
| |/ |/|
* | Don't lose carbons on presence change or session resumptionEvgeny Khramtsov2018-12-101-18/+40
|/
* Keep info about carbons inside session tableEvgeny Khramtsov2018-12-011-2/+46
| | | | | | | | | | | | | | | Accordingly, Mnesia/SQL/Riak table 'carboncopy' is not used anymore and can be safely removed. As a consequence, the commit deprecates the following options of mod_carboncopy: - ram_db_type - use_cache - cache_size - cache_missed - cache_life_time Fixes #2663
* Keep last handled stanzas number in cache rather than session tableEvgeny Khramtsov2018-11-301-74/+24
|
* Fix some dialyzer warningsEvgeny Khramtsov2018-09-091-7/+2
|
* Get stacktrace out of lager contextEvgeniy Khramtsov2018-09-011-1/+2
| | | | | Calling erlang:get_stacktrace() inside lager functions produces stacktraces of the logging function itself, not the function which has failed.
* Require Redis version >= 3.2.0Evgeniy Khramtsov2018-07-151-9/+16
| | | | | | | | | | | Since we now use Lua scripting for cleaning up c2s sessions the minimum supported Redis version is 3.2.0 or above because we need to work correctly with Redis replication mechanism. ****** BACKWARD INCOMPATIBILITY WARNING ******* ** THIS SHOULD BE ADDED TO THE RELEASE NOTES ** *** PACKAGE MAINTAINERS SHOULD BE INFORMED *** ***********************************************
* Make connected_users_info and user_sessions_info DB-agnostic (#2448)Badlop2018-06-151-4/+9
| | | | | | | The result returned by connected_users_info command has changed, and is now similar to the result of user_sessions_info. Notice that num_active_users and process_rosteritems still require Mnesia.
* Get rid of ejabberd.hrl headerEvgeniy Khramtsov2018-06-141-6/+5
| | | | | | | | | The header consisted of too many unrelated stuff and macros misuse. Some stuff is moved into scram.hrl and type_compat.hrl. All macros have been replaced with the corresponding function calls. TODO: probably type_compat.hrl is not even needed anymore since we support only Erlang >= OTP 17.5
* Get rid of direct calls to 'session' Mnesia tableEvgeniy Khramtsov2018-05-301-6/+16
| | | | Fixes #2439
* Reduce IQ handler code copyingEvgeniy Khramtsov2018-05-091-50/+2
|
* Remove 'iqdisc' optionEvgeniy Khramtsov2018-02-111-14/+8
| | | | | | | | | | | | | | | | | Since we got rid of all bottle-neck processes and we have a connection pool for every database, the option is no longer needed and in fact is detrimental: in practice what you get is just a bunch of overloaded processes in the IQ handlers pool no matter how much you increase the `iqdisc` value. Given that there are close to zero operators understanding the meaning of the option and, hence, not using it all, it's not simply deprecated but completely removed. The commit also deprecates the following functions: - gen_iq_handler:add_iq_handler/6 - gen_iq_handler:handle/5 - gen_iq_handler:iqdisc/1
* Export is_online/1 functionEvgeniy Khramtsov2018-02-051-1/+2
|
* Introduce option 'captcha' for mod_block_strangersEvgeniy Khramtsov2018-01-261-13/+7
| | | | | | | | | | When the option is set to `true`, the module will generate CAPTCHA challenges for incoming subscription requests. The option also implies that option `drop` is set to `true`. Note that the module won't generate CAPTCHA challenges for messages: they will still be rejected if `drop` is set to `true`. Fixes #2246
* Update copyright datesEvgeniy Khramtsov2018-01-051-1/+1
|
* ejabberd_sm: Fix get_session_sid/3Holger Weiss2017-12-191-2/+5
| | | | | Let get_session_sid/3 cope with multiple session table entries for a given resource.
* mod_mam: Make sure a stanza ID is always addedHolger Weiss2017-11-091-4/+11
| | | | | | | | Let mod_mam store incoming messages from a new hook in ejabberd_sm. This makes sure all messages are tagged with a stanza ID, including those that are forked to multiple resources in ejabberd_sm. Closes #1344.
* Apply cosmetic changes to previous commitHolger Weiss2017-08-181-2/+2
|
* Suppress push notifications for online clientsHolger Weiss2017-08-181-1/+2
| | | | | | | When a client enabled push notifications during the current session, notifications should be suppressed as long as the client is online. Suppressing the notification didn't work for the case where the notification was triggered by MAM, but this is now fixed.
* Add support of section 4.9.3.16 on rfc6120Christophe Romain2017-08-101-1/+5
|
* Merge pull request #1881 from weiss/pushChristophe Romain2017-08-041-1/+19
|\ | | | | Support XEP-0357: Push Notifications
| * Support XEP-0357: Push NotificationsHolger Weiss2017-07-201-1/+19
| | | | | | | | Closes #1379.
* | Change policy of user_resources commandPaweł Chmielowski2017-08-031-1/+1
| | | | | | | | This fixes issue #1908