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-2839: Return error when non-existing VCard is requested.
When requesting a VCard from someone else, XEP-0054 (version 1.2) section 3.3 defines:
> If no vCard exists [...] the server MUST return a stanza error,
Furthermore:
> If no vCard exists or the user does not exist, the server MUST return a stanza error, which SHOULD be either <service-unavailable/> or <item-not-found/> (but the server MUST return the same error condition in both cases to help prevent directory harvesting attacks).
Finally, RFC 6121 section 8.5.1 defines:
> If the user account identified by the 'to' attribute does not exist, how the stanza is processed depends on the stanza type. For an IQ stanza, the server MUST return a <service-unavailable/> stanza error to the sender.
Openfire currently does not return an error, but an empty VCard. This is allowable when requesting one’s own VCard, but not when requesting that of others.
Instead, Openfire must return an error with the service-unavailable condition when someone is requesting a VCard that doesn’t exist, from an existing user.
Note that Openfire already returns service-unavailable when an IQ request is sent to a non-existing user.
OF-2835: Openfire should advertise CAPS support
As Openfire supports CAPS (it calculates a hash for its own service discovery information), advertise support through service discovery.