Remove fundingTimeout distinction
provideFundingECDSAFraudProof should always transfer signer bond to funder.
This avoids some signer griefing vectors while simplifying the logic
@@ -161,20 +161,11 @@ library DepositFunding {
bool _isFraud = _d.submitSignatureFraud(_v, _r, _s, _signedDigest, _preimage);
require(_isFraud, "Signature is not fraudulent");
_d.logFraudDuringSetup();
-
- // If the funding timeout has elapsed, punish the funder too!
- if (block.timestamp > _d.fundingProofTimerStart.add(TBTCConstants.getFundingTimeout())) {
- uint256 _seized = _d.seizeSignerBonds();
- address(0).transfer(_seized);
- _d.setFailedSetup();
- _d.logSetupFailed();
- } else {
distributeSignerBondsToFunder(_d);
fundingFraudTeardown(_d);
_d.setFailedSetup();
_d.logSetupFailed();
}
- }
/// @notice Anyone may notify the deposit of a funding proof to activate the deposit.
/// This is the happy-path of the funding flow. It means that we have succeeded.
