diff options
author | Greg Hysen <greg.hysen@gmail.com> | 2018-12-04 09:02:58 +0800 |
---|---|---|
committer | Greg Hysen <greg.hysen@gmail.com> | 2018-12-19 05:36:05 +0800 |
commit | 8007ef6c0b08ce7d2394323f000df7baeb254ebf (patch) | |
tree | 5ab3a03db1347608c6ff5e8c3fece99418777892 /packages | |
parent | a332c5e5c2ff11a7d4bd534f694d7859483a33f0 (diff) | |
download | dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar.gz dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar.bz2 dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar.lz dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar.xz dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.tar.zst dexon-sol-tools-8007ef6c0b08ce7d2394323f000df7baeb254ebf.zip |
cleaning I
Diffstat (limited to 'packages')
-rw-r--r-- | packages/contracts/contracts/extensions/CompliantForwarder/CompliantForwarder.sol | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/packages/contracts/contracts/extensions/CompliantForwarder/CompliantForwarder.sol b/packages/contracts/contracts/extensions/CompliantForwarder/CompliantForwarder.sol index ee32b135e..0c596dfc2 100644 --- a/packages/contracts/contracts/extensions/CompliantForwarder/CompliantForwarder.sol +++ b/packages/contracts/contracts/extensions/CompliantForwarder/CompliantForwarder.sol @@ -117,6 +117,22 @@ contract CompliantForwarder is ExchangeSelectors{ } } + function exchangeCalldataload(offset) -> value { + value := calldataload(toExchangeCalldataOffset(offset, 0)) + } + + + function appendMakerAddressesFromOrderSet2(orderSetParamIndex) -> one { + let orderSetPtr := exchangeCalldataload(0) + let orderSetLength := exchangeCalldataload(orderSetPtr) + + for {let orderPtrOffset := add(0x20, orderSetPtr)} lt(orderPtrOffset, add(0x20, add(orderSetPtr, mul(0x20, orderSetLength)))) {orderPtrOffset := add(0x20, orderPtrOffset)} { + let orderPtr := exchangeCalldataload(orderPtrOffset) + let makerAddress := exchangeCalldataload(add(orderSetPtr, add(0x20, orderPtr))) + addAddressToValidate(makerAddress) + } + } + /* function appendMakerAddressFromOrderSet(paramIndex) { let exchangeTxPtr := calldataload(0x44) @@ -137,7 +153,7 @@ contract CompliantForwarder is ExchangeSelectors{ switch selector case 0x297bb70b00000000000000000000000000000000000000000000000000000000 /* batchFillOrders */ { - one := appendMakerAddressesFromOrderSet(0) + one := appendMakerAddressesFromOrderSet2(0) } case 0x3c28d86100000000000000000000000000000000000000000000000000000000 /* matchOrders */ { |