Skip to content

Commit 857967e

Browse files
authored
Merge branch 'staging' into fix-search
2 parents e622ad2 + c02e595 commit 857967e

29 files changed

+411
-146
lines changed

core/client/http.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ package client
33
import (
44
"encoding/json"
55
"fmt"
6-
"log"
76
"net/http"
87
"net/url"
98
"sync"
109

1110
"github.com/0chain/errors"
1211
"github.com/0chain/gosdk/core/conf"
12+
"github.com/0chain/gosdk/core/logger"
1313
"github.com/0chain/gosdk/core/util"
1414
"github.com/shopspring/decimal"
1515
)
@@ -57,7 +57,7 @@ func MakeSCRestAPICallToSharder(scAddress string, relativePath string, params ma
5757
urlString := fmt.Sprintf("%v/%v%v%v", sharder, restApiUrl, scAddress, relativePath)
5858
urlObj, err := url.Parse(urlString)
5959
if err != nil {
60-
log.Println(err.Error())
60+
logger.GetLogger().Error("Error parsing URL: ", err.Error())
6161
return
6262
}
6363
q := urlObj.Query()
@@ -68,14 +68,14 @@ func MakeSCRestAPICallToSharder(scAddress string, relativePath string, params ma
6868

6969
req, err := util.NewHTTPGetRequest(urlObj.String())
7070
if err != nil {
71-
log.Println("Error creating request", err.Error())
71+
logger.GetLogger().Error("Error creating request: ", err.Error())
7272
return
7373
}
7474

7575
response, err := req.Get()
7676
if err != nil {
7777
nodeClient.sharders.Fail(sharder)
78-
log.Println("Error getting response", err.Error())
78+
logger.GetLogger().Error("Error getting response: ", err.Error())
7979
return
8080
}
8181

core/client/init_node.go

Lines changed: 90 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -136,10 +136,98 @@ func Init(ctx context.Context, cfg conf.Config) error {
136136
return err
137137
}
138138

139+
// Check if a node is online
140+
isNodeOnline := func(nodeURL string) bool {
141+
reqCtx, cancel := context.WithTimeout(ctx, 3*time.Second)
142+
defer cancel()
143+
req, err := util.NewHTTPGetRequestContext(reqCtx, nodeURL)
144+
if err != nil {
145+
return false
146+
}
147+
res, err := req.Get()
148+
return err == nil && res.StatusCode == http.StatusOK
149+
}
150+
151+
// Filter online nodes concurrently
152+
filterOnlineNodes := func(nodes []string) []string {
153+
var onlineNodes []string
154+
var wg sync.WaitGroup
155+
var mu sync.Mutex
156+
157+
for _, node := range nodes {
158+
wg.Add(1)
159+
go func(url string) {
160+
defer wg.Done()
161+
if isNodeOnline(url) {
162+
mu.Lock()
163+
onlineNodes = append(onlineNodes, url)
164+
mu.Unlock()
165+
} else {
166+
logging.Debug("Node offline during initialization", zap.String("url", url))
167+
}
168+
}(node)
169+
}
170+
wg.Wait()
171+
return onlineNodes
172+
}
173+
174+
onlineMiners := filterOnlineNodes(network.Miners)
175+
onlineSharders := filterOnlineNodes(network.Sharders)
176+
139177
reqMiners := util.MaxInt(3, int(math.Ceil(float64(cfg.MinSubmit)*float64(len(network.Miners))/100)))
140-
sharders := NewHolder(network.Sharders, util.MinInt(len(network.Sharders), util.MaxInt(cfg.SharderConsensous, conf.DefaultSharderConsensous)))
178+
reqSharders := util.MinInt(len(network.Sharders), util.MaxInt(cfg.SharderConsensous, conf.DefaultSharderConsensous))
179+
180+
if len(onlineMiners) < reqMiners {
181+
logging.Debug("Not enough online miners found, supplementing with random miners",
182+
zap.Int("online", len(onlineMiners)),
183+
zap.Int("required", reqMiners))
184+
185+
onlineMinersMap := make(map[string]struct{})
186+
for _, miner := range onlineMiners {
187+
onlineMinersMap[miner] = struct{}{}
188+
}
189+
190+
offlineMiners := make([]string, 0)
191+
for _, miner := range network.Miners {
192+
if _, exists := onlineMinersMap[miner]; !exists {
193+
offlineMiners = append(offlineMiners, miner)
194+
}
195+
}
196+
197+
needed := reqMiners - len(onlineMiners)
198+
if needed > 0 && len(offlineMiners) > 0 {
199+
randomOfflineMiners := util.GetRandom(offlineMiners, needed)
200+
onlineMiners = append(onlineMiners, randomOfflineMiners...)
201+
}
202+
}
203+
204+
if len(onlineSharders) < reqSharders {
205+
logging.Debug("Not enough online sharders found, supplementing with random sharders",
206+
zap.Int("online", len(onlineSharders)),
207+
zap.Int("required", reqSharders))
208+
209+
onlineShardersMap := make(map[string]struct{})
210+
for _, sharder := range onlineSharders {
211+
onlineShardersMap[sharder] = struct{}{}
212+
}
213+
214+
offlineSharders := make([]string, 0)
215+
for _, sharder := range network.Sharders {
216+
if _, exists := onlineShardersMap[sharder]; !exists {
217+
offlineSharders = append(offlineSharders, sharder)
218+
}
219+
}
220+
221+
needed := reqSharders - len(onlineSharders)
222+
if needed > 0 && len(offlineSharders) > 0 {
223+
randomOfflineSharders := util.GetRandom(offlineSharders, needed)
224+
onlineSharders = append(onlineSharders, randomOfflineSharders...)
225+
}
226+
}
227+
228+
sharders := NewHolder(onlineSharders, reqSharders)
141229
nodeClient = &Node{
142-
stableMiners: util.GetRandom(network.Miners, reqMiners),
230+
stableMiners: onlineMiners,
143231
sharders: sharders,
144232
network: network,
145233
clientCtx: ctx,

core/client/set.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,8 @@ type InitSdkOptions struct {
4646
AddWallet bool
4747
TxnFee *int
4848
MinConfirmation *int
49-
MinSubmit *int
5049
ConfirmationChainLength *int
50+
MinSubmit *int
5151
SharderConsensous *int
5252
ZboxHost string
5353
ZboxAppType string
@@ -287,6 +287,7 @@ func PublicKey(clients ...string) string {
287287
}
288288
return client.wallets[clients[0]].ClientKey
289289
}
290+
290291
return client.wallet.ClientKey
291292
}
292293

core/client/zauth.go

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -192,12 +192,12 @@ func CallZauthDelete(serverAddr, token, clientID string) error {
192192
return nil
193193
}
194194

195-
func CallZvaultNewWallet(serverAddr, token string) error {
195+
func CallZvaultNewWallet(serverAddr, token string) (string, error) {
196196
endpoint := serverAddr + "/wallet"
197197

198198
req, err := http.NewRequest("POST", endpoint, nil)
199199
if err != nil {
200-
return errors.Wrap(err, "failed to create HTTP request")
200+
return "", errors.Wrap(err, "failed to create HTTP request")
201201
}
202202

203203
req.Header.Set("Content-Type", "application/json")
@@ -206,20 +206,25 @@ func CallZvaultNewWallet(serverAddr, token string) error {
206206
client := &http.Client{}
207207
resp, err := client.Do(req)
208208
if err != nil {
209-
return errors.Wrap(err, "failed to send HTTP request")
209+
return "", errors.Wrap(err, "failed to send HTTP request")
210210
}
211211
defer resp.Body.Close()
212212

213213
if resp.StatusCode != http.StatusOK {
214214
errMsg, _ := io.ReadAll(resp.Body)
215215
if len(errMsg) > 0 {
216-
return errors.Errorf("code: %d, err: %s", resp.StatusCode, string(errMsg))
216+
return "", errors.Errorf("code: %d, err: %s", resp.StatusCode, string(errMsg))
217217
}
218218

219-
return errors.Errorf("code: %d", resp.StatusCode)
219+
return "", errors.Errorf("code: %d", resp.StatusCode)
220220
}
221221

222-
return nil
222+
d, err := io.ReadAll(resp.Body)
223+
if err != nil {
224+
return "", errors.Wrap(err, "failed to read response body")
225+
}
226+
227+
return string(d), nil
223228
}
224229

225230
func CallZvaultNewSplit(serverAddr, token, clientID string) error {
@@ -351,6 +356,9 @@ func CallZvaultStoreKeyString(serverAddr, token, privateKey string) error {
351356
return errors.Wrap(err, "failed to create HTTP request")
352357
}
353358

359+
req.Header.Set("Content-Type", "application/json")
360+
req.Header.Set("X-Jwt-Token", token)
361+
354362
client := &http.Client{}
355363
resp, err := client.Do(req)
356364
if err != nil {

core/logger/logger.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ func (l *Logger) Init(lvl int, prefix string) {
4646
l.SetLevel(lvl)
4747
l.prefix = prefix
4848
l.logDebug = log.New(os.Stderr, prefix+": "+strDEBUG, log.Ldate|log.Ltime|log.Lmicroseconds|log.Lshortfile)
49-
l.logInfo = log.New(os.Stderr, prefix+": "+strINFO, log.Ldate|log.Ltime|log.Lmicroseconds|log.Lshortfile)
49+
l.logInfo = log.New(os.Stdout, prefix+": "+strINFO, log.Ldate|log.Ltime|log.Lmicroseconds|log.Lshortfile)
5050
l.logError = log.New(os.Stderr, prefix+": "+strERROR, log.Ldate|log.Ltime|log.Lmicroseconds|log.Lshortfile)
5151
l.logFatal = log.New(os.Stderr, prefix+": "+strFATAL, log.Ldate|log.Ltime|log.Lmicroseconds|log.Lshortfile)
5252
}
@@ -85,7 +85,7 @@ func (l *Logger) SetLogFile(logFile io.Writer, verbose bool) {
8585
fLogs := []io.Writer{logFile}
8686
if verbose {
8787
dLogs = append(dLogs, os.Stderr)
88-
iLogs = append(iLogs, os.Stderr)
88+
iLogs = append(iLogs, os.Stdout)
8989
eLogs = append(eLogs, os.Stderr)
9090
fLogs = append(fLogs, os.Stderr)
9191
}

go.mod

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ require (
2929
github.com/uptrace/bunrouter v1.0.20
3030
go.dedis.ch/kyber/v3 v3.1.0
3131
go.uber.org/zap v1.24.0
32-
golang.org/x/crypto v0.21.0
32+
golang.org/x/crypto v0.26.0
3333
golang.org/x/image v0.14.0
34-
golang.org/x/sync v0.7.0
34+
golang.org/x/sync v0.8.0
3535
gopkg.in/cheggaaa/pb.v1 v1.0.28
3636
gopkg.in/natefinch/lumberjack.v2 v2.2.1
3737
gopkg.in/yaml.v2 v2.4.0
@@ -107,8 +107,8 @@ require (
107107
github.com/x448/float16 v0.8.4 // indirect
108108
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 // indirect
109109
go.dedis.ch/fixbuf v1.0.3 // indirect
110-
golang.org/x/sys v0.18.0 // indirect
111-
golang.org/x/text v0.14.0 // indirect
110+
golang.org/x/sys v0.23.0 // indirect
111+
golang.org/x/text v0.17.0 // indirect
112112
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
113113
gopkg.in/ini.v1 v1.67.0 // indirect
114114
gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
@@ -117,13 +117,13 @@ require (
117117
require (
118118
github.com/btcsuite/btcd/btcutil v1.1.3
119119
github.com/hack-pad/safejs v0.1.1
120-
github.com/klauspost/compress v1.17.0 // indirect
120+
github.com/klauspost/compress v1.17.9 // indirect
121121
github.com/klauspost/cpuid/v2 v2.2.4 // indirect
122122
github.com/remeh/sizedwaitgroup v1.0.0
123123
github.com/yusufpapurcu/wmi v1.2.2 // indirect
124124
go.uber.org/atomic v1.10.0 // indirect
125125
go.uber.org/multierr v1.9.0 // indirect
126-
golang.org/x/net v0.23.0 // indirect
126+
golang.org/x/net v0.28.0 // indirect
127127
golang.org/x/time v0.3.0 // indirect
128128
)
129129

go.sum

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -334,8 +334,8 @@ github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQL
334334
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
335335
github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4=
336336
github.com/klauspost/compress v1.4.0/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A=
337-
github.com/klauspost/compress v1.17.0 h1:Rnbp4K9EjcDuVuHtd0dgA4qNuv9yKDYKK1ulpJwgrqM=
338-
github.com/klauspost/compress v1.17.0/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
337+
github.com/klauspost/compress v1.17.9 h1:6KIumPrER1LHsvBVuDa0r5xaG0Es51mhhB9BQB2qeMA=
338+
github.com/klauspost/compress v1.17.9/go.mod h1:Di0epgTjJY877eYKx5yC51cX2A2Vl2ibi7bDH9ttBbw=
339339
github.com/klauspost/cpuid v0.0.0-20170728055534-ae7887de9fa5/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek=
340340
github.com/klauspost/cpuid/v2 v2.2.4 h1:acbojRNwl3o09bUq+yDCtZFc1aiwaAAxtcn8YkZXnvk=
341341
github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY=
@@ -579,8 +579,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
579579
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
580580
golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4=
581581
golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
582-
golang.org/x/crypto v0.21.0 h1:X31++rzVUdKhX5sWmSOFZxx8UW/ldWx55cbf08iNAMA=
583-
golang.org/x/crypto v0.21.0/go.mod h1:0BP7YvVV9gBbVKyeTG0Gyn+gZm94bibOW5BjDEYAOMs=
582+
golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw=
583+
golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54=
584584
golang.org/x/exp v0.0.0-20180321215751-8460e604b9de/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
585585
golang.org/x/exp v0.0.0-20180807140117-3d87b88a115f/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
586586
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
@@ -659,8 +659,8 @@ golang.org/x/net v0.0.0-20201031054903-ff519b6c9102/go.mod h1:sp8m0HH+o8qH0wwXwY
659659
golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
660660
golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
661661
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
662-
golang.org/x/net v0.23.0 h1:7EYJ93RZ9vYSZAIb2x3lnuvqO5zneoD6IvWjuhfxjTs=
663-
golang.org/x/net v0.23.0/go.mod h1:JKghWKKOSdJwpW2GEx0Ja7fmaKnMsbu+MWVZTokSYmg=
662+
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
663+
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
664664
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
665665
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
666666
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
@@ -681,8 +681,8 @@ golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJ
681681
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
682682
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
683683
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
684-
golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M=
685-
golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
684+
golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ=
685+
golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
686686
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
687687
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
688688
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
@@ -734,17 +734,17 @@ golang.org/x/sys v0.0.0-20220704084225-05e143d24a9e/go.mod h1:oPkhp1MJrh7nUepCBc
734734
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
735735
golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
736736
golang.org/x/sys v0.2.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
737-
golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
738-
golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
737+
golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM=
738+
golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
739739
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
740740
golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
741741
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
742742
golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
743743
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
744744
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
745745
golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
746-
golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
747-
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
746+
golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc=
747+
golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
748748
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
749749
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
750750
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=

wasmsdk/allocation.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -545,3 +545,7 @@ func repairSize(allocationID, remotePath string) (sdk.RepairSize, error) {
545545
}
546546
return alloc.RepairSize(remotePath)
547547
}
548+
549+
func generateOwnerSigningKey(ownerPublicKey, ownerID string) (string, error) {
550+
return sdk.GenerateOwnerSigningPublicKey()
551+
}

wasmsdk/auth_txn.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@ package main
55

66
import (
77
"fmt"
8-
"github.com/0chain/gosdk/core/client"
98
"syscall/js"
109

10+
"github.com/0chain/gosdk/core/client"
11+
1112
"github.com/0chain/gosdk/core/sys"
1213
"github.com/0chain/gosdk/wasmsdk/jsbridge"
1314
)
@@ -47,7 +48,7 @@ func zauthRetrieveKey(clientID, peerPublicKey, serverAddr, token string) (string
4748
}
4849

4950
// zvaultNewWallet generates new wallet
50-
func zvaultNewWallet(serverAddr, token string) error {
51+
func zvaultNewWallet(serverAddr, token string) (string, error) {
5152
return client.CallZvaultNewWallet(serverAddr, token)
5253
}
5354

wasmsdk/proxy.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ func main() {
247247
"terminateWorkers": terminateWorkers,
248248
"createWorkers": createWorkers,
249249
"getFileMetaByName": getFileMetaByName,
250-
"getFileMetaByAuthTicket": getFileMetaByAuthTicket,
250+
"getFileMetaByAuthTicket": getFileMetaByAuthTicket,
251251
"downloadDirectory": downloadDirectory,
252252
"cancelDownloadDirectory": cancelDownloadDirectory,
253253
"cancelDownloadBlocks": cancelDownloadBlocks,
@@ -290,6 +290,8 @@ func main() {
290290
"allocationRepair": allocationRepair,
291291
"repairSize": repairSize,
292292

293+
"generateOwnerSigningKey": generateOwnerSigningKey,
294+
293295
// bridge
294296
"initBridge": initBridge,
295297
"burnZCN": burnZCN,

0 commit comments

Comments
 (0)