aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_s2s_out.erl (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update copyright year to 2022Badlop2022-02-111-1/+1
|
* Make s2s connection table cleanup more robustPaweł Chmielowski2021-11-161-16/+6
| | | | | Using monitors instead of doint that from terminate() makes us immune to s2s handler processes being forcefully killed.
* Update newest copyright year to 2021 (#3464)Badlop2021-01-271-1/+1
|
* Apply cosmetic changes to outgoing s2s IP optionsHolger Weiss2020-11-041-9/+11
|
* Add outbound s2s out interface (ipv4/ipv6)Daniel Kenzelmann2020-09-211-1/+17
| | | | | | Adding options taking IPs as string: outgoing_s2s_ipv4_address: "1.2.3.4" outgoing_s2s_ipv6_address: "2000:1:1: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-7/+9
| | | | | | | | | | 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-7/+7
|
* Fix certificate selection for s2sEvgeny Khramtsov2019-09-061-2/+2
| | | | | The bug was introduced in c2cbb4d87955ff4917581fedc93cbcd4edd1ce8a Fixes #3015
* Generate 'remote-server-not-found' stanza error for non-IDN domainsEvgeny Khramtsov2019-07-291-2/+4
| | | | Fixes #2969
* Use econf:timeout() instead of econf:pos_int() wherever appropriateEvgeny Khramtsov2019-07-171-4/+4
|
* Get rid of useless dialyzer instructionsEvgeny Khramtsov2019-07-011-2/+0
|
* Make sure queue bouncing doesn't yield into infinite recursionEvgeny Khramtsov2019-06-261-8/+17
|
* Make logging messages more consistentEvgeny Khramtsov2019-06-241-2/+2
|
* Use correct virtual host for s2s optionsEvgeny Khramtsov2019-06-231-21/+21
|
* Improve extraction of translated stringsEvgeny Khramtsov2019-06-221-1/+2
| | | | | | | | | | | | | 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")).
* Fix shaper selection in ejabberd_c2sEvgeny Khramtsov2019-06-221-1/+1
|
* Use new configuration validatorEvgeny Khramtsov2019-06-141-94/+15
|
* Update copyright to 2019 (#2756)Badlop2019-01-081-1/+1
|
* Switch more log message to warning levelEvgeny Khramtsov2018-09-191-10/+10
| | | | | The commit is supposed to improve logging at loglevel 3, which is the recommended level for high loaded ejabberd servers
* Fix some dialyzer warningsEvgeny Khramtsov2018-09-091-7/+1
|
* Move move randoms module to p1_utils repoEvgeniy Khramtsov2018-07-051-1/+1
|
* Don't pass sockmod to xmpp_stream_outEvgeniy Khramtsov2018-06-251-2/+2
|
* Get rid of ejabberd.hrl headerEvgeniy Khramtsov2018-06-141-2/+1
| | | | | | | | | 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
* Introduce 'negotiation_timeout'Evgeniy Khramtsov2018-02-201-1/+3
| | | | | | | The option can be used to specify a period (in seconds) for a stream negotiation to complete. If the timer fires, the stream is considered as failed and the underlying connection gets closed. This is a global option (you cannot set it per domain) and the default is 30 seconds.
* Improve logging of idle s2s connectionsEvgeniy Khramtsov2018-01-281-2/+4
|
* Update copyright datesEvgeniy Khramtsov2018-01-051-1/+1
|
* Get rid of ejabberd receiverEvgeniy Khramtsov2017-12-261-8/+6
| | | | | | | | | | | | ejabberd receivers were meant to serve connections from frontends to backends. However, this approach was not popular and frontend related code was removed in previous releases. Now, ejabberd receiver's code was also removed, making the code shorter and cleaner. Also, in stress tests ejabberd now handles load more robustly, without c2s processes overload (even with disabled shapers). ejabberd_socket.erl is renamed to xmpp_socket.erl: it's supposed to be finally moved into stand-alone xmpp library.
* Get rid of deprecated crypto functionsEvgeniy Khramtsov2017-08-171-1/+1
|
* Don't let a receiver to crash if a controller is unavailableEvgeniy Khramtsov2017-06-221-4/+7
| | | | Fixes #1796
* Add type specs for Module:opt_type/1Evgeniy Khramtsov2017-05-081-1/+8
|
* Don't validate an option in ejabberd_config:get_option() functionsEvgeniy Khramtsov2017-04-291-42/+20
| | | | | | | | | | | | | The commit introduces the following changes: * Now there is no need to pass validating function in ejabberd_config:get_option() functions, because the configuration keeps already validated values. * New function ejabberd_config:get_option/1 is introduced * Function ejabberd_config:get_option/3 is deprecated. If the function is still called, the second argument (validating function) is simply ignored. * The second argument for ejabberd_config:get_option/2 is now a default value, not a validating function.
* Improve ejabberd_c2s:close()Evgeniy Khramtsov2017-04-151-1/+6
|
* Rename aux.erl as misc.erl17.04Christophe Romain2017-04-111-2/+2
| | | | Thanks Microsoft Windows to not support some filenames
* Deprecate jlib.erl in favor of aux.erlEvgeniy Khramtsov2017-03-301-2/+2
| | | | | Since the main goal of jlib.erl is lost, all auxiliary functions are now moved to aux.erl, and the whole jlib.erl is now deprecated.
* Improve overloaded S2S queue processingEvgeniy Khramtsov2017-03-101-10/+16
|
* Add support for file-based queuesEvgeniy Khramtsov2017-03-101-10/+33
| | | | | | | | | | | It's now possible to use files as internal packet queues. The following options are introduced: * queue_type: the option can be set to `ram` (default) or `file`. The option can be set per virtual host. * queue_dir: path to the directory where queues will be allocated. The default is 'queue' directory inside Mnesia directory. This is a global option and cannot be set per virtual host.
* Start/stop virtual hosts when reloading configuration fileEvgeniy Khramtsov2017-02-231-16/+26
|
* Make sure all hooks are called with proper hostEvgeniy Khramtsov2017-02-221-21/+25
|
* Fix s2s_dns_timeout issuesEvgeniy Khramtsov2017-02-201-1/+1
|
* Fix some dialyzer warningsEvgeniy Khramtsov2017-02-181-1/+7
|
* Change routing APIEvgeniy Khramtsov2017-02-161-3/+1
| | | | | | | | | | | Now 'From' and 'To' arguments must be omitted in functions and structures related to routing. The commit deprecates the following functions: ejabberd_router:route/3 in favor of ejabberd_router:route/1 ejabberd_router:route_error/4 in favor of ejabberd_router:route_error/2 ejabberd_local:route_iq/4 in favor of ejabberd_local:route_iq/2 ejabberd_local:route_iq/5 in favor of ejabberd_local:route_iq/3 The format of {route, From, To, Packet} is changed in favor of {route, Packet}
* Improve modules start/stop proceduresEvgeniy Khramtsov2017-02-141-1/+1
|
* Merge branch 'new_stream'Evgeniy Khramtsov2017-01-201-1044/+342
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/cyrsasl.erl src/ejabberd_c2s.erl src/ejabberd_cluster.erl src/ejabberd_frontend_socket.erl src/ejabberd_node_groups.erl src/ejabberd_router.erl src/mod_bosh.erl src/mod_ip_blacklist.erl src/mod_muc_mnesia.erl src/mod_offline.erl src/mod_proxy65_sm.erl
| * Fix attaching ejabberd_s2s_out process to a supervisorEvgeniy Khramtsov2017-01-111-1/+1
| |
| * Add 'supervisor' listening optionEvgeniy Khramtsov2017-01-111-2/+8
| | | | | | | | | | | | | | | | If set to 'true' (this is the default), new processes spawned by ejabberd_listener will be attached to the corresponding supervisor. No such processes will be attached to a supervisor otherwise. Setting this to 'false' will improve performance of high loaded systems where new C2S/S2S processes are spawned very rapidly.
| * Adopt remaining code to support new hooksEvgeniy Khramtsov2017-01-091-23/+95
| |
| * More refactoring on session managementEvgeniy Khramtsov2016-12-301-46/+44
| |
| * Add xmpp_stream_out behaviour and rewrite s2s/SM codeEvgeniy Khramtsov2016-12-281-1069/+291
| |