1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-03-09 15:40:10 +00:00

Disable anycast address, allow deploying with "fixed prefix length"

This commit is contained in:
SpyCheese 2025-03-06 14:01:51 +03:00
parent 44e7e091b2
commit 61862c07c5
11 changed files with 241 additions and 157 deletions

View file

@ -738,7 +738,7 @@ const TickTock t_TickTock;
const RefAnything t_RefCell;
bool StateInit::validate_skip(int* ops, vm::CellSlice& cs, bool weak) const {
return Maybe<UInt>{5}.validate_skip(ops, cs, weak) // split_depth:(Maybe (## 5))
return Maybe<UInt>{5}.validate_skip(ops, cs, weak) // fixed_prefix_length:(Maybe (## 5))
&& Maybe<TickTock>{}.validate_skip(ops, cs, weak) // special:(Maybe TickTock)
&& Maybe<RefAnything>{}.validate_skip(ops, cs, weak) // code:(Maybe ^Cell)
&& Maybe<RefAnything>{}.validate_skip(ops, cs, weak) // data:(Maybe ^Cell)
@ -1085,7 +1085,7 @@ bool Account::skip_copy_depth_balance(vm::CellBuilder& cb, vm::CellSlice& cs) co
case account:
return cs.advance(1) // account$1
&& t_MsgAddressInt.skip_get_depth(cs, depth) // addr:MsgAddressInt
&& cb.store_uint_leq(30, depth) // -> store split_depth:(#<= 30)
&& cb.store_uint_leq(30, depth) // -> store fixed_prefix_length:(#<= 30)
&& t_StorageInfo.skip(cs) // storage_stat:StorageInfo
&& t_AccountStorage.skip_copy_balance(cb, cs); // storage:AccountStorage
}
@ -1230,13 +1230,14 @@ bool HashmapAugE::extract_extra(vm::CellSlice& cs) const {
bool DepthBalanceInfo::skip(vm::CellSlice& cs) const {
return cs.advance(5) &&
t_CurrencyCollection.skip(
cs); // depth_balance$_ split_depth:(#<= 30) balance:CurrencyCollection = DepthBalanceInfo;
cs); // depth_balance$_ fixed_prefix_length:(#<= 30) balance:CurrencyCollection = DepthBalanceInfo;
}
bool DepthBalanceInfo::validate_skip(int* ops, vm::CellSlice& cs, bool weak) const {
return cs.fetch_ulong(5) <= 30 &&
t_CurrencyCollection.validate_skip(ops, cs,
weak); // depth_balance$_ split_depth:(#<= 30) balance:CurrencyCollection
t_CurrencyCollection.validate_skip(
ops, cs,
weak); // depth_balance$_ fixed_prefix_length:(#<= 30) balance:CurrencyCollection
}
bool DepthBalanceInfo::null_value(vm::CellBuilder& cb) const {