Evgeny Khramtsov
f7ad25108c
Get rid of unused API functions in ejabberd_hooks
...
Also improve code formatting and type specs
2019-07-09 01:26:48 +03:00
Evgeny Khramtsov
3e88a0b0b4
Don't expose internal FSM API of ejabberd_c2s
2019-07-09 01:01:56 +03:00
Evgeny Khramtsov
9cbc0685db
Don't expose internal FSM API of mod_muc_room
2019-07-09 00:47:54 +03:00
Evgeny Khramtsov
cbe84eb50c
Check virtual host before running the command
2019-07-08 23:14:31 +03:00
Evgeny Khramtsov
0545e0a797
Ignore late arrival of an already cancelled timer
2019-07-08 19:32:37 +03:00
Evgeny Khramtsov
e8eb6bc2b4
Avoid crashing of ejabberd_iq process on invalid callback
2019-07-08 10:45:13 +03:00
Evgeny Khramtsov
d4d352492c
Debug hooks
2019-07-08 09:57:33 +03:00
Evgeny Khramtsov
83e6741117
Use maps instead of dict
2019-07-08 09:55:32 +03:00
Evgeny Khramtsov
92ab59a581
Use ets and maps instead of dict
2019-07-08 09:46:50 +03:00
Evgeny Khramtsov
80beb6d6f6
Improve formatting of exceptions
2019-07-07 22:12:14 +03:00
Evgeny Khramtsov
368858a744
Fix return type in try_set_password()
...
Fixes #2932
2019-07-07 12:16:04 +03:00
Evgeny Khramtsov
fd8e5ffce7
Avoid routing packets through a single process
2019-07-06 12:30:57 +03:00
Evgeny Khramtsov
1663e78cf7
Fix validator of option ejabberd_service->hosts
...
Fixes #2929
2019-07-06 10:38:25 +03:00
Evgeny Khramtsov
61a58f6e67
Do not call the same function twice
2019-07-06 10:21:01 +03:00
Paweł Chmielowski
756adaba55
Restore room when receiving message or generic iq for not started room
2019-07-05 13:46:48 +02:00
Paweł Chmielowski
d7e86d1d32
Limit number of rooms that we return for disco_items from muc
...
We will limit it to max_room_discoitems and return rsm that would allow
fetching more
2019-07-05 11:08:32 +02:00
Evgeny Khramtsov
f82de80c66
Add forgotten file
2019-07-05 10:49:27 +03:00
Evgeny Khramtsov
b3caade0a0
Distribute routing of MUC messages accross all CPU cores
...
Also relay as less stanzas as possible through mod_muc workers
2019-07-05 10:35:31 +03:00
Evgeny Khramtsov
05461d1686
Propagate max_fsm_queue to all modules started as gen_server
2019-07-04 10:26:59 +03:00
Evgeny Khramtsov
d411e68a2e
Make return type of sql_transaction() consistent
2019-07-04 09:27:51 +03:00
Evgeny Khramtsov
4658d478b4
Don't call ejabberd_option from ejabberd_options
2019-07-03 19:23:05 +03:00
Evgeny Khramtsov
b7f6620166
Fix jwt_key option processing
2019-07-03 19:16:54 +03:00
Evgeny Khramtsov
0d0ad9d1d9
Use correct virtual host
2019-07-03 19:08:38 +03:00
Evgeny Khramtsov
8180bc22ee
Fix formatting
2019-07-03 12:58:59 +03:00
Evgeny Khramtsov
6e2502ea7d
Monitor routes
...
Clean route table from the process that died unexpectedly.
This usually may happen when the corresponding process
gets killed by OOM killer during overload.
2019-07-03 10:39:03 +03:00
Evgeny Khramtsov
0fc190e2ef
Fix 'request_handlers' transformation
...
Fixes #2925
2019-07-03 09:54:56 +03:00
Evgeny Khramtsov
9f9e308241
Avoid using ! in ejabberd_router and mod_offline
2019-07-03 09:42:18 +03:00
Alexey Shchepin
ff6884f313
Read jwt_key from file
2019-07-03 05:33:35 +03:00
Evgeny Khramtsov
f68da70f3e
Avoid last handled stanzas cache to grow indefinitely
2019-07-01 20:43:57 +03:00
Badlop
052894d608
Update Spanish and Catalan translations
2019-07-01 17:51:42 +02:00
Paweł Chmielowski
40c360c607
Invalidate proper cache when using mam for offline in pop_messages
2019-07-01 14:30:39 +02:00
Alexey Shchepin
8956b7d60d
Fix a condition in ejabberd_auth_jwt
2019-07-01 14:44:28 +03:00
Paweł Chmielowski
3e8f3573a3
Make count_offline_messages cache work when offline uses mam for storage
...
This also replace existing cache for checking if spool is empty with this
cache.
2019-07-01 13:36:41 +02:00
Evgeny Khramtsov
c5fde9d5af
Get rid of useless dialyzer instructions
2019-07-01 10:36:20 +03:00
Evgeny Khramtsov
9912f981c0
Bump cache_tab version
2019-07-01 09:26:56 +03:00
Evgeny Khramtsov
3d82a5eee6
Fix ejabberd_auth_jwt return types and regenerate ejabberd_option.erl
2019-07-01 09:05:33 +03:00
Alexey Shchepin
3e5c0a1df8
Authentication using JWT tokens
2019-07-01 05:01:55 +03:00
Evgeny Khramtsov
4aebd2fd8e
Cache number of offline messages
2019-06-30 21:14:37 +03:00
Evgeny Khramtsov
253ec13971
Use new ets_cache API in ejabberd_auth
2019-06-30 17:15:43 +03:00
Evgeny Khramtsov
a2a061c1c8
Avoid using broad p1_queue:queue() type wherever possible
2019-06-28 22:16:29 +03:00
Evgeny Khramtsov
6011135d24
Use yconf validator for custom Mnesia schemas
2019-06-27 15:23:21 +03:00
Evgeny Khramtsov
39cf8d86d6
Avoid using broad map() type wherever possible
2019-06-27 15:22:27 +03:00
Evgeny Khramtsov
6b684c866b
Use correct rr_type()
2019-06-27 11:35:56 +03:00
Evgeny Khramtsov
2abca350e0
Fix type specs
2019-06-27 11:32:54 +03:00
Evgeny Khramtsov
4e5daf4d72
Make sure queue bouncing doesn't yield into infinite recursion
2019-06-26 11:56:25 +03:00
Evgeny Khramtsov
ffe1c722e0
Deprecate 'route_subdomains' option
...
This option was introduced to fulfill requirement of RFC3920 10.3,
but in practice it was very inconvenient and many admins were
forced to change its value to 's2s' (i.e. to behaviour that
violates the RFC). Also, it seems like in RFC6120 this requirement
no longer presents.
Those admins who used this option to block s2s with their subdomains
can use 's2s_access' option for the same purpose.
2019-06-26 10:45:58 +03:00
Evgeny Khramtsov
b479fe5315
Use correct stacktrace in logging macros
...
By calling erlang:get_stacktrace() inside a lager function
we obtain actually a stacktrace of the lager function, not
the one we got during exception. This is not a problem for
newest Erlang versions though.
2019-06-26 00:05:41 +03:00
Evgeny Khramtsov
6697a3e3f1
Use proper loglevel to log resumption failures
2019-06-25 20:42:54 +03:00
Paweł Chmielowski
7b35690bc9
Store muc_subscribers in process dict if get_subscribed_rooms not available
2019-06-25 16:41:47 +02:00
Evgeny Khramtsov
8b300d734b
Don't propagate downstream already handled message
2019-06-25 14:36:17 +03:00