Evgeniy Khramtsov
fddd6110e0
Don't validate an option in gen_mod:get*opt() functions
...
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-30 19:01:47 +03:00
Evgeniy Khramtsov
2b63d07329
Merge branch 'new-option-validation'
2017-04-29 11:48:57 +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
7129aebe76
Don't re-define validation functions in multiple places
2017-04-28 13:23:32 +03:00
Paweł Chmielowski
2bcf822637
Fix elixir tests
2017-04-28 10:08:09 +02:00
Evgeniy Khramtsov
6658c0d386
Bump cache_tab version
2017-04-27 20:07:44 +03:00
Evgeniy Khramtsov
0b93cb7ece
Store options using p1_options module
2017-04-27 19:44:58 +03:00
badlop
b51e2aa213
Merge pull request #1702 from skuroki/patch-1
...
Fix typo
2017-04-27 09:58:37 +02:00
Badlop
d18d99e8ec
Bug requesting non-existent data with private_get command ( #1690 )
2017-04-26 23:14:30 +02:00
Holger Weiss
9b8364b6c8
Merge remote-tracking branch 'processone/pr/1699'
...
* processone/pr/1699:
Add support for HTTP File Upload, version 0.3.0
2017-04-26 21:18:16 +02:00
KUROKI Shinsuke
959419419f
Fix typo
2017-04-26 17:35:51 +09:00
Paweł Chmielowski
2988d84cfb
Don't check result of jid.start
2017-04-26 09:50:49 +02:00
Badlop
c0eb85ce53
Allow a room admin also to subscribe another JID
2017-04-26 01:30:12 +02:00
Holger Weiss
56a4bf8f3c
mod_stream_mgmt: Fix typo in variable name
2017-04-25 22:37:27 +02:00
Holger Weiss
9cc332d6b3
mod_stream_mgmt: Fix 'if_offline' detection
2017-04-25 22:32:03 +02:00
Evgeniy Khramtsov
120682ec8b
Include original 'id' and 'type' attributes in offline event
2017-04-25 17:59:26 +03:00
Paweł Chmielowski
a67b3dc6a6
Don't check result of jid.start
2017-04-25 16:54:01 +02:00
Paweł Chmielowski
f4c98f635b
Don't check result of jid.start
2017-04-25 16:46:00 +02:00
Evgeniy Khramtsov
069bf6dec6
Make sure only jabber ❌ event tag is present in offline event
2017-04-25 17:21:24 +03:00
Holger Weiss
d0f3696596
randoms: Keep compatibility with Erlang/OTP 17
2017-04-24 23:51:01 +02:00
Evgeniy Khramtsov
c923bb5c10
Avoid changing configuration on listener deletion
2017-04-23 16:42:54 +03:00
Evgeniy Khramtsov
9a93acc62a
Improve Mnesia tables creation and transformation
2017-04-23 16:37:58 +03:00
Evgeniy Khramtsov
8770fc98e1
Use round-robin algorithm when selecting worker from DB pool
2017-04-23 11:54:56 +03:00
Evgeniy Khramtsov
18433e289f
Add clear_cache admin command
2017-04-22 11:33:39 +03:00
Holger Weiss
168712ebbd
Add support for HTTP File Upload, version 0.3.0
...
Support the current XEP-0363 version in addition to the previous
revisions.
2017-04-21 18:36:53 +02:00
PaweÅ Chmielowski
44ae6bcc83
Fix elixir tests
2017-04-21 12:17:23 +02:00
Evgeniy Khramtsov
02790b105e
Speedup Mnesia tables initialization
2017-04-21 12:27:15 +03:00
Evgeniy Khramtsov
d88c08e074
Use new cache API in mod_shared_roster_ldap
2017-04-21 10:43:14 +03:00
Evgeniy Khramtsov
9937cb48fd
Use new cache API in ejabberd_oauth
2017-04-21 09:02:10 +03:00
Evgeniy Khramtsov
5444475b1d
Correct option validation
2017-04-20 18:55:16 +03:00
Evgeniy Khramtsov
264a40f217
Use new cache API in mod_mam
2017-04-20 18:52:16 +03:00
Evgeniy Khramtsov
a26f90a346
Use new cache API in mod_caps
2017-04-20 18:18:26 +03:00
Badlop
ca9d04ba6b
Fix private_get command sending a proper xmlel ( #1683 )
2017-04-20 16:50:08 +02:00
Badlop
4e86a71ab2
When getting user rooms, filter by the serverhost as expected ( #1683 )
2017-04-20 16:49:32 +02:00
Holger Weiss
3682888655
mod_stream_mgmt: Preserve stanza count on timeout
...
If a pending stream management session times out, call
ejabberd_c2s:process_terminated/2 *before* storing the incoming stanza
count. Without this change, the session table entry that holds the
stanza count was purged while closing the session.
2017-04-19 23:04:20 +02:00
Holger Weiss
3adf720bc1
Use #jid{} type for #muc_unsubscribe.jid
2017-04-19 22:18:23 +02:00
Badlop
d7a999eaf5
Don't use jid:from_string as it's deprecated, see jid.erl line 43
2017-04-19 21:47:59 +02:00
Evgeniy Khramtsov
64333f69ea
Don't try to load already loaded applications
2017-04-19 11:40:58 +03:00
Holger Weiss
b8a7720986
ejabberd_c2s: Don't close session on stream resume
...
Don't let ejabberd_c2s close the session and unset presence if a
'c2s_terminated' callback stops hook execution, as is done in
mod_stream_mgmt:c2s_terminated/2 on resumption.
Fixes #1680 .
2017-04-19 01:20:28 +02:00
Evgeniy Khramtsov
7c9415356d
Function fix_from_to/2 should not crash when 'from' is undefined
...
Fixes #1678
2017-04-18 01:38:35 +03:00
Evgeny Khramtsov
c97aade33e
Merge pull request #1677 from getong/catch_lager_crash_log_not_run
...
lager_crash_log in some cases not run, catch it
2017-04-17 09:44:00 +04:00
getong
ab751d290a
lager_crash_log in some cases not run, catch it
2017-04-17 12:07:23 +08:00
Evgeniy Khramtsov
f496d22074
Improve logging message
2017-04-16 23:56:12 +03:00
Evgeniy Khramtsov
86b680a3ad
Move compile_exprs() to misc module
2017-04-16 20:05:46 +03:00
Evgeniy Khramtsov
78dba217bf
Speedup configuration options lookup
...
We now avoid excessive ETS lookups; instead, we use dynamically
compiled module 'ejabberd_options' keeping the configuration options
2017-04-16 15:29:10 +03:00
Evgeniy Khramtsov
3b14b35252
Default config file should be ejabberd.yml
2017-04-16 01:26:33 +03:00
Evgeniy Khramtsov
878c762cdf
Log human readable description when configuration file is not found
2017-04-16 01:22:55 +03:00
Evgeniy Khramtsov
920f2678ac
Report configuration file location on startup
2017-04-16 01:02:46 +03:00
Evgeniy Khramtsov
b6182e6fe8
Speedup loading of translation files
...
A dump of 'translations' ETS table is now stored on disc.
The table is only re-created when new/deleted/modified translation
files are detected; otherwise, the ETS table is restored from
the dump file on startup.
2017-04-16 00:29:55 +03:00
Evgeniy Khramtsov
41fe062a8d
Lower log level for some messages
2017-04-15 15:47:00 +03:00