banner
Viiateni Ght

Viiateni Ght

Weird ERC20 Tokens

Missing Return Values#

Some tokens do not return a bool (e.g. USDT, BNB, OMG) on ERC20 methods. see
here for a comprehensive (if somewhat outdated) list.

No Revert on Failure#

Some tokens do not revert on failure, but instead return false (e.g.
ZRX).

Approval Race Protections#

Some tokens (e.g. USDT, KNC) do not allow approving an amount M > 0 when an existing amount
N > 0 is already approved. This is to protect from an ERC20 attack vector described
here.

Revert on Approval To Zero Address#

Some tokens (e.g. OpenZeppelin) will revert if trying to approve the zero address to spend tokens
(i.e. a call to approve(address(0), amt)).

Integrators may need to add special cases to handle this logic if working with such a token.

Revert on Zero Value Transfers#

Some tokens (e.g. LEND) revert when transfering a zero value amount.

Small Decimals#

Big Decimals#

  • NEAR' decimals: 24

See also: https://github.com/d-xo/weird-erc20

Loading...
Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.