]> granicus.if.org Git - ejabberd/log
ejabberd
5 years agoRead jwt_key from file
Alexey Shchepin [Wed, 3 Jul 2019 02:32:58 +0000 (05:32 +0300)]
Read jwt_key from file

5 years agoAvoid last handled stanzas cache to grow indefinitely
Evgeny Khramtsov [Mon, 1 Jul 2019 17:43:57 +0000 (20:43 +0300)]
Avoid last handled stanzas cache to grow indefinitely

5 years agoUpdate Spanish and Catalan translations
Badlop [Mon, 1 Jul 2019 15:50:57 +0000 (17:50 +0200)]
Update Spanish and Catalan translations

5 years agoInvalidate proper cache when using mam for offline in pop_messages
Paweł Chmielowski [Mon, 1 Jul 2019 12:30:21 +0000 (14:30 +0200)]
Invalidate proper cache when using mam for offline in pop_messages

5 years agoFix a condition in ejabberd_auth_jwt
Alexey Shchepin [Mon, 1 Jul 2019 11:44:17 +0000 (14:44 +0300)]
Fix a condition in ejabberd_auth_jwt

5 years agoMake count_offline_messages cache work when offline uses mam for storage
Paweł Chmielowski [Mon, 1 Jul 2019 11:36:05 +0000 (13:36 +0200)]
Make count_offline_messages cache work when offline uses mam for storage

This also replace existing cache for checking if spool is empty with this
cache.

5 years agoGet rid of useless dialyzer instructions
Evgeny Khramtsov [Mon, 1 Jul 2019 07:36:20 +0000 (10:36 +0300)]
Get rid of useless dialyzer instructions

5 years agoBump cache_tab version
Evgeny Khramtsov [Mon, 1 Jul 2019 06:26:56 +0000 (09:26 +0300)]
Bump cache_tab version

5 years agoFix ejabberd_auth_jwt return types and regenerate ejabberd_option.erl
Evgeny Khramtsov [Mon, 1 Jul 2019 06:05:33 +0000 (09:05 +0300)]
Fix ejabberd_auth_jwt return types and regenerate ejabberd_option.erl

5 years agoAuthentication using JWT tokens
Alexey Shchepin [Mon, 1 Jul 2019 02:01:55 +0000 (05:01 +0300)]
Authentication using JWT tokens

5 years agoCache number of offline messages
Evgeny Khramtsov [Sun, 30 Jun 2019 18:14:37 +0000 (21:14 +0300)]
Cache number of offline messages

5 years agoUse new ets_cache API in ejabberd_auth
Evgeny Khramtsov [Sun, 30 Jun 2019 14:15:43 +0000 (17:15 +0300)]
Use new ets_cache API in ejabberd_auth

5 years agoAvoid using broad p1_queue:queue() type wherever possible
Evgeny Khramtsov [Fri, 28 Jun 2019 19:16:29 +0000 (22:16 +0300)]
Avoid using broad p1_queue:queue() type wherever possible

5 years agoUse yconf validator for custom Mnesia schemas
Evgeny Khramtsov [Thu, 27 Jun 2019 12:23:21 +0000 (15:23 +0300)]
Use yconf validator for custom Mnesia schemas

5 years agoAvoid using broad map() type wherever possible
Evgeny Khramtsov [Thu, 27 Jun 2019 12:22:27 +0000 (15:22 +0300)]
Avoid using broad map() type wherever possible

5 years agoUse correct rr_type()
Evgeny Khramtsov [Thu, 27 Jun 2019 08:35:56 +0000 (11:35 +0300)]
Use correct rr_type()

5 years agoFix type specs
Evgeny Khramtsov [Thu, 27 Jun 2019 08:32:54 +0000 (11:32 +0300)]
Fix type specs

5 years agoMake sure queue bouncing doesn't yield into infinite recursion
Evgeny Khramtsov [Wed, 26 Jun 2019 08:56:25 +0000 (11:56 +0300)]
Make sure queue bouncing doesn't yield into infinite recursion

5 years agoDeprecate 'route_subdomains' option
Evgeny Khramtsov [Wed, 26 Jun 2019 07:40:30 +0000 (10:40 +0300)]
Deprecate 'route_subdomains' option

This option was introduced to fulfill requirement of RFC3920 10.3,
but in practice it was very inconvenient and many admins were
forced to change its value to 's2s' (i.e. to behaviour that
violates the RFC). Also, it seems like in RFC6120 this requirement
no longer presents.

Those admins who used this option to block s2s with their subdomains
can use 's2s_access' option for the same purpose.

5 years agoUse correct stacktrace in logging macros
Evgeny Khramtsov [Tue, 25 Jun 2019 21:05:41 +0000 (00:05 +0300)]
Use correct stacktrace in logging macros

By calling erlang:get_stacktrace() inside a lager function
we obtain actually a stacktrace of the lager function, not
the one we got during exception. This is not a problem for
newest Erlang versions though.

5 years agoUse proper loglevel to log resumption failures
Evgeny Khramtsov [Tue, 25 Jun 2019 17:42:54 +0000 (20:42 +0300)]
Use proper loglevel to log resumption failures

5 years agoStore muc_subscribers in process dict if get_subscribed_rooms not available
Paweł Chmielowski [Tue, 25 Jun 2019 14:41:47 +0000 (16:41 +0200)]
Store muc_subscribers in process dict if get_subscribed_rooms not available

5 years agoDon't propagate downstream already handled message
Evgeny Khramtsov [Tue, 25 Jun 2019 11:36:17 +0000 (14:36 +0300)]
Don't propagate downstream already handled message

5 years agoCall ejabberd_s2s:allow_host/2 with correct virtual host
Evgeny Khramtsov [Mon, 24 Jun 2019 18:18:57 +0000 (21:18 +0300)]
Call ejabberd_s2s:allow_host/2 with correct virtual host

5 years agoReport invalid translation strings
Evgeny Khramtsov [Mon, 24 Jun 2019 18:09:29 +0000 (21:09 +0300)]
Report invalid translation strings

5 years agoMake logging messages more consistent
Evgeny Khramtsov [Mon, 24 Jun 2019 17:32:34 +0000 (20:32 +0300)]
Make logging messages more consistent

5 years agoCheck if mod_last is loaded before calling its functions
Evgeny Khramtsov [Mon, 24 Jun 2019 15:47:51 +0000 (18:47 +0300)]
Check if mod_last is loaded before calling its functions

5 years agoUse "begin ... end" in logging macros
Evgeny Khramtsov [Mon, 24 Jun 2019 15:47:19 +0000 (18:47 +0300)]
Use "begin ... end" in logging macros

5 years agoDeprecated access_commands option
Evgeny Khramtsov [Mon, 24 Jun 2019 14:20:29 +0000 (17:20 +0300)]
Deprecated access_commands option

5 years agoMake ejabberd_xmlrpc working as a listening module again
Evgeny Khramtsov [Mon, 24 Jun 2019 14:13:34 +0000 (17:13 +0300)]
Make ejabberd_xmlrpc working as a listening module again

Fixes #2915

5 years agoDon't crash on empty avatar data
Evgeny Khramtsov [Mon, 24 Jun 2019 14:00:51 +0000 (17:00 +0300)]
Don't crash on empty avatar data

5 years agoUse correct virtual host for s2s options
Evgeny Khramtsov [Sun, 23 Jun 2019 16:37:54 +0000 (19:37 +0300)]
Use correct virtual host for s2s options

5 years agoAvoid code duplication in gen_mod
Evgeny Khramtsov [Sun, 23 Jun 2019 14:06:53 +0000 (17:06 +0300)]
Avoid code duplication in gen_mod

5 years agoLet it crash on unspecified option
Evgeny Khramtsov [Sun, 23 Jun 2019 13:54:01 +0000 (16:54 +0300)]
Let it crash on unspecified option

5 years agoUpdate Russian msg file
Evgeny Khramtsov [Sun, 23 Jun 2019 11:19:57 +0000 (14:19 +0300)]
Update Russian msg file

5 years agoUpdate Russian PO file
Evgeny Khramtsov [Sun, 23 Jun 2019 11:19:15 +0000 (14:19 +0300)]
Update Russian PO file

5 years agoRespond with 'Bad Request' to unexpected 'Host' header
Evgeny Khramtsov [Sun, 23 Jun 2019 10:12:00 +0000 (13:12 +0300)]
Respond with 'Bad Request' to unexpected 'Host' header

Where "unexpected" means the host in 'Host' header is not
a registered route. The rationale is to avoid propagation
of uknown "Host" further in the code, which may lead to
nasty errors related to reading configuration values, calling
functions from ejabberd_router.erl, etc.

5 years agoValidate and set 'version' option at an earlier stage
Evgeny Khramtsov [Sun, 23 Jun 2019 09:23:22 +0000 (12:23 +0300)]
Validate and set 'version' option at an earlier stage

5 years agoRun "make translations"
Evgeny Khramtsov [Sat, 22 Jun 2019 15:15:35 +0000 (18:15 +0300)]
Run "make translations"

5 years agoGenerate paths for poedit
Evgeny Khramtsov [Sat, 22 Jun 2019 15:07:36 +0000 (18:07 +0300)]
Generate paths for poedit

5 years agoUpdate extract-tr.sh script
Evgeny Khramtsov [Sat, 22 Jun 2019 14:24:15 +0000 (17:24 +0300)]
Update extract-tr.sh script

5 years agoImprove extraction of translated strings
Evgeny Khramtsov [Sat, 22 Jun 2019 14:08:45 +0000 (17:08 +0300)]
Improve extraction of translated strings

Now every such string MUST be encapsulated into ?T() macro.
The macro itself is defined in include/translate.hrl.
Example:

-module(foo).
-export([bar/1]).
-include("translate.hrl").

bar(Lang) ->
    translate:translate(Lang, ?T("baz")).

5 years agoChange Travis OTP platform from 19.1 to 19.3
Evgeny Khramtsov [Sat, 22 Jun 2019 10:15:11 +0000 (13:15 +0300)]
Change Travis OTP platform from 19.1 to 19.3

Seems like Travis has problems with OTPs below 19.3

5 years agoDisable Elixir in Travis tests
Evgeny Khramtsov [Sat, 22 Jun 2019 08:03:29 +0000 (11:03 +0300)]
Disable Elixir in Travis tests

5 years agoFix shaper selection in ejabberd_c2s
Evgeny Khramtsov [Sat, 22 Jun 2019 07:19:17 +0000 (10:19 +0300)]
Fix shaper selection in ejabberd_c2s

5 years agoMake option 'validate_stream' global
Evgeny Khramtsov [Fri, 21 Jun 2019 18:06:32 +0000 (21:06 +0300)]
Make option 'validate_stream' global

5 years agoDon't attempt to query 'undefined' active list
Evgeny Khramtsov [Fri, 21 Jun 2019 16:37:47 +0000 (19:37 +0300)]
Don't attempt to query 'undefined' active list

Also code formatting was improved

5 years agoAllow multiple definitions of host_config and append_host_config
Evgeny Khramtsov [Fri, 21 Jun 2019 12:37:51 +0000 (15:37 +0300)]
Allow multiple definitions of host_config and append_host_config

5 years agoCorrect mod_mix_pam protocol version
Evgeny Khramtsov [Fri, 21 Jun 2019 11:47:10 +0000 (14:47 +0300)]
Correct mod_mix_pam protocol version

Fixes #2913

5 years agoFix usage of TLS in mod_mqtt
Evgeny Khramtsov [Fri, 21 Jun 2019 11:39:46 +0000 (14:39 +0300)]
Fix usage of TLS in mod_mqtt

Fixes #2919

5 years agomod_pubsub: Check access_model when publishing PEP
Holger Weiss [Thu, 20 Jun 2019 16:18:14 +0000 (18:18 +0200)]
mod_pubsub: Check access_model when publishing PEP

Don't just adhere to the node's access_model when delivering the last
PEP item but also when a new item is published.

Many thanks to Philipp Hörist for spotting this.

5 years agoFix creation of type spec for map() options
Evgeny Khramtsov [Thu, 20 Jun 2019 16:09:36 +0000 (19:09 +0300)]
Fix creation of type spec for map() options

5 years agoRename remaining command arguments from Server to Host (#2908)
Badlop [Wed, 19 Jun 2019 07:26:28 +0000 (09:26 +0200)]
Rename remaining command arguments from Server to Host (#2908)

5 years agoAdd support for backwards compatibility in command argument names (#2908)
Badlop [Tue, 18 Jun 2019 09:09:35 +0000 (11:09 +0200)]
Add support for backwards compatibility in command argument names (#2908)

5 years agoFix support for nonexistent or empty access_commands in ejabberd_xmlrpc
Badlop [Wed, 19 Jun 2019 07:19:13 +0000 (09:19 +0200)]
Fix support for nonexistent or empty access_commands in ejabberd_xmlrpc

5 years agoRequire opt_type/1 callback
Evgeny Khramtsov [Mon, 17 Jun 2019 17:51:04 +0000 (20:51 +0300)]
Require opt_type/1 callback

5 years agoGenerate more readable exception
Evgeny Khramtsov [Mon, 17 Jun 2019 17:49:43 +0000 (20:49 +0300)]
Generate more readable exception

5 years agoSet yconf version in mix.exs explicitly
Evgeny Khramtsov [Mon, 17 Jun 2019 16:50:44 +0000 (19:50 +0300)]
Set yconf version in mix.exs explicitly

5 years agoSynchronize macros from rebar.config with mix.exs
Evgeny Khramtsov [Mon, 17 Jun 2019 16:30:25 +0000 (19:30 +0300)]
Synchronize macros from rebar.config with mix.exs

5 years agoAdd yconf application to mix.exs
Evgeny Khramtsov [Mon, 17 Jun 2019 16:19:27 +0000 (19:19 +0300)]
Add yconf application to mix.exs

5 years agoReflect recent pubsub changes in configuration transformer
Evgeny Khramtsov [Mon, 17 Jun 2019 10:42:58 +0000 (13:42 +0300)]
Reflect recent pubsub changes in configuration transformer

5 years agoAdd helper to check xep implementations and versions
Christophe Romain [Mon, 17 Jun 2019 10:02:23 +0000 (12:02 +0200)]
Add helper to check xep implementations and versions

5 years agoBump supported version of XEP-0355
Evgeny Khramtsov [Mon, 17 Jun 2019 09:53:15 +0000 (12:53 +0300)]
Bump supported version of XEP-0355

5 years agoRemote obsolete pubsub config from tests
Christophe Romain [Mon, 17 Jun 2019 09:39:17 +0000 (11:39 +0200)]
Remote obsolete pubsub config from tests

5 years agoFix component routes unregistration
Evgeny Khramtsov [Mon, 17 Jun 2019 09:29:04 +0000 (12:29 +0300)]
Fix component routes unregistration

Fixes #2910

5 years agoRemove deprecated pubsub plugins
Christophe Romain [Mon, 17 Jun 2019 09:19:28 +0000 (11:19 +0200)]
Remove deprecated pubsub plugins

5 years agoUse list_to_existing_atom/1 wherever possible
Evgeny Khramtsov [Sat, 15 Jun 2019 12:14:45 +0000 (15:14 +0300)]
Use list_to_existing_atom/1 wherever possible

5 years agoAdd PostgreSQL to Travis services
Evgeny Khramtsov [Sat, 15 Jun 2019 10:41:13 +0000 (13:41 +0300)]
Add PostgreSQL to Travis services

5 years agoGet rid of "well-known" type
Evgeny Khramtsov [Sat, 15 Jun 2019 09:53:16 +0000 (12:53 +0300)]
Get rid of "well-known" type

5 years agoRemove default_db/1 and add default_db/3
Evgeny Khramtsov [Sat, 15 Jun 2019 09:10:35 +0000 (12:10 +0300)]
Remove default_db/1 and add default_db/3

Same for default_ram_db/1 and default_ram_db/3

5 years agoIgnore beams compiled by Elixir
Evgeny Khramtsov [Fri, 14 Jun 2019 20:35:51 +0000 (23:35 +0300)]
Ignore beams compiled by Elixir

5 years agoAccept output argument in tools/opt_types.sh
Evgeny Khramtsov [Fri, 14 Jun 2019 20:19:08 +0000 (23:19 +0300)]
Accept output argument in tools/opt_types.sh

5 years agoWarn about 'service_url' option during config transformation
Evgeny Khramtsov [Fri, 14 Jun 2019 14:38:55 +0000 (17:38 +0300)]
Warn about 'service_url' option during config transformation

5 years agoFix exception formatting on old Erlang
Evgeny Khramtsov [Fri, 14 Jun 2019 13:58:39 +0000 (16:58 +0300)]
Fix exception formatting on old Erlang

5 years agoFix validator of mod_avatar
Evgeny Khramtsov [Fri, 14 Jun 2019 13:42:22 +0000 (16:42 +0300)]
Fix validator of mod_avatar

5 years agoIntroduce option 'captcha_url'
Evgeny Khramtsov [Fri, 14 Jun 2019 13:06:04 +0000 (16:06 +0300)]
Introduce option 'captcha_url'

Option 'captcha_host' is now deprecated in favor of 'captcha_url'.
However, it's not replaced automatically at startup, i.e. both options
are supported with 'captcha_url' being the preferred one.

5 years agoRemove mod_echo module
Evgeny Khramtsov [Fri, 14 Jun 2019 11:47:46 +0000 (14:47 +0300)]
Remove mod_echo module

5 years agoTravis CI: Ensure MySQL is started
Holger Weiss [Fri, 14 Jun 2019 11:08:46 +0000 (13:08 +0200)]
Travis CI: Ensure MySQL is started

It seems MySQL isn't always fully started before 'mysql_upgrade' is
called.

5 years agoAdd forgotten header file
Evgeny Khramtsov [Fri, 14 Jun 2019 10:36:28 +0000 (13:36 +0300)]
Add forgotten header file

5 years agoUse commit id instead of branch name to specify deps in rebar.config
Paweł Chmielowski [Fri, 14 Jun 2019 10:16:13 +0000 (12:16 +0200)]
Use commit id instead of branch name to specify deps in rebar.config

5 years agoUse new configuration validator
Evgeny Khramtsov [Fri, 14 Jun 2019 09:33:26 +0000 (12:33 +0300)]
Use new configuration validator

5 years agoReturn jid_malformed error when sending presence without nick to conference
Paweł Chmielowski [Thu, 13 Jun 2019 16:42:02 +0000 (18:42 +0200)]
Return jid_malformed error when sending presence without nick to conference

5 years agoMerge pull request #2651 from Iperity/fix-privacy-race-condition
badlop [Thu, 13 Jun 2019 07:34:58 +0000 (09:34 +0200)]
Merge pull request #2651 from Iperity/fix-privacy-race-condition

Fix mod_privacy race condition

5 years agoDebug log to help troubleshoot delegation ACLs
Mickaël Rémond [Tue, 11 Jun 2019 16:52:44 +0000 (18:52 +0200)]
Debug log to help troubleshoot delegation ACLs

5 years agoRevert "Fix pubsub compliance XEP-0060 § 7.1.3.6 (#2864)"
Christophe Romain [Tue, 11 Jun 2019 08:18:36 +0000 (10:18 +0200)]
Revert "Fix pubsub compliance XEP-0060 § 7.1.3.6 (#2864)"

This reverts commit 2fff4d1ea6f32babc3ae06ef877faaacb8ba3c1b.
This commit broke the XEP compliance. more details here
https://xmpp.org/extensions/xep-0060.html#events

5 years agoRefactor mod_privacy patch; move logic user_receive_packet to
Nathan Bruning [Mon, 10 Dec 2018 23:19:54 +0000 (00:19 +0100)]
Refactor mod_privacy patch; move logic user_receive_packet to
user_send_packet.

5 years agoFix user_send_packet in mod_privacy; was failing on newly created users
Nathan Bruning [Wed, 28 Nov 2018 17:34:16 +0000 (18:34 +0100)]
Fix user_send_packet in mod_privacy; was failing on newly created users

5 years agoFix mod_privacy race condition
Nathan Bruning [Sat, 27 Oct 2018 13:26:37 +0000 (15:26 +0200)]
Fix mod_privacy race condition

mod_privacy updates the c2s state in user_receive_packet, which
tracks the *result* of the IQ set for active privacy lists.

When a second stanza is sent directly after a privacy list request,
the second stanza will be processed using the old privacy list,
because the IQ result has not yet been routed.

5 years agolock.yml defines locking policy for old issues
Mickaël Rémond [Sun, 9 Jun 2019 09:47:18 +0000 (11:47 +0200)]
lock.yml defines locking policy for old issues

5 years agoUse system_time/1 instead of monotonic_time/1
Evgeny Khramtsov [Thu, 6 Jun 2019 18:26:50 +0000 (21:26 +0300)]
Use system_time/1 instead of monotonic_time/1

The value of monotonic_time/1 may differ significantly between
nodes in a cluster due to different erlang:time_offset/0 values.

Thanks to Christoph Scholz for spotting this

5 years agomod_register_web: Don't crash if user exists
Holger Weiss [Wed, 5 Jun 2019 16:28:35 +0000 (18:28 +0200)]
mod_register_web: Don't crash if user exists

Since commit 633b68db1130c81551b063f3aa15d599b0d355e5,
ejabberd_auth:try_register/3 returns {error, exists} rather than
{atomic, exists}.

Thanks to Thomas Leister for reporting the issue.

5 years agoChange indentation in ejabberd.yml.example to more consistant
Paweł Chmielowski [Tue, 4 Jun 2019 12:13:26 +0000 (14:13 +0200)]
Change indentation in ejabberd.yml.example to more consistant

5 years agoFix example argument in private_set, don't include Query element
Badlop [Wed, 29 May 2019 17:41:36 +0000 (19:41 +0200)]
Fix example argument in private_set, don't include Query element

5 years agomod_stream_mgmt: Drop unused code
Holger Weiss [Tue, 28 May 2019 22:30:59 +0000 (00:30 +0200)]
mod_stream_mgmt: Drop unused code

Revert the changes applied to mod_stream_mgmt in commit
b76f90fe396ee7a1ed5c5f7006431879929fc2a1, as the new implementation of
mod_offline's 'use_mam_for_storage' feature doesn't need them.

5 years agoChange implementation of mod_offline use_mam_for_storage 19.05
Paweł Chmielowski [Tue, 28 May 2019 12:32:09 +0000 (14:32 +0200)]
Change implementation of mod_offline use_mam_for_storage

Previous version was trying to determine range of messages that should
be fetched from mam by storing time when last user resource disconnected.

But that had couple edge cases that could cause problems, for example in
case of node crash we could not store information about user disconnect
and with that we didn't have data to initiate mam query.

New version don't track user disconnects, but simply ensure that we have
timestamp of first message that is gonna be put in storage, after some
measurements cost of that check with caching on top is not that costly,
and as much more robust i decided to introduce that change.

5 years agoDon't check mod_register restrictions in 'register' command
Evgeny Khramtsov [Tue, 28 May 2019 12:14:45 +0000 (15:14 +0300)]
Don't check mod_register restrictions in 'register' command

The commit reverts behaviour introduced in
1f2b8adc285c6c67de75986e96d6bd1632ef97fe

5 years agomod_http_upload: Avoid catch-all error handling
Holger Weiss [Mon, 27 May 2019 19:56:37 +0000 (21:56 +0200)]
mod_http_upload: Avoid catch-all error handling

5 years agoImprove captcha blocking alert wording
Mickaël Rémond [Sat, 25 May 2019 09:30:04 +0000 (11:30 +0200)]
Improve captcha blocking alert wording

5 years agoImprove captcha.sh script documentation
Mickaël Rémond [Sat, 25 May 2019 09:21:30 +0000 (11:21 +0200)]
Improve captcha.sh script documentation

5 years agoFix last commit
Paweł Chmielowski [Fri, 24 May 2019 13:18:15 +0000 (15:18 +0200)]
Fix last commit