mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
added support for config change proposals
- added some fift scripts for the config change proposal voting - added validator-engine-console support for the config change proposal voting - additional sanity checks in catchain - unsafe slow catchain resync method
This commit is contained in:
parent
a31f8d4424
commit
4dd5eea11f
35 changed files with 753 additions and 144 deletions
|
@ -200,11 +200,16 @@ class ValidatorEngine : public td::actor::Actor {
|
|||
bool started_keyring_ = false;
|
||||
bool started_ = false;
|
||||
|
||||
std::set<ton::CatchainSeqno> unsafe_catchains_;
|
||||
|
||||
public:
|
||||
static constexpr td::uint8 max_cat() {
|
||||
return 250;
|
||||
}
|
||||
|
||||
void add_unsafe_catchain(ton::CatchainSeqno seq) {
|
||||
unsafe_catchains_.insert(seq);
|
||||
}
|
||||
void set_local_config(std::string str);
|
||||
void set_global_config(std::string str);
|
||||
void set_fift_dir(std::string str) {
|
||||
|
@ -286,6 +291,8 @@ class ValidatorEngine : public td::actor::Actor {
|
|||
void alarm() override;
|
||||
void run();
|
||||
|
||||
void get_current_validator_perm_key(td::Promise<std::pair<ton::PublicKey, size_t>> promise);
|
||||
|
||||
void try_add_adnl_node(ton::PublicKeyHash pub, AdnlCategory cat, td::Promise<td::Unit> promise);
|
||||
void try_add_dht_node(ton::PublicKeyHash pub, td::Promise<td::Unit> promise);
|
||||
void try_add_validator_permanent_key(ton::PublicKeyHash key_hash, td::uint32 election_date, td::uint32 ttl,
|
||||
|
@ -376,6 +383,8 @@ class ValidatorEngine : public td::actor::Actor {
|
|||
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
|
||||
void run_control_query(ton::ton_api::engine_validator_checkDhtServers &query, td::BufferSlice data,
|
||||
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
|
||||
void run_control_query(ton::ton_api::engine_validator_createProposalVote &query, td::BufferSlice data,
|
||||
ton::PublicKeyHash src, td::uint32 perm, td::Promise<td::BufferSlice> promise);
|
||||
template <class T>
|
||||
void run_control_query(T &query, td::BufferSlice data, ton::PublicKeyHash src, td::uint32 perm,
|
||||
td::Promise<td::BufferSlice> promise) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue