#41689 [SC-Insight] Blacklisting a Kodiak vault unintentionally whitelists a previously blacklisted token
Description
function updateSwappableTokens(address token, bool isWhitelisted) external override onlyOwner {
_updateWhitelistedTokens(token, isWhitelisted);
}
function _updateWhitelistedTokens(address token, bool isWhitelisted) private {
require(token != address(0), "Zapper: token is zero address");
whitelistedTokens[token] = isWhitelisted;
emit TokenWhitelisted(token, isWhitelisted);
}
function updateWhitelistedKodiakVault(address vault, bool isEnabled) external override onlyOwner {
... // other code
whitelistedKodiakVaults[vault] = isEnabled;
... // other code
if (!whitelistedTokens[token0]) {
_updateWhitelistedTokens(token0, true);
}
if (!whitelistedTokens[token1]) {
_updateWhitelistedTokens(token1, true);
}
}
```Proof of Concept
Previous#41682 [SC-Insight] Code can be optimized to use save a lot of gas.Next#41688 [SC-Insight] Code can be optimized to to save a significant amount of gas.
Was this helpful?