diff --git a/contracts/contract/rewards/RocketMerkleDistributorMainnet.sol b/contracts/contract/rewards/RocketMerkleDistributorMainnet.sol index 88d2aefb..cf7de6a0 100644 --- a/contracts/contract/rewards/RocketMerkleDistributorMainnet.sol +++ b/contracts/contract/rewards/RocketMerkleDistributorMainnet.sol @@ -83,7 +83,8 @@ contract RocketMerkleDistributorMainnet is RocketBase, RocketRewardsRelayInterfa require(msg.sender == rplWithdrawalAddress, "Can only claim from RPL withdrawal address"); } else { // Otherwise, must be called from node address or withdrawal address - require(msg.sender == _nodeAddress || msg.sender == withdrawalAddress, "Can only claim from node address"); + address senderWithdrawalAddress = rocketStorage.getNodeWithdrawalAddress(msg.sender); + require(msg.sender == _nodeAddress || msg.sender == withdrawalAddress || senderWithdrawalAddress == _nodeAddress, "Can only claim from node address"); } }