]> granicus.if.org Git - ejabberd/log
ejabberd
6 years agomod_push: Also include sender/body for carbons
Holger Weiss [Tue, 12 Jun 2018 20:47:23 +0000 (22:47 +0200)]
mod_push: Also include sender/body for carbons

If the 'include_sender' and/or 'include_body' options are specified,
also include a urn:xmpp:push:summary form in push notifications that are
generated for carbon-copied messages (with a body).

6 years agoUpdate mix deps
Christophe Romain [Mon, 11 Jun 2018 12:21:35 +0000 (14:21 +0200)]
Update mix deps

6 years agoAvoid lager crash on external authentication failure
Evgeniy Khramtsov [Fri, 8 Jun 2018 06:51:26 +0000 (09:51 +0300)]
Avoid lager crash on external authentication failure

Fixes #2463

6 years agoIncrease start-up/stop timeout in systemd unit
Holger Weiss [Thu, 7 Jun 2018 15:40:05 +0000 (17:40 +0200)]
Increase start-up/stop timeout in systemd unit

On slow systems, it can take quite a while for "ejabberdctl started"
and/or "ejabberdctl stopped" to return.

6 years agoAdd ability to modify version string
Paweł Chmielowski [Thu, 7 Jun 2018 13:38:11 +0000 (15:38 +0200)]
Add ability to modify version string

6 years agoMerge pull request #2460 from imShara/patch-1
Evgeny Khramtsov [Wed, 6 Jun 2018 17:05:42 +0000 (20:05 +0300)]
Merge pull request #2460 from imShara/patch-1

OMEMO enable HOWTO added

6 years agoOMEMO enable HOWTO added
imShara [Wed, 6 Jun 2018 17:03:42 +0000 (20:03 +0300)]
OMEMO enable HOWTO added

Depend on #2425

6 years agoupload_tests: Make size error check stricter
Holger Weiss [Mon, 4 Jun 2018 21:29:24 +0000 (23:29 +0200)]
upload_tests: Make size error check stricter

6 years agoOmit 'xmlns' field from 'feature_csi' record
Holger Weiss [Mon, 4 Jun 2018 21:05:11 +0000 (23:05 +0200)]
Omit 'xmlns' field from 'feature_csi' record

The 'xmpp' library has been updated to omit the 'xmlns' field from the
'feature_csi' record.

6 years agoReturn detailed error if HTTP upload is too large
Holger Weiss [Mon, 4 Jun 2018 20:18:56 +0000 (22:18 +0200)]
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.

6 years agoAlso format gracefully errors returned during module reload
Evgeniy Khramtsov [Sun, 3 Jun 2018 15:53:30 +0000 (18:53 +0300)]
Also format gracefully errors returned during module reload

6 years agoFix problem in commit 548ef7b835fbf2ad965bb4bb3a6f4e4905717002
Paweł Chmielowski [Fri, 1 Jun 2018 16:36:39 +0000 (18:36 +0200)]
Fix problem in commit 548ef7b835fbf2ad965bb4bb3a6f4e4905717002

6 years agoDon't crash in bosh when we receive request with RID < prev_rid
Paweł Chmielowski [Fri, 1 Jun 2018 12:48:14 +0000 (14:48 +0200)]
Don't crash in bosh when we receive request with RID < prev_rid

6 years agoAlways display room's xdata in disco#info
Evgeniy Khramtsov [Fri, 1 Jun 2018 06:07:16 +0000 (09:07 +0300)]
Always display room's xdata in disco#info

6 years agoDisplay muc#roomconfig_changesubject in room's disco#info
Evgeniy Khramtsov [Fri, 1 Jun 2018 05:56:56 +0000 (08:56 +0300)]
Display muc#roomconfig_changesubject in room's disco#info

Fixes #2449

6 years agoSend trailer and close socket explicitly on stream end
Evgeniy Khramtsov [Fri, 1 Jun 2018 04:58:03 +0000 (07:58 +0300)]
Send trailer and close socket explicitly on stream end

6 years agoImprove indentation
Evgeniy Khramtsov [Wed, 30 May 2018 19:53:34 +0000 (22:53 +0300)]
Improve indentation

6 years agoMerge remote-tracking branch 'processone/pr/2446'
Holger Weiss [Wed, 30 May 2018 18:53:11 +0000 (20:53 +0200)]
Merge remote-tracking branch 'processone/pr/2446'

* processone/pr/2446:
  Fix authentication for usernames containing uppercase characters

6 years agoFix authentication for usernames containing uppercase characters
Stu Tomlinson [Wed, 30 May 2018 14:10:25 +0000 (15:10 +0100)]
Fix authentication for usernames containing uppercase characters

Applies to authentication methods that compare User (normalized)
and AuthzId (was not being normalized). These are external, ldap & pam.

Fixes #2280

6 years agoGet rid of direct calls to 'session' Mnesia table
Evgeniy Khramtsov [Wed, 30 May 2018 16:21:56 +0000 (19:21 +0300)]
Get rid of direct calls to 'session' Mnesia table

Fixes #2439

6 years agoBump xmpp version in order to support language tags validation
Evgeniy Khramtsov [Wed, 30 May 2018 06:54:26 +0000 (09:54 +0300)]
Bump xmpp version in order to support language tags validation

6 years agoSupport for roomconfig_lang/roominfo_lang
Evgeniy Khramtsov [Wed, 30 May 2018 05:11:58 +0000 (08:11 +0300)]
Support for roomconfig_lang/roominfo_lang

Now room owners are able to set a preferred language
for the discussions in the room, so other users can
discover rooms based on the language they wish to talk.

TODO: the language format should conform to RFC 5646.
      This check should be implemented in 'xmpp' library.

Fixes #2436

6 years agoUse 'list-multi' type for XEP-0157 xdata fields
Evgeniy Khramtsov [Tue, 29 May 2018 16:37:24 +0000 (19:37 +0300)]
Use 'list-multi' type for XEP-0157 xdata fields

Thanks to Jonas Wielicki for spotting this

6 years agoMerge pull request #2438 from licaon-kter/patch-3
Evgeny Khramtsov [Mon, 28 May 2018 13:22:30 +0000 (16:22 +0300)]
Merge pull request #2438 from licaon-kter/patch-3

Add default_db in the example config

6 years agoAdd default_db in the example config
Licaon_Kter [Mon, 28 May 2018 13:19:59 +0000 (13:19 +0000)]
Add default_db in the example config

I only found it in the docs after setting up per module db_

6 years agoBetter report errors of module startup
Evgeniy Khramtsov [Mon, 28 May 2018 06:19:49 +0000 (09:19 +0300)]
Better report errors of module startup

6 years agoDon't call Mod:function() in xmpp_stream callbacks
Evgeniy Khramtsov [Sat, 26 May 2018 06:06:24 +0000 (09:06 +0300)]
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.

6 years agomod_muc_sql: Fix export to SQL
Holger Weiss [Wed, 23 May 2018 23:28:29 +0000 (01:28 +0200)]
mod_muc_sql: Fix export to SQL

The "host" column is supposed to hold the MUC host name.

6 years agomod_push_mnesia: Apply cosmetic changes
Holger Weiss [Wed, 23 May 2018 19:40:54 +0000 (21:40 +0200)]
mod_push_mnesia: Apply cosmetic changes

Improve the readability of the 'max_user_sessions' check.

6 years agomod_push_sql: Check 'max_user_sessions' limit
Holger Weiss [Wed, 23 May 2018 18:02:52 +0000 (20:02 +0200)]
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.

6 years agoHandle "Expect: 100-continue" request header in ejabberd_http
Paweł Chmielowski [Wed, 23 May 2018 12:52:47 +0000 (14:52 +0200)]
Handle "Expect: 100-continue" request header in ejabberd_http

6 years agoMerge pull request #2431 from yokomizor/fix-xmpp-commit
Evgeny Khramtsov [Tue, 22 May 2018 14:45:53 +0000 (17:45 +0300)]
Merge pull request #2431 from yokomizor/fix-xmpp-commit

Missing #block_item{} record building with mix

6 years agoMerge pull request #2430 from yokomizor/ext_mod-export-add_sources_1
Evgeny Khramtsov [Tue, 22 May 2018 14:39:27 +0000 (17:39 +0300)]
Merge pull request #2430 from yokomizor/ext_mod-export-add_sources_1

Export ext_mod:add_sources/1

6 years agoMissing #block_item{} record building with mix
Rogério da Silva Yokomizo [Tue, 22 May 2018 14:35:10 +0000 (16:35 +0200)]
Missing #block_item{} record building with mix

Ref: #638f2d2

6 years agoExport ext_mod:add_sources/1
Rogério da Silva Yokomizo [Tue, 22 May 2018 14:16:13 +0000 (16:16 +0200)]
Export ext_mod:add_sources/1

6 years agoCorrectly calculate remaining bytes on file upload
Evgeniy Khramtsov [Sat, 19 May 2018 15:29:33 +0000 (18:29 +0300)]
Correctly calculate remaining bytes on file upload

6 years agoAdd support for REST API custom headers
Christophe Romain [Thu, 17 May 2018 12:47:21 +0000 (14:47 +0200)]
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"

6 years agoCorrectly resolve upload.localhost for the test suite
Evgeniy Khramtsov [Thu, 17 May 2018 10:24:23 +0000 (13:24 +0300)]
Correctly resolve upload.localhost for the test suite

6 years agoAdd tests for mod_http_upload
Evgeniy Khramtsov [Thu, 17 May 2018 09:02:00 +0000 (12:02 +0300)]
Add tests for mod_http_upload

6 years agoFix typo file:read() -> file:open()
Evgeniy Khramtsov [Thu, 17 May 2018 09:00:06 +0000 (12:00 +0300)]
Fix typo file:read() -> file:open()

6 years agoClean state between requests in ejabberd_http
Paweł Chmielowski [Tue, 15 May 2018 12:25:19 +0000 (14:25 +0200)]
Clean state between requests in ejabberd_http

6 years agoOptimize HTTP requests memory usage
Evgeniy Khramtsov [Mon, 14 May 2018 16:30:21 +0000 (19:30 +0300)]
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

6 years agoHandle muc_register_nick success correctly (#2415)
Badlop [Mon, 14 May 2018 10:24:56 +0000 (12:24 +0200)]
Handle muc_register_nick success correctly (#2415)

6 years agoDisable thumbnails creation by default
Evgeniy Khramtsov [Fri, 11 May 2018 15:56:31 +0000 (18:56 +0300)]
Disable thumbnails creation by default

6 years agoSupport IPv6 connections for PostgreSQL, MySQL and LDAP
Evgeniy Khramtsov [Fri, 11 May 2018 13:43:49 +0000 (16:43 +0300)]
Support IPv6 connections for PostgreSQL, MySQL and LDAP

Fixes #2411

6 years agoRelax check for valid command name in access_persmissions
Paweł Chmielowski [Fri, 11 May 2018 10:24:00 +0000 (12:24 +0200)]
Relax check for valid command name in access_persmissions

6 years agoUse never version of moka
Paweł Chmielowski [Wed, 9 May 2018 08:58:00 +0000 (10:58 +0200)]
Use never version of moka

6 years agoStop ejabberd initialization on invalid/unknown options
Evgeniy Khramtsov [Wed, 9 May 2018 08:44:24 +0000 (11:44 +0300)]
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.

6 years agoReduce IQ handler code copying
Evgeniy Khramtsov [Wed, 9 May 2018 07:30:00 +0000 (10:30 +0300)]
Reduce IQ handler code copying

6 years agoFix a typo
Evgeniy Khramtsov [Wed, 9 May 2018 06:44:26 +0000 (09:44 +0300)]
Fix a typo

6 years agoOption watchdog_admins has no effect anymore
Evgeniy Khramtsov [Tue, 8 May 2018 20:47:37 +0000 (23:47 +0300)]
Option watchdog_admins has no effect anymore

6 years agoBypass account creation error when password is empty, caused by extauth
Badlop [Mon, 7 May 2018 11:02:17 +0000 (13:02 +0200)]
Bypass account creation error when password is empty, caused by extauth

6 years agoGet rid of unused rebar instructions
Evgeniy Khramtsov [Tue, 8 May 2018 13:17:07 +0000 (16:17 +0300)]
Get rid of unused rebar instructions

6 years agoDon't use warnings_as_errors in samerlib
Paweł Chmielowski [Tue, 8 May 2018 09:37:20 +0000 (11:37 +0200)]
Don't use warnings_as_errors in samerlib

6 years agoGet rid of ?FUNCTION_NAME macro (it's OTP19+ feature)
Evgeniy Khramtsov [Tue, 8 May 2018 09:06:58 +0000 (12:06 +0300)]
Get rid of ?FUNCTION_NAME macro (it's OTP19+ feature)

6 years agoImprove logging of external authentication failures
Evgeniy Khramtsov [Tue, 8 May 2018 06:36:34 +0000 (09:36 +0300)]
Improve logging of external authentication failures

6 years agoDon't stop on out-of-date requests
Evgeniy Khramtsov [Mon, 7 May 2018 19:43:01 +0000 (22:43 +0300)]
Don't stop on out-of-date requests

6 years agoImprove robustness of external authentication backends
Evgeniy Khramtsov [Mon, 7 May 2018 16:27:18 +0000 (19:27 +0300)]
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

6 years agoMake trusted_proxied ejabberd_http option accept ip masks
Paweł Chmielowski [Fri, 4 May 2018 07:53:07 +0000 (09:53 +0200)]
Make trusted_proxied ejabberd_http option accept ip masks

6 years agoTeach acl ip matching about ipv4 mapped ipv6 addresses
Paweł Chmielowski [Fri, 4 May 2018 07:52:06 +0000 (09:52 +0200)]
Teach acl ip matching about ipv4 mapped ipv6 addresses

6 years agoejabberd_auth: Don't use cache if it's disabled
Holger Weiss [Wed, 2 May 2018 22:31:33 +0000 (00:31 +0200)]
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.

6 years agomod_blocking: Use #block_item{} record
Holger Weiss [Wed, 2 May 2018 20:17:32 +0000 (22:17 +0200)]
mod_blocking: Use #block_item{} record

6 years agoIgnore any policy when signing a certificate for the test suite
Evgeniy Khramtsov [Wed, 2 May 2018 07:52:46 +0000 (10:52 +0300)]
Ignore any policy when signing a certificate for the test suite

6 years agoAlso generate CA certificates for the test suite
Evgeniy Khramtsov [Wed, 2 May 2018 07:28:22 +0000 (10:28 +0300)]
Also generate CA certificates for the test suite

6 years agoAdd validator for 'accept_interval' listening option
Evgeniy Khramtsov [Mon, 30 Apr 2018 08:52:00 +0000 (11:52 +0300)]
Add validator for 'accept_interval' listening option

6 years agoUpdate mix.exs version 18.04
Christophe Romain [Wed, 25 Apr 2018 10:30:36 +0000 (12:30 +0200)]
Update mix.exs version

6 years agoUpdate deps
Paweł Chmielowski [Wed, 25 Apr 2018 08:45:02 +0000 (10:45 +0200)]
Update deps

6 years agoMerge pull request #2399 from 4z3/ejabberdctl-fix-parser
Christophe Romain [Wed, 25 Apr 2018 08:39:19 +0000 (10:39 +0200)]
Merge pull request #2399 from 4z3/ejabberdctl-fix-parser

ejabberdctl: fix parameters parsing

6 years agoejabberdctl: fix parameter parsing
tv [Tue, 24 Apr 2018 21:30:35 +0000 (23:30 +0200)]
ejabberdctl: fix parameter parsing

6 years agomisc: Catch all Base64 decoding errors
Holger Weiss [Tue, 24 Apr 2018 16:29:10 +0000 (18:29 +0200)]
misc: Catch all Base64 decoding errors

6 years agomod_http_upload: Add MIME type for M4A files
Holger Weiss [Tue, 24 Apr 2018 16:16:16 +0000 (18:16 +0200)]
mod_http_upload: Add MIME type for M4A files

6 years agoPubSub purge_node must use a transaction (#2231)
Christophe Romain [Tue, 24 Apr 2018 13:58:56 +0000 (15:58 +0200)]
PubSub purge_node must use a transaction (#2231)

6 years agoMerge branch 'master' of github.com:processone/ejabberd
Christophe Romain [Tue, 24 Apr 2018 12:44:58 +0000 (14:44 +0200)]
Merge branch 'master' of github.com:processone/ejabberd

6 years agoPubsub creation/modification use varchar (#2397)
Christophe Romain [Tue, 24 Apr 2018 12:44:52 +0000 (14:44 +0200)]
Pubsub creation/modification use varchar (#2397)

6 years agoIntroduce new mod_muc option: access_register
Evgeniy Khramtsov [Tue, 24 Apr 2018 09:29:59 +0000 (12:29 +0300)]
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).

6 years agoGet rid of useless memory/disk usage warnings
Evgeniy Khramtsov [Tue, 24 Apr 2018 09:12:48 +0000 (12:12 +0300)]
Get rid of useless memory/disk usage warnings

6 years agoFix get_affiliation/2
Evgeniy Khramtsov [Tue, 24 Apr 2018 09:07:10 +0000 (12:07 +0300)]
Fix get_affiliation/2

6 years agoUse httpc directly instead of using p1_http wrapper
Paweł Chmielowski [Mon, 23 Apr 2018 15:40:44 +0000 (17:40 +0200)]
Use httpc directly instead of using p1_http wrapper

6 years agoUse correct headers in rest calls
Paweł Chmielowski [Mon, 23 Apr 2018 10:29:50 +0000 (12:29 +0200)]
Use correct headers in rest calls

6 years agoAdd stubs for affiliation-specific backend callbacks
Evgeniy Khramtsov [Mon, 23 Apr 2018 08:35:43 +0000 (11:35 +0300)]
Add stubs for affiliation-specific backend callbacks

6 years agoUse correct db backend for remove_mam_for_user_with_peer
Paweł Chmielowski [Fri, 20 Apr 2018 12:06:23 +0000 (14:06 +0200)]
Use correct db backend for remove_mam_for_user_with_peer

6 years agoFix mnesia call in mam archive management function
Paweł Chmielowski [Fri, 20 Apr 2018 11:36:54 +0000 (13:36 +0200)]
Fix mnesia call in mam archive management function

6 years agoAdd commands for cleaning up mam archive
Paweł Chmielowski [Fri, 20 Apr 2018 11:27:39 +0000 (13:27 +0200)]
Add commands for cleaning up mam archive

6 years agoFix type of rest:url/2
Christophe Romain [Thu, 19 Apr 2018 11:21:33 +0000 (13:21 +0200)]
Fix type of rest:url/2

6 years agoFix deprecated call injected by 265c7b62
Christophe Romain [Wed, 18 Apr 2018 12:16:56 +0000 (14:16 +0200)]
Fix deprecated call injected by 265c7b62

6 years agoAdd flexibility on rest url config
Christophe Romain [Wed, 18 Apr 2018 11:16:08 +0000 (13:16 +0200)]
Add flexibility on rest url config

6 years agomod_push_keepalive: Reset timeout on messages only
Holger Weiss [Mon, 16 Apr 2018 22:27:07 +0000 (00:27 +0200)]
mod_push_keepalive: Reset timeout on messages only

Some mobile apps might only be notified on actual chat messages with
a body, so don't let mod_push_keepalive reset the stream management
timeout on other types of traffic.

6 years agomod_push: Optionally include message sender/body
Holger Weiss [Mon, 16 Apr 2018 21:18:03 +0000 (23:18 +0200)]
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.

6 years agomod_http_upload*: Remove empty lines after specs
Holger Weiss [Mon, 16 Apr 2018 16:22:54 +0000 (18:22 +0200)]
mod_http_upload*: Remove empty lines after specs

Remove blank lines following function specifications in mod_http_upload
and mod_http_upload_quota for consistency with other modules.

6 years agomod_http_upload*: Add function specifications
Holger Weiss [Mon, 16 Apr 2018 16:17:28 +0000 (18:17 +0200)]
mod_http_upload*: Add function specifications

6 years agomod_push: Add function specification
Holger Weiss [Mon, 16 Apr 2018 16:14:07 +0000 (18:14 +0200)]
mod_push: Add function specification

6 years agomod_push: Add/adjust debug messages
Holger Weiss [Mon, 16 Apr 2018 16:12:46 +0000 (18:12 +0200)]
mod_push: Add/adjust debug messages

6 years agoUpdate MUC MAM tests
Evgeniy Khramtsov [Mon, 16 Apr 2018 13:10:44 +0000 (16:10 +0300)]
Update MUC MAM tests

6 years agoCarefully validate options list
Evgeniy Khramtsov [Mon, 16 Apr 2018 12:48:06 +0000 (15:48 +0300)]
Carefully validate options list

6 years agoDon't crash on invalid module's sub-options
Evgeniy Khramtsov [Mon, 16 Apr 2018 08:06:57 +0000 (11:06 +0300)]
Don't crash on invalid module's sub-options

Fixes #2387

6 years agomod_push: Don't notify on stream errors
Holger Weiss [Sun, 15 Apr 2018 23:08:56 +0000 (01:08 +0200)]
mod_push: Don't notify on stream errors

If a pending stream management session is closed with a stream error,
this is usually due to the client opening a new stream that conflicts
with the old one.  Don't generate a push notification in this situation.

6 years agoMerge branch 'muc-self-presence'
Evgeniy Khramtsov [Sat, 14 Apr 2018 15:32:12 +0000 (18:32 +0300)]
Merge branch 'muc-self-presence'

6 years agoClear fast_tls cache on configuration reload
Evgeniy Khramtsov [Fri, 13 Apr 2018 08:10:20 +0000 (11:10 +0300)]
Clear fast_tls cache on configuration reload

6 years agomod_roster: Use 'lserver' for configuration lookup
Holger Weiss [Thu, 12 Apr 2018 22:12:07 +0000 (00:12 +0200)]
mod_roster: Use 'lserver' for configuration lookup

6 years agoFix notification payload generated by pubsub
Paweł Chmielowski [Thu, 12 Apr 2018 16:02:32 +0000 (18:02 +0200)]
Fix notification payload generated by pubsub