diff options
author | Matt Wisniewski <contact.mattdylan@gmail.com> | 2017-04-20 02:12:45 +0800 |
---|---|---|
committer | chriseth <chris@ethereum.org> | 2017-05-03 18:03:02 +0800 |
commit | 2b4b86aa7f72d8f7c2c4e250953d8f9018f4fd53 (patch) | |
tree | 34b54c98a4e9f359479bbc5b73945b3c74884c98 /docs/security-considerations.rst | |
parent | 00933b99cc64a5af1e00ed4b119fc725ddbb3513 (diff) | |
download | dexon-solidity-2b4b86aa7f72d8f7c2c4e250953d8f9018f4fd53.tar.gz dexon-solidity-2b4b86aa7f72d8f7c2c4e250953d8f9018f4fd53.tar.zst dexon-solidity-2b4b86aa7f72d8f7c2c4e250953d8f9018f4fd53.zip |
Update common-patterns.rst
Diffstat (limited to 'docs/security-considerations.rst')
-rw-r--r-- | docs/security-considerations.rst | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/docs/security-considerations.rst b/docs/security-considerations.rst index 1e92afa7..f9ceed5d 100644 --- a/docs/security-considerations.rst +++ b/docs/security-considerations.rst @@ -79,7 +79,7 @@ outlined further below: :: - pragma solidity ^0.4.0; + pragma solidity ^0.4.11; contract Fund { /// Mapping of ether shares of the contract. @@ -88,8 +88,7 @@ outlined further below: function withdraw() { var share = shares[msg.sender]; shares[msg.sender] = 0; - if (!msg.sender.send(share)) - throw; + require(msg.sender.send(share)); } } @@ -162,7 +161,7 @@ Never use tx.origin for authorization. Let's say you have a wallet contract like :: - pragma solidity ^0.4.0; + pragma solidity ^0.4.11; // THIS CONTRACT CONTAINS A BUG - DO NOT USE contract TxUserWallet { @@ -173,8 +172,8 @@ Never use tx.origin for authorization. Let's say you have a wallet contract like } function transfer(address dest, uint amount) { - if (tx.origin != owner) { throw; } - if (!dest.call.value(amount)()) throw; + require(tx.origin == owner); + require(dest.call.value(amount)()); } } |