Badlop
2d32c66fd7
Update copyright to 2020 ( #3149 )
2020-01-28 15:49:23 +01:00
Paweł Chmielowski
640f4bed82
Use tagged xmpp
2020-01-16 15:08:57 +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
Paweł Chmielowski
4c61e465ca
Rename plugin to not clash with plugin from dep
2020-01-08 10:41:48 +01:00
Paweł Chmielowski
c40d8fe11b
Update deps
2020-01-08 10:18:52 +01:00
Evgeny Khramtsov
b47a2e9626
Bump yconf version
2019-11-08 11:17:45 +03:00
Evgeny Khramtsov
02cb3d93fd
Don't lowercase first letter in reason string
2019-10-25 18:18:04 +03:00
Evgeny Khramtsov
e3962aea6e
Use lager on OTP<22.0
...
This also lowers Erlang/OTP minimum version requirement back to 19.3
2019-10-25 11:44:04 +03:00
Evgeny Khramtsov
e4a8afb15d
Replace lager with built-in new logging API
...
This change requires Erlang/OTP-21.0 or higher.
The commit also deprecates the following options:
- log_rotate_date
- log_rate_limit
Furthermore, these options have no effect. The logger now fully
relies on log_rotate_size, that cannot be 0 anymore.
The loglevel option now accepts levels in literal formats.
Those are: none, emergency, alert, critical, error, warning, notice, info, debug.
Old integer values (0-5) are still supported and automatically converted
into literal format.
2019-10-18 19:12:32 +03:00
Paweł Chmielowski
0673b068e0
Bump version of jose to 1.9.0
...
This version theoretically require rebar3 but we have plugin that can
override it by using version declared in main config file
2019-10-01 16:34:25 +02:00
Evgeny Khramtsov
d2f92eecd4
Re-tag xmpp dep
2019-09-26 10:22:36 +03:00
Paweł Chmielowski
9b2a44e750
Tag p1_acme and use that in deps
2019-09-25 12:46:22 +02:00
Evgeny Khramtsov
aefe2fd640
Rename to p1_acme
2019-09-25 13:10:47 +03:00
Paweł Chmielowski
f2e8754586
Update deps
2019-09-24 11:01:43 +02:00
Evgeny Khramtsov
2e1e128833
Fix unicode formatting in ACME module
2019-09-22 20:11:54 +03:00
Evgeny Khramtsov
faefad746e
Fix unicode processing in ejabberd.yml
2019-09-22 19:42:29 +03:00
Evgeny Khramtsov
b7e296857c
Don't call to xmpp_idna
2019-09-22 13:28:14 +03:00
Evgeny Khramtsov
75fe6f44d2
Fix IDNA support in ACME requests
2019-09-22 12:44:31 +03:00
Evgeny Khramtsov
a616cc04cb
Support IDN hostnames in ACME requests
2019-09-22 11:04:38 +03:00
Evgeny Khramtsov
fa00caced4
Bump acme version
2019-09-21 22:18:49 +03:00
Evgeny Khramtsov
e227940b85
Improve ACME implementation
...
Fixes #2487 , fixes #2590 , fixes #2638
2019-09-20 12:36:31 +03:00
Holger Weiss
b1c10d2a03
Add support for XEP-0328: JID Prep
...
The mod_jidprep module implements XEP-0328: JID Prep, version 0.1.
2019-09-12 09:26:45 +02:00
Paweł Chmielowski
e8fb9ab303
Use tagged version for yconf as well
2019-08-02 16:06:19 +02:00
Paweł Chmielowski
b50e7161ee
Update deps to tagged versions
2019-08-02 15:12:38 +02:00
Evgeny Khramtsov
4dac9f1e6d
Validate BINVAL values of vcard elements as Base64
2019-08-02 14:20:10 +03:00
Evgeny Khramtsov
2f51aae818
Bump pkix version
2019-08-01 12:56:23 +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
052917961a
Add 'certauth' command to extauth port
2019-07-24 10:13:51 +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
2171abf5ae
Allow more flexible timeout values in the configuration
...
Now all timeout values can be expanded with suffixes, e.g.
```
negotiation_timeout: 30s
s2s_timeout: 10 minutes
cache_life_time: 1 hour
```
If the suffix is not given, the timeout is assumed in *seconds*
2019-07-16 23:45:44 +03:00
Evgeny Khramtsov
a7a53f601e
Add econf:string/2 validator
2019-07-16 18:10:45 +03:00
Evgeny Khramtsov
f85488583c
Handle CAPTCHA forms using captcha_form codec
2019-07-16 17:51:51 +03:00
Evgeny Khramtsov
4d877289fb
Bump xmpp version and fix revealed bugs
2019-07-16 15:59:33 +03:00
Evgeny Khramtsov
2419e00a26
Bump yconf version
2019-07-15 15:22:51 +03:00
Paweł Chmielowski
948578b55b
Downgrade jose to version that works with rebar2 and del warning_as_error from it's config
2019-07-12 14:55:01 +02:00
Paweł Chmielowski
5a927049ef
Bump jose version
2019-07-12 13:02:10 +02:00
Evgeny Khramtsov
f68da70f3e
Avoid last handled stanzas cache to grow indefinitely
2019-07-01 20:43:57 +03: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
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
2abca350e0
Fix type specs
2019-06-27 11:32:54 +03:00
Evgeny Khramtsov
4f69325e3c
Fix shaper selection in ejabberd_c2s
2019-06-22 10:19:17 +03:00
Evgeny Khramtsov
9e2e590061
Fix exception formatting on old Erlang
2019-06-14 16:58:39 +03:00
Paweł Chmielowski
b952c4f294
Use commit id instead of branch name to specify deps in rebar.config
2019-06-14 12:16:13 +02:00
Evgeny Khramtsov
a02cff0e78
Use new configuration validator
2019-06-14 12:33:26 +03:00
Paweł Chmielowski
5642338a73
Update deps
2019-05-23 12:13:28 +02:00
Evgeny Khramtsov
4424f40186
Use lager 3.6.10
2019-05-20 12:10:23 +03:00
Mickael Remond
be14caddf4
Use stable xmpp version
2019-05-03 15:48:12 +02:00
Paweł Chmielowski
17444ba84e
Allow non-moderator subscribers to get list of room subscribers
2019-04-25 14:52:47 +02:00
Evgeny Khramtsov
e623678747
Bump pkix version
2019-04-19 16:26:58 +03:00
Evgeny Khramtsov
7f14826564
Use new ets_cache api in ejabberd_auth
2019-04-19 15:08:41 +03:00
Evgeny Khramtsov
5c69122bbe
Use xmpp:get_subtags/2
2019-04-01 10:47:29 +03:00
Paweł Chmielowski
a7310ffea1
Make misc:add_delay_info properly handle multiple delay tags in element
2019-03-29 11:25:35 +01:00
Paweł Chmielowski
cf733b0913
Update mysql driver
2019-03-20 13:28:13 +01:00
Paweł Chmielowski
291c05715b
Update mysql dependency
2019-03-15 11:59:18 +01:00
Paweł Chmielowski
ab2197c455
Update mqtree
2019-02-26 12:16:48 +01:00
Paweł Chmielowski
daf9c99728
Update deps
2019-02-26 10:32:02 +01:00
Paweł Chmielowski
bc38afa8b8
Updated fast_tls
2019-02-25 16:42:38 +01:00
Paweł Chmielowski
db9435942f
Pull never fast_tls version
2019-02-25 16:10:48 +01:00
Evgeny Khramtsov
a3df791373
Add MQTT support
2019-02-25 11:42:09 +03:00
Paweł Chmielowski
8b76fdd035
And another typo...
2019-01-15 16:25:23 +01:00
Paweł Chmielowski
182786948f
Typo
2019-01-15 16:23:38 +01:00
Paweł Chmielowski
9bd38eff1e
Use tag for xmpp dependency
2019-01-15 16:18:10 +01:00
Paweł Chmielowski
2a24011b3b
Update xmpp dep
2019-01-15 15:15:56 +01:00
Badlop
f0cf63de15
Manually update 2017 copyright dates ( #2756 )
2019-01-08 22:52:26 +01:00
Paweł Chmielowski
768d37a29c
Remove no longer used deps
2019-01-02 13:02:20 +01:00
Paweł Chmielowski
52e77e3d75
Remove workaround for old erlang versions
2018-12-13 11:46:53 +01:00
Paweł Chmielowski
c88a2d0569
Add code for handling deprecations of get_stacktrace()
2018-12-13 11:46:53 +01:00
Holger Weiss
114cc8c093
Bump xmpp version
2018-12-10 22:38:50 +01:00
Paweł Chmielowski
d6fa657624
Bump xmpp dep
2018-12-06 13:40:08 +01:00
Paweł Chmielowski
2b9c7ed407
Use tagged version of pkix dependency
2018-12-05 10:11:37 +01:00
Paweł Chmielowski
0e081ba73e
Update deps
2018-12-04 14:40:37 +01:00
Paweł Chmielowski
6845896d12
Add support for proxy protocol
...
This add support for version 1 and 2 of protocol specified in
http://www.haproxy.org/download/1.8/doc/proxy-protocol.txt
To enable it you need add option use_proxy_protocol: true to listener.
2018-12-04 14:22:45 +01:00
Evgeny Khramtsov
5d27c975dc
Keep last handled stanzas number in cache rather than session table
2018-11-30 16:19:00 +03:00
Paweł Chmielowski
53ae25ad8f
Update deps
2018-11-29 14:45:13 +01:00
Evgeny Khramtsov
b07b10bdaa
Drop some macros related to OTP<19
2018-11-29 13:01:00 +03:00
Christophe Romain
932d995a1d
Revert "Upgrade Elixir to 1.6.6 ( #2653 )"
...
This reverts commit d3a9fbf62f
.
rebar2 (which is still used) is not able to cope with this change
it should check lib/elixir/src/elixir.app.src instead of src/elixir.app.src
as src/elixir.app.src moved away, currently check fails and this breaks
jenkins tests.
options: use rebar3, or drop rebar completely to rely only on mix.
2018-11-27 11:01:52 +01:00
Christophe Romain
d3a9fbf62f
Upgrade Elixir to 1.6.6 ( #2653 )
2018-11-27 09:57:59 +01:00
Evgeny Khramtsov
d79ddd7b5c
Bump lager version
2018-11-23 13:34:21 +03:00
Evgeny Khramtsov
1cdca1ab99
Support for XEP-0411: Bookmarks Conversion
2018-11-23 13:33:29 +03:00
Paweł Chmielowski
1214a83cca
Use never version of meck
2018-11-19 14:15:29 +01:00
Paweł Chmielowski
cb2b927085
Add send_ws_ping to c2s
2018-10-29 12:30:59 +01:00
Paweł Chmielowski
e369a93809
Use newer fast_tls that fixes some issues with tls1.3
2018-10-24 10:13:05 +02:00
Paweł Chmielowski
74e96afc10
Use tagged version of p1_mysql
2018-10-19 10:57:22 +02:00
Paweł Chmielowski
0352b97f50
Update p1_mysql
2018-10-19 10:15:48 +02:00
Evgeny Khramtsov
39fa1a810d
Move certificates processing code to pkix application
...
==== WARNING: MUST BE ADDED TO RELEASE NOTES =====
The commit introduces the following incompatibility:
- Option 'ca_path' is deprecated and has no effect anymore:
option 'ca_file' should be used instead if needed.
==================================================
2018-09-27 20:37:27 +03:00
Paweł Chmielowski
0d743da595
Update xmpp
2018-09-25 16:18:16 +02:00
Paweł Chmielowski
c3f62c037d
Update deps once more
2018-09-24 15:49:26 +02:00
Paweł Chmielowski
054426072e
Update deps
2018-09-24 14:37:54 +02:00
Evgeny Khramtsov
de385591d0
Refactor ejabberd listener API
2018-09-17 11:21:02 +03:00
Evgeny Khramtsov
145c0116bf
Bump lager version
...
This is needed for OTP-21 compatibility
2018-09-07 18:03:36 +03:00
Paweł Chmielowski
90b22da880
Use newere fast_tls
2018-09-05 11:14:19 +02:00
Evgeniy Khramtsov
01a1f929b4
Bump xmpp version
2018-08-17 18:16:14 +03:00
Paweł Chmielowski
fd76bc9242
Update xmpp
2018-08-16 11:59:26 +02:00
Badlop
8f0e066135
In response with list of room subscriptions include also events ( #2272 )
2018-08-13 12:52:33 +02:00
Paweł Chmielowski
6dc452e7f5
Update xmpp
2018-07-23 17:23:11 +02:00
Stu Tomlinson
f9ed34db4d
Enforce pubsub option required/rejected attributes
...
XEP-0060 states that 'node' and 'jid' attributes to <options> element MUST NOT
be included when <options> are specified at same time as <subscribe> :
https://xmpp.org/extensions/xep-0060.html#subscriber-configure-subandconfig
mod_pubsub will require 'node' and 'jid' attributes on standalone pubsub
options requests, and reject subscribe requests that have options that include
either 'node' or 'jid'
2018-07-14 11:55:38 +01:00
Evgeniy Khramtsov
d03432a956
Fix regression: list SASL EXTERNAL mechanism for inbound s2s
2018-07-10 10:14:08 +03:00
Evgeniy Khramtsov
11811e5f48
Only lookup FQDN at configuration (re)loading
2018-07-06 09:18:27 +03:00
Evgeniy Khramtsov
0bb14d16c7
Move XMPP stream and SASL processing to xmpp repo
2018-07-06 01:07:36 +03:00
Evgeniy Khramtsov
ed1ee6061e
Move move randoms module to p1_utils repo
2018-07-05 11:51:49 +03:00
Evgeniy Khramtsov
50b645aa92
Move shaper to p1_utils repo
2018-07-05 09:31:55 +03:00
Evgeniy Khramtsov
a463f5a25a
Replace hardcoded disco features with macros
2018-06-29 14:48:07 +03:00
Paweł Chmielowski
9b70177fd5
Update xmpp
2018-06-29 12:50:57 +02:00
Paweł Chmielowski
62cb398734
Convert test that used moka, and drop that dependancy
2018-06-29 10:52:47 +02:00
Evgeniy Khramtsov
0a40ab93c8
Don't crash when encoding {xmlcdata, _}
...
Fixes #2493
2018-06-28 15:04:46 +03:00
Paweł Chmielowski
8f2233eff7
Update deps
2018-06-28 10:56:59 +02:00
Evgeniy Khramtsov
af8c6d2428
Generate HTTP Upload form using xdata codec
2018-06-27 13:29:38 +03:00
Evgeniy Khramtsov
ac31c85866
Use error formatting functions from xmpp library
2018-06-25 09:45:45 +03:00
Evgeniy Khramtsov
f465742f2c
Remove lowercased duplicates from ejabberd.pot
2018-06-20 13:02:06 +03:00
Evgeniy Khramtsov
446e6e6f3b
Update ejabberd.pot
2018-06-20 12:32:10 +03:00
Evgeniy Khramtsov
6acac7c93f
Render roomname, allowinvites and allowpm in room disco#info
2018-06-19 14:02:45 +03:00
Evgeniy Khramtsov
49b08949b1
Do not check for deprecated types
...
Since we support only Erlang >= OTP-17.5, the check for old-style
dict/queue/etc types is no longer needed
2018-06-14 18:58:35 +03:00
Holger Weiss
a4049d9418
Omit 'xmlns' field from 'feature_csi' record
...
The 'xmpp' library has been updated to omit the 'xmlns' field from the
'feature_csi' record.
2018-06-04 23:05:11 +02:00
Holger Weiss
ba30ac8ce8
Return detailed error if HTTP upload is too large
...
If the file size specified in an HTTP upload slot request exceeds the
the configured maximum size, include the limit with the stanza error.
2018-06-04 22:18:56 +02:00
Evgeniy Khramtsov
cab8005bf3
Display muc#roomconfig_changesubject in room's disco#info
...
Fixes #2449
2018-06-01 08:56:56 +03:00
Evgeniy Khramtsov
22d76659c0
Bump xmpp version in order to support language tags validation
2018-05-30 09:54:26 +03:00
Evgeniy Khramtsov
27594db029
Support IPv6 connections for PostgreSQL, MySQL and LDAP
...
Fixes #2411
2018-05-11 16:43:49 +03:00
Paweł Chmielowski
338d27b45b
Use never version of moka
2018-05-09 10:58:00 +02:00
Evgeniy Khramtsov
46f47db512
Get rid of unused rebar instructions
2018-05-08 16:17:07 +03:00
Paweł Chmielowski
6811b92a80
Don't use warnings_as_errors in samerlib
2018-05-08 11:37:20 +02:00
Holger Weiss
638f2d2e67
mod_blocking: Use #block_item{} record
2018-05-02 22:17:32 +02:00
Paweł Chmielowski
d49aa429ca
Update deps
2018-04-25 10:45:18 +02:00
Holger Weiss
de7dc4affa
mod_push: Optionally include message sender/body
...
Add 'include_sender' and 'include_body' options. If one or both of them
are set to 'true', a urn:xmpp:push:summary form with the enabled
field(s) is included in push notifications that are generated for
messages with a body.
The 'include_body' option can instead be set to a static text. In this
case, the specified text will be included in place of the actual message
body. This can be useful to signal the push service whether the
notification was triggered by a message with body (as opposed to other
types of traffic) without leaking actual message contents.
2018-04-16 23:18:03 +02:00
Evgeniy Khramtsov
d0f36537fb
Clear fast_tls cache on configuration reload
2018-04-13 11:10:20 +03:00
Evgeniy Khramtsov
7627575856
Update the xmpp dependency to support 'parent' attribute
...
Fixes #2375
2018-04-11 09:34:06 +03:00
Paweł Chmielowski
d71bc73271
Update eimp
2018-03-26 16:18:29 +02:00
Evgeniy Khramtsov
f39dbe6e49
Get rid of 'fs' package dependency
...
Certificates auto-reloading will be fixed later.
For now to reload certificates call `reload-config` ejabberd command.
2018-03-23 16:40:26 +03:00
Paweł Chmielowski
b23be02dfe
Update deps
2018-03-22 16:15:19 +01:00
Evgeniy Khramtsov
ddc29d42de
Fulfill all requirements of XEP-0398 v0.2.0
...
These include:
- Avoid rewriting vcard❌ update tags with empty <photo/> element
- Advertise "urn:xmpp:pep-vcard-conversion:0" feature
2018-03-16 12:10:57 +03:00
Evgeniy Khramtsov
11a58f8dff
Bump xmpp version
2018-02-11 09:45:54 +03:00
Evgeniy Khramtsov
232b66b0f4
Introduce 'rate_limit' option of mod_avatar
...
The option controls how many avatars a user can upload per minute.
The option takes positive integer values. The default is 10.
Note that the option only takes effect when an avatar is about
to convert to a different format, i.e. it implies that `convert`
option is configured.
2018-02-05 23:12:36 +03:00
Paweł Chmielowski
b69fb5aae0
Bump sqlite deps version
2018-01-30 12:51:38 +01:00
Evgeniy Khramtsov
2269d290d8
Switch to newer fast_xml and xmpp and update record fields in the code
2018-01-25 20:02:47 +03:00
Paweł Chmielowski
6cdb7b4468
Fix tag used in luerl dependency
2018-01-23 09:37:46 +01:00
Christophe Romain
121d12f4d1
Move luerl as optional tools dependency
2018-01-22 17:42:27 +01:00
Christophe Romain
1daa7ef785
Sync mix and rebar for eimp dep
2018-01-16 11:45:29 +01:00
Paweł Chmielowski
a7639fd4ad
Call configure on deps in separate rebar command that compile
...
This way we rebar.config.script can use vars detected by configure
2018-01-15 12:31:47 +01:00
Evgeniy Khramtsov
0f86559d83
Always build eimp dependency
...
Even if no suitable C graphics libraries are detected
at compile time, the package is still usable because it
provides `eimp:get_type/1` which is used by mod_avatar.
2018-01-15 12:54:57 +03:00
Paweł Chmielowski
9e3a000748
Update deps
2018-01-11 11:11:56 +01:00
Paweł Chmielowski
cea5f14e88
Update deps again
2018-01-10 11:55:34 +01:00
Paweł Chmielowski
e04b4c52fd
Update deps
2018-01-10 11:32:11 +01:00
Christophe Romain
f914c61f42
Report fs not suported on SunOS ( #2204 )
2018-01-10 10:58:47 +01:00
Evgeniy Khramtsov
ee23b688a7
Use TLS defaults from fast_tls
2018-01-06 13:46:02 +03:00
Evgeniy Khramtsov
da2353d996
Refer to new fast_tls version
2018-01-05 17:56:32 +03:00
Paweł Chmielowski
48c96dc1a9
Update stun and esip
2017-12-28 14:34:50 +01:00
Evgeniy Khramtsov
7cdc51becd
Merge branch 'no-more-ejabberd-receivers'
...
Conflicts:
rebar.config
2017-12-26 19:02:54 +03:00
Evgeniy Khramtsov
2d43c07c62
Get rid of ejabberd receiver
...
ejabberd receivers were meant to serve connections from frontends
to backends. However, this approach was not popular and frontend
related code was removed in previous releases. Now, ejabberd receiver's
code was also removed, making the code shorter and cleaner. Also, in
stress tests ejabberd now handles load more robustly, without
c2s processes overload (even with disabled shapers).
ejabberd_socket.erl is renamed to xmpp_socket.erl: it's supposed to
be finally moved into stand-alone xmpp library.
2017-12-26 18:55:57 +03:00
Christophe Romain
514df9ac18
Cleanup rebar.config
2017-12-26 11:16:48 +01:00
Christophe Romain
e7308b7d86
Update dependencies
2017-12-26 11:13:18 +01:00
Evgeniy Khramtsov
1698956f34
Rely on Server Name Indication for incoming Direct-TLS connections
...
This commit also deprecates `certfile` option for ejabberd_http
listener.
2017-12-24 12:27:51 +03:00
Evgeniy Khramtsov
614bd9dd72
Better process subtag decoding errors
2017-12-09 22:39:43 +03:00
Paweł Chmielowski
d8ace67a50
Compile sql_pt early
2017-12-07 10:47:30 +01:00
Evgeniy Khramtsov
abeee837fc
Bump xmpp and fast_xml revisions
2017-12-06 18:36:04 +03:00
Evgeniy Khramtsov
7a9d2cabc0
Improve code using new xmpp API
2017-12-06 17:21:57 +03:00
Evgeniy Khramtsov
10edbe3e09
Improve muc#roominfo and muc#roomconfig forms
...
Now 'muc#roominfo_contactjid' and 'muc#roominfo_pubsub' fields
are returned within muc#roominfo form. Also, both 'muc#roominfo_pubsub'
and 'muc#roomconfig_pubsub' are now validated.
2017-11-27 13:07:10 +03:00
Paweł Chmielowski
98b411523d
Update deps
2017-11-20 10:42:05 +01:00
Evgeniy Khramtsov
b04c6b7d75
Merge branch 'lets_encrypt_acme_support' of git://github.com/angelhof/ejabberd into angelhof-lets_encrypt_acme_support
...
Conflicts:
rebar.config
src/ejabberd_pkix.erl
2017-11-15 10:01:30 +03:00
Evgeniy Khramtsov
902c6d476b
Prepare version 0.6.1 of XEP-0313 (MAM) support
2017-11-08 15:15:39 +03:00
Alexey Shchepin
78dfb832b8
Add SQL_INSERT macro and update SQL queries to use server_host field
2017-11-02 18:21:40 +03:00
Evgeniy Khramtsov
35b7203e01
Introduce 'certfiles' global option
...
The option is supposed to replace existing options 'c2s_certfile',
's2s_certfile' and 'domain_certfile'. The option accepts a list
of file paths (optionally with wildcards "*") containing either
PEM certificates or PEM private keys. At startup, ejabberd sorts
the certificates, finds matching private keys and rebuilds full
certificates chains which can be used by fast_tls. Example:
certfiles:
- "/etc/letsencrypt/live/example.org/*.pem"
- "/etc/letsencrypt/live/example.com/*.pem"
2017-11-01 00:20:27 +03:00
Paweł Chmielowski
2b363c7aee
Add mucsub event for subscribers list changes
2017-10-30 12:34:09 +01:00
Evgeniy Khramtsov
484e5de072
Simplify backend interface for mod_push
2017-10-27 10:55:48 +03:00
Christophe Romain
8b588d2ff3
Add basic PubSub meta-data support ( #1421 )
2017-10-25 10:34:11 +02:00
Evgeniy Khramtsov
1bb2bae62b
Reflect changes in the xmpp lib
2017-10-13 20:48:21 +03:00
Evgeniy Khramtsov
3f015c829c
Make sure Riak gets compiled on OTP20
2017-09-28 12:25:06 +03:00
Paweł Chmielowski
f464189819
Update dependences
2017-09-27 11:39:16 +02:00
Evgeniy Khramtsov
c17ec50e3a
Add support for XEP-0368: SRV records for XMPP over TLS
...
Currently this is only supported for outgoing s2s connections.
For such connections ejabberd is now able to resolve SRV records
of type "_xmpps-server._tcp". Also, SNI and ALPN fields are set
during TLS handshake. No additional configuration is required.
2017-09-27 12:03:05 +03:00
Paweł Chmielowski
05feab35c4
Call earlier deps configure scripts durring compilation
2017-09-26 17:32:37 +02:00
Evgeniy Khramtsov
3e987d3bae
Use eimp instead of ImageMagick calls for thumbnails creation
2017-09-25 12:41:12 +03:00
Evgeniy Khramtsov
f435d0a103
Add GIF support
2017-09-17 17:34:31 +03:00
Evgeniy Khramtsov
e4d21c1941
Introduce mod_avatar
...
The purpose of the module is to cope with legacy and modern
XMPP clients posting avatars. It automatically converts vCard based
avatars (XEP-0153) to PEP based avatars (XEP-0084) and vice versa.
Also, the module supports convertation between avatar image formats on
the fly: this is controlled by `convert` option. For example, to
convert all avatars into PNG format, configure the module as:
mod_avatar:
convert:
default: png
In order to convert only `webp` format to `jpeg`, set the following:
mod_avatar:
convert:
webp: jpeg
Note: the module depends on mod_vcard, mod_vcard_xupdate and mod_pubsub.
Also, ejabberd should be built with --enable-graphics option.
2017-09-17 10:26:48 +03:00
Christophe Romain
5414cbe821
Add riakc dependency version
2017-09-13 09:49:43 +02:00
Konstantinos Kallas
315e330237
Fix version of jose library
2017-09-06 18:35:33 +03:00
Evgeniy Khramtsov
81581f7794
Use forked repo of Riak Erlang client
2017-08-23 10:35:39 +03:00
Konstantinos Kallas
10f7b5a548
Remove partial RSA key support
2017-08-22 10:25:37 +03:00
Konstantinos Kallas
f581e391ac
Merge remote-tracking branch 'upstream/master'
2017-08-19 13:42:05 +03:00
Evgeniy Khramtsov
6e20e9bcf9
Get rid of deprecated crypto functions
2017-08-17 19:32:15 +03:00
PaweÅ Chmielowski
25af3fb029
Compile mod_push early as it defines behaviour
2017-08-07 09:32:58 +02:00
Konstantinos Kallas
61d1411ab3
Sync fork with upstream
2017-07-26 09:54:23 +03:00
Konstantinos Kallas
1a506da932
Add an erl_opt so that rsa can be used when the otp version is enough
2017-07-26 09:52:44 +03:00
Paweł Chmielowski
b8c26671c4
Update oauth2 dependency
2017-07-25 17:59:32 +02:00
Paweł Chmielowski
ed17586cf0
Update cache_tab and xmpp dep
2017-07-20 11:43:06 +02:00
Paweł Chmielowski
c3473c2077
Update fast_tls
2017-07-19 10:58:10 +02:00
Paweł Chmielowski
e216a54ead
Update fast_tls
2017-07-14 15:08:13 +02:00
Paweł Chmielowski
e42bb47ce3
Update deps
2017-06-28 16:46:48 +02:00
Paweł Chmielowski
aac190255b
Update fast_tls
2017-06-27 15:02:23 +02:00
Christophe Romain
58b9077b51
Fix OTP-17.5 support
2017-06-14 14:18:35 +02:00
Konstantinos Kallas
4fc3d511ce
Synchronize fork
2017-06-14 12:35:01 +03:00
Holger Weiss
5f2dcc51ce
Bump xmpp version
2017-06-14 01:05:15 +02:00
Christophe Romain
5e148df0a9
Update esip and stun dependencies
2017-06-13 10:35:00 +02:00
Paweł Chmielowski
d6f4c99243
Remove luerl from floating_deps
2017-06-12 19:23:41 +02:00
Christophe Romain
444c385f23
Update dependencies
2017-06-09 10:34:35 +02:00
Christophe Romain
fbead19c88
Update elixir
2017-06-07 17:09:06 +02:00
Christophe Romain
baf574d6c4
Update lager p1_mysql and p1_pgsql dependencies
2017-06-07 16:56:00 +02:00
Christophe Romain
e3c801f1f5
Update dependencies
2017-06-07 16:18:41 +02:00
Paweł Chmielowski
f773edcb98
Override version of subdeps with version from main rebar.config
2017-06-07 16:06:28 +02:00
Evgeniy Khramtsov
69de1780a0
Introduce --enable-stun and --enable-sip configure options
...
STUN/TURN and SIP is not compiled by default anymore.
Use --enable-stun, --enable-sip or --enable-all to enable them.
2017-05-23 13:12:48 +03:00
Evgeniy Khramtsov
3e35d44b0f
Replace 'if_version_above' directive with 'if_have_fun'
2017-05-17 19:37:06 +03:00
Evgeniy Khramtsov
f782955c06
Implement cache for roster
2017-05-17 14:47:35 +03:00
Evgeniy Khramtsov
061d5f2380
Shut up dialyzer/xref if public_key:short_name_hash/1 is not available
2017-05-13 13:11:08 +03:00
Evgeniy Khramtsov
633b68db11
Use cache for authentication backends
...
The commit introduces the following API incompatibilities:
In ejabberd_auth.erl:
* dirty_get_registered_users/0 is renamed to get_users/0
* get_vh_registered_users/1 is renamed to get_users/1
* get_vh_registered_users/2 is renamed to get_users/2
* get_vh_registered_users_number/1 is renamed to count_users/1
* get_vh_registered_users_number/2 is renamed to count_users/2
In ejabberd_auth callbacks
* plain_password_required/0 is replaced by plain_password_required/1
where the argument is a virtual host
* store_type/0 is replaced by store_type/1 where the argument is
a virtual host
* set_password/3 is now an optional callback
* remove_user/3 callback is no longer needed
* remove_user/2 now should return `ok | {error, atom()}`
* is_user_exists/2 now must only be implemented for backends
with `external` store type
* check_password/6 is no longer needed
* check_password/4 now must only be implemented for backends
with `external` store type
* try_register/3 is now an optional callback and should return
`ok | {error, atom()}`
* dirty_get_registered_users/0 is no longer needed
* get_vh_registered_users/1 is no longer needed
* get_vh_registered_users/2 is renamed to get_users/2
* get_vh_registered_users_number/1 is no longer needed
* get_vh_registered_users_number/2 is renamed to count_users/2
* get_password_s/2 is no longer needed
* get_password/2 now must only be implemented for backends with
`plain` or `scram` store type
Additionally, the commit introduces two new callbacks:
* use_cache/1 where the argument is a virtual host
* cache_nodes/1 where the argument is a virtual host
New options are also introduced: `auth_use_cache`, `auth_cache_missed`,
`auth_cache_life_time` and `auth_cache_size`.
2017-05-11 14:37:21 +03:00
Konstantinos Kallas
02dbe39b06
Examining jose functionality
2017-05-09 23:27:37 +03:00
Evgeniy Khramtsov
3241c2506b
Introduce 'sql_connect_timeout' option ( #1698 )
2017-05-05 16:25:10 +03: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
c0eb85ce53
Allow a room admin also to subscribe another JID
2017-04-26 01:30:12 +02:00
Evgeniy Khramtsov
18433e289f
Add clear_cache admin command
2017-04-22 11:33:39 +03:00
Evgeniy Khramtsov
a26f90a346
Use new cache API in mod_caps
2017-04-20 18:18:26 +03:00
Holger Weiss
3adf720bc1
Use #jid{} type for #muc_unsubscribe.jid
2017-04-19 22:18:23 +02:00
Evgeniy Khramtsov
e40baf0bda
Use cache in front of Redis/SQL RAM backends
2017-04-14 13:57:52 +03:00
Paweł Chmielowski
aa7d5df6a0
Bump xmpp dependency, it's required by previous commit
2017-04-14 09:47:25 +02:00
Christophe Romain
265aa54bc2
Use p1_utils 1.0.8
2017-04-11 08:11:29 +02:00
Evgeniy Khramtsov
e30d41e5f0
Merge branch 'new_queue'
...
Conflicts:
rebar.config
src/mod_muc_admin.erl
2017-03-24 13:27:56 +03:00
Christophe Romain
232cb3dd45
Update dependencies
2017-03-22 10:06:21 +01:00
Christophe Romain
b6e1858ce6
Update xmpp and fast_tls versions
2017-03-20 15:33:55 +01:00
Evgeniy Khramtsov
f3ecba0445
Use new xdata compiler API
2017-03-20 09:57:11 +03:00
Evgeniy Khramtsov
91245141e9
Set translation callback on startup
2017-03-17 21:35:02 +03:00
Evgeniy Khramtsov
4b1bdb563e
Improve overloaded S2S queue processing
2017-03-10 20:21:04 +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
8b29af629b
Best Practices for Use of SASL EXTERNAL with Certificates (XEP-0178) support
...
It is now possible for client connections to login using PKIX certificates.
This is disabled by default, to enable it:
- either set 'tls_verify: true' and 'cafile: /path/to/CAfile'
in the corresponding listener's section
- or set equivalent per-vhost options 'c2s_tls_verify' and 'c2s_cafile'
2017-03-07 14:20:50 +03:00
Evgeniy Khramtsov
719b4d1183
Don't perform useless resourceprep
2017-02-27 13:58:57 +03:00
Evgeniy Khramtsov
c1439ddd5b
Get rid of jid:to_string/1 and jid:from_string/1
2017-02-26 10:07:12 +03:00
Christophe Romain
1030f041e3
Update dependencies
2017-02-23 18:13:10 +01:00
Evgeniy Khramtsov
bbfd089b7e
Don't count resent stanzas
...
Thanks to Holger Weiß for an advise
2017-02-21 08:44:39 +03:00
Paweł Chmielowski
5b019ab48c
Disable undefined_function_calls xref_check
...
It looks like it will calling undefined function still will be catched
by xref_queries
2017-02-15 14:12:07 +01:00
Paweł Chmielowski
0b304731c5
Use newer p1_utils
2017-02-14 15:06:00 +01:00
Paweł Chmielowski
cad02bb1b0
Add more check to make xref
2017-02-14 14:39:24 +01:00
Christophe Romain
85eb8f022c
Depend on fast_xml-1.1.20
2017-01-31 11:02:23 +01:00
Paweł Chmielowski
326e8da06d
Use newer version of epam
2017-01-29 14:51:03 +01:00
Paweł Chmielowski
44a9ceac0b
More changes that are required from p1_pam -> epam
2017-01-29 14:35:22 +01:00
Paweł Chmielowski
5c1168c33f
Change name of pam dep from p1_pam to epam
...
We need to use same name as .app file or rebar complains
2017-01-29 14:26:46 +01:00
Paweł Chmielowski
2f3f6f8b71
Improve compilation with rebar3
2017-01-26 16:45:04 +01:00
Alexey Shchepin
8b5e6e4a13
Compatibility with R17 in mod_block_strangers
2017-01-23 19:04:22 +03:00
Christophe Romain
39cfee239d
Use xmpp 1.1.6
2017-01-20 11:51:56 +01:00
Evgeniy Khramtsov
03667d0c73
Add SSL support for SQL connections
...
Currently only PostgreSQL is supported.
This requires p1_pgsql-1.1.2 and higher.
2017-01-10 17:40:38 +03:00
Christophe Romain
f2acf57412
update deps
2017-01-10 15:11:41 +01:00
Badlop
5fdd1c39fe
Update copyright date automatically ( #1442 )
2017-01-02 21:42:06 +01:00
Christophe Romain
ed679279fd
Cleanup file headers
2016-12-27 10:57:50 +01:00
Paweł Chmielowski
08f73a5aeb
Update deps
2016-12-22 15:10:57 +01:00
Mickael Remond
1c8edd07a1
Update xmpp lib version and fix path when using deps.get and compile in same commande
2016-12-06 17:54:21 +01:00
Paweł Chmielowski
23786c95c9
Grab new version of xmpp dep
2016-12-02 16:28:14 +01:00
Christophe Romain
3ac73f9607
Update dependencies
2016-11-25 13:02:31 +01:00
Evgeniy Khramtsov
993cbcb133
Use new version of xmpp
2016-11-25 09:39:09 +03:00
Paweł Chmielowski
b14843d098
Add missing -callbacks
2016-11-24 12:44:21 +01:00
Holger Weiss
d12210f4e1
Use new versions of fast_xml and xmpp
2016-11-24 10:45:57 +01:00
Evgeniy Khramtsov
13c6039700
Use xmpp_util.erl from XMPP library
2016-11-19 13:57:25 +03:00
Evgeniy Khramtsov
9aff7e52a8
Switch to stand-alone XMPP library
2016-11-19 13:03:33 +03:00