mirror of
https://github.com/Instadapp/aave-protocol-v2.git
synced 2024-07-29 21:47:30 +00:00
Merge branch 'fix/133' into 'master'
Resolve "Add validation on UserConfiguration that the reserveIndex is < 128" Closes #133 See merge request aave-tech/protocol-v2!151
This commit is contained in:
commit
74ab2fd126
|
@ -1,6 +1,7 @@
|
|||
// SPDX-License-Identifier: agpl-3.0
|
||||
pragma solidity ^0.6.8;
|
||||
|
||||
import {Errors} from '../helpers/Errors.sol';
|
||||
/**
|
||||
* @title UserConfiguration library
|
||||
* @author Aave
|
||||
|
@ -24,6 +25,7 @@ library UserConfiguration {
|
|||
uint256 reserveIndex,
|
||||
bool borrowing
|
||||
) internal {
|
||||
require(reserveIndex < 128, Errors.UL_INVALID_INDEX);
|
||||
self.data =
|
||||
(self.data & ~(1 << (reserveIndex * 2))) |
|
||||
(uint256(borrowing ? 1 : 0) << (reserveIndex * 2));
|
||||
|
@ -40,6 +42,7 @@ library UserConfiguration {
|
|||
uint256 reserveIndex,
|
||||
bool _usingAsCollateral
|
||||
) internal {
|
||||
require(reserveIndex < 128, Errors.UL_INVALID_INDEX);
|
||||
self.data =
|
||||
(self.data & ~(1 << (reserveIndex * 2 + 1))) |
|
||||
(uint256(_usingAsCollateral ? 1 : 0) << (reserveIndex * 2 + 1));
|
||||
|
@ -56,6 +59,7 @@ library UserConfiguration {
|
|||
pure
|
||||
returns (bool)
|
||||
{
|
||||
require(reserveIndex < 128, Errors.UL_INVALID_INDEX);
|
||||
return (self.data >> (reserveIndex * 2)) & 3 != 0;
|
||||
}
|
||||
|
||||
|
@ -70,6 +74,7 @@ library UserConfiguration {
|
|||
pure
|
||||
returns (bool)
|
||||
{
|
||||
require(reserveIndex < 128, Errors.UL_INVALID_INDEX);
|
||||
return (self.data >> (reserveIndex * 2)) & 1 != 0;
|
||||
}
|
||||
|
||||
|
@ -84,6 +89,7 @@ library UserConfiguration {
|
|||
pure
|
||||
returns (bool)
|
||||
{
|
||||
require(reserveIndex < 128, Errors.UL_INVALID_INDEX);
|
||||
return (self.data >> (reserveIndex * 2 + 1)) & 1 != 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -96,6 +96,7 @@ library Errors {
|
|||
string public constant LPAPR_INVALID_ADDRESSES_PROVIDER_ID = '72';
|
||||
string public constant VL_INCONSISTENT_FLASHLOAN_PARAMS = '73';
|
||||
string public constant LP_INCONSISTENT_PARAMS_LENGTH = '74';
|
||||
string public constant UL_INVALID_INDEX = '77';
|
||||
|
||||
enum CollateralManagerErrors {
|
||||
NO_ERROR,
|
||||
|
|
Loading…
Reference in New Issue
Block a user