From 989701b05baa9d404e5f811cf8d67a7c43ad779f Mon Sep 17 00:00:00 2001 From: Paul-D-Ant Date: Mon, 17 Apr 2023 16:21:05 +0800 Subject: [PATCH] add opBorrowing support --- contracts/dex/cronos/CronosDexAggregatorV1.sol | 2 +- contracts/dex/eth/EthDexAggregatorV1.sol | 2 +- contracts/dex/kcc/KccDexAggregatorV1.sol | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/contracts/dex/cronos/CronosDexAggregatorV1.sol b/contracts/dex/cronos/CronosDexAggregatorV1.sol index f597f74..97a0d13 100755 --- a/contracts/dex/cronos/CronosDexAggregatorV1.sol +++ b/contracts/dex/cronos/CronosDexAggregatorV1.sol @@ -180,7 +180,7 @@ contract CronosDexAggregatorV1 is DelegateInterface, Adminable, DexAggregatorInt /// @param data dex parameters /// @return If updated function updatePriceOracle(address desToken, address quoteToken, uint32 timeWindow, bytes memory data) external override returns (bool){ - require(msg.sender == openLev, "Only openLev can update price"); + require(msg.sender == openLev || msg.sender == opBorrowing, "Only openLev can update price"); require(data.isUniV2Class(), "unsupported dex"); address pair = getUniClassPair(desToken, quoteToken, dexInfo[data.toDex()].factory); V2PriceOracle memory priceOracle = uniV2PriceOracle[IUniswapV2Pair(pair)]; diff --git a/contracts/dex/eth/EthDexAggregatorV1.sol b/contracts/dex/eth/EthDexAggregatorV1.sol index 2b26eee..f23e73f 100644 --- a/contracts/dex/eth/EthDexAggregatorV1.sol +++ b/contracts/dex/eth/EthDexAggregatorV1.sol @@ -235,7 +235,7 @@ contract EthDexAggregatorV1 is DelegateInterface, Adminable, DexAggregatorInterf /// @param data Dex parameters /// @return If updated function updatePriceOracle(address desToken, address quoteToken, uint32 timeWindow, bytes memory data) external override returns (bool){ - require(msg.sender == openLev, "Only openLev can update price"); + require(msg.sender == openLev || msg.sender == opBorrowing, "Only openLev can update price"); if (data.isUniV2Class()) { address pair = getUniV2ClassPair(desToken, quoteToken, dexInfo[data.toDex()].factory); V2PriceOracle memory priceOracle = uniV2PriceOracle[IUniswapV2Pair(pair)]; diff --git a/contracts/dex/kcc/KccDexAggregatorV1.sol b/contracts/dex/kcc/KccDexAggregatorV1.sol index 7443fc6..cb66c5c 100755 --- a/contracts/dex/kcc/KccDexAggregatorV1.sol +++ b/contracts/dex/kcc/KccDexAggregatorV1.sol @@ -182,7 +182,7 @@ contract KccDexAggregatorV1 is DelegateInterface, Adminable, DexAggregatorInterf /// @param data dex parameters /// @return If updated function updatePriceOracle(address desToken, address quoteToken, uint32 timeWindow, bytes memory data) external override returns (bool){ - require(msg.sender == openLev, "Only openLev can update price"); + require(msg.sender == openLev || msg.sender == opBorrowing, "Only openLev can update price"); require(data.isUniV2Class(), "unsupported dex"); address pair = getUniClassPair(desToken, quoteToken, dexInfo[data.toDex()].factory); V2PriceOracle memory priceOracle = uniV2PriceOracle[IUniswapV2Pair(pair)];