Default number sharing to NOBODY
Matches the official apps behavior. Closes #1472
This commit is contained in:
parent
378ac23c6c
commit
df76aa9919
@ -436,6 +436,10 @@
|
|||||||
"name":"java.util.concurrent.atomic.Striped64",
|
"name":"java.util.concurrent.atomic.Striped64",
|
||||||
"fields":[{"name":"base"}, {"name":"cellsBusy"}]
|
"fields":[{"name":"base"}, {"name":"cellsBusy"}]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name":"java.util.concurrent.atomic.Striped64$Cell",
|
||||||
|
"fields":[{"name":"value"}]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name":"javax.security.auth.x500.X500Principal",
|
"name":"javax.security.auth.x500.X500Principal",
|
||||||
"methods":[{"name":"<init>","parameterTypes":["sun.security.x509.X500Name"] }]
|
"methods":[{"name":"<init>","parameterTypes":["sun.security.x509.X500Name"] }]
|
||||||
|
@ -98,7 +98,7 @@ public class UnidentifiedAccessHelper {
|
|||||||
|
|
||||||
private byte[] getSenderCertificateFor(final RecipientId recipientId) {
|
private byte[] getSenderCertificateFor(final RecipientId recipientId) {
|
||||||
final var sharingMode = account.getConfigurationStore().getPhoneNumberSharingMode();
|
final var sharingMode = account.getConfigurationStore().getPhoneNumberSharingMode();
|
||||||
if (sharingMode == null || sharingMode == PhoneNumberSharingMode.EVERYBODY || (
|
if (sharingMode == PhoneNumberSharingMode.EVERYBODY || (
|
||||||
sharingMode == PhoneNumberSharingMode.CONTACTS
|
sharingMode == PhoneNumberSharingMode.CONTACTS
|
||||||
&& account.getContactStore().getContact(recipientId) != null
|
&& account.getContactStore().getContact(recipientId) != null
|
||||||
)) {
|
)) {
|
||||||
|
@ -16,7 +16,6 @@ import org.whispersystems.signalservice.api.storage.SignalStorageRecord;
|
|||||||
import org.whispersystems.signalservice.api.util.UuidUtil;
|
import org.whispersystems.signalservice.api.util.UuidUtil;
|
||||||
import org.whispersystems.signalservice.internal.storage.protos.AccountRecord;
|
import org.whispersystems.signalservice.internal.storage.protos.AccountRecord;
|
||||||
import org.whispersystems.signalservice.internal.storage.protos.AccountRecord.UsernameLink;
|
import org.whispersystems.signalservice.internal.storage.protos.AccountRecord.UsernameLink;
|
||||||
import org.whispersystems.signalservice.internal.storage.protos.ContactRecord;
|
|
||||||
import org.whispersystems.signalservice.internal.storage.protos.ContactRecord.IdentityState;
|
import org.whispersystems.signalservice.internal.storage.protos.ContactRecord.IdentityState;
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
@ -38,7 +37,8 @@ public final class StorageSyncModels {
|
|||||||
public static PhoneNumberSharingMode remoteToLocal(AccountRecord.PhoneNumberSharingMode phoneNumberPhoneNumberSharingMode) {
|
public static PhoneNumberSharingMode remoteToLocal(AccountRecord.PhoneNumberSharingMode phoneNumberPhoneNumberSharingMode) {
|
||||||
return switch (phoneNumberPhoneNumberSharingMode) {
|
return switch (phoneNumberPhoneNumberSharingMode) {
|
||||||
case EVERYBODY -> PhoneNumberSharingMode.EVERYBODY;
|
case EVERYBODY -> PhoneNumberSharingMode.EVERYBODY;
|
||||||
case UNKNOWN, NOBODY -> PhoneNumberSharingMode.NOBODY;
|
case NOBODY -> PhoneNumberSharingMode.NOBODY;
|
||||||
|
case UNKNOWN -> null;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -63,8 +63,9 @@ public final class StorageSyncModels {
|
|||||||
.orElse(true))
|
.orElse(true))
|
||||||
.setLinkPreviewsEnabled(Optional.ofNullable(configStore.getLinkPreviews()).orElse(true))
|
.setLinkPreviewsEnabled(Optional.ofNullable(configStore.getLinkPreviews()).orElse(true))
|
||||||
.setUnlistedPhoneNumber(Optional.ofNullable(configStore.getPhoneNumberUnlisted()).orElse(false))
|
.setUnlistedPhoneNumber(Optional.ofNullable(configStore.getPhoneNumberUnlisted()).orElse(false))
|
||||||
.setPhoneNumberSharingMode(localToRemote(Optional.ofNullable(configStore.getPhoneNumberSharingMode())
|
.setPhoneNumberSharingMode(Optional.ofNullable(configStore.getPhoneNumberSharingMode())
|
||||||
.orElse(PhoneNumberSharingMode.EVERYBODY)))
|
.map(StorageSyncModels::localToRemote)
|
||||||
|
.orElse(AccountRecord.PhoneNumberSharingMode.UNKNOWN))
|
||||||
.setE164(self.getAddress().number().orElse(""))
|
.setE164(self.getAddress().number().orElse(""))
|
||||||
.setUsername(self.getAddress().username().orElse(null));
|
.setUsername(self.getAddress().username().orElse(null));
|
||||||
if (usernameLinkComponents != null) {
|
if (usernameLinkComponents != null) {
|
||||||
@ -136,7 +137,7 @@ public final class StorageSyncModels {
|
|||||||
return SignalStorageRecord.forGroupV2(builder.build());
|
return SignalStorageRecord.forGroupV2(builder.build());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static TrustLevel remoteToLocal(ContactRecord.IdentityState identityState) {
|
public static TrustLevel remoteToLocal(IdentityState identityState) {
|
||||||
return switch (identityState) {
|
return switch (identityState) {
|
||||||
case DEFAULT -> TrustLevel.TRUSTED_UNVERIFIED;
|
case DEFAULT -> TrustLevel.TRUSTED_UNVERIFIED;
|
||||||
case UNVERIFIED -> TrustLevel.UNTRUSTED;
|
case UNVERIFIED -> TrustLevel.UNTRUSTED;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user