Evgeniy Khramtsov
ffdaff3740
Make ejabberd_cluster modular
...
For setting the cluster backend new global option 'cluster_backend' is
introduced. The default and only available value at the moment is 'mnesia'
2017-07-06 15:47:35 +03:00
Evgeniy Khramtsov
01a2c9fe12
Add type specs for Module:opt_type/1
2017-05-08 12:59:28 +03:00
Evgeniy Khramtsov
b82b93f8f0
Don't validate an option in ejabberd_config:get_option() functions
...
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-29 11:39:40 +03:00
Evgeniy Khramtsov
0b93cb7ece
Store options using p1_options module
2017-04-27 19:44:58 +03:00
Evgeniy Khramtsov
02790b105e
Speedup Mnesia tables initialization
2017-04-21 12:27:15 +03:00
Alexey Shchepin
19614678e9
Change mnesia dir detection
2017-04-03 12:57:47 +03:00
Evgeniy Khramtsov
e30d41e5f0
Merge branch 'new_queue'
...
Conflicts:
rebar.config
src/mod_muc_admin.erl
2017-03-24 13:27:56 +03:00
Evgeniy Khramtsov
72da5bd062
Log startup time
2017-03-18 10:24:42 +03:00
Evgeniy Khramtsov
02064ae12a
Add support for file-based queues
...
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.
2017-03-10 15:12:43 +03:00
Evgeniy Khramtsov
7a9fa52e91
Change loglevel on configuration reload
2017-02-27 11:11:29 +03:00
Evgeniy Khramtsov
fadcc85553
Put more stuff under supervision
2017-02-26 15:10:59 +03:00
Evgeniy Khramtsov
67d6ca9f10
Improve startup procedure
2017-02-24 12:05:47 +03:00
Evgeniy Khramtsov
7d68112265
Start/stop virtual hosts when reloading configuration file
2017-02-23 10:12:19 +03:00
Evgeniy Khramtsov
d5d906184f
Merge branch 'new_stream'
...
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-20 19:35:46 +03:00
Evgeniy Khramtsov
02f96d0f41
Implement database backend interface for ejabberd_router
2017-01-11 16:25:43 +03:00
Badlop
5fdd1c39fe
Update copyright date automatically ( #1442 )
2017-01-02 21:42:06 +01:00
Evgeniy Khramtsov
309bdfbe28
Add xmpp_stream_out behaviour and rewrite s2s/SM code
2016-12-28 09:47:11 +03:00
Evgeniy Khramtsov
c7ae916afc
Don't forget to start XMPP application
2016-11-21 10:23:09 +03:00
Christophe Romain
309962fb8b
Use p1_http from p1_utils 1.0.6
2016-11-14 16:52:03 +01:00
Evgeniy Khramtsov
78a44e0176
Merge branch 'master' into xml-ng
...
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-11-12 13:27:15 +03:00
Paweł Chmielowski
98e0123ca4
New api permissions framework
2016-10-05 13:21:11 +02:00
Alexey Shchepin
ac6f701033
Add http_p1.erl, rest.erl, and oauth2 ReST backend for tokens.
2016-09-27 05:57:14 +03:00
Holger Weiss
8fd888eb2b
Revert "Don't log an [error] message if Elixir is missing"
...
This reverts commit 41386d718d
. The issue
was fixed with commit 4bd45bada7
.
2016-09-08 18:11:54 +02:00
Holger Weiss
41386d718d
Don't log an [error] message if Elixir is missing
...
The Elixir support is still optional.
Closes #1250 .
2016-09-08 17:59:40 +02:00
Paweł Chmielowski
4bd45bada7
Start elixir config code only if elixir was enabled in configure script
2016-09-08 16:29:45 +02:00
gabrielgatu
803270fc6b
Support for Elixir configuration file #1208
...
Contribution for Google Summer of code 2016 by Gabriel Gatu
2016-09-08 11:37:14 +02:00
Christophe Romain
af0a493c66
Merge pull request #1253 from Amuhar/xep0356
2016-09-07 14:34:31 +02:00
Mickael Remond
d02d7b2b6a
Remove compile warning
2016-08-01 15:35:54 +02:00
gabrielgatu
91865c66c0
Start elixir application after ejabberd_app:start_apps()
2016-07-28 15:57:35 +02:00
Badlop
8a7b31ca63
When stopping ejabberd, stop modules after broadcasting c2s shutdown ( #1144 )
2016-06-07 18:41:38 +02:00
Evgeniy Khramtsov
068db1a2d9
Handle Redis connection in a separate module
2016-05-09 08:36:30 +03:00
Badlop
78a44d8099
Move start and stop_modules/0 from ejabberd_app to gen_mod ( #1039 )
2016-03-29 15:26:34 +02:00
Badlop
c985a2bd3d
Start ezlib only if required, as it's optional ( #1006 )
2016-03-16 11:11:43 +01:00
Mickael Remond
dfc29ea03c
Switch to Fast XML module
2016-02-03 19:03:17 +01:00
Mickael Remond
71ee0d56fa
Switch to fast_tls and update app names
2016-02-03 16:13:16 +01:00
Mickael Remond
9ae1371c6e
Convert more dependencies to new repository / packages
2016-02-03 12:30:12 +01:00
Mickael Remond
0de222d998
Convert code to use Fast YAML
2016-02-03 11:30:48 +01:00
Mickael Remond
e8ba7bce24
Use stringprep app name
2016-02-03 10:12:25 +01:00
Badlop
f448ff608a
Update copyright to 2016 ( #901 )
2016-01-13 12:29:14 +01:00
Mickael Remond
e5ae35c66b
Update cache_tab app name
2015-12-01 19:17:51 +01:00
Evgeniy Khramtsov
95265dd3ad
Move JID related functions to jid.erl ( #847 )
2015-11-24 18:44:13 +03:00
Paweł Chmielowski
e54e543a66
Faster string_to_jid/1 implementation
...
This version is about 10-15% faster than old one
2015-11-03 14:41:01 +01:00
Christophe Romain
a1129dc96b
Add OAuth support (thanks to Aleksey)
2015-09-25 15:49:07 +02:00
Badlop
a50f00f9e8
Include ext_mod modules when checking accepted options (ejabberd-contrib#116)
2015-09-10 20:11:02 +02:00
Paweł Chmielowski
dcf5aefea0
Add option to set net_ticktime (EJAB-1742)
2015-06-15 14:57:07 +02:00
Evgeniy Khramtsov
fb6267f38e
Add config validation at startup
2015-06-01 15:38:27 +03:00
Badlop
d0443bb714
An auth external module requires ext_mod to be started first ( #578 )
2015-05-27 13:10:15 +02:00
Mickael Remond
c140f98276
Explicitly start crypto with start
...
This is to please Elixir / Phoenix enviroment
2015-04-07 09:03:37 +02:00
Mickael Remond
34f8f6d868
Explicitely start crypto module
...
Without explicit start, it causes issue when embedding ejabberd into other apps.
2015-04-06 13:46:09 +02:00
Mickael Remond
47537aa901
Make sure Mnesia dir environment and log file are list, not binary
...
This is useful for Elixir configuration, as binary is the more natural data type.
Closes #514
2015-04-06 11:36:16 +02:00