IsEof and isError do not include timeout errors - "it is not an error per se". (Hence: IsTimeout() )
Upp::String data = d_activeConnection.GetLine();
What I can tell from the logs you shared, is, the GetLine() method is timing out.
My *guess* is that you need to add '\n' to the end of the data to be sent (That's how GetLine works. It will wait an EOL until it times out or encounters a socket error);