• Pl chevron_right

      ProcessOne: ejabberd 26.04

      news.movim.eu / PlanetJabber • 14:42 • 2 minutes

    ejabberd 26.04

    Contents:

    New limits options for XML parser

    This release adds new options that limit max memory used by XML parser used to process XMPP payloads, to prevent potential Denial of Service attack. The default values for pre-auth provide sufficient protection for ejabberd against non-authenticated users on c2s and s2s, so there is no need to change your configuration.

    The option max_stanza_elements sets a limit on the maximum number of XML elements that an individual stanza can contain. By default, this option is set to infinity .

    The pair of options pre_auth_max_stanza_elements and pre_auth_max_stanza_size define separate limits for sessions that haven&apost authenticated yet. The session will switch to the limits defined by the options max_stanza_elements and max_stanza_size after the client has successfully authenticated. The default values for these options are: 32 for pre_auth_max_stanza_elements and 8192 for pre_auth_max_stanza_size .

    All those options are recognized inside listener sections, and can be applied to ejabberd_c2s and ejabberd_s2s_in listeners.

    ChangeLog

    Core

    • Add new listener options to limit xml parser accepted input
    • Improve leave_cluster command to work even in own node
    • New predefined keyword DATABASE_PATH that points to the Mnesia spool dir
    • Support HOST keyword in sql_database toplevel option, set nice default value
    • Provide more details in log messages when using SQLite
    • Update documentation of jwt_key to match the Docs site
    • ejabberd_config: New default_ram_db/3 clause that checks module support
    • ejabberd_sm: Remove session_counter, used for get_vh_session_number now removed

    Modules

    • mod_http_fileserver : Use integer in ejabberd_hooks:add as expected by "make hooks"
    • mod_invites : Add --enable-bootstrap=no to configure options to bypass download ( #4558 )
    • mod_invites : don&apost crash in get_invite_by_invitee_t for sql backend ( #4566 )
    • mod_invites : quick howto for creating integrity check checksums
    • mod_invites : remove dependency on jquery
    • mod_mqtt : Define RAM callbacks as optional
    • mod_mqtt : Use default_ram_db only if it really supports RAM storage
    • mod_roster : Fix bug introduced in 26.03 in commit d5c1440 ( #4564 )
    • mod_roster_sql : Cast approved integer as boolean when exporting Mnesia to SQL
    • mod_shared_roster_sql : Fix typo introduced 10 years ago in commit 0ea0ba30

    Container and Installers

    • Bump Erlang/OTP 28.4.2
    • make-binaries: Bump OpenSSL to 3.5.6

    Full Changelog

    https://github.com/processone/ejabberd/compare/26.03...26.04

    Acknowledgments

    We would like to thank the contributions to the source code, documentation, and translation provided for this release by:

    And also to all the people contributing in the ejabberd chatroom, issue tracker...

    ejabberd 26.04 download & feedback

    As usual, the release is tagged in the Git source code repository on GitHub .

    The source package and installers are available in ejabberd Downloads page. To check the *.asc signature files, see How to verify ProcessOne downloads integrity .

    For convenience, there are alternative download locations like the ejabberd DEB/RPM Packages Repository and the GitHub Release / Tags .

    The ecs container image is available in docker.io/ejabberd/ecs and ghcr.io/processone/ecs . The alternative ejabberd container image is available in ghcr.io/processone/ejabberd .

    If you consider that you&aposve found a bug, please search or fill a bug report on GitHub Issues .