Ton

Форк
0
/
update-elector-smc.fif 
41 строка · 1.4 Кб
1
#!/usr/bin/fift -s
2
"TonUtil.fif" include
3

4
{ ."usage: " @' $0 type ." <filename-base> <seqno> [<savefile>]" cr
5
  ."Creates a request to simple configuration smart contract requesting to change elector smart contract code to the one currently stored in auto/elector-code.fif, "
6
  ."with private key loaded from file <filename-base>.pk, "
7
  ."and saves it into <savefile>.boc ('config-query.boc' by default)" cr 1 halt
8
} : usage
9
$# dup 2 < swap 3 > or ' usage if
10

11
"config-master" constant file-base
12
0 constant seqno
13
-1 constant idx
14
true constant bounce
15
"auto/elector-code.fif" constant elector-source
16
100 constant interval  // valid for 100 seconds
17

18
$1 =: file-base
19
$2 parse-int =: seqno
20
def? $3 { @' $3 } { "config-query" } cond constant savefile
21

22
file-base +".addr" load-address
23
2dup 2constant config_addr
24
."Configuration smart contract address = " 2dup .addr cr 6 .Addr cr
25
file-base +".pk" load-keypair nip constant config_pk
26

27
."Loading new elector smart contract code from file " elector-source type cr
28
"Asm.fif" include
29
elector-source include
30
dup <s csr. cr
31

32
// create a message
33
<b x{4e43ef05} s, seqno 32 u, now interval + 32 u, swap ref, b>
34
dup ."signing message: " <s csr. cr
35
dup hashu config_pk ed25519_sign_uint
36
<b b{1000100} s, config_addr addr, 0 Gram, b{00} s,
37
   swap B, swap <s s, b>
38
dup ."resulting external message: " <s csr. cr
39
2 boc+>B dup Bx. cr
40
savefile +".boc" tuck B>file
41
."(Saved to file " type .")" cr
42

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.