diff --git a/packages/protocol/contracts/bridge/Bridge.sol b/packages/protocol/contracts/bridge/Bridge.sol index 86b2d7a584..5d515579ee 100644 --- a/packages/protocol/contracts/bridge/Bridge.sol +++ b/packages/protocol/contracts/bridge/Bridge.sol @@ -49,7 +49,12 @@ contract Bridge is EssentialContract, IBridge { /// Allow Bridge to receive ETH from the TokenVault or EtherVault. receive() external payable { - // TODO(dave,PR#13110): require the sender is the TokenVault or EtherVault + require( + msg.sender == resolve("token_vault", true) || + msg.sender == resolve("ether_vault", true) || + msg.sender == owner(), + "B:receive" + ); } /// @dev Initializer to be called after being deployed behind a proxy.