function consult(address)
is a public view function.
It utilized return values from the internal function calls in _chainlinkIsFrozen()
and _chainlinkIsBroken()
_chainlinkIsFrozen()
depends on the mapping maxDelays[token];
_chainlinkIsBroken()
depends on the function _badPriceDeviation()
which in turn depends on the mapping maxDeviations[token];
These mappings are set by the functions addTokenMaxDelay()
and addTokenMaxDeviation()
respectively.
Unfortunately, these functions aren't set at construction time hence a transit time vulnerability is created and reflect on behavior of function consult()
which is a public view function.
This behavior during this transit time is not supposed.
Function consult handles when feed map hasn't been set.
But doesn't handle when maxDelays[token];
and maxDeviations[token];
are still default
The view function would misbehave (return inacurate value or revert unsupposedly)
Manual review
The implementations contained in the following functions should be called also at construction as initialization
function addTokenMaxDelay()
function addTokenMaxDeviation()
function addTokenPriceFeed()
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.