Explicit ACI check for contact serviceId

This commit is contained in:
Fedor Indutny 2023-08-30 05:15:28 +02:00 committed by GitHub
parent 80a19d39de
commit 00f0ccd900
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -15,6 +15,7 @@ import {
SafetyNumberIdentifierType,
SafetyNumberMode,
} from '../types/safetyNumber';
import { isAciString } from '../types/ServiceId';
const ITERATION_COUNT = 5200;
const E164_VERSION = 1;
@ -37,8 +38,9 @@ export async function generateSafetyNumbers(
const us = storage.protocol.getIdentityRecord(ourAci);
const ourKeyBuffer = us ? us.publicKey : null;
const theirAci =
contact.pni !== contact.serviceId ? contact.serviceId : undefined;
const theirAci = isAciString(contact.serviceId)
? contact.serviceId
: undefined;
const them = theirAci
? await storage.protocol.getOrMigrateIdentityRecord(theirAci)
: undefined;