Use std::all_of instead of std::count for checking if all 0
This commit is contained in:
@@ -415,7 +415,7 @@ NetworkRecvStatus ClientNetworkGameSocketHandler::SendKeyPasswordPacket(PacketTy
|
|||||||
|
|
||||||
byte shared_secret[32]; // Shared secret
|
byte shared_secret[32]; // Shared secret
|
||||||
crypto_x25519(shared_secret, keys.x25519_priv_key, _server_x25519_pub_key);
|
crypto_x25519(shared_secret, keys.x25519_priv_key, _server_x25519_pub_key);
|
||||||
if (std::count(shared_secret, shared_secret + 32, 0) == 32) {
|
if (std::all_of(shared_secret, shared_secret + 32, [](auto v) { return v == 0; })) {
|
||||||
/* Secret is all 0 because public key is all 0, just give up at this point */
|
/* Secret is all 0 because public key is all 0, just give up at this point */
|
||||||
return NETWORK_RECV_STATUS_MALFORMED_PACKET;
|
return NETWORK_RECV_STATUS_MALFORMED_PACKET;
|
||||||
}
|
}
|
||||||
|
@@ -242,7 +242,7 @@ bool ServerNetworkGameSocketHandler::ParseKeyPasswordPacket(Packet *p, NetworkSh
|
|||||||
|
|
||||||
byte shared_secret[32]; // Shared secret
|
byte shared_secret[32]; // Shared secret
|
||||||
crypto_x25519(shared_secret, keys.x25519_priv_key, client_pub_key);
|
crypto_x25519(shared_secret, keys.x25519_priv_key, client_pub_key);
|
||||||
if (std::count(shared_secret, shared_secret + 32, 0) == 32) {
|
if (std::all_of(shared_secret, shared_secret + 32, [](auto v) { return v == 0; })) {
|
||||||
/* Secret is all 0 because public key is all 0, just reject it */
|
/* Secret is all 0 because public key is all 0, just reject it */
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user