core: Don't add old filter to invalid filters if new signer banned

Before this change, the currentFilter will be added to the
invalidFilters list after comparing both filters creation date and
before checking whether the new filter was created by a banned signer.

Note: The invalid filters list is only used on the security manager Bisq
instances. This list is never read by regular user clients.
This commit is contained in:
Alva Swanson 2023-12-28 15:00:21 +01:00
parent 78ac425414
commit d6aa5b16f6
No known key found for this signature in database
GPG key ID: 004760E77F753090

View file

@ -60,7 +60,6 @@ import java.math.BigInteger;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection; import java.util.Collection;
import java.util.Collections;
import java.util.Date; import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
@ -547,16 +546,17 @@ public class FilterManager {
addToInvalidFilters(newFilter); addToInvalidFilters(newFilter);
return; return;
} else {
log.info("We received a new filter from the network and the creation date is newer than the " +
"filter we have already. We ignore the old filter.");
addToInvalidFilters(currentFilter);
} }
if (isPrivilegedDevPubKeyBanned(newFilter.getSignerPubKeyAsHex())) { if (isPrivilegedDevPubKeyBanned(newFilter.getSignerPubKeyAsHex())) {
log.warn("Pub key of filter is banned. currentFilter={}, newFilter={}", currentFilter, newFilter); log.warn("Pub key of filter is banned. currentFilter={}, newFilter={}", currentFilter, newFilter);
return; return;
} else {
log.info("We received a new filter with a newer creation date and the signer is not banned. " +
"We ignore the old filter.");
addToInvalidFilters(currentFilter);
} }
} }
// Our new filter is newer so we apply it. // Our new filter is newer so we apply it.