Setting a custom trust manager, so we can control from outside the certificates, like asking the users with UI dialog do they trust this particular certificate and remember their choice.
Replace a call getInetAddress().getHostName() with getInetAddress().getHostAddress() to avoid unnecessary DNS requests.
Give access to the socket outside the connection. This one is used only for information purposes, to have the local/remote port and local/remote address of the connection in our packet logging utility.
Removes ProviderManager private constructor so we can extend it.
Changes to send service-unavailable for not handled iq as said in RFC 6120.
Adds more codes for successful room joins.
Nodes strings in the discovery info packets are not escaped as in the other packets.
Improper use of WeakHashMap leads to memory leak as XMPPConnections stay in memory and all their listeners.
Fixes sending pubsub events for empty item (XEP-0060 allows no elements on second level of nodes).
Uses voice as default number detail, if no type is available.
Updates smack to handle roster packet errors.
Adds patch for parsing SMPP addresses provided by Sandeep Raghuraman.