forked from Qortal/qortal
Apply the address blacklist to chat transactions.
This is based on code originally written by @DrewMPeacock
This commit is contained in:
parent
24f1fb566d
commit
b29ae67501
@ -11,6 +11,7 @@ import org.qortal.crypto.MemoryPoW;
|
|||||||
import org.qortal.data.transaction.ChatTransactionData;
|
import org.qortal.data.transaction.ChatTransactionData;
|
||||||
import org.qortal.data.transaction.TransactionData;
|
import org.qortal.data.transaction.TransactionData;
|
||||||
import org.qortal.group.Group;
|
import org.qortal.group.Group;
|
||||||
|
import org.qortal.list.ResourceListManager;
|
||||||
import org.qortal.repository.DataException;
|
import org.qortal.repository.DataException;
|
||||||
import org.qortal.repository.GroupRepository;
|
import org.qortal.repository.GroupRepository;
|
||||||
import org.qortal.repository.Repository;
|
import org.qortal.repository.Repository;
|
||||||
@ -138,6 +139,12 @@ public class ChatTransaction extends Transaction {
|
|||||||
public ValidationResult isValid() throws DataException {
|
public ValidationResult isValid() throws DataException {
|
||||||
// Nonce checking is done via isSignatureValid() as that method is only called once per import
|
// Nonce checking is done via isSignatureValid() as that method is only called once per import
|
||||||
|
|
||||||
|
// Check for blacklisted author by address
|
||||||
|
ResourceListManager listManager = ResourceListManager.getInstance();
|
||||||
|
if (listManager.isAddressInBlacklist(this.chatTransactionData.getSender())) {
|
||||||
|
return ValidationResult.ADDRESS_IN_BLACKLIST;
|
||||||
|
}
|
||||||
|
|
||||||
// If we exist in the repository then we've been imported as unconfirmed,
|
// If we exist in the repository then we've been imported as unconfirmed,
|
||||||
// but we don't want to make it into a block, so return fake non-OK result.
|
// but we don't want to make it into a block, so return fake non-OK result.
|
||||||
if (this.repository.getTransactionRepository().exists(this.chatTransactionData.getSignature()))
|
if (this.repository.getTransactionRepository().exists(this.chatTransactionData.getSignature()))
|
||||||
|
@ -247,6 +247,7 @@ public abstract class Transaction {
|
|||||||
INVALID_GROUP_BLOCK_DELAY(93),
|
INVALID_GROUP_BLOCK_DELAY(93),
|
||||||
INCORRECT_NONCE(94),
|
INCORRECT_NONCE(94),
|
||||||
INVALID_TIMESTAMP_SIGNATURE(95),
|
INVALID_TIMESTAMP_SIGNATURE(95),
|
||||||
|
ADDRESS_IN_BLACKLIST(96),
|
||||||
INVALID_BUT_OK(999),
|
INVALID_BUT_OK(999),
|
||||||
NOT_YET_RELEASED(1000);
|
NOT_YET_RELEASED(1000);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user