fix asan error in connection authenticator

PiperOrigin-RevId: 545783166
This commit is contained in:
Anay Wadhera
2023-07-05 14:15:37 -07:00
committed by Copybara-Service
parent 04936e0aba
commit 0bf74cb376
2 changed files with 7 additions and 1 deletions
@@ -91,6 +91,12 @@ absl::Status ConnectionAuthenticator::VerifyMessage(
if (auth_frame.version() != kPresenceAuthenticatorVersion) {
return absl::InvalidArgumentError("Presence frame has wrong version.");
}
if (!auth_frame.has_credential_id_hash() ||
(auth_frame.credential_id_hash().size() !=
kPresenceAuthenticatorHkdfKeySize)) {
return absl::InvalidArgumentError(
"Presence frame missing/has bad cid hash");
}
// We want to check each shared credential to verify using its public key.
for (const auto& shared_credential : shared_credentials) {
// Verify Credential ID hash.
@@ -263,7 +263,7 @@ TEST(PresenceAuthenticatorTest, TestMissingCredentialIdHashFails) {
EXPECT_THAT(authenticator.VerifyMessage(
kUkey2Secret, frame.SerializeAsString(),
{BuildSharedCredential(key_pair, kKeySeed1)}, false),
StatusIs(absl::StatusCode::kInternal));
StatusIs(absl::StatusCode::kInvalidArgument));
}
TEST(PresenceAuthenticatorTest, TestMissingPrivateKeySignatureFails) {