|
typedef eosio::multi_index< "abihash"_n, abi_hash > | abi_hash_table |
|
using | newaccount_action = action_wrapper<"newaccount"_n, &bios::newaccount > |
|
using | updateauth_action = action_wrapper<"updateauth"_n, &bios::updateauth > |
|
using | deleteauth_action = action_wrapper<"deleteauth"_n, &bios::deleteauth > |
|
using | linkauth_action = action_wrapper<"linkauth"_n, &bios::linkauth > |
|
using | unlinkauth_action = action_wrapper<"unlinkauth"_n, &bios::unlinkauth > |
|
using | canceldelay_action = action_wrapper<"canceldelay"_n, &bios::canceldelay > |
|
using | setcode_action = action_wrapper<"setcode"_n, &bios::setcode > |
|
using | setabi_action = action_wrapper<"setabi"_n, &bios::setabi > |
|
using | setpriv_action = action_wrapper<"setpriv"_n, &bios::setpriv > |
|
using | setalimits_action = action_wrapper<"setalimits"_n, &bios::setalimits > |
|
using | setprods_action = action_wrapper<"setprods"_n, &bios::setprods > |
|
using | setparams_action = action_wrapper<"setparams"_n, &bios::setparams > |
|
using | reqauth_action = action_wrapper<"reqauth"_n, &bios::reqauth > |
|
using | activate_action = action_wrapper<"activate"_n, &bios::activate > |
|
using | reqactivated_action = action_wrapper<"reqactivated"_n, &bios::reqactivated > |
|
|
void | newaccount (name creator, name name, ignore< authority > owner, ignore< authority > active) |
|
void | updateauth (ignore< name > account, ignore< name > permission, ignore< name > parent, ignore< authority > auth) |
|
void | deleteauth (ignore< name > account, ignore< name > permission) |
|
void | linkauth (ignore< name > account, ignore< name > code, ignore< name > type, ignore< name > requirement) |
|
void | unlinkauth (ignore< name > account, ignore< name > code, ignore< name > type) |
|
void | canceldelay (ignore< permission_level > canceling_auth, ignore< checksum256 > trx_id) |
|
void | setcode (name account, uint8_t vmtype, uint8_t vmversion, const std::vector< char > &code) |
|
void | setabi (name account, const std::vector< char > &abi) |
| Устанавливает ABI для аккаунта. Сохраняет хеш ABI в таблице для указанного аккаунта. Подробнее...
|
|
void | onerror (ignore< uint128_t > sender_id, ignore< std::vector< char > > sent_trx) |
|
void | setpriv (name account, uint8_t is_priv) |
| Устанавливает привилегированный статус для аккаунта. Включает или выключает привилегированный статус для указанного аккаунта. Подробнее...
|
|
void | setalimits (name account, int64_t ram_bytes, int64_t net_weight, int64_t cpu_weight) |
| Устанавливает лимиты ресурсов для аккаунта. Устанавливает лимиты RAM, сети и CPU для указанного аккаунта. Подробнее...
|
|
void | setprods (const std::vector< eosio::producer_authority > &schedule) |
| Устанавливает новый список активных продюсеров. Устанавливает новый список активных продюсеров, предлагая изменение расписания. Подробнее...
|
|
void | setparams (const eosio::blockchain_parameters ¶ms) |
| Устанавливает параметры блокчейна. Устанавливает параметры блокчейна для настройки различных степеней кастомизации. Подробнее...
|
|
void | reqauth (name from) |
| Проверяет авторизацию аккаунта. Проверяет, имеет ли аккаунт from авторизацию для доступа к текущему действию. Подробнее...
|
|
void | activate (const eosio::checksum256 &feature_digest) |
| Активирует протокольную функцию. Активирует протокольную функцию по хешу. Подробнее...
|
|
void | reqactivated (const eosio::checksum256 &feature_digest) |
| Проверяет активацию протокольной функции. Утверждает, что протокольная функция была активирована. Подробнее...
|
|
The eosio.bios
is the first sample of system contract provided by block.one
through the EOSIO platform. It is a minimalist system contract because it only supplies the actions that are absolutely critical to bootstrap a chain and nothing more. This allows for a chain agnostic approach to bootstrapping a chain.
Just like in the eosio.system
sample contract implementation, there are a few actions which are not implemented at the contract level (newaccount
, updateauth
, deleteauth
, linkauth
, unlinkauth
, canceldelay
, onerror
, setabi
, setcode
), they are just declared in the contract so they will show in the contract's ABI and users will be able to push those actions to the chain via the account holding the eosio.system
contract, but the implementation is at the EOSIO core level. They are referred to as EOSIO native actions.
void eosiobios::bios::linkauth |
( |
ignore< name > |
account, |
|
|
ignore< name > |
code, |
|
|
ignore< name > |
type, |
|
|
ignore< name > |
requirement |
|
) |
| |
|
inline |
Link authorization action assigns a specific action from a contract to a permission you have created. Five system actions can not be linked updateauth
, deleteauth
, linkauth
, unlinkauth
, and canceldelay
. This is useful because when doing authorization checks, the EOSIO based blockchain starts with the action needed to be authorized (and the contract belonging to), and looks up which permission is needed to pass authorization validation. If a link is set, that permission is used for authoraization validation otherwise then active is the default, with the exception of eosio.any
. eosio.any
is an implicit permission which exists on every account; you can link actions to eosio.any
and that will make it so linked actions are accessible to any permissions defined for the account.
- Аргументы
-
account | - the permission's owner to be linked and the payer of the RAM needed to store this link, |
code | - the owner of the action to be linked, |
type | - the action to be linked, |
requirement | - the permission to be linked. |
void eosiobios::bios::reqauth |
( |
name |
from | ) |
|
Проверяет авторизацию аккаунта. Проверяет, имеет ли аккаунт from авторизацию для доступа к текущему действию.
Require authorization action, checks if the account name from
passed in as param has authorization to access current action, that is, if it is listed in the action’s allowed permissions vector.
- Аргументы
-
from | - the account name to authorize |
from | Имя аккаунта для авторизации |
- Заметки
- Авторизация требуется от аккаунта:
from
Проверяет авторизацию аккаунта. Проверяет, имеет ли аккаунт from авторизацию для доступа к текущему действию.
- Аргументы
-
from | Имя аккаунта для авторизации |
- Заметки
- Авторизация требуется от аккаунта:
from
void eosiobios::bios::setprods |
( |
const std::vector< eosio::producer_authority > & |
schedule | ) |
|
Устанавливает новый список активных продюсеров. Устанавливает новый список активных продюсеров, предлагая изменение расписания.
Set producers action, sets a new list of active producers, by proposing a schedule change, once the block that contains the proposal becomes irreversible, the schedule is promoted to "pending" automatically. Once the block that promotes the schedule is irreversible, the schedule will become "active".
- Аргументы
-
schedule | - New list of active producers to set |
schedule | Новый список активных продюсеров для установки |
- Заметки
- Авторизация требуется от аккаунта:
eosio.bios