> ## Content Index
> Fetch the complete content index at: https://www.process-one.net/llms.txt
> Use this file to discover other available public pages before exploring further.

# ejabberd 20.12
- URL: https://www.process-one.net/blog/ejabberd-20-12/
- Published: 2020-12-16T15:32:00.000Z
- Updated: 2024-09-16T14:33:27.000Z
- Author: Jérôme Sautret

We are pleased to announce [ejabberd 20.12](https://www.process-one.net/en/ejabberd/downloads/). This release, just in time for the New Year’s, includes several new features and many improvements & bugfixes.

Most notably, ejabberd now works with the Microsoft ODBC Driver for the SQL Server support. With [a new config option](https://docs.ejabberd.im/admin/configuration/database-ldap/?ref=process-one.net#microsoft-sql-server), `sql_odbc_driver`, you can explicitly specify the path to the ODBC driver you want to use.

We also improved the supported authentication methods with the addition of SCRAM-SHA-1-PLUS, SCRAM-SHA-256(-PLUS) and SCRAM-SHA-512(-PLUS).

ejabberd 20.12 is a big release, and here is just a small selection of the improvements it includes:

## Core:

- Add support for SCRAM-SHA-(1,256,512)(-PLUS) authentication
- Don’t use same value in cache for user don’t exist and wrong password
- `outgoing_s2s_ipv*_address`: New options to set ipv4/ipv6 outbound s2s out interface
- `s2s_send_packet`: this hook now filters outgoing s2s stanzas
- `start_room`: new hook runs when a room process is started
- `check_decoded_jwt`: new hook to check decoded JWT after success authentication

## Admin

- Docker: Fix DB initialization
- New `sql_odbc_driver` option: choose the mssql ODBC driver, with support for Microsoft ODBC Driver for SQL Server
- Rebar3: Fully supported. Enable with `./configure --with-rebar=/path/to/rebar3`
- systemd: start ejabberd in foreground

## Modules:

- MAM: Make sure that jid used as base in mam xml\_compress is bare
- MAM: Support for MAM Flipped Pages
- MUC: Always show MucSub subscribers nicks
- MUC: Don’t forget not-persistent rooms in load\_permanent\_rooms
- MUC Admin: Better error reporting
- MUC Admin: Fix commands with hibernated rooms
- MUC Admin: Many improvements in rooms\_unused\_list/destroy
- MUC Admin: create\_room\_with\_opts Store options only if room starts
- Pubsub: Remove ‘dag’ node plugin documentation
- Push: Fix API call return type on error
- Push: Support cache config changes on reload
- Register: Allow for account-removal-only setup again
- Roster: Make roster subscriptions work better with invalid roster state in db
- Vcard: Fix vCard search by User when using Mnesia
- WebAdmin: Allow vhost admins to view WebAdmin menus
- WebAdmin: Don’t do double utf-8 conversion on translated strings
- WebAdmin: Mark dangerous buttons with CSS
- WebSocket: Make websocket send put back pressure on c2s process

## ejabberd 20.12 download & feedback

As usual, the release is tagged in the Git source code repository on [Github](https://github.com/processone/ejabberd.git?ref=process-one.net).

The source package and binary installers are available at [ejabberd XMPP & MQTT server download page](https://www.process-one.net/en/ejabberd/downloads/).

We’ve discovered some issues with the Windows installer that we are still working on, so its publication is delayed.

If you suspect that you’ve found a bug, please search or fill a bug report on [Github](https://github.com/processone/ejabberd/issues?ref=process-one.net).