added error handling in mod_pubsub_odbc.
Merge pull request #176 from hamano/devel

added error handling in mod_pubsub_odbc.
Log TLS status for outgoing s2s with SASL EXTERNAL
Check TLS state before requesting SASL EXTERNAL

Make sure a remote server can't circumvent "s2s_use_starttls: required"
by offering SASL EXTERNAL authentication over a non-TLS connection.
fix checking acl in mod_register_web
Send stream trailer before closing s2s connection

When aborting an incoming s2s connection due to certificate verification
errors, send a stream trailer before closing the socket.
Don't mess with s2s out when aborting s2s in

Don't try to look up and close outgoing connections to a given server
when aborting incoming connections from that server due to certificate
verification errors.  The ejabberd_s2s:find_connection/2 call actually
created one or more *new* connections if less than 'max_s2s_connections'
connections were found.  Then, no more than one of those possibly new
connections were stopped by the ejabberd_s2s_out:stop_connection/1 call.

It's not really necessary to bother with outgoing connections at all,
here.
Support certificate verification for outgoing s2s

Handle "s2s_use_starttls: required_trusted" the same way for outgoing
s2s connections as for incoming connections.  That is, check the remote
server's certificate (including the host name) and abort the connection
if verification fails.
Merge pull request #184 from weiss/properly-abort-s2s-in

Fix handling of certificate verification errors for incoming s2s connections
New ejabberd command: disconnect_user/2
Update README: XEP-0227 code no longer uses exmpp
Merge pull request #179 from hamano/added_get_random_pid_error_handling

added get_random_pid/1 error handling
Merge pull request #182 from hamano/register_account_acl

fix checking acl in mod_register_web
Merge pull request #188 from weiss/update-readme

Update README: XEP-0227 code no longer uses exmpp
Avoid #state.lang type errors in corner cases

If #state.lang is used before being initialized to some binary string,
the translation code would crash.
Translate disconnect_user/2 string sent to client
Merge pull request #186 from weiss/add-disconnect-command

New ejabberd command: disconnect_user/2
Merge pull request #185 from weiss/verify-cert-for-s2s-out

Support certificate verification for outgoing s2s connections
Merge pull request #181 from weiss/check-tls-before-auth

Check TLS state before requesting SASL EXTERNAL for outgoing s2s connections
Merge pull request #177 from weiss/log-tls-sasl-external

Log TLS status for outgoing s2s with SASL EXTERNAL