25
1
mirror of https://github.com/processone/ejabberd.git synced 2024-11-30 16:36:29 +01:00
Commit Graph

137 Commits

Author SHA1 Message Date
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