EOS.IO Asked by coder on January 5, 2022
I have read that:
In order to call an inline action, that is to call an action of contract A from contract B, there is a need to set some special permission. In this case, the Ram payer for the action in contract B must-have “accountname [email protected]” permission in its active. In a case, if account C needs to call an action in account A through a contract in account B, then account C need to set the [email protected] in its active.
But I observed that:
- Contract B must-have “accountname [email protected]” permission in its active even to call function from contract A & not “accountname [email protected]” permission in its active.
- If account C needs to call an action in account A through a contract in account B, then account C need to set the
[email protected] in its active. This is true but is there any
alternative that C can use contract B to call action from contract A
without changing its permissions. Because in dapp it is not feasible
for every user to do that.
I’m confused a bit about the all this. Can anyone please give me a clear guidance? Also, in accordance with the v2.0Latest version
If a contract has an inline action, the permission for running that action must be eosio.code
from that contract account.
Thats it.
Example:
accounta
is a smart contract with an inline action to accountb
. Therefore accounta
will need the permission [email protected]
, as the contract will need to execute the inline action.
Answered by Phillip Hamnett - EOS42 on January 5, 2022
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP