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-06-12ref: fix WS typosPouriya Jahanbakhsh
2021-01-27Update newest copyright year to 2021 (#3464)Badlop
2020-10-13Make websocket send put back pressure on c2s processPaweł Chmielowski
Previously c2s was free to generate data to send in unlimited manner, and just generate queue of messages that are waiting to be send. This could lead to hitting timouts in stream management ack handling (if c2s generate lot of packages, after which <r> request was sent, client could even not receive it before timeout was triggered on server waiting for corresponding <a>). This changes makes c2s process wait for data being sent to tcp socket associated with websocket connection, which should help with this problem.
2020-09-03Use include_lib() to include headers from dependencies (#3369)Stu Tomlinson
2020-01-28Update copyright to 2020 (#3149)Badlop
2019-07-29Apply shaping to websocket connectionsFrank Diebolt
2019-06-14Use new configuration validatorEvgeny Khramtsov
2019-04-25Use binary framing in MQTT WebSocketsEvgeny Khramtsov
2019-04-23Move websocket optionsEvgeny Khramtsov
2019-04-16Handle cdata in initial data probe of ws modulePaweł Chmielowski
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-03-15Origin header validation on websocket connection (#2821)Paweł Dorofiejczyk
2019-01-09Update copyright to 2019 (#2756)Badlop
2018-09-17Refactor ejabberd listener APIEvgeny Khramtsov
2018-07-17Move cancel_timer/1 function into 'misc' moduleHolger Weiss
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-05-14Optimize HTTP requests memory usageEvgeniy Khramtsov
Due to historical reasons, ejabberd loads the whole file/data into the memory when serving an HTTP request. This is now improved: 1) For GET requests ejabberd uses sendfile(2) if the underlying connection is HTTP and falls back to read/write loop with 64kb buffer for HTTPS connections. This type of requests are handled by mod_http_fileserver, mod_http_upload, ejabberd_captcha, etc 2) POST requests are now limited to 20Mb and are fully downloaded into the memory for further processing (by ejabberd_web_admin, mod_bosh, etc) 3) PUT requests (e.g. for mod_http_upload) are handled by read/write loop with 64kb buffer
2018-04-12Pass access option from websocket to c2sPaweł Chmielowski
This fixes issue #2223
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-08-05Replace gen_fsm with p1_fsm to avoid warnings in OTP20+Evgeniy Khramtsov
2017-07-27Generate log messages when websocket is closed due timeoutsPaweł Chmielowski
2017-06-23Catch exception that may happen when sending data over websocketPaweł Chmielowski
This fixes #1667
2017-04-29Don't validate an option in ejabberd_config:get_option() functionsEvgeniy Khramtsov
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.
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-02-18Fix some dialyzer warningsEvgeniy Khramtsov
2017-01-20Merge branch 'new_stream'Evgeniy Khramtsov
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
2017-01-09Adopt remaining code to support new hooksEvgeniy Khramtsov
2017-01-02Update copyright date automatically (#1442)Badlop
2016-11-12Merge branch 'master' into xml-ngEvgeniy Khramtsov
Conflicts: src/adhoc.erl src/cyrsasl_oauth.erl src/ejabberd_c2s.erl src/ejabberd_config.erl src/ejabberd_service.erl src/gen_mod.erl src/mod_admin_extra.erl src/mod_announce.erl src/mod_carboncopy.erl src/mod_client_state.erl src/mod_configure.erl src/mod_echo.erl src/mod_mam.erl src/mod_muc.erl src/mod_muc_room.erl src/mod_offline.erl src/mod_pubsub.erl src/mod_stats.erl src/node_flat_sql.erl src/randoms.erl
2016-09-08New stream management option: ack_timeoutHolger Weiss
Close the connection if a stream management client fails to respond to an acknowledgement request within 60 seconds. This number of seconds can be changed with the new "ack_timeout" option, and the mechanism can be disabled by specifying 'infinity'. As a side effect of this change, a new acknowledgement is no longer requested before the response to the previous request is received.
2016-08-22Fixed #1260 Stream Management feature for the websocket connectionsIgor Manturov Jr
2016-07-30Get rid of "jlib.hrl" dependency in some modulesEvgeniy Khramtsov
2016-02-03Switch to Fast XML moduleMickael Remond
2016-01-13Update copyright to 2016 (#901)Badlop
2015-12-11Remove http supervisorsChristophe Romain
2015-09-17Let BOSH/WebSocket support "max_resume_timeout"Holger Weiss
Allow for specifying the "max_resume_timeout" option in an ejabberd_http listener for ejabberd_http_bind and/or ejabberd_http_ws.
2015-09-04Pass stream management options defined in http listener to http-bind and ↵Paweł Chmielowski
websocket
2015-08-05Use websocket pings also on old style connectionsPaweł Chmielowski
2015-06-01Add config validation at startupEvgeniy Khramtsov
2015-04-09Fix problem with pushing bufferend #xmlel-s to receiver in websocket codePaweł Chmielowski
2015-04-06Fix problem with c2s buffering on old style websocket connectionsPaweł Chmielowski
Old style websocket do use binaries for transferring data to C2S, so when we buffer that data we need to handle it different than list of #xml structs used by new style connections. This fixes github issue #515.
2015-03-25Make sure that we send each time <close> before closing websocket connectionPaweł Chmielowski
2015-03-12Update types to fix dialyzer warningsPaweł Chmielowski
2015-02-25Update FSF addressBadlop
2015-02-25Add support for websocket connectionsPaweł Chmielowski