Holger Weiss
88f392721b
gen_mod: Reload modules after reloading listeners
...
Make sure modules won't be reloaded before listeners. This is necessary
to allow the (not yet committed) 'mod_stun_disco' module to parse the
listener configuration after configuration reloads.
2020-04-23 20:05:40 +02:00
Holger Weiss
c55e7b8499
ejabberd_stun: Fix 'turn_ip' fallback
...
The 'turn_ip' option validator doesn't accept an inet:ip4_address()
tuple.
While at it, change the logic to only perform the fallback address
lookup if no 'turn_ip' is configured (analogous to the fallback
mechanism for the case where the 'auth_realm' is undefined).
2020-04-23 18:32:40 +02:00
ChaosKid42
1f7ca91670
use dsn-less config for mssql ( #3131 )
2020-04-23 13:56:41 +02:00
Holger Weiss
09a87f5a0c
ejabberd_stun: Handle hashed passwords gracefully
...
Don't crash when STUN/TURN authentication is performed against a
SCRAM-hashed password.
2020-04-22 00:16:03 +02:00
Holger Weiss
1db70edcf8
ejabberd_stun: Add 'stun_get_password' hook
...
Add a hook that allows modules to offer a password for STUN/TURN
authentication.
2020-04-22 00:09:42 +02:00
Badlop
1a3533e4a2
Fix some English typos
2020-04-21 20:58:01 +02:00
Badlop
3db9de26e9
Rephrase mod_admin_extra doc, a2x screwed the format when building Docs
2020-04-21 20:11:39 +02:00
Badlop
78f0439e78
Make a few more strings translatable in MUC and Shared Roster WebAdmin
2020-04-20 20:24:56 +02:00
Holger Weiss
c836dc66a8
ejabberd_stun: Set a default 'turn_ip'
...
Try to resolve the local hostname, use the result as the default
'turn_ip', and only log a warning if that fails. Using the local
hostname's address by default is analogous to mod_proxy65's behavior.
2020-04-20 08:42:32 +02:00
Badlop
0355e15a42
Fix doc content in mod_admin_extra so it can be extracted by make translations
2020-04-17 17:28:39 +02:00
Badlop
101f7a6d63
Check if mod_muc_log is enabled before setting logging option ( #3215 )
2020-04-17 16:19:58 +02:00
Badlop
4aa85c538c
When rescode is some unexpected, probably error message, print it
2020-04-17 16:19:55 +02:00
Paweł Chmielowski
22980ed8a5
Restart offline pop_messages when there is mismatch between select and delete
...
When another connection is inserting something to spool at this same time
as we do pop_messages, it's possible that insert will happen between we
fetch messages and delete them, so we effectively will delete it without
delivering it to client. This change catch this situation and restart
transaction, so we should always have consistent results.
2020-04-17 15:30:28 +02:00
Badlop
0705695e02
Update documentation of mod_shared_roster ( #3214 )
2020-04-16 13:12:32 +02:00
Paweł Chmielowski
c11922e2a2
Make session iq response have from be set to server jid
...
It looks like old version of Smack don't accept request that are have
from sent to sender jid, but are only working when jid is set to server
address. This is also how it looks in old xmpp rfc examples.
2020-04-16 13:05:42 +02:00
Paweł Chmielowski
37226dd41f
Resending unacked stanzas should send even archived msgs if mod_offline is enabled
...
Messages that are received when no c2s is active will be stored in offline,
even when mam archived them, so i don't think we should be doing something
different in this case.
2020-04-16 13:04:12 +02:00
Badlop
cd0b65f4d5
Fix unused variables from previous commit
2020-04-14 15:00:45 +02:00
Badlop
b7c088d4b0
Update links to the ejabberd Docs page in WebAdmin
2020-04-14 13:59:11 +02:00
Badlop
e197b25e82
Rename opts->name to label, to avoid confusion with the group name ( #3214 )
...
Also updated WebAdmin to show more meaningful explanations
Also fixed a bug that break support for group@host in Displayed
2020-04-14 13:58:53 +02:00
Badlop
8694517c34
Minor fixes in doc
2020-04-09 16:30:21 +02:00
Badlop
2febd1c220
Copy more option explanations from ejabberd Docs site
2020-04-08 18:49:41 +02:00
Badlop
aa0ed37034
Add ejabberd version number to man pages
2020-04-08 18:48:09 +02:00
Badlop
da18245d9a
Indicate which ejabberd version is used to produce the page
2020-04-08 18:47:50 +02:00
Badlop
5cc9a1fe44
Don't make commands subsections, so Docs TOC plage is cleaner
2020-04-08 18:45:29 +02:00
Badlop
de0aead1cd
Fix set_loglevel example argument documentation
2020-04-08 18:44:09 +02:00
Badlop
624ba7e94f
Improve formatting of mod_announce doc
2020-04-08 18:42:45 +02:00
Paweł Chmielowski
9bb3aee0e2
Make resumed sessions try to deliver possibly queued messages to new session
...
Between receiving resume request and being closed by new session, it's
possible (even if not very likely) that new messages would arrive to
process that is resumed. In that case try to reroute messages that were
received after we sent resume reply to new process.
2020-04-07 14:51:49 +02:00
Paweł Chmielowski
16585713f8
Log errors that happen when retrieving http headers in ejabberd_http
...
It seems that ssl errors can be generated here, so lets have abily to show
them instead of swallowing them silently.
2020-04-07 13:50:01 +02:00
Holger Weiss
e01e528235
mod_carboncopy: Bump supported XEP revision
...
Since mod_carboncopy supports "urn:xmpp:carbons:rules:0", it implements
version 0.13.x of XEP-0280.
2020-04-05 22:52:55 +02:00
Badlop
23493ce239
Document mod_shared_roster_ldap options
2020-04-02 12:56:43 +02:00
Badlop
510ab53341
Add ejabberd_auth_http auth_opts brief description
2020-04-02 12:56:40 +02:00
Badlop
220cf73318
Document sql_prepared_statements
2020-04-02 12:56:38 +02:00
Badlop
f6d102f5e2
Quick document with forward link api_permissions
2020-04-02 12:56:36 +02:00
Badlop
05b68764cc
Document some global options
2020-04-02 12:56:33 +02:00
Badlop
4e51e82ccf
Add three missing mod_bosh options
2020-04-02 12:56:31 +02:00
Badlop
116fa8e9ca
add missing mod_mam options
2020-04-02 12:56:28 +02:00
Badlop
ce6fd654a0
Fix mod_pubsub indentation
2020-04-02 12:56:26 +02:00
Badlop
5ee2f48aea
Add mod_pubsub configuration documentation
2020-04-02 12:56:23 +02:00
Paweł Chmielowski
1bd560f3f2
Fix potential message loss in terminating c2s sessions
...
Calling sync version of xmpp_stream_in/out:stop could lead to messages
never being processed by c2s process if they were queued in p1_server.
This could be reproduced by when having messages in offline storage,
starting sessions, enabling stream_mgmt, sending initial presence, and then immediately
</stream:stream>, messages that mod_offline would send process would not
be bounced back by stream_mgmt.
2020-04-01 14:36:01 +02:00
Boris Chernov
87dda1b638
sql_type should be taken for LServer, not LHost ( #3202 )
...
sql_type option should be retrieved for the main domain, not the MUC subdomain
2020-03-30 09:47:36 +02:00
Paweł Chmielowski
5ec214386e
Make webadmin redirect to page that end with /
2020-03-26 14:17:48 +01:00
Paweł Chmielowski
73ba38ae35
Revert "Pass base path instead of level to support URL missing slash ( #3177 )"
...
This reverts commit e9d1201ea8
.
2020-03-26 13:43:24 +01:00
Paweł Chmielowski
1ffa9a0cf5
Do not change to attribute of sent messages from bare to full jid
...
This is not correct per xmpp spec
2020-03-25 16:00:16 +01:00
Badlop
150b7e7219
Fix unsubscribe command result, handle_sync_event result, and dialyzer
...
How to reproduce the problems fixed by this commit:
Create temporary room, other account subscribes, and owner leaves
Unsubscribe that account with the command: ejabberdctl unsubscribe_room ...
2020-03-24 11:44:22 +01:00
Paweł Chmielowski
7caec56e96
Make bounce_message_queue wait for 100ms for incoming messages
...
There is possibilty that between c2s process unregistering itself from sm
and terminating, some other process could try to send something to c2s,
which could result in messages to triggering mam/offline hooks, and causing
them not to be stored in any way.
2020-03-23 15:16:33 +01:00
Paweł Chmielowski
97354426cf
Make mod_muc_room:unsubscirbe handle that unsubscribe may stop room
2020-03-23 13:16:48 +01:00
Paweł Chmielowski
63e3fb92d1
Better handling of xml parse errors in send_stanza
2020-03-23 12:59:30 +01:00
Paweł Chmielowski
92a09fdb71
Also add "escape '\'" to prepared statements in pgsqllike_escape
2020-03-18 14:36:17 +01:00
Paweł Chmielowski
039d786e1f
Add escape '\' to like expression in pgsql to fix problem cockroachdb
...
Cockroachdb doesn't properly handle escaping of _ in like expressions,
having "like ... escape '\'" makes it work, by disabling optimization that
causes this broken behaviour
2020-03-18 14:31:13 +01:00
Paweł Chmielowski
2d707cc0d2
Fix type of computed field in node_flat sql query
2020-03-18 14:05:05 +01:00
Paweł Chmielowski
0a88d03dc9
Use correct type for seconds field in mod_last sql queries
2020-03-18 14:05:05 +01:00
Paweł Chmielowski
f12ee28660
Change conversion of boolean values for cockroachdb
2020-03-18 14:05:05 +01:00
Badlop
260c289d34
Fix Dialyzer warning that jid can't be 'undefined'
2020-03-18 12:02:16 +01:00
Paweł Chmielowski
d8899ca9ac
Add cache to mod_shared_roster
...
This should help with excessive queries that sql backend generates
Should fix issue #3158 .
2020-03-17 14:35:43 +01:00
Paweł Chmielowski
1e456065f6
Fix issue with family field on cockroachdb
2020-03-17 11:35:54 +01:00
Paweł Chmielowski
82074190fb
Replace mod_shared_roster:X call with just X inside that module
2020-03-16 14:57:55 +01:00
Paweł Chmielowski
6fe7c5cac5
Try to limit calls to groups_with_opts in mod_shared_roster
2020-03-16 13:29:05 +01:00
Badlop
e9d1201ea8
Pass base path instead of level to support URL missing slash ( #3177 )
2020-03-11 16:26:33 +01:00
Paweł Chmielowski
9a89b360c0
fix command rooms_empty_destroy ( #3183 )
2020-03-05 11:41:51 +01:00
Paweł Chmielowski
b39a1e2d74
Add reload handler to ejabberd_auth_ldap
...
This will restart ldap process with new options, and should made it
recognize new values.
This fixes issue #3181
2020-03-04 13:19:41 +01:00
Paweł Chmielowski
151b818af4
Use compilation flags used during build to compile modules in ext_mod
...
This fixes issue #3178
2020-03-03 11:25:17 +01:00
Paweł Chmielowski
df47e2a93f
Fix list parameters in sql queries on pgsql
2020-02-27 11:10:30 +01:00
Badlop
47c5aba1e5
Allow mod_register_web to be accessed from now-served vhosts ( #3173 )
2020-02-26 13:57:19 +01:00
Badlop
00abf5d42c
Fix handle of 'http' atom in Headers, problem introduced in 357e7e11
2020-02-26 13:56:38 +01:00
Paweł Chmielowski
9c25d1024a
Support ssl connection on mysql
2020-02-26 10:54:04 +01:00
Paweł Chmielowski
357e7e117d
Make http heades passed in custom_headers override builtin headers
...
Previously we just appended them, so sometimes we just had duplicates
This fixes issue #3056
2020-02-21 12:19:37 +01:00
Mickaël Rémond
3947e64524
Merge pull request #3127 from area-42/allow_emojis_with_mssql
...
allow storage of emojis in archive on mssql
2020-02-20 16:28:24 +01:00
Badlop
e234ced107
Support ejabberd_auth_http's auth_opts ( processone/ejabberd-contrib#284 )
2020-02-19 13:18:39 +01:00
Paweł Chmielowski
a19fdb717b
Do read piefxis file fully before starting processing included file
...
Previous method of processing files, could lead to mixing events generated
by parsers for multiple files, where we could get in inconsistant state.
After this change we gather all events generated by parser for single file,
before we start parsing any included file.
This fixes issue #3166
2020-02-18 15:02:23 +01:00
Holger Weiss
e7c84b81b2
ejabberd_admin: Fix *_config command result format
...
The 'reload_config' and 'dump_config' calls are expected to yield a
'rescode' result, which means they must return 'ok' (rather than a
tuple) on success.
Fixes #3170 .
2020-02-14 18:52:54 +01:00
Paweł Chmielowski
66a84b8d2b
Make piefxis import properly decode scram passwords
...
We encoded scramed password with base64 when exporting, but didn't apply
reverse operation on import, this adds base64 decoding on import.
This fixes issue #3167 .
2020-02-11 12:48:19 +01:00
Badlop
5574b21dd6
Remove tweak introduced in 05c2995c
for #1954 as it isn't needed anymore
2020-02-07 13:32:49 +01:00
Alexey Shchepin
b2f536ec8b
Use SQL ESCAPE statement only with MSSQL and SQLite, improve compatibility with CockroachDB ( #3074 )
2020-02-04 04:53:54 +03:00
Paweł Chmielowski
fdb7e3e3fa
Optimize sql queries in pubsub select_affiliation_subscriptions
2020-01-31 11:43:41 +01:00
Badlop
2d32c66fd7
Update copyright to 2020 ( #3149 )
2020-01-28 15:49:23 +01:00
Holger Weiss
20c0fed457
mod_http_upload: Document correct put_url default
...
Closes #3152 .
2020-01-27 00:04:21 +01:00
Paweł Chmielowski
75094df25e
Do not use ~ts format in string that are put in xmpp payload
...
We are expecting utf8 data here, and using that flag will convert those
to unicode codepoints, which aren't handled properly later.
2020-01-22 12:55:27 +01:00
Holger Weiss
243dc06733
mod_stream_mgmt: Don't crash on disabled ACK timer
...
Don't attempt to start an ACK timer if 'ack_timeout' is set to
'infinity'.
Thanks to Ingo Jrgensmann for reporting the bug.
2020-01-14 01:17:01 +01:00
Holger Weiss
ec035e3c41
mod_carboncopy: Omit check for undefined 'from'
...
These days, the 'from' of an outgoing #message is guaranteed to be set
to the sender's JID by xmpp_stream_in:process_authenticated_packet/2.
2020-01-13 00:45:33 +01:00
Holger Weiss
430b9bef38
mod_carboncopy: Don't process non-message stanzas
...
Avoid examining presence and IQ stanzas, as they're not eligible for
carbon-copying.
This is just an optimization and should not change the behavior.
2020-01-13 00:31:01 +01:00
Holger Weiss
ff193a1a6f
mod_carboncopy: Also copy mediated MUC invitations
2020-01-13 00:13:54 +01:00
Holger Weiss
74c01caf08
mod_carboncopy: Improve is_carbon_copy() check
...
Make sure the hook chain is stopped early whenever a carbon copy is
processed, not just in some cases.
2020-01-12 14:04:31 +01:00
Holger Weiss
a8f6c1db1d
mod_carboncopy: Support new copying rules
...
Support the copying rules added to XEP-0280 with version 0.13.0 under
the "urn:xmpp:carbons:rules:0" namespace.
Closes #3011 .
2020-01-12 13:42:00 +01:00
Holger Weiss
919c9d6fb1
mod_sip: Omit documentation when SIP is disabled
...
Don't generate the actual mod_sip documentation if ejabberd is built
without SIP support.
2020-01-11 20:34:11 +01:00
Holger Weiss
6531fbb0f3
mod_sip: Fix compilation without SIP support
...
Make sure the T() macro is also defined when ejabberd is compiled
without SIP support.
Fixes #3143 .
2020-01-11 20:27:16 +01:00
Evgeny Khramtsov
97da380acd
Generate ejabberd.yml.5 man page from source code directly
...
Several documentation callbacks (doc/0 and mod_doc/0) are implemented
and `ejabberdctl man` command is added to generate a man page. Note
that the command requires a2x to be installed (which is a part of
asciidoc package).
2020-01-08 12:24:51 +03:00
Holger Weiss
0e96d64e60
Omit push notifications if offline storage failed
...
This commit removes the 'store_offline_message' hook which didn't allow
mod_push to suppress notifications when storing an offline message
failed (due to the offline spool size limit being exceeded or due to
database issues).
Fixes #3120 .
2020-01-05 20:08:54 +01:00
Christoph Scholz
00ccb119ea
allow storage of emojis in archive on mssql
2019-12-27 13:06:06 +01:00
Badlop
c396271c00
Fix case clause error regarding admin_generated password ( #3122 )
2019-12-24 11:10:36 +01:00
Paweł Chmielowski
4b3a1ec614
Add ability to hookup config transformer
2019-12-16 12:39:56 +01:00
Badlop
869826c818
Fix mod_muc_log skipping non-Latin messages (thanks to Yandrey)( #3115 )
2019-12-16 11:35:10 +01:00
Alexey Shchepin
24ac62eabd
Improve compatibility with CockroachDB ( #3074 )
2019-12-16 06:52:06 +03:00
Alexey Shchepin
f9120f75b0
Improve compatibility with CockroachDB ( #3074 )
2019-12-11 17:49:02 +03:00
Evgeny Khramtsov
6e68ca2211
Improve send_message command
2019-11-29 11:27:57 +03:00
Paweł Chmielowski
71c44bff8b
Make convert_to_scram work with all backends
2019-11-27 10:35:52 +01:00
Alexey Shchepin
2a35cadf80
Merge branch 'pg_prepared_statements' of https://github.com/sabudaye/ejabberd into sabudaye-pg_prepared_statements
...
Conflicts:
ejabberd.yml.example
src/ejabberd_sql.erl
2019-11-26 19:45:01 +03:00
Evgeny Khramtsov
910f6aa290
Fix previous commit
2019-11-24 16:26:03 +03:00
Evgeny Khramtsov
de91618070
Check also 'access' rule on account removal
...
According to the documentation we should not allow
account removal when it's forbidden by the rule
from 'access' option.
2019-11-24 16:21:01 +03:00
Evgeny Khramtsov
650bdae5d9
Make sure IQ result is correctly routed on account removal
...
Thanks to Philipp Hörist for spotting this
2019-11-24 15:43:38 +03:00
Evgeny Khramtsov
33a16090d3
Fix acl reloading
2019-11-15 18:21:30 +03:00