diff options
Diffstat (limited to 'src/shared/Auth')
| -rw-r--r-- | src/shared/Auth/AuthCrypt.cpp | 3 | ||||
| -rw-r--r-- | src/shared/Auth/AuthCrypt.h | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/shared/Auth/AuthCrypt.cpp b/src/shared/Auth/AuthCrypt.cpp index 199e7192537..7941b33ed8c 100644 --- a/src/shared/Auth/AuthCrypt.cpp +++ b/src/shared/Auth/AuthCrypt.cpp @@ -50,8 +50,9 @@ void AuthCrypt::DecryptRecv(uint8 *data, size_t len) void AuthCrypt::EncryptSend(uint8 *data, size_t len) { if (!_initialized) return; + if (len < CRYPTED_SEND_LEN) return; - for (size_t t = 0; t < len; t++) + for (size_t t = 0; t < CRYPTED_SEND_LEN; t++) { _send_i %= _key.size(); uint8 x = (data[t] ^ _key[_send_i]) + _send_j; diff --git a/src/shared/Auth/AuthCrypt.h b/src/shared/Auth/AuthCrypt.h index 366cce5635f..f3a0cac40fa 100644 --- a/src/shared/Auth/AuthCrypt.h +++ b/src/shared/Auth/AuthCrypt.h @@ -32,6 +32,7 @@ class AuthCrypt AuthCrypt(); ~AuthCrypt(); + const static size_t CRYPTED_SEND_LEN = 4; const static size_t CRYPTED_RECV_LEN = 6; void Init(); |
