Following is a description of the changes made to the code EOSIO system contracts.
For details on the base eosio.system contract please see eosio.system
The Worbli modifications to the core EOSIO system contracts are described here worbli.contracts
Caller: admin
Adds an account to the producers table which makes them a reserve. This will allow a producer to be voted for but they will not be able to regprod until they have been promoted by an admin.
Prerequisite: addprod has been called on this account Caller: admin
Promotes a producer to active which will allow the producer to call regproducer and start making blocks.
regproducer( const name& producer, const public_key& producer_key, const std::string& url, uint16_t location )
Prerequisite: promoteprod has been called on this account Caller: producer
Adds the producer to the schedule.
Caller: admin
Moves a primary to reserve.
Caller: producer
Removes the producer from the schedule.
Caller: admin
Removes the producer from the producers table.
Todo: Determine what to do with votes
modifications:
- admin and eosio have no restrictions
- user need to pass identity and subaccount limit checks
- removed name bidding
- record account relationships in multindex
Allows admin or eosio to delegate (lend RAM) to other accounts. Undelegate is is not implemented