Verifies the integrety of the projects, as builds are executed immediately after a code change was detected. This plan provides no artifiacts (use a nightly build instead).
OF-2694 (code review feedback): (more) correctly encode SCRAM-SHA-1 test vector
Instead of concatenating two base64 strings, concat the byte-parts of the channel-binding data, and base64 encode the result. This better conforms to https://datatracker.ietf.org/doc/html/rfc5802#section-7
OF-2694: Make available `tls-server-end-point` channel binding by default
This registers the corresponding provider without any ceremony. Future modifications could introduce configurability, but as support for this channel binding is mandatory per XEP, hard-coding seems acceptable.
OF-2879: Implement XEP-0440: SASL Channel-Binding Type Capability
With Channel Binding now available (as this commit follows commits that implements these under OF-2694), Openfire should announce what type of channel binding types it supports. The mechanism for this is define in XEP-0440. This commit implements this mechanism.
Additionally, the channel binding type that is used for a session (if any) is now shown on its 'session details' page on the admin console.
OF-2694 (code review feedback): Additional hardening + unit test coverage
This adds more validation of the exchanged data in the SASL handshake, and adds more unit test coverage.
Small refactorings have been applied to make ScramSha1SaslServer easier to unit-test. It now no longer unconditionally uses static calls to other classes. Such classes can be provided via a `@VisibleForTesting` constructor.