Test endpoint using the set SQL_LOGIN_TIMEOUT value

With this change when the entered endpoint is unreachable Tableau will
warn the user during connection setup instead of proceeding with an
incorrect endpoint and failing during query time. The timeout value set
by Tableau is used when testing the endpoint.
Prefer `size_t`, `long` will not compile on 32-bit platforms (and we are presently working on an OSX port which will likely be 32-bit).