mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
updated vm
- updated func/fift - additional checks in block validator - docs - tunnel prototype in ADNL
This commit is contained in:
parent
ba76f1404e
commit
54c7a4dcc3
50 changed files with 972 additions and 300 deletions
|
@ -51,7 +51,7 @@ class AdnlAddressUdp : public AdnlAddressImpl {
|
|||
return create_tl_object<ton_api::adnl_address_udp>(ip_, port_);
|
||||
}
|
||||
td::actor::ActorOwn<AdnlNetworkConnection> create_connection(
|
||||
td::actor::ActorId<AdnlNetworkManager> network_manager,
|
||||
td::actor::ActorId<AdnlNetworkManager> network_manager, td::actor::ActorId<Adnl> adnl,
|
||||
std::unique_ptr<AdnlNetworkConnection::Callback> callback) const override;
|
||||
};
|
||||
|
||||
|
@ -81,7 +81,38 @@ class AdnlAddressUdp6 : public AdnlAddressImpl {
|
|||
return create_tl_object<ton_api::adnl_address_udp6>(ip_, port_);
|
||||
}
|
||||
td::actor::ActorOwn<AdnlNetworkConnection> create_connection(
|
||||
td::actor::ActorId<AdnlNetworkManager> network_manager,
|
||||
td::actor::ActorId<AdnlNetworkManager> network_manager, td::actor::ActorId<Adnl> adnl,
|
||||
std::unique_ptr<AdnlNetworkConnection::Callback> callback) const override;
|
||||
};
|
||||
|
||||
class AdnlAddressTunnel : public AdnlAddressImpl {
|
||||
private:
|
||||
AdnlNodeIdShort adnl_id_;
|
||||
PublicKey pub_key_;
|
||||
|
||||
public:
|
||||
explicit AdnlAddressTunnel(const ton_api::adnl_address_tunnel &obj);
|
||||
|
||||
AdnlAddressTunnel(AdnlNodeIdShort adnl_id, PublicKey pub_key)
|
||||
: adnl_id_(std::move(adnl_id)), pub_key_(std::move(pub_key)) {
|
||||
}
|
||||
|
||||
AdnlAddressTunnel *make_copy() const override {
|
||||
return new AdnlAddressTunnel{*this};
|
||||
}
|
||||
|
||||
bool is_public() const override {
|
||||
return false;
|
||||
}
|
||||
td::uint32 serialized_size() const override {
|
||||
return 4 + 32 + pub_key_.serialized_size();
|
||||
}
|
||||
|
||||
tl_object_ptr<ton_api::adnl_Address> tl() const override {
|
||||
return create_tl_object<ton_api::adnl_address_tunnel>(adnl_id_.bits256_value(), pub_key_.tl());
|
||||
}
|
||||
td::actor::ActorOwn<AdnlNetworkConnection> create_connection(
|
||||
td::actor::ActorId<AdnlNetworkManager> network_manager, td::actor::ActorId<Adnl> adnl,
|
||||
std::unique_ptr<AdnlNetworkConnection::Callback> callback) const override;
|
||||
};
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue