Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump version to 0.90 and update changes #54

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions CHANGES
Original file line number Diff line number Diff line change
@@ -1,3 +1,65 @@
0.90 2020-10-31 Scary changes release
- add IPv6 support for c2s and s2s

- Add multi-socket support
(Dominik Schulz <[email protected]>)

- encode/decode disabled entities using HTML::Entities

- replace server namespace on local delivery
(Bron Gondwana <[email protected]>)

- add help and pod to djabberd
(Ioan Rogers <[email protected]>)

- Add config options to harden TLS stack - namely define protos,
ciphers, CAs, DH-params, EC certs/keys/params

- Add support for <proceed/> nonza to enable StartTLS on outgoing (s2s)
connections. Also add option to enforce TLS on S2S.

- Add new Hook chain for [custom] certificate validation, eg could be used
to pin certificates by key digest/fingerprint.

- Add rosterver support to RosterStorage/Item and IQ handler.

- Change feature/identity/capability processing by introducing new class
Caps which supports XEP-0115 serialisation and digest calculation. Also
allow multiple plugins to inject stream features by resetting callback
on each injection and pushing the chain on.

- Add ability for plugins to inject custom write handlers.

- Add hook ordering mechanism which makes use of introduced but never used
run_before/run_after plugin methods.

- Fix and enhance IQ routing and processing: handle responses/errors to server,
introduce new hooks for c2s-iq and s2s-iq towards server or bare JID (both
must be handled by the server)

- Add ability to override default S2S/C2S Connectio via config option,
eg. to use Plugins as transport (Connection) implementation. Also move
S2S Queue to VHost from Delivery to give external connection plugins
ability to acquire and consume the queue.

- Add SASL External, SCRAM-SHA-*, SCRAM-SHA-*-PLUS mechanisms support.
the -PLUS part is implemented with tls-unique and tls-server-end-point
bindings. Also adds SASLprep code to prep the user/pass.

- Add ability to use external TLS (offload) via Unix domain socket. This
allows using eg. nginx or haproxy doing TLS and configure unix socket
with external TLS enabled. Only unix socket to maintain some security.

- Add new Hook chain GetPlugin to obtain plugin instance on VHost. Plugin
needs to publish itself by registering a callback on this Hook.

- Various miscelaneous fixes in stanza routing, handling, transcoding, eg.
replace local namespace with server on s2s delivery, send own presence to
self, fix directed presence broadcast on disconnect, etc.

- skip 0.86-0.89 to make it even more scarier
(Ruslan N. Marchenko <[email protected]>)

0.85 2011-06-13 *CRITICAL SECURITY RELEASE*
- Fix an XML entity injection attack allowing the attacker to read random files
from the server. Reported by Wouter Coekaerts <[email protected]>.
Expand Down
2 changes: 1 addition & 1 deletion lib/DJabberd.pm
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ use Socket qw(IPPROTO_TCP TCP_NODELAY SOL_SOCKET SOCK_STREAM);
use Carp qw(croak);
use DJabberd::Util qw(tsub as_bool as_num as_abs_path as_bind_addr);

our $VERSION = '0.85';
our $VERSION = '0.90';

our $logger = DJabberd::Log->get_logger();
our $hook_logger = DJabberd::Log->get_logger("DJabberd::Hook");
Expand Down