Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-11Update copyright year to 2022Badlop
2021-01-27Update newest copyright year to 2021 (#3464)Badlop
2020-09-03Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson
2020-05-05Set 'max_fsm_queue' default value (back) to 10000Holger Weiss
The default value for the 'max_fsm_queue' option was set to 10000 in commit 79685da90b514a49f9c412e31dccc17be9dd8680, and that value is still documented to be the default. It was (probably unintentionally) changed to 5000 in commit 03de853e4fdcf852ae75a86922c08bb1a0950e6d. It makes sense to keep it larger than the value of mod_stream_mgmt's 'max_ack_queue' option.
2020-04-01Fix potential message loss in terminating c2s sessionsPaweł Chmielowski
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.
2020-01-28Update copyright to 2020 (#3149)Badlop
2019-09-23Correctly handle unicode in log messagesEvgeny Khramtsov
2019-09-06Fix certificate selection for s2sEvgeny Khramtsov
The bug was introduced in c2cbb4d87955ff4917581fedc93cbcd4edd1ce8a Fixes #3015
2019-07-01Get rid of useless dialyzer instructionsEvgeny Khramtsov
2019-06-24Call ejabberd_s2s:allow_host/2 with correct virtual hostEvgeny Khramtsov
2019-06-24Make logging messages more consistentEvgeny Khramtsov
2019-06-23Use correct virtual host for s2s optionsEvgeny Khramtsov
2019-06-22Fix shaper selection in ejabberd_c2sEvgeny Khramtsov
2019-06-21Make option 'validate_stream' globalEvgeny Khramtsov
2019-06-14Use new configuration validatorEvgeny Khramtsov
2019-04-01Rename listening callback from start/2 to start/3Evgeny Khramtsov
This will prevent conflicts in callback names in mod_mqtt Old callback function is still supported.
2019-01-09Update copyright to 2019 (#2756)Badlop
2018-12-01ejabberd_s2s_in: Check for subdomain configurationHolger Weiss
If an incoming s2s connection to a subdomain such as conference.example.com is accepted, check for host-specific configuration settings for that subdomain rather than for example.com. This is for consistency with ejabberd_s2s_out, and with my previous commit.
2018-12-01ejabberd_s2s_in: Check for subdomain certificateHolger Weiss
If an incoming s2s connection to a subdomain such as conference.example.com is accepted and a separate certificate is available for that subdomain, offer that certificate instead of the one for example.com. Thanks to Mike Kuketz for reporting the bug.
2018-10-16ejabberd_s2s_in: Fix indentationHolger Weiss
2018-09-27Move certificates processing code to pkix applicationEvgeny Khramtsov
==== WARNING: MUST BE ADDED TO RELEASE NOTES ===== The commit introduces the following incompatibility: - Option 'ca_path' is deprecated and has no effect anymore: option 'ca_file' should be used instead if needed. ==================================================
2018-09-19Switch more log message to warning levelEvgeny Khramtsov
The commit is supposed to improve logging at loglevel 3, which is the recommended level for high loaded ejabberd servers
2018-09-18Remove useless type specsEvgeny Khramtsov
2018-09-18Refactor ejabberd_listenerEvgeny Khramtsov
2018-09-17Refactor ejabberd listener APIEvgeny Khramtsov
2018-09-09Fix some dialyzer warningsEvgeny Khramtsov
2018-08-29ejabberd_s2s_in: Log message on connection closeHolger Weiss
Log a message when an incoming s2s connection is closed, analogous to the message on outgoing s2s connection close.
2018-07-10Fix regression: list SASL EXTERNAL mechanism for inbound s2sEvgeniy Khramtsov
2018-07-06Move XMPP stream and SASL processing to xmpp repoEvgeniy Khramtsov
2018-06-14Get rid of ejabberd.hrl headerEvgeniy Khramtsov
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
2018-04-30Add validator for 'accept_interval' listening optionEvgeniy Khramtsov
2018-02-28Validate additional listen optsStu Tomlinson
The options "inet", "inet6" and "backlog" are valid listen options, but are currently logged as errors (even though they do work): 2018-02-28 16:08:44.141 [error] <0.338.0>@ejabberd_listener:validate_module_option:630 unknown listen option 'backlog' for 'ejabberd_c2s' will be likely ignored, available options are: access, shaper, certfile, ciphers, dhfile, cafile, client_cafile, protocol_options, tls, tls_compression, starttls, starttls_required, tls_verify, zlib, max_fsm_queue This adds the necessary validators so they are correctly recognized.
2018-02-20Introduce 'negotiation_timeout'Evgeniy Khramtsov
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.
2018-02-09Introduce option 'validate_stream'Evgeniy Khramtsov
If set to `true`, all incoming XML packets are fully validated against known schemas. If an error occurs, the packet will be bounced with the corresponding error reason. The default value is `false`. The option might be useful to protect client software from sofisticated bugs related to XML validation as well as for client developers who want to catch validation errors at early stage of development. Note that the option might have slight performance impact, so use it with care on loaded machines.
2018-01-05Update copyright datesEvgeniy Khramtsov
2017-12-26Get rid of ejabberd receiverEvgeniy Khramtsov
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.
2017-12-19Change loglevel of TLS failuresEvgeniy Khramtsov
2017-11-03Log warnings for c2s/s2s certfile optionEvgeniy Khramtsov
2017-06-22Don't let a receiver to crash if a controller is unavailableEvgeniy Khramtsov
Fixes #1796
2017-05-24Cosmetic change: Fix indentation errorsHolger Weiss
2017-05-12Introduce Certficate ManagerEvgeniy Khramtsov
The major goal is to simplify certificate management in ejabberd. Currently it requires some effort from a user to configure certficates, especially in the situation where a lot of virtual domains are hosted. The task is splitted in several sub-tasks: * Implement basic certificate validator. The validator should check all configured certificates for existence, validity, duration and so on. The validator should not perform any actions in the case of errors except logging an error message. This is actually implemented by this commit. * All certificates should be configured inside a single section (something like 'certfiles') where ejabberd should parse them, check the full-chain, find the corresponding private keys and, if needed, resort chains and split the certficates into separate files for easy to use by fast_tls. * Options like 'domain_certfile', 'c2s_certfile' or 's2s_certfile' should probably be deprecated, since the process of matching certificates with the corresponding virtual hosts should be done automatically and these options only introduce configuration errors without any meaningful purpose.
2017-05-08Don't call gen_mod:get_opt() outside of modulesEvgeniy Khramtsov
2017-05-08Add type specs for Module:opt_type/1Evgeniy Khramtsov
2017-04-30Don't validate an option in gen_mod:get*opt() functionsEvgeniy Khramtsov
The changes are very similar to those from previous commit: * Now there is no need to pass validating function in gen_mod:get_opt() and gen_mod:get_module_opt() functions, because the modules' configuration keeps already validated values. * New functions gen_mod:get_opt/2 and gen_mod:get_module_opt/3 are introduced. * Functions gen_mod:get_opt/4 and get_module_opt/5 are deprecated. If the functions are still called, the "function" argument is simply ignored. * Validating callback Mod:listen_opt_type/1 is introduced to validate listening options at startup.
2017-04-15Improve ejabberd_c2s:close()Evgeniy Khramtsov
2017-04-11Rename aux.erl as misc.erl17.04Christophe Romain
Thanks Microsoft Windows to not support some filenames
2017-03-30Deprecate jlib.erl in favor of aux.erlEvgeniy Khramtsov
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.
2017-03-08Report more TLS errorsEvgeniy Khramtsov
2017-03-07Report some TLS errorsEvgeniy Khramtsov
2017-02-23Start/stop virtual hosts when reloading configuration fileEvgeniy Khramtsov