Evgeniy Khramtsov
fc77051b68
Don't call Mod:function() in xmpp_stream callbacks
...
If a callback function is not defined by the `Mod` then
a call to code_server process is performed. Under heavy load
this may cause code_server to get overloaded. We now avoid this.
2018-05-26 09:06:24 +03:00
Holger Weiss
bfe2545c01
mod_muc_sql: Fix export to SQL
...
The "host" column is supposed to hold the MUC host name.
2018-05-24 01:28:29 +02:00
Holger Weiss
c6a9c30f1c
mod_push_mnesia: Apply cosmetic changes
...
Improve the readability of the 'max_user_sessions' check.
2018-05-23 21:40:54 +02:00
Holger Weiss
508f3ef88d
mod_push_sql: Check 'max_user_sessions' limit
...
Remove the oldest push session(s) of a user if the number of enabled
sessions exceeds the 'max_user_sessions' limit.
2018-05-23 20:02:52 +02:00
Paweł Chmielowski
97f7d99007
Handle "Expect: 100-continue" request header in ejabberd_http
2018-05-23 14:52:47 +02:00
Evgeny Khramtsov
2bbfc0b79e
Merge pull request #2431 from yokomizor/fix-xmpp-commit
...
Missing #block_item{} record building with mix
2018-05-22 17:45:53 +03:00
Evgeny Khramtsov
10a5a5eb01
Merge pull request #2430 from yokomizor/ext_mod-export-add_sources_1
...
Export ext_mod:add_sources/1
2018-05-22 17:39:27 +03:00
Rogério da Silva Yokomizo
2e529f5826
Missing #block_item{} record building with mix
...
Ref: #638f2d2
2018-05-22 16:37:39 +02:00
Rogério da Silva Yokomizo
4a4cc32650
Export ext_mod:add_sources/1
2018-05-22 16:16:13 +02:00
Evgeniy Khramtsov
d2114be6f3
Correctly calculate remaining bytes on file upload
2018-05-19 18:29:33 +03:00
Christophe Romain
db51d522e8
Add support for REST API custom headers
...
ext_api_headers can be defined as a single string. Headers are separated
by comma. Definition MUST NOT contain spaces. Example
"X-MyHead:test,X-Token:082748"
2018-05-17 14:47:21 +02:00
Evgeniy Khramtsov
82c42051c3
Correctly resolve upload.localhost for the test suite
2018-05-17 13:24:23 +03:00
Evgeniy Khramtsov
e4c106e0dd
Add tests for mod_http_upload
2018-05-17 12:02:00 +03:00
Evgeniy Khramtsov
b64e1d95d2
Fix typo file:read() -> file:open()
2018-05-17 12:00:06 +03:00
Paweł Chmielowski
c41bab9ca0
Clean state between requests in ejabberd_http
2018-05-15 14:25:19 +02:00
Evgeniy Khramtsov
063737e4f5
Optimize HTTP requests memory usage
...
Due to historical reasons, ejabberd loads the whole file/data
into the memory when serving an HTTP request. This is now improved:
1) For GET requests ejabberd uses sendfile(2) if the underlying
connection is HTTP and falls back to read/write loop with 64kb
buffer for HTTPS connections. This type of requests are handled
by mod_http_fileserver, mod_http_upload, ejabberd_captcha, etc
2) POST requests are now limited to 20Mb and are fully downloaded
into the memory for further processing (by ejabberd_web_admin,
mod_bosh, etc)
3) PUT requests (e.g. for mod_http_upload) are handled by read/write
loop with 64kb buffer
2018-05-14 19:39:58 +03:00
Badlop
cb3bb710bd
Handle muc_register_nick success correctly ( #2415 )
2018-05-14 12:24:56 +02:00
Evgeniy Khramtsov
c30715e67b
Disable thumbnails creation by default
2018-05-11 18:56:31 +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
6ac8f6eaee
Relax check for valid command name in access_persmissions
2018-05-11 12:24:00 +02:00
Paweł Chmielowski
338d27b45b
Use never version of moka
2018-05-09 10:58:00 +02:00
Evgeniy Khramtsov
35a076c251
Stop ejabberd initialization on invalid/unknown options
...
Since now, ejabberd doesn't ignore unknown options and doesn't
allow to have options with malformed values. The rationale for
this is to avoid unexpected behaviour during runtime, i.e. to
conform to "fail early" approach. Note that it's safe to reload
a configuration with potentialy invalid and/or unknown options:
this will not halt ejabberd, but will only prevent the configuration
from loading.
***NOTE FOR PACKAGE BUILDERS***
This new behaviour should be documented in the upgrade notes.
2018-05-09 11:44:24 +03:00
Evgeniy Khramtsov
680384c342
Reduce IQ handler code copying
2018-05-09 10:30:00 +03:00
Evgeniy Khramtsov
11ff2a1ccf
Fix a typo
2018-05-09 09:44:26 +03:00
Evgeniy Khramtsov
3ac1675919
Option watchdog_admins has no effect anymore
2018-05-08 23:47:37 +03:00
Badlop
de85c1718e
Bypass account creation error when password is empty, caused by extauth
2018-05-08 18:19:07 +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
Evgeniy Khramtsov
8766854870
Get rid of ?FUNCTION_NAME macro (it's OTP19+ feature)
2018-05-08 12:06:58 +03:00
Evgeniy Khramtsov
61ae0ff02c
Improve logging of external authentication failures
2018-05-08 09:36:34 +03:00
Evgeniy Khramtsov
5522403e8e
Don't stop on out-of-date requests
2018-05-07 22:43:01 +03:00
Evgeniy Khramtsov
b23d5754e8
Improve robustness of external authentication backends
...
Now all external ports are attached to supervising processes
and requests are balanced in round-robin manner until the pool
is exhausted.
The commit also deprecates `extauth_instances` option and introduces
`extauth_pool_size` option instead, with the default value of a number
of logical processors (i.e. CPU cores).
Fixes #2403
2018-05-07 19:27:18 +03:00
Paweł Chmielowski
b1a03cc346
Make trusted_proxied ejabberd_http option accept ip masks
2018-05-04 09:53:07 +02:00
Paweł Chmielowski
ca94cbfd31
Teach acl ip matching about ipv4 mapped ipv6 addresses
2018-05-04 09:52:06 +02:00
Holger Weiss
410db89167
ejabberd_auth: Don't use cache if it's disabled
...
Don't let the check whether a user exists use the cache if caching was
disabled in the configuration.
2018-05-03 00:31:33 +02:00
Holger Weiss
638f2d2e67
mod_blocking: Use #block_item{} record
2018-05-02 22:17:32 +02:00
Evgeniy Khramtsov
56ee6f0518
Ignore any policy when signing a certificate for the test suite
2018-05-02 10:52:46 +03:00
Evgeniy Khramtsov
4e83fc41d4
Also generate CA certificates for the test suite
2018-05-02 10:28:22 +03:00
Evgeniy Khramtsov
4ea481d1dd
Add validator for 'accept_interval' listening option
2018-04-30 11:52:00 +03:00
Christophe Romain
0bd4d1aade
Update mix.exs version
2018-04-25 12:30:36 +02:00
Paweł Chmielowski
d49aa429ca
Update deps
2018-04-25 10:45:18 +02:00
Christophe Romain
316a19d600
Merge pull request #2399 from 4z3/ejabberdctl-fix-parser
...
ejabberdctl: fix parameters parsing
2018-04-25 10:39:19 +02:00
tv
c43037887a
ejabberdctl: fix parameter parsing
2018-04-25 00:41:30 +02:00
Holger Weiss
538e0d4844
misc: Catch all Base64 decoding errors
2018-04-24 18:29:10 +02:00
Holger Weiss
f3795e9d03
mod_http_upload: Add MIME type for M4A files
2018-04-24 18:16:16 +02:00
Christophe Romain
3df919244c
PubSub purge_node must use a transaction ( #2231 )
2018-04-24 15:58:56 +02:00
Christophe Romain
67773c5174
Merge branch 'master' of github.com:processone/ejabberd
2018-04-24 14:44:58 +02:00
Christophe Romain
61dee97738
Pubsub creation/modification use varchar ( #2397 )
2018-04-24 14:44:52 +02:00
Evgeniy Khramtsov
6774418a7f
Introduce new mod_muc option: access_register
...
The option is an ACL rule defining who is able to register
nicknames within the conference service. The default is `all`
(for backward compatibility).
2018-04-24 12:29:59 +03:00
Evgeniy Khramtsov
ad6fcc7865
Get rid of useless memory/disk usage warnings
2018-04-24 12:12:48 +03:00