Badlop
a1dfb7fbe6
Improve rooms_* commands to accept 'global' as MUC service argument ( #2976 )
2019-08-12 17:03:32 +02:00
Evgeny Khramtsov
8f8f53a595
Fix typo in type spec
2019-08-12 12:28:17 +03:00
Evgeny Khramtsov
d796dcace5
Spawn SQL connections on demand only
2019-08-12 12:21:31 +03:00
Badlop
dd8c468de3
Rename MUC command arguments from Host to Service ( #2976 )
2019-08-08 12:32:59 +02:00
Evgeny Khramtsov
ced62e0df8
Don't use close/2: set stop_reason explicitly
...
Fixes #2984
2019-08-08 11:21:28 +03:00
Evgeny Khramtsov
950c209310
Report connection error before waiting for resumption
...
In other words don't hide the reason why c2s connection has failed
2019-08-06 16:18:04 +03:00
Evgeny Khramtsov
934392fd7e
Implement reload/3 for mod_http_upload
2019-08-06 12:31:33 +03:00
Evgeny Khramtsov
2168489ddf
Don't retain module option on gen_mod supervisor
...
When module's options were updated (e.g. by reloading ejabberd.yml)
and, later, the module's process crashed, gen_mod supervisor
restarts the process with outdated options. This is now fixed.
2019-08-04 21:46:18 +03:00
Evgeny Khramtsov
4dac9f1e6d
Validate BINVAL values of vcard elements as Base64
2019-08-02 14:20:10 +03:00
Evgeny Khramtsov
5a976719fb
Introduce 'vcard' option for the modules supporting vCards
...
The mapping between vCard's XML elements and YAML elements
of 'vcard' option is straightforward. For example, if you
want mod_muc to return the following vCard:
```
<vCard xmlns='vcard-temp'>
<FN>Conferences</FN>
<ADR>
<WORK/>
<STREET>Elm Street</STREET>
</ADR>
</vCard>
```
you need to set the configuration as:
```
modules:
...
mod_muc:
vcard:
fn: Conferences
adr:
-
work: true
street: Elm Street
...
```
2019-08-02 13:59:42 +03:00
Badlop
66d2e6ca27
Explain requirements of the FROM argument of send_message command ( #2959 )
2019-08-01 11:29:42 +02:00
Evgeny Khramtsov
059cf8fed1
Don't call ejabberd_cluster from its submodules
...
Fixes #2971
2019-07-31 19:25:47 +03:00
Evgeny Khramtsov
465e1f5ee1
Fix db_type validation
2019-07-31 18:55:43 +03:00
Paweł Chmielowski
51bf552c3f
For pubsub items with max_item = 1 use order by in sql queries
2019-07-31 13:06:44 +02:00
Evgeny Khramtsov
48bed43902
Don't render CAPTCHA whitelist when CAPTCHA is not configured
...
Fixes #2970
2019-07-31 12:35:06 +03:00
Evgeny Khramtsov
bbee13f970
Improve SQL timeouts handling
...
Also improve some formatting
2019-07-31 10:39:53 +03:00
Evgeny Khramtsov
651d69fb98
Also catch 'shutdown' exit reason
2019-07-30 23:17:10 +03:00
Evgeny Khramtsov
15f50f5331
Improve pattern matching
2019-07-30 20:57:32 +03:00
Evgeny Khramtsov
3e4d7a98af
Implement read-repair for session pids
2019-07-30 20:57:09 +03:00
Evgeny Khramtsov
46cc6c66ec
Remove dead code
2019-07-30 15:31:44 +03:00
Evgeny Khramtsov
b4770815c0
Fix race condition when deleting c2s session record
2019-07-30 15:21:58 +03:00
Evgeny Khramtsov
209f5d32e1
Fix SQL connections leakage
2019-07-30 14:26:11 +03:00
Evgeny Khramtsov
81996b153a
Fix previous commit
2019-07-30 13:40:40 +03:00
Evgeny Khramtsov
59adfcb8e0
Correctly report resume timeout
2019-07-30 12:50:31 +03:00
Evgeny Khramtsov
8a2b2668cf
Expose access_model and publish_model in pubsub#metadata
...
Fixes #2931
2019-07-30 10:45:32 +03:00
Evgeny Khramtsov
949e4c1c59
Generate 'remote-server-not-found' stanza error for non-IDN domains
...
Fixes #2969
2019-07-29 22:45:38 +03:00
Evgeny Khramtsov
d64951c2b2
Improve handling of errors in tree_action/3
2019-07-29 22:24:26 +03:00
Evgeny Khramtsov
2cd930b7d5
Appropriately abort pubsub transaction
2019-07-29 21:44:30 +03:00
Badlop
630cfe26b7
mod_multicast service discovery bugfix (thanks to McPo)( #2968 )
2019-07-29 19:32:26 +02:00
Evgeny Khramtsov
2da168cf05
Improve handling of errors in pubsub code
2019-07-29 17:13:16 +03:00
Frank Diebolt
cd88d342b9
Apply shaping to websocket connections
2019-07-29 14:54:25 +02:00
Evgeny Khramtsov
35576b4608
Improve hooks validator and fix bugs related to hooks registration
2019-07-29 10:46:20 +03:00
Evgeny Khramtsov
0aa004bafc
Improve ejabberd halting procedure
2019-07-26 11:40:19 +03:00
Evgeny Khramtsov
a54694684d
Fix default value of resume_timeout
2019-07-25 13:57:43 +03:00
Evgeny Khramtsov
3b18e7cc00
Don't attempt to restart killed lager
...
This is not very robust and the call may hang forever
2019-07-24 19:47:14 +03:00
Evgeny Khramtsov
ca0e53b3c5
Fix typo in log message
2019-07-24 18:56:44 +03:00
Evgeny Khramtsov
ae135e57d9
Improve SQL pool logic
...
Avoid using ETS table for SQL workers: rely on processes names instead
2019-07-24 14:28:43 +03:00
Holger Weiss
c3c8dffeab
Revert "mod_privacy: Don't try to look up 'undefined' list"
...
This reverts commit 4218aecd1c
. The issue
was fixed in a0d3fb3b23
already.
2019-07-24 11:29:57 +02:00
Holger Weiss
4218aecd1c
mod_privacy: Don't try to look up 'undefined' list
...
Don't crash if the <query/> element of an IQ of type 'set' contains
neither a <default/> nor an <active/> child.
This fixes a regression introduced in commit
8410a203ec
.
2019-07-24 10:45:30 +02:00
Evgeny Khramtsov
9ef52f2b0f
Fix UTF-8 support in translation files
2019-07-24 11:34:40 +03:00
Evgeny Khramtsov
052917961a
Add 'certauth' command to extauth port
2019-07-24 10:13:51 +03:00
Holger Weiss
8ac4a5f792
mod_stream_mgmt: Allow flexible timeout format
...
Adjust mod_stream_mgmt and the related code in mod_push_keepalive to
support the flexible timeout format.
2019-07-23 00:15:40 +02:00
Christophe Romain
c0dc95d529
Fix wrong virtual host in mod_pubsub:send_stanza ( #2930 )
2019-07-22 10:13:27 +02:00
Evgeny Khramtsov
4be98b5aef
Log an error when JWT authentication is configured without jwt_key
2019-07-19 12:01:57 +03:00
Evgeny Khramtsov
55d42b9000
Fix typo
2019-07-18 22:35:16 +03:00
Evgeny Khramtsov
6d6e3e348d
Improve robustness of reading jwt_key option
2019-07-18 22:31:08 +03:00
Evgeny Khramtsov
50ef982eff
Get rid of useless code
2019-07-18 21:53:22 +03:00
Evgeny Khramtsov
ad902c2e16
Don't forget to unregister route when the owning process is dead
2019-07-18 21:48:53 +03:00
Evgeny Khramtsov
3f7d9e3ad6
Remove Riak support
...
Reasons:
- Riak DB development is almost halted after Basho
- riak-erlang-client is abandoned and doesn't work
correctly with OTP22
- Riak is slow in comparison to other databases
- Missing key ordering makes it impossible to implement range
queries efficiently (e.g. MAM queries)
2019-07-18 19:31:12 +03:00
Evgeny Khramtsov
478f69317b
Report failures of changing net_ticktime
2019-07-18 13:02:13 +03:00
Evgeny Khramtsov
6397dc5d4c
Reset net ticktime on config reload
2019-07-18 12:47:29 +03:00
Evgeny Khramtsov
dd301306d3
Allow flexible timeout format in session_expiry option of mod_mqtt
2019-07-17 22:58:14 +03:00
Evgeny Khramtsov
d718b35d46
Use econf:timeout() instead of econf:pos_int() wherever appropriate
2019-07-17 22:15:56 +03:00
Evgeny Khramtsov
c5305c5f9a
Improve RPC calls in mod_configure
2019-07-17 20:51:33 +03:00
Evgeny Khramtsov
38b2e099d5
Fix pending nodes retrieval for SQL backend
...
Thanks to Christophe Romain
2019-07-17 12:34:09 +03:00
Evgeny Khramtsov
554f4fc851
Change time unit of hibernation_timeout option to 'second'
...
This is done for the sake of consistency with other options
2019-07-16 23:42:38 +03:00
Evgeny Khramtsov
15b4b3fa1b
Fix typos using codespell
2019-07-16 22:07:39 +03:00
Evgeny Khramtsov
cc2f674805
Avoid record duplication
2019-07-16 18:34:05 +03:00
Evgeny Khramtsov
a7a53f601e
Add econf:string/2 validator
2019-07-16 18:10:45 +03:00
Evgeny Khramtsov
0e48adb1ed
Fix opt_type.sh script and re-generate options
2019-07-16 18:06:51 +03:00
Evgeny Khramtsov
76d4c178a7
Use econf:timeout/2
2019-07-16 18:02:32 +03:00
Evgeny Khramtsov
f85488583c
Handle CAPTCHA forms using captcha_form codec
2019-07-16 17:51:51 +03:00
Paweł Chmielowski
6b3d0d154e
Add code for hibernating inactive muc_room processes
2019-07-16 15:09:58 +02:00
Evgeny Khramtsov
4d877289fb
Bump xmpp version and fix revealed bugs
2019-07-16 15:59:33 +03:00
Evgeny Khramtsov
f10de6439b
Fix 'get-pending' command form generation
2019-07-16 15:09:51 +03:00
Badlop
5ecbed5eae
Remove very old useless comments in ejabberd_xmlrpc.erl
2019-07-16 12:56:41 +02:00
Badlop
7079634f18
Documentation of mod_http_api moved from source code to Docs page
2019-07-16 12:53:06 +02:00
Evgeny Khramtsov
5eeb95c74f
Remove modules management from mod_configure
2019-07-15 17:08:41 +03:00
Evgeny Khramtsov
e1f3526466
Don't hide errors using catch
2019-07-15 17:03:29 +03:00
Evgeny Khramtsov
a00496a38f
Compile some regexps as unicode
2019-07-15 15:26:47 +03:00
Evgeny Khramtsov
2419e00a26
Bump yconf version
2019-07-15 15:22:51 +03:00
Evgeny Khramtsov
061c754c68
Fix regexp matching
2019-07-15 15:07:56 +03:00
Evgeny Khramtsov
104c4093dc
Only respond with occupants list to disco#items with empty node
...
Fixes #2942
2019-07-15 14:10:45 +03:00
Evgeny Khramtsov
4ec78736b9
Improve handling of unexpected iq in mod_muc_room
...
Don't crash on an iq-set/get containing unexpected tag within
expected namespace
This further improves PR #2900
2019-07-15 13:59:41 +03:00
Evgeny Khramtsov
04dab48794
ejabberd_s2s should start after its supervisors
2019-07-15 12:59:47 +03:00
Evgeny Khramtsov
295015a8cb
Fix startup order of ejabberd_sup children
2019-07-15 12:53:26 +03:00
Evgeny Khramtsov
e1eedd587d
Remove processing of {wait, _} result in gen_mod
...
This is no longer needed
2019-07-15 12:43:55 +03:00
Evgeny Khramtsov
a4e19b7108
Increase shutdown time to 5 seconds
2019-07-15 12:43:32 +03:00
Evgeny Khramtsov
87b8344ede
Attach mod_muc_room processes to a supervisor
2019-07-15 12:43:05 +03:00
Evgeny Khramtsov
1fe1322bc1
Improve some validators
2019-07-15 09:59:07 +03:00
Holger Weiss
cd36bb6eda
mod_http_fileserver: Unregister 'reopen_log_hook'
...
Unregister the global 'reopen_log_hook' on termination if the module isn't
loaded for another host.
2019-07-14 15:16:13 +02:00
Evgeny Khramtsov
15dcff92e8
Use correct virtual host when consulting trusted_proxies
2019-07-13 12:20:06 +03:00
Evgeny Khramtsov
6013b4a3a6
Fix broken ejabberd_cluster:call/5
2019-07-13 10:34:59 +03:00
Evgeny Khramtsov
f0c0e4a6fc
Don't crash when attempt to get an option for unknown virtual host
...
Log a warning instead and retry with a global scope
2019-07-12 13:59:33 +03:00
Evgeny Khramtsov
696c64064b
Add call/5 and multicall/5 to ejabberd_cluster
2019-07-12 13:58:46 +03:00
Evgeny Khramtsov
53dacb3825
Use ejabberd_cluster:call() instead of rpc:call()
2019-07-12 12:30:38 +03:00
Evgeny Khramtsov
6f5d99275b
Process unexpected messages uniformly
2019-07-12 11:55:36 +03:00
Evgeny Khramtsov
19cbbf69b2
Improve previous commit
2019-07-11 00:13:39 +03:00
Evgeny Khramtsov
6fd736d496
Gracefully report invalid encoding of a translation file
2019-07-11 00:04:32 +03:00
Evgeny Khramtsov
b0379db5a1
Fix formatting
2019-07-10 23:46:42 +03:00
Evgeny Khramtsov
d1b5844d64
Merge pull request #2900 from aquarhead/protect-muc-owner
...
Protect against bad muc#owner requests
2019-07-10 23:46:08 +03:00
Evgeny Khramtsov
9dedbe30ba
Make sure configuration file path always represented as binary()
...
Fixes #2936
2019-07-10 23:35:53 +03:00
Evgeny Khramtsov
bfa3125a81
Fix Elixir modules detection in the configuration file
...
Fixes #2937
2019-07-10 23:17:53 +03:00
Evgeny Khramtsov
5700089187
Gracefully close inbound s2s connections
2019-07-10 12:15:58 +03:00
Evgeny Khramtsov
722864666d
Add/improve type specs
2019-07-10 10:31:51 +03:00
Evgeny Khramtsov
691f9e0bf7
Improve error handling/reporting when loading language translations
...
Also speed up loading on multi-core machines
2019-07-10 10:30:11 +03:00
Evgeny Khramtsov
04ccba0347
Fall back to map/2 and foreach/2 on single-core machines
2019-07-10 10:28:37 +03:00
Evgeny Khramtsov
01f531b3d6
Add type specs for mod_adhoc
2019-07-09 17:02:54 +03:00
Evgeny Khramtsov
f19b41fd19
Improve type specs for ejabberd_s2s
...
Also minor code cleanup
2019-07-09 16:42:24 +03:00
Evgeny Khramtsov
43da45cf67
Improve type specs of mod_muc_room
2019-07-09 15:21:17 +03:00