diff options
| author | alpine <[email protected]> | 2020-06-26 14:06:25 +0200 |
|---|---|---|
| committer | alpine <[email protected]> | 2020-06-26 14:06:25 +0200 |
| commit | d89852b672d038ad07198dfeb6a5b1e89be84bb5 (patch) | |
| tree | e04e7cfcccf6b96af19678db79eba56acd57deed /server/src | |
| parent | Removed xor on streaming for now. (diff) | |
| download | loader-d89852b672d038ad07198dfeb6a5b1e89be84bb5.tar.xz loader-d89852b672d038ad07198dfeb6a5b1e89be84bb5.zip | |
Added server certificate verification on client.
Xor is now used only with messages.
Diffstat (limited to 'server/src')
| -rw-r--r-- | server/src/client/client.h | 1 | ||||
| -rw-r--r-- | server/src/server/packet.h | 10 | ||||
| -rw-r--r-- | server/src/server/ssl.h | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/server/src/client/client.h b/server/src/client/client.h index 9459eb6..1dbb8d5 100644 --- a/server/src/client/client.h +++ b/server/src/client/client.h @@ -1,6 +1,5 @@ #pragma once #include "../server/packet.h" -#include "../util/enc.h" namespace tcp { diff --git a/server/src/server/packet.h b/server/src/server/packet.h index b31f033..57c6229 100644 --- a/server/src/server/packet.h +++ b/server/src/server/packet.h @@ -1,4 +1,5 @@ #pragma once +#include "../util/enc.h" namespace tcp { constexpr size_t session_id_len = 10; @@ -20,10 +21,12 @@ struct packet_t { return; } - session_id = msg.substr(0, session_id_len); + message = msg; + enc::decrypt_message(message); + session_id = message.substr(0, session_id_len); - action = msg[session_id_len]; - message = msg.substr(session_id_len); + action = message[session_id_len]; + message = message.substr(session_id_len); } else { if (msg.size() > message_len) { io::logger->error("packet message exceeds limit"); @@ -33,6 +36,7 @@ struct packet_t { session_id = session; message = fmt::format("{}{}", session_id, msg); + enc::encrypt_message(message); } } diff --git a/server/src/server/ssl.h b/server/src/server/ssl.h index 30a4faa..344064d 100644 --- a/server/src/server/ssl.h +++ b/server/src/server/ssl.h @@ -20,6 +20,7 @@ class ssl { return false; } + SSL_CTX_set_verify(m_ctx, SSL_VERIFY_PEER, 0); int res = SSL_CTX_use_certificate_chain_file(m_ctx, m_cert.data()); if (res != 1) { io::logger->error("failed to load certificate."); @@ -47,7 +48,6 @@ class ssl { return false; } - SSL_CTX_set_verify(m_ctx, SSL_VERIFY_PEER, 0); return true; } |