X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/0fdb3f546ec7cb206f664f5240ac6ba3e52e8832..4b6cb30ae7c85d6ca9d2defb4e6d8f5cae309eeb:/stglibs/srvconf.lib/netunit.cpp diff --git a/stglibs/srvconf.lib/netunit.cpp b/stglibs/srvconf.lib/netunit.cpp index baf02004..65151587 100644 --- a/stglibs/srvconf.lib/netunit.cpp +++ b/stglibs/srvconf.lib/netunit.cpp @@ -27,7 +27,6 @@ #include // std::min -#include #include #include #include @@ -40,13 +39,19 @@ #include #include +const char STG_HEADER[] = "SG04"; +const char OK_HEADER[] = "OKHD"; +const char ERR_HEADER[] = "ERHD"; +const char OK_LOGIN[] = "OKLG"; +const char ERR_LOGIN[] = "ERLG"; +const char OK_LOGINS[] = "OKLS"; +const char ERR_LOGINS[] = "ERLS"; + using namespace STG; namespace { -const std::string::size_type MAX_XML_CHUNK_LENGTH = 2048; - struct ReadState { bool final; @@ -59,19 +64,18 @@ struct ReadState //--------------------------------------------------------------------------- -#define SEND_DATA_ERROR "Send data error!" -#define RECV_DATA_ANSWER_ERROR "Recv data answer error!" -#define UNKNOWN_ERROR "Unknown error!" -#define CONNECT_FAILED "Connect failed!" -#define BIND_FAILED "Bind failed!" -#define INCORRECT_LOGIN "Incorrect login!" -#define INCORRECT_HEADER "Incorrect header!" -#define SEND_LOGIN_ERROR "Send login error!" -#define RECV_LOGIN_ANSWER_ERROR "Recv login answer error!" -#define CREATE_SOCKET_ERROR "Create socket failed!" -#define WSASTARTUP_FAILED "WSAStartup failed!" -#define SEND_HEADER_ERROR "Send header error!" -#define RECV_HEADER_ANSWER_ERROR "Recv header answer error!" +const char SEND_DATA_ERROR[] = "Error sending data."; +const char RECV_DATA_ANSWER_ERROR[] = "Error receiving data answer."; +const char UNKNOWN_ERROR[] = "Unknown error"; +const char CONNECT_FAILED[] = "Failed to connect."; +const char BIND_FAILED[] = "Failed to bind."; +const char INCORRECT_LOGIN[] = "Incorrect login."; +const char INCORRECT_HEADER[] = "Incorrect header."; +const char SEND_LOGIN_ERROR[] = "Error sending login."; +const char RECV_LOGIN_ANSWER_ERROR[] = "Error receiving login answer."; +const char CREATE_SOCKET_ERROR[] = "Failed to create socket."; +const char SEND_HEADER_ERROR[] = "Error sending header."; +const char RECV_HEADER_ANSWER_ERROR[] = "Error receiving header answer."; //--------------------------------------------------------------------------- NETTRANSACT::NETTRANSACT(const std::string & s, uint16_t p, @@ -124,7 +128,7 @@ if (!localAddress.empty()) struct hostent * phe = gethostbyname(localAddress.c_str()); if (phe == NULL) { - errorMsg = "DNS error.\nCan not reslove " + localAddress; + errorMsg = "Can not reslove '" + localAddress + "'"; return st_dns_err; } @@ -156,7 +160,7 @@ if (ip == INADDR_NONE) struct hostent * phe = gethostbyname(server.c_str()); if (phe == NULL) { - errorMsg = "DNS error.\nCan not reslove " + server; + errorMsg = "Can not reslove '" + server + "'"; return st_dns_err; } @@ -235,7 +239,6 @@ char buffer[sizeof(STG_HEADER) + 1]; if (!ReadAll(sock, buffer, strlen(OK_HEADER))) { - printf("Receive header answer error: '%s'\n", strerror(errno)); errorMsg = RECV_HEADER_ANSWER_ERROR; return st_recv_fail; } @@ -276,7 +279,6 @@ char buffer[sizeof(OK_LOGIN) + 1]; if (!ReadAll(sock, buffer, strlen(OK_LOGIN))) { - printf("Receive login answer error: '%s'\n", strerror(errno)); errorMsg = RECV_LOGIN_ANSWER_ERROR; return st_recv_fail; } @@ -319,7 +321,6 @@ char buffer[sizeof(OK_LOGINS) + 1]; if (!ReadAll(sock, buffer, strlen(OK_LOGINS))) { - printf("Receive secret login answer error: '%s'\n", strerror(errno)); errorMsg = RECV_LOGIN_ANSWER_ERROR; return st_recv_fail; } @@ -343,7 +344,7 @@ int NETTRANSACT::TxData(const std::string & text) { STG::ENCRYPT_STREAM stream(password, TxCrypto, this); stream.Put(text.c_str(), text.length() + 1, true); -if (!stream.isOk()) +if (!stream.IsOk()) { errorMsg = SEND_DATA_ERROR; return st_send_fail; @@ -362,12 +363,11 @@ while (!state.final) ssize_t res = read(sock, buffer, sizeof(buffer)); if (res < 0) { - printf("Receive data error: '%s'\n", strerror(errno)); errorMsg = RECV_DATA_ANSWER_ERROR; return st_recv_fail; } stream.Put(buffer, res, res == 0); - if (!stream.isOk()) + if (!stream.IsOk()) return st_xml_parse_error; }