Skip to content
This repository has been archived by the owner on Mar 30, 2021. It is now read-only.

PR679 + Audit Issue 8 #32

Merged
merged 1 commit into from
Jan 27, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions chapters/asset.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
# Assets

Assets are the underlying constituent members of a water<b>melon</b> Fund. Assets are exclusively Tokens on the Ethereum blockchain implementing the ERC20 or ERC223 standard token interfaces.

Token assets are the underlying constituent members of a water<b>melon</b> Fund. These token assets are exclusively Ethereum blockchain tokens implementing the ERC20 standard token interface.

## Asset Eligibility
Expand Down
10 changes: 6 additions & 4 deletions chapters/exchanges.md
Original file line number Diff line number Diff line change
Expand Up @@ -505,10 +505,12 @@ onlyManager notShutDown`

Please see parameter descriptions above. In the context of the Kyber exchange contract's nomenclature (swapToken() function), the following parameters take the specified mappings:

`orderAddresses[2]` - The Src token address.
`orderAddresses[3]` - The Dest token address.
`orderValues[0]` - The Src token quantity.
`orderValues[0]` - The Dest token quantity.
`orderAddresses[2]` - The Src (maker asset) token address.
`orderAddresses[3]` - The Dest (taker asset) token address.
`orderValues[0]` - The Src (maker asset) token quantity.
`orderValues[0]` - The Dest (taker asset) token quantity.

It should be noted that the Kyber adapter only publicly exposes the `takeOrder()` function. As an order `taker`, the maker/taker perspective is inverted.

This public function must ensure that:

Expand Down
34 changes: 17 additions & 17 deletions chapters/factory.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ The contract is a base contract which defines base elements below. It is inherit

#### Inherits from

None.
None.
&nbsp;

#### On Construction
Expand Down Expand Up @@ -241,51 +241,51 @@ This public function takes the following parameters and initiates the set up pro
&nbsp;

`function createAccounting()
componentNotSet(managersToRoutes[msg.sender].accounting) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].accounting) amguPayable(0) payable`

This public function creates the Accounting spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the Accounting spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createFeeManager()
componentNotSet(managersToRoutes[msg.sender].feeManager) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].feeManager) amguPayable(0) payable`

This public function creates the FeeManager spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the FeeManager spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createParticipation()
componentNotSet(managersToRoutes[msg.sender].participation) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].participation) amguPayable(0) payable`

This public function creates the Participation spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). TThe function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the Participation spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). TThe function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createPolicyManager()
componentNotSet(managersToRoutes[msg.sender].policyManager) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].policyManager) amguPayable(0) payable`

This public function creates the PolicyManager spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the PolicyManager spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createShares()
componentNotSet(managersToRoutes[msg.sender].shares) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].shares) amguPayable(0) payable`

This public function creates the Shares spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the Shares spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createTrading()
componentNotSet(managersToRoutes[msg.sender].trading) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].trading) amguPayable(0) payable`

This public function creates the Trading spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the Trading spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function createVault()
componentNotSet(managersToRoutes[msg.sender].vault) amguPayable payable`
componentNotSet(managersToRoutes[msg.sender].vault) amguPayable(0) payable`

This public function creates the Vault spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function creates the Vault spoke of a water<b>melon</b> fund and adds the resulting contract address to the `managersToRoutes` mapping, mapped to the `msg.sender` (manager). The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function completeSetup()
amguPayable payable`
amguPayable(0) payable`

This public function completes the set up of a water<b>melon</b> fund. The function ensure the `childExists` mapping does not contain the `hub` address, then adds the `hub` address. The function then sets all of the `hub`'s spokes, routing, permissions and then adds the `hub` address to the `funds` state variable address array. The new water<b>melon</b> fund is then registered with the Version Registry. The function finally emits the `NewFund()` event, logging all parameter values as specified above. The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment.
This public function completes the set up of a water<b>melon</b> fund. The function ensure the `childExists` mapping does not contain the `hub` address, then adds the `hub` address. The function then sets all of the `hub`'s spokes, routing, permissions and then adds the `hub` address to the `funds` state variable address array. The new water<b>melon</b> fund is then registered with the Version Registry. The function finally emits the `NewFund()` event, logging all parameter values as specified above. The function implements the `componentNotSet()` modifier ensuring its one-time execution in the water<b>melon</b> fund setup process. The function is `payable` and also implements the `amguPayable` modifier, requiring amgu payment. Here, the `deductFromRefund` parameter is set to `0`.
&nbsp;

`function getFundById(uint withId) public view returns (address)`
Expand Down
Loading