From 24e3ae84f132a54fc1f43c1fd1d6ea45863107ba Mon Sep 17 00:00:00 2001 From: Ricardo Guilherme Schmidt <3esmit@gmail.com> Date: Thu, 3 Aug 2017 04:50:22 -0300 Subject: [PATCH] added to clj --- contracts/enhanced-multisig.sol | 9 ++++----- resources/contracts/wallet.data | 2 +- src/clj/commiteth/eth/core.clj | 3 ++- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/contracts/enhanced-multisig.sol b/contracts/enhanced-multisig.sol index 7da84b1..df1981b 100644 --- a/contracts/enhanced-multisig.sol +++ b/contracts/enhanced-multisig.sol @@ -11,9 +11,9 @@ contract ERC20 { event Approval(address indexed owner, address indexed spender, uint256 value); } -contract MultiSigLibrary { +contract MultiSigTokenWallet { - address constant _walletLibrary = 0xcafecafecafecafecafecafecafecafecafecafe; + address constant _walletLibrary = 0x0; uint constant public MAX_OWNER_COUNT = 50; event Confirmation(address indexed _sender, uint indexed _transactionId); @@ -109,7 +109,7 @@ contract MultiSigLibrary { /// @dev Contract constructor sets initial owners and required number of confirmations. /// @param _owners List of initial owners. /// @param _required Number of required confirmations. - function MultiSigLibrary(address[] _owners, uint _required) + function MultiSigTokenWallet(address[] _owners, uint _required) public validRequirement(_owners.length, _required) { @@ -539,7 +539,7 @@ contract MultiSigLibrary { contract EnhancedMultiSig { - address constant _walletLibrary = 0xcafecafecafecafecafecafecafecafecafecafe; + address constant _walletLibrary = 0xf5f6853e0ebA27074A804358eEdF4E89eFaebc98; uint constant public MAX_OWNER_COUNT = 50; event Confirmation(address indexed _sender, uint indexed _transactionId); @@ -700,4 +700,3 @@ contract EnhancedMultiSig { } } - \ No newline at end of file diff --git a/resources/contracts/wallet.data b/resources/contracts/wallet.data index 3329fb8..fca12fc 100644 --- a/resources/contracts/wallet.data +++ b/resources/contracts/wallet.data @@ -1 +1 @@ -0x6060604052341561000c57fe5b60405161048538038061048583398101604090815281516020830151918301519201915b604080517f696e697457616c6c657428616464726573735b5d2c75696e743235362c75696e81527f7432353629000000000000000000000000000000000000000000000000000000602080830191909152915190819003602501902084516000829052909173863df6bfa4469f3ead0be8f9f2aae51c91a907b491600281019160049182010290819038829003903960006000600483016000866127105a03f45b505050505050505b61039d806100e86000396000f300606060405236156100725763ffffffff60e060020a6000350416632f54bf6e811461012d5780634123cb6b1461015d578063523750931461017f578063659010e7146101a1578063746c9171146101c3578063c2cf7326146101e5578063c41a360a14610218578063f1736d8614610247575b61012b5b60003411156100c75760408051600160a060020a033316815234602082015281517fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c929181900390910190a1610127565b60003611156101275773863df6bfa4469f3ead0be8f9f2aae51c91a907b4600160a060020a0316600036600060405160200152604051808383808284378201915050925050506020604051808303818560325a03f4151561012457fe5b50505b5b5b565b005b341561013557fe5b610149600160a060020a0360043516610269565b604080519115158252519081900360200190f35b341561016557fe5b61016d6102cd565b60408051918252519081900360200190f35b341561018757fe5b61016d6102d3565b60408051918252519081900360200190f35b34156101a957fe5b61016d6102d9565b60408051918252519081900360200190f35b34156101cb57fe5b61016d6102df565b60408051918252519081900360200190f35b34156101ed57fe5b610149600435600160a060020a03602435166102e5565b604080519115158252519081900360200190f35b341561022057fe5b61022b60043561034a565b60408051600160a060020a039092168252519081900360200190f35b341561024f57fe5b61016d61036b565b60408051918252519081900360200190f35b600073863df6bfa4469f3ead0be8f9f2aae51c91a907b4600160a060020a0316600036600060405160200152604051808383808284378201915050925050506020604051808303818560325a03f415156102bf57fe5b50506040515190505b919050565b60015481565b60045481565b60035481565b60005481565b600073863df6bfa4469f3ead0be8f9f2aae51c91a907b4600160a060020a0316600036600060405160200152604051808383808284378201915050925050506020604051808303818560325a03f4151561033b57fe5b50506040515190505b92915050565b6000600560018301610100811061035d57fe5b0160005b505490505b919050565b600254815600a165627a7a72305820c20a8475c42598c198f6629bada37e1b234da85ac2c0cbac3d96089030b1804000290000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +0x606060405234156200001057600080fd5b60405162000d5938038062000d59833981016040528080518201919060200180519150505b6000808083116200004557600080fd5b8351915060328211156200005857600080fd5b828210156200006657600080fd5b5060005b818110156200013257600260008583815181106200008457fe5b90602001906020020151600160a060020a0316815260208101919091526040016000205460ff16158015620000d75750838181518110620000c157fe5b90602001906020020151600160a060020a031615155b1515620000e357600080fd5b600160026000868481518110620000f657fe5b90602001906020020151600160a060020a031681526020810191909152604001600020805460ff19169115159190911790555b6001016200006a565b60038480516200014792916020019062000158565b5060048390555b50505050620001f3565b828054828255906000526020600020908101928215620001b2579160200282015b82811115620001b25782518254600160a060020a031916600160a060020a03919091161782556020929092019160019091019062000179565b5b50620001c1929150620001c5565b5090565b620001f091905b80821115620001c1578054600160a060020a0319168155600101620001cc565b5090565b90565b610b5680620002036000396000f300606060405236156100e35763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663025e7c27811461013e5780632f54bf6e146101705780633411c81c146101a35780634f64b2be146101d9578063523fba7f1461020b578063547415251461023c578063784547a71461026b5780638b51d13f146102955780639ace38c2146102bd578063a0e67e2b1461037c578063a8abe69a146103e3578063add2c5cc1461045a578063b5dc40c31461048d578063b77bf600146104f7578063d74f8edd1461051c578063dc8452cd14610541575b5b73f5f6853e0eba27074a804358eedf4e89efaebc98600036816040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f4151561013257600080fd5b5050604051805150505b005b341561014957600080fd5b610154600435610566565b604051600160a060020a03909116815260200160405180910390f35b341561017b57600080fd5b61018f600160a060020a0360043516610598565b604051901515815260200160405180910390f35b34156101ae57600080fd5b61018f600435600160a060020a03602435166105ad565b604051901515815260200160405180910390f35b34156101e457600080fd5b6101546004356105cd565b604051600160a060020a03909116815260200160405180910390f35b341561021657600080fd5b61022a600160a060020a03600435166105ff565b60405190815260200160405180910390f35b341561024757600080fd5b61022a60043515156024351515610611565b60405190815260200160405180910390f35b341561027657600080fd5b61018f600435610680565b604051901515815260200160405180910390f35b34156102a057600080fd5b61022a600435610714565b60405190815260200160405180910390f35b34156102c857600080fd5b6102d3600435610793565b604051600160a060020a03851681526020810184905281151560608201526080604082018181528454600260001961010060018416150201909116049183018290529060a08301908590801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b50509550505050505060405180910390f35b341561038757600080fd5b61038f6107c7565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103cf5780820151818401525b6020016103b6565b505050509050019250505060405180910390f35b34156103ee57600080fd5b61038f60043560243560443515156064351515610830565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103cf5780820151818401525b6020016103b6565b505050509050019250505060405180910390f35b341561046557600080fd5b61018f600160a060020a036004351661095e565b604051901515815260200160405180910390f35b341561049857600080fd5b61038f600435610973565b60405160208082528190810183818151815260200191508051906020019060200280838360005b838110156103cf5780820151818401525b6020016103b6565b505050509050019250505060405180910390f35b341561050257600080fd5b61022a610af5565b60405190815260200160405180910390f35b341561052757600080fd5b61022a610afb565b60405190815260200160405180910390f35b341561054c57600080fd5b61022a610b00565b60405190815260200160405180910390f35b600380548290811061057457fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b60026020526000908152604090205460ff1681565b600160209081526000928352604080842090915290825290205460ff1681565b600880548290811061057457fe5b906000526020600020900160005b915054906101000a9004600160a060020a031681565b60066020526000908152604090205481565b6000805b6005548110156106785783801561063e575060008181526020819052604090206003015460ff16155b806106625750828015610662575060008181526020819052604090206003015460ff165b5b1561066f576001820191505b5b600101610615565b5b5092915050565b600080805b60035481101561070c57600084815260016020526040812060038054919291849081106106ae57fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff16156106f0576001820191505b600454821415610703576001925061070c565b5b600101610685565b5b5050919050565b6000805b60035481101561078c576000838152600160205260408120600380549192918490811061074157fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff1615610783576001820191505b5b600101610718565b5b50919050565b6000602081905290815260409020805460018201546003830154600160a060020a0390921692909160029091019060ff1684565b6107cf610b06565b600380548060200260200160405190810160405280929190818152602001828054801561082557602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610807575b505050505090505b90565b610838610b06565b610840610b06565b6000806005546040518059106108535750595b908082528060200260200182016040525b50925060009150600090505b6005548110156108eb57858015610899575060008181526020819052604090206003015460ff16155b806108bd57508480156108bd575060008181526020819052604090206003015460ff165b5b156108e257808383815181106108d057fe5b60209081029091010152600191909101905b5b600101610870565b8787036040518059106108fb5750595b908082528060200260200182016040525b5093508790505b868110156109525782818151811061092757fe5b90602001906020020151848983038151811061093f57fe5b602090810290910101525b600101610913565b5b505050949350505050565b60076020526000908152604090205460ff1681565b61097b610b06565b610983610b06565b60035460009081906040518059106109985750595b908082528060200260200182016040525b50925060009150600090505b600354811015610a7b57600085815260016020526040812060038054919291849081106109de57fe5b906000526020600020900160005b9054600160a060020a036101009290920a900416815260208101919091526040016000205460ff1615610a72576003805482908110610a2757fe5b906000526020600020900160005b9054906101000a9004600160a060020a0316838381518110610a5357fe5b600160a060020a03909216602092830290910190910152600191909101905b5b6001016109b5565b81604051805910610a895750595b908082528060200260200182016040525b509350600090505b81811015610aec57828181518110610ab657fe5b90602001906020020151848281518110610acc57fe5b600160a060020a039092166020928302909101909101525b600101610aa2565b5b505050919050565b60055481565b603281565b60045481565b60206040519081016040526000815290565b602060405190810160405260008152905600a165627a7a723058207d9d3f76961e4749c98ecb2cbf1de9ef5bbd27b040625b73dc9454d14908f7df0029000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002 \ No newline at end of file diff --git a/src/clj/commiteth/eth/core.clj b/src/clj/commiteth/eth/core.clj index 2209768..1c8576a 100644 --- a/src/clj/commiteth/eth/core.clj +++ b/src/clj/commiteth/eth/core.clj @@ -96,8 +96,9 @@ (defn deploy-contract [owner] (let [contract-code (-> "contracts/wallet.data" io/resource slurp) + owner1 (format-param (eth-account)) owner2 (format-param owner) - data (str contract-code owner2) + data (str contract-code owner1 owner2) value (format "0x%x" 0)] (send-transaction (eth-account) nil value {:gas "0x80000" :data data})))