SMTP error "Cannot connect to server. ()" on Android 4.4

Hi Folks,
I recently migrated my servers from 1&1 to A2Hosting.com (so much better). But now I can’t send email from my Android 4.4.2 phone.

In the problem accounts I select: Settings > Accoutn Settings > Sending Mail > Outgoing Server.
I set up all the exact same settings I have on my desktop Thunderbird account, but I get the error:

“Setup could not finish
Cannot connect to server.
()”

This was working as expected with 1&1, but not with A2Hosting when I switched in September.

Thanks for any ideas.

This would appear to be caused by a hostname or port issue. What hostname have you entered and what port is (or have you) selected in your outgoing server setup?

Same problem here. I’m running the Beta, but it’s a problem with the Beta and the official release. The difference is the official release gives the error mentioned by the OP, but the Beta gives no error and makes it look as if everything was successful. The settings are correct. That’s not the problem. I imagine I speak for many folks when I say I’ve been setting up email clients for many years… I know how to make sure they are correct. This is a catastrophic problem and will force me to dump K-9 if it’s not resolved. The inability to send mail from an email client is unacceptable. I would be very glad to hear any feedback about this problem getting fixed.

I just tested account setup with 5.731 (beta) and got the appropriate error messages when the host wasn’t reachable (like the report above) and when the credentials were incorrect. I don’t have 5.6 (the last non-beta) to see what its errors look like.

The “Cannot connect to server” error message doesn’t seem to obviously differentiate between an unreachable machine and a DNS failure. It would be helpful for debugging if the messages were more precise, but that message isn’t wrong in both of these instances.

The credentials error message was clear – the server obviously doesn’t report much information on these.

I am using the recommended setup from A2Hosting.com:
Outgoing Server: mi3-ss50.a2hosting.com
SMTP Port: 465
Connection: SSL/TSL
Authentication: Normal Password

i had no trouble with the hostname/port information you provided. the DNS looks fine, i could telnet to port 465 on that host and K-9 had no problem connecting to it on port 465 (or 993 for incoming imap) for account setup. it obviously failed on credentials as i don’t have an account, but that message was clear.

if you haven’t already, if you were trying this from lan-wifi try using a cell-data connection and vice versa.

I tried both (wifi & cell-data) with the same results:
“Setup could not finish
Cannot connect to server.
()”

I have quadruple checked my credentials and am certain they are correct.

Incoming is no problem. But sending messages just puts everything in the Outgoing folder and never connects.

Thanks

Anyone have any other thoughts about how to fix this?
Thanks

Does anyone have any ideas about what could be causing this problem? K9 worked perfectly with my old host (1&1) and now I can’t send with my new host (A2Hosting).

Ok, so I got a bit of hopefully useful information from A2Hosting.

"We checked our logs and found that your public IP address is generating the error “SSL routines:ssl3_get_client_hello:no shared cipher”.
If your Android is also on an older operating system or if the software is out of date it may be experiencing the same issue. You should check with K-9 support to inquire what ciphers they support and if there are any software settings that would affect which ciphers are enabled. "

Could this be the issue? Is there a way to find out what ciphers are supported?
Thank you

K-9 Mail uses the system’s TLS implementation. Android 4.4 is rather old and doesn’t support many of the latest ciphers. You can find a list here: https://developer.android.com/reference/javax/net/ssl/SSLSocket (the API level of Android 4.4 is 19)

The next version of K-9 Mail will require Android 5.0 or newer. So you might want to check if there’s a custom ROM available for your device that is based on a newer Android version.