I don't think this is doing entirely what you think it is. This is used in the `enableCrypto` call as well when the connection is really being established. In order to do what you want to do here, I think you're going to have to change base/socket (and base/ssl-socket) to store separate timeouts for connection, read and write and set/use them accordingly...