code-423n4 / 2021-06-pooltogether-findings

0 stars 0 forks source link

SushiYieldSource save gas with pre-approval #94

Open code423n4 opened 3 years ago

code423n4 commented 3 years ago

Handle

cmichel

Vulnerability details

SushiYieldSource should approve the SushiBar once during initialization with the max value. This saves gas on every supplyTokenTo call as the approval can be removed from there.

asselstine commented 3 years ago

We considered this, but it's possible for a malicious user to "drain" the approval of the contract, so there would need to be checks to see if approval dropped below a certain level. We opted to leave out the complexity.

asselstine commented 3 years ago

Actually, we'll tackle this. We will:

  1. approve max on init
  2. provide a function to approve max again