|
|
@ -68,7 +68,7 @@ abstract contract MultisigValidatorManager is Ownable { |
|
|
|
) Ownable() { |
|
|
|
) Ownable() { |
|
|
|
// Set immutables. |
|
|
|
// Set immutables. |
|
|
|
outboxDomain = _outboxDomain; |
|
|
|
outboxDomain = _outboxDomain; |
|
|
|
outboxDomainHash = domainHash(_outboxDomain); |
|
|
|
outboxDomainHash = _domainHash(_outboxDomain); |
|
|
|
|
|
|
|
|
|
|
|
// Enroll validators. Reverts if there are any duplicates. |
|
|
|
// Enroll validators. Reverts if there are any duplicates. |
|
|
|
uint256 _validatorSetLength = _validatorSet.length; |
|
|
|
uint256 _validatorSetLength = _validatorSet.length; |
|
|
@ -169,14 +169,6 @@ abstract contract MultisigValidatorManager is Ownable { |
|
|
|
return _validatorSignatureCount >= quorumThreshold; |
|
|
|
return _validatorSignatureCount >= quorumThreshold; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* @notice Hash of domain concatenated with "ABACUS". |
|
|
|
|
|
|
|
* @param _domain The domain to hash. |
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
function domainHash(uint32 _domain) public pure returns (bytes32) { |
|
|
|
|
|
|
|
return keccak256(abi.encodePacked(_domain, "ABACUS")); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ============ Internal Functions ============ |
|
|
|
// ============ Internal Functions ============ |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
@ -236,4 +228,12 @@ abstract contract MultisigValidatorManager is Ownable { |
|
|
|
quorumThreshold = _quorumThreshold; |
|
|
|
quorumThreshold = _quorumThreshold; |
|
|
|
emit SetQuorumThreshold(_quorumThreshold); |
|
|
|
emit SetQuorumThreshold(_quorumThreshold); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
|
|
|
* @notice Hash of domain concatenated with "ABACUS". |
|
|
|
|
|
|
|
* @param _domain The domain to hash. |
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
function _domainHash(uint32 _domain) internal pure returns (bytes32) { |
|
|
|
|
|
|
|
return keccak256(abi.encodePacked(_domain, "ABACUS")); |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|