1/3 So storage slots for reentrancy locks on curve contracts (add liquidity, remove liquidity) are separate, making a reentrancy “attack” possible. This should really only affect external protocols that deposit/withdraw liquidity within the same tx, allowing for incorrect
2/3 lp token balances to be called.
It’s odd-ish to me that raw eth is handled, even in curve contracts as *this may be slightly incorrect: when eth is transferred within a tx, it can restart the calling of a contract, allowing an attacker to “skip” certain functions within a