25
1
mirror of https://github.com/processone/ejabberd.git synced 2024-11-22 16:20:52 +01:00
Commit Graph

8976 Commits

Author SHA1 Message Date
Jérôme Sautret
0b1800fc10 Add hooks for mqtt subscribe & unsubscribe events 2023-01-05 14:58:18 +01:00
Badlop
92d7be4338 Use alternative split/2 function that works with Erlang/OTP as old as 19.3 2023-01-03 20:32:52 +01:00
Badlop
ce89ff07e7 Fix "make hooks" 2023-01-03 19:13:43 +01:00
Badlop
5c1b72853f External modules: compile C files and install them in ejabberd's priv 2023-01-03 18:48:44 +01:00
Badlop
5d38143c3f Initialize captcha system after loading modules and external modules
Since recently, ejabberd_captcha instead of a script may use a module,
for example the external module mod_ecaptcha, which must be loaded first.
2023-01-03 18:48:42 +01:00
Badlop
353c68cfa6 Add support to define module instead of path to script 2023-01-03 18:48:40 +01:00
Badlop
9087e72f0e Update image key, some scripts generate their own random key 2023-01-03 18:48:38 +01:00
Badlop
4ad4a3bf24 Support to get module status from Elixir modules 2022-12-22 14:00:38 +01:00
Badlop
17160e9379 Container: Update Actions versions as requested by GitHub Actions 2022-12-22 14:00:36 +01:00
Jonathan Davies
ed84fee2bf ejabberd_options_doc.erl: Added outgoing_s2s_families deprecation
notice.

Signed-off-by: Jonathan Davies <jpds@protonmail.com>
2022-12-22 14:00:22 +01:00
Jonathan Davies
25ddd7b152 Changed default outgoing_s2s_families to IPv6 as servers are within datacenters
where IPv6 is more commonly enabled (contrary to clients), and if it's not
present - it'll just fall back to IPv4.
2022-12-22 14:00:22 +01:00
Paweł Chmielowski
5ad709a2e2 Fix typo in last commit 2022-12-21 11:13:49 +01:00
Paweł Chmielowski
32ace140df Don't store mucsub presence events in offline storage
This is expanded version of pull request #3959
2022-12-21 11:12:08 +01:00
Paweł Chmielowski
bc063b8f97 Fix crash when api_permisions don't have who: section
Default value of that field was wrong, so lets correct this.

This fixes issue #3957
2022-12-15 11:27:20 +01:00
Badlop
03681cd68d Expose the pubsub#type field in disco#info query to the node (#3914) 2022-12-13 23:57:34 +01:00
Badlop
fe8b98a1f3 When using erlef, Erlang/OTP 21 is only available in ubuntu 20.04
See
https://github.com/erlef/setup-beam#compatibility-between-operating-system-and-erlangotp
2022-12-13 23:57:31 +01:00
Badlop
a193128543 Fix path where gem is installed and fpm can be found 2022-12-13 23:24:01 +01:00
Badlop
6a10048339 Document the new log_modules_fully option 2022-12-13 23:24:01 +01:00
Badlop
9087dd9210 Improve .devcontainer to use use devcontainer image and .vscode 2022-12-13 23:24:01 +01:00
Badlop
a08c038c9c Add .vscode files to instruct VSCode how to run ejabberd 2022-12-13 23:24:01 +01:00
Badlop
e191bc253d Add Erlang LS default configuration 2022-12-13 23:24:01 +01:00
Badlop
c8d866d01a Add Elvis default configuration 2022-12-13 23:24:01 +01:00
Badlop
01d25c5c37 Let setup-relive.sh normally end with no error status 2022-12-13 23:24:01 +01:00
Paweł Chmielowski
25d6b3d1c8 Fix dialyzer warnings 2022-12-07 14:08:23 +01:00
Paweł Chmielowski
639183a783 Add support for certificate authentication in mqtt bridge 2022-12-07 13:38:05 +01:00
Paweł Chmielowski
80477f71b3 Add misc:uri_parse/2 to allow declaring default ports for protocols 2022-12-07 13:34:29 +01:00
Paweł Chmielowski
d49b50a055 Add log_modules_fully option to make some modules log everything independed from global loglevel 2022-12-01 13:24:46 +01:00
Paweł Chmielowski
54592202ef Allow admin command to subscribe new users to members_only rooms 2022-12-01 11:52:39 +01:00
Paweł Chmielowski
be60263d47 Fix dialyzer warnings in mod_mqtt_bridge 2022-11-24 16:23:37 +01:00
Badlop
441eca75b2 hibernation_time is not an option worth storing in room state (#3946) 2022-11-23 18:40:28 +01:00
Badlop
266dd98521 OAuth: Accept jid as a HTTP URL query argument 2022-11-23 18:40:26 +01:00
Badlop
b0e74464b1 OAuth: Handle when client is not identified 2022-11-23 18:40:23 +01:00
Badlop
daaaf221cb Don't set i18n option because Converse enforces it instead of browser lang (#3951) 2022-11-23 18:39:49 +01:00
Paweł Chmielowski
e2779e1155 Try to redirect access to files mod_conversejs to cdn when there is no local copies 2022-11-23 16:28:42 +01:00
Paweł Chmielowski
514bab47a2 Add hook for mqtt publish event 2022-11-23 15:16:43 +01:00
Paweł Chmielowski
fbea49dbab Add mqtt bridge module 2022-11-23 14:50:18 +01:00
chengshq
5cf9b052dd
Jid format when multicastc was cached (#3950)
The error log:

```2022-11-22 04:10:25.436648+00:00 [error] <0.515.0>@ejabberd_router:route/1:95 Failed to route packet:
#message{
    id = <<>>,type = normal,lang = <<>>,
    from =
        #jid{
            user = <<"a123">>,server = <<"conference.example.com">>,
            resource = <<>>,luser = <<"a123">>,
            lserver = <<"conference.example.com">>,lresource = <<>>},
    to = <<"multicast.app.example.com">>,subject = [],body = [],
    thread = undefined,
    sub_els =
        [#ps_event{
             items =
                 #ps_items{
                     xmlns = <<>>,
                     node = <<"urn:xmpp:mucsub:nodes:subscribers">>,
                     items =
                         [#ps_item{
                              xmlns = <<>>,id = <<"5803948964051348597">>,
                              sub_els =
                                  [#muc_subscribe{
                                       nick = <<"bb">>,password = <<>>,
                                       jid = undefined,events = []}],
                              node = <<>>,publisher = <<>>}],
                     max_items = undefined,subid = <<>>,retract = undefined},
             purge = undefined,subscription = undefined,delete = undefined,
             create = undefined,configuration = undefined},
         #addresses{
             list =
                 [#address{
                      type = bcc,
                      jid =
                          #jid{
                              user = <<"aaa">>,server = <<"app.example.com">>,
                              resource = <<>>,luser = <<"aaa">>,
                              lserver = <<"app.example.com">>,lresource = <<>>},
                      desc = <<>>,node = <<>>,delivered = undefined,
                      sub_els = []},
                  #address{
                      type = bcc,
                      jid =
                          #jid{
                              user = <<"bb">>,server = <<"app.example.com">>,
                              resource = <<>>,luser = <<"bb">>,
                              lserver = <<"app.example.com">>,lresource = <<>>},
                      desc = <<>>,node = <<>>,delivered = undefined,
                      sub_els = []}]}],
    meta = #{}}
** exception error: {badrecord,jid}
   in function  ejabberd_router:do_route/1 (src/ejabberd_router.erl, line 394)
   in call from ejabberd_router:route/1 (src/ejabberd_router.erl, line 92)
   in call from maps:fold_1/3 (maps.erl, line 232)
   in call from mod_multicast:handle_info/2 (src/mod_multicast.erl, line 206)
   in call from gen_server:try_dispatch/4 (gen_server.erl, line 637)
   in call from gen_server:handle_msg/6 (gen_server.erl, line 711)
   in call from proc_lib:init_p_do_apply/3 (proc_lib.erl, line 249)```


Then command debug select the multicastc:
```
(ejabberd@localhost)2> mnesia:dirty_read(multicastc, <<"app.example.com">>).
[{multicastc,<<"app.example.com">>,
             {{multicast_supported,<<"multicast.app.example.com">>,
                                   {limits,{default,20},{default,20}}},
              cached},
             63836303692}]```

The type of `Service` was binary.
2022-11-22 12:11:31 +01:00
Holger Weiss
3b50cd36ba Merge remote-tracking branch 'processone/pr/3945'
* processone/pr/3945:
  make-binaries: reduce log output
  make-binaries: Bump zlib version to 1.2.13
2022-11-16 16:20:10 +01:00
Stu Tomlinson
ed678f58d3 make-binaries: reduce log output
Reduce log output from make-binaries:
 - quieter curl downloads
 - quiet build of crosstool-ng
 - disable crosstool-ng progress bar
2022-11-16 13:41:57 +00:00
Stu Tomlinson
aa8d800577 make-binaries: Bump zlib version to 1.2.13
Update zlib to 1.2.13 to address CVE-2022-37434

Also change zlib download to use archive URL so builds do not fail
when specified version is no longer the current version
2022-11-16 13:41:42 +00:00
Stu Tomlinson
a1cfae8c98
pgsql: do not set standard_conforming_strings to 'off' (#3944)
Since f9120f75b0 string literals use escape string syntax (E'...') on
pgsql, so it is no longer necessary to set standard_conforming_strings
to 'off'

Fixes #3932
2022-11-16 13:58:30 +01:00
Badlop
c6513fcfc6 Handle mnesia_system_event mnesia_up when other node joins this (#3842) 2022-11-14 18:45:20 +01:00
Badlop
d3d50b456e Fix compilation warnings with Elixir 1.14
warning: missing parentheses for expression following "do:" keyword.
Parentheses are required to solve ambiguity inside keywords.
2022-11-14 18:45:20 +01:00
Badlop
196eca2dc4 Runtime: Add Elixir 1.14 to the test matrix 2022-11-14 18:45:17 +01:00
Paweł Chmielowski
6fcfe80a65 Pass ssl options to mysql driver 2022-11-14 11:19:51 +01:00
Paweł Chmielowski
992d998695 Silent warning in OTP24 about not specified cacerts in sql connections 2022-11-14 11:18:26 +01:00
Badlop
e58920b2c6 Container: Update link to the local example of CTL_ON_CREATE usage 2022-11-07 22:38:55 +01:00
Badlop
0804f46095 Container: Add Composer Examples section 2022-11-07 22:19:40 +01:00
Badlop
662d9a0ed0 Container: Raise sections levels to improve legibility in GitHub web TOC 2022-11-07 22:19:22 +01:00
Badlop
d957404adc Add link in README to the ProcessOne Downloads page 2022-11-07 18:56:53 +01:00