Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
47379749
Commit
47379749
authored
May 16, 2019
by
caopingcp
Committed by
vipwzw
May 18, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update vrf usage
parent
be6fe665
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
284 additions
and
663 deletions
+284
-663
ticket.go
plugin/consensus/ticket/ticket.go
+10
-6
ticket_test.go
plugin/consensus/ticket/ticket_test.go
+8
-3
ticketnum.go
plugin/dapp/ticket/executor/ticketnum.go
+1
-3
ticket.proto
plugin/dapp/ticket/proto/ticket.proto
+2
-4
ticket.pb.go
plugin/dapp/ticket/types/ticket.pb.go
+263
-647
No files found.
plugin/consensus/ticket/ticket.go
View file @
47379749
...
@@ -6,6 +6,7 @@ package ticket
...
@@ -6,6 +6,7 @@ package ticket
import
(
import
(
"bytes"
"bytes"
"crypto/ecdsa"
"encoding/hex"
"encoding/hex"
"errors"
"errors"
"fmt"
"fmt"
...
@@ -20,13 +21,14 @@ import (
...
@@ -20,13 +21,14 @@ import (
"github.com/33cn/chain33/common/crypto"
"github.com/33cn/chain33/common/crypto"
"github.com/33cn/chain33/common/difficulty"
"github.com/33cn/chain33/common/difficulty"
"github.com/33cn/chain33/common/log/log15"
"github.com/33cn/chain33/common/log/log15"
vrf
"github.com/33cn/chain33/common/vrf/
p256
"
vrf
"github.com/33cn/chain33/common/vrf/
secp256k1
"
"github.com/33cn/chain33/queue"
"github.com/33cn/chain33/queue"
drivers
"github.com/33cn/chain33/system/consensus"
drivers
"github.com/33cn/chain33/system/consensus"
driver
"github.com/33cn/chain33/system/dapp"
driver
"github.com/33cn/chain33/system/dapp"
cty
"github.com/33cn/chain33/system/dapp/coins/types"
cty
"github.com/33cn/chain33/system/dapp/coins/types"
"github.com/33cn/chain33/types"
"github.com/33cn/chain33/types"
ty
"github.com/33cn/plugin/plugin/dapp/ticket/types"
ty
"github.com/33cn/plugin/plugin/dapp/ticket/types"
secp256k1
"github.com/btcsuite/btcd/btcec"
"github.com/golang/protobuf/proto"
"github.com/golang/protobuf/proto"
)
)
...
@@ -377,11 +379,12 @@ func (client *Client) CheckBlock(parent *types.Block, current *types.BlockDetail
...
@@ -377,11 +379,12 @@ func (client *Client) CheckBlock(parent *types.Block, current *types.BlockDetail
if
input
==
nil
{
if
input
==
nil
{
input
=
miner
.
PrivHash
input
=
miner
.
PrivHash
}
}
if
err
=
vrfVerify
(
miner
.
PubKey
,
input
,
miner
.
VrfProof
,
miner
.
VrfHash
);
err
!=
nil
{
minerTx
:=
current
.
Block
.
Txs
[
0
]
if
err
=
vrfVerify
(
minerTx
.
Signature
.
Pubkey
,
input
,
miner
.
VrfProof
,
miner
.
VrfHash
);
err
!=
nil
{
return
err
return
err
}
}
}
else
{
}
else
{
if
len
(
miner
.
PubKey
)
!=
0
||
len
(
miner
.
VrfHash
)
!=
0
||
len
(
miner
.
VrfProof
)
!=
0
{
if
len
(
miner
.
VrfHash
)
!=
0
||
len
(
miner
.
VrfProof
)
!=
0
{
tlog
.
Error
(
"block error: not yet add vrf"
)
tlog
.
Error
(
"block error: not yet add vrf"
)
return
ty
.
ErrNoVrf
return
ty
.
ErrNoVrf
}
}
...
@@ -390,11 +393,12 @@ func (client *Client) CheckBlock(parent *types.Block, current *types.BlockDetail
...
@@ -390,11 +393,12 @@ func (client *Client) CheckBlock(parent *types.Block, current *types.BlockDetail
}
}
func
vrfVerify
(
pub
[]
byte
,
input
[]
byte
,
proof
[]
byte
,
hash
[]
byte
)
error
{
func
vrfVerify
(
pub
[]
byte
,
input
[]
byte
,
proof
[]
byte
,
hash
[]
byte
)
error
{
vrfPub
,
err
:=
vrf
.
ParseVrfPubKey
(
pub
)
pubKey
,
err
:=
secp256k1
.
ParsePubKey
(
pub
,
secp256k1
.
S256
()
)
if
err
!=
nil
{
if
err
!=
nil
{
tlog
.
Error
(
"vrfVerify"
,
"err"
,
err
)
tlog
.
Error
(
"vrfVerify"
,
"err"
,
err
)
return
ty
.
ErrVrfVerify
return
ty
.
ErrVrfVerify
}
}
vrfPub
:=
&
vrf
.
PublicKey
{
PublicKey
:
(
*
ecdsa
.
PublicKey
)(
pubKey
)}
vrfHash
,
err
:=
vrfPub
.
ProofToHash
(
input
,
proof
)
vrfHash
,
err
:=
vrfPub
.
ProofToHash
(
input
,
proof
)
if
err
!=
nil
{
if
err
!=
nil
{
tlog
.
Error
(
"vrfVerify"
,
"err"
,
err
)
tlog
.
Error
(
"vrfVerify"
,
"err"
,
err
)
...
@@ -653,9 +657,9 @@ func (client *Client) addMinerTx(parent, block *types.Block, diff *big.Int, priv
...
@@ -653,9 +657,9 @@ func (client *Client) addMinerTx(parent, block *types.Block, diff *big.Int, priv
if
input
==
nil
{
if
input
==
nil
{
input
=
miner
.
PrivHash
input
=
miner
.
PrivHash
}
}
vrfPriv
,
_
,
pubKey
:=
vrf
.
GenVrfKey
(
priv
)
privKey
,
_
:=
secp256k1
.
PrivKeyFromBytes
(
secp256k1
.
S256
(),
priv
.
Bytes
())
vrfPriv
:=
&
vrf
.
PrivateKey
{
PrivateKey
:
(
*
ecdsa
.
PrivateKey
)(
privKey
)}
vrfHash
,
vrfProof
:=
vrfPriv
.
Evaluate
(
input
)
vrfHash
,
vrfProof
:=
vrfPriv
.
Evaluate
(
input
)
miner
.
PubKey
=
pubKey
miner
.
VrfHash
=
vrfHash
[
:
]
miner
.
VrfHash
=
vrfHash
[
:
]
miner
.
VrfProof
=
vrfProof
miner
.
VrfProof
=
vrfProof
}
}
...
...
plugin/consensus/ticket/ticket_test.go
View file @
47379749
...
@@ -5,17 +5,19 @@
...
@@ -5,17 +5,19 @@
package
ticket
package
ticket
import
(
import
(
"crypto/ecdsa"
"fmt"
"fmt"
"testing"
"testing"
"github.com/33cn/chain33/account"
"github.com/33cn/chain33/account"
"github.com/33cn/chain33/common/crypto"
"github.com/33cn/chain33/common/crypto"
vrf
"github.com/33cn/chain33/common/vrf/
p256
"
vrf
"github.com/33cn/chain33/common/vrf/
secp256k1
"
"github.com/33cn/chain33/queue"
"github.com/33cn/chain33/queue"
"github.com/33cn/chain33/types"
"github.com/33cn/chain33/types"
"github.com/33cn/chain33/util"
"github.com/33cn/chain33/util"
"github.com/33cn/chain33/util/testnode"
"github.com/33cn/chain33/util/testnode"
ty
"github.com/33cn/plugin/plugin/dapp/ticket/types"
ty
"github.com/33cn/plugin/plugin/dapp/ticket/types"
secp256k1
"github.com/btcsuite/btcd/btcec"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/assert"
_
"github.com/33cn/chain33/system"
_
"github.com/33cn/chain33/system"
...
@@ -170,8 +172,11 @@ func Test_vrfVerify(t *testing.T) {
...
@@ -170,8 +172,11 @@ func Test_vrfVerify(t *testing.T) {
assert
.
NoError
(
t
,
err
)
assert
.
NoError
(
t
,
err
)
priv
,
err
:=
c
.
GenKey
()
priv
,
err
:=
c
.
GenKey
()
assert
.
NoError
(
t
,
err
)
assert
.
NoError
(
t
,
err
)
pub
:=
priv
.
PubKey
()
.
Bytes
()
privKey
,
_
:=
secp256k1
.
PrivKeyFromBytes
(
secp256k1
.
S256
(),
priv
.
Bytes
())
vpriv
:=
&
vrf
.
PrivateKey
{
PrivateKey
:
(
*
ecdsa
.
PrivateKey
)(
privKey
)}
vpriv
,
_
,
pubKey
:=
vrf
.
GenVrfKey
(
priv
)
m1
:=
[]
byte
(
"data1"
)
m1
:=
[]
byte
(
"data1"
)
m2
:=
[]
byte
(
"data2"
)
m2
:=
[]
byte
(
"data2"
)
m3
:=
[]
byte
(
"data2"
)
m3
:=
[]
byte
(
"data2"
)
...
@@ -191,7 +196,7 @@ func Test_vrfVerify(t *testing.T) {
...
@@ -191,7 +196,7 @@ func Test_vrfVerify(t *testing.T) {
{
m3
,
hash3
,
proof1
,
ty
.
ErrVrfVerify
},
{
m3
,
hash3
,
proof1
,
ty
.
ErrVrfVerify
},
{
m3
,
hash1
,
proof3
,
ty
.
ErrVrfVerify
},
{
m3
,
hash1
,
proof3
,
ty
.
ErrVrfVerify
},
}
{
}
{
err
:=
vrfVerify
(
pub
Key
,
tc
.
m
,
tc
.
proof
,
tc
.
hash
[
:
])
err
:=
vrfVerify
(
pub
,
tc
.
m
,
tc
.
proof
,
tc
.
hash
[
:
])
if
got
,
want
:=
err
,
tc
.
err
;
got
!=
want
{
if
got
,
want
:=
err
,
tc
.
err
;
got
!=
want
{
t
.
Errorf
(
"vrfVerify(%s, %x): %v, want %v"
,
tc
.
m
,
tc
.
proof
,
got
,
want
)
t
.
Errorf
(
"vrfVerify(%s, %x): %v, want %v"
,
tc
.
m
,
tc
.
proof
,
got
,
want
)
}
}
...
...
plugin/dapp/ticket/executor/ticketnum.go
View file @
47379749
...
@@ -45,7 +45,6 @@ func (ticket *Ticket) GetRandNum(blockHash []byte, blockNum int64) (types.Messag
...
@@ -45,7 +45,6 @@ func (ticket *Ticket) GetRandNum(blockHash []byte, blockNum int64) (types.Messag
var
ticketIds
string
var
ticketIds
string
var
privHashs
[]
byte
var
privHashs
[]
byte
var
vrfHashs
[]
byte
var
vrfHashs
[]
byte
var
vrfProofs
[]
byte
for
_
,
ticketAction
:=
range
txActions
{
for
_
,
ticketAction
:=
range
txActions
{
//tlog.Debug("GetRandNum", "modify", ticketAction.GetMiner().GetModify(), "bits", ticketAction.GetMiner().GetBits(), "ticketId", ticketAction.GetMiner().GetTicketId(), "PrivHash", ticketAction.GetMiner().GetPrivHash())
//tlog.Debug("GetRandNum", "modify", ticketAction.GetMiner().GetModify(), "bits", ticketAction.GetMiner().GetBits(), "ticketId", ticketAction.GetMiner().GetTicketId(), "PrivHash", ticketAction.GetMiner().GetPrivHash())
...
@@ -54,12 +53,11 @@ func (ticket *Ticket) GetRandNum(blockHash []byte, blockNum int64) (types.Messag
...
@@ -54,12 +53,11 @@ func (ticket *Ticket) GetRandNum(blockHash []byte, blockNum int64) (types.Messag
ticketIds
+=
ticketAction
.
GetMiner
()
.
GetTicketId
()
ticketIds
+=
ticketAction
.
GetMiner
()
.
GetTicketId
()
privHashs
=
append
(
privHashs
,
ticketAction
.
GetMiner
()
.
GetPrivHash
()
...
)
privHashs
=
append
(
privHashs
,
ticketAction
.
GetMiner
()
.
GetPrivHash
()
...
)
vrfHashs
=
append
(
vrfHashs
,
ticketAction
.
GetMiner
()
.
GetVrfHash
()
...
)
vrfHashs
=
append
(
vrfHashs
,
ticketAction
.
GetMiner
()
.
GetVrfHash
()
...
)
vrfProofs
=
append
(
vrfProofs
,
ticketAction
.
GetMiner
()
.
GetVrfProof
()
...
)
}
}
newmodify
:=
fmt
.
Sprintf
(
"%s:%s:%d:%s"
,
string
(
modifies
),
ticketIds
,
bits
,
string
(
privHashs
))
newmodify
:=
fmt
.
Sprintf
(
"%s:%s:%d:%s"
,
string
(
modifies
),
ticketIds
,
bits
,
string
(
privHashs
))
if
len
(
vrfHashs
)
!=
0
{
if
len
(
vrfHashs
)
!=
0
{
newmodify
=
newmodify
+
":"
+
fmt
.
Sprintf
(
"%x:%x"
,
vrfHashs
,
vrfProof
s
)
newmodify
=
fmt
.
Sprintf
(
"%s:%x"
,
newmodify
,
vrfHash
s
)
}
}
modify
:=
common
.
Sha256
([]
byte
(
newmodify
))
modify
:=
common
.
Sha256
([]
byte
(
newmodify
))
...
...
plugin/dapp/ticket/proto/ticket.proto
View file @
47379749
...
@@ -41,12 +41,10 @@ message TicketMiner {
...
@@ -41,12 +41,10 @@ message TicketMiner {
bytes
modify
=
4
;
bytes
modify
=
4
;
//挖到区块时公开
//挖到区块时公开
bytes
privHash
=
5
;
bytes
privHash
=
5
;
//VRF公钥
bytes
pubKey
=
6
;
//VRF计算得到的hash
//VRF计算得到的hash
bytes
vrfHash
=
7
;
bytes
vrfHash
=
6
;
//VRF计算得到的proof
//VRF计算得到的proof
bytes
vrfProof
=
8
;
bytes
vrfProof
=
7
;
}
}
message
TicketMinerOld
{
message
TicketMinerOld
{
...
...
plugin/dapp/ticket/types/ticket.pb.go
View file @
47379749
// Code generated by protoc-gen-go. DO NOT EDIT.
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: ticket.proto
// source: ticket.proto
/*
Package types is a generated protocol buffer package.
It is generated from these files:
ticket.proto
It has these top-level messages:
Ticket
TicketAction
TicketMiner
TicketMinerOld
MinerFlag
TicketBind
TicketOpen
TicketGenesis
TicketClose
TicketList
TicketInfos
ReplyTicketList
ReplyWalletTickets
ReceiptTicket
ReceiptTicketBind
ReqBindMiner
ReplyBindMiner
*/
package
types
package
types
import
(
import
proto
"github.com/golang/protobuf/proto"
context
"contex
t"
import
fmt
"fm
t"
fmt
"fmt
"
import
math
"math
"
math
"math
"
import
types1
"github.com/33cn/chain33/types
"
types
"github.com/33cn/chain33/types"
import
(
proto
"github.com/golang/protobuf/proto
"
context
"golang.org/x/net/context
"
grpc
"google.golang.org/grpc"
grpc
"google.golang.org/grpc"
)
)
...
@@ -25,51 +50,28 @@ var _ = math.Inf
...
@@ -25,51 +50,28 @@ var _ = math.Inf
const
_
=
proto
.
ProtoPackageIsVersion2
// please upgrade the proto package
const
_
=
proto
.
ProtoPackageIsVersion2
// please upgrade the proto package
type
Ticket
struct
{
type
Ticket
struct
{
TicketId
string
`protobuf:"bytes,1,opt,name=ticketId
,proto3
" json:"ticketId,omitempty"`
TicketId
string
`protobuf:"bytes,1,opt,name=ticketId" json:"ticketId,omitempty"`
// 0 -> 未成熟 1 -> 可挖矿 2 -> 已挖成功 3-> 已关闭
// 0 -> 未成熟 1 -> 可挖矿 2 -> 已挖成功 3-> 已关闭
Status
int32
`protobuf:"varint,2,opt,name=status
,proto3
" json:"status,omitempty"`
Status
int32
`protobuf:"varint,2,opt,name=status" json:"status,omitempty"`
// genesis 创建的私钥比较特殊
// genesis 创建的私钥比较特殊
IsGenesis
bool
`protobuf:"varint,3,opt,name=isGenesis
,proto3
" json:"isGenesis,omitempty"`
IsGenesis
bool
`protobuf:"varint,3,opt,name=isGenesis" json:"isGenesis,omitempty"`
//创建时间
//
创建时间
CreateTime
int64
`protobuf:"varint,4,opt,name=createTime
,proto3
" json:"createTime,omitempty"`
CreateTime
int64
`protobuf:"varint,4,opt,name=createTime" json:"createTime,omitempty"`
//挖矿时间
//
挖矿时间
MinerTime
int64
`protobuf:"varint,5,opt,name=minerTime
,proto3
" json:"minerTime,omitempty"`
MinerTime
int64
`protobuf:"varint,5,opt,name=minerTime" json:"minerTime,omitempty"`
//挖到的币的数目
//
挖到的币的数目
MinerValue
int64
`protobuf:"varint,8,opt,name=minerValue
,proto3
" json:"minerValue,omitempty"`
MinerValue
int64
`protobuf:"varint,8,opt,name=minerValue" json:"minerValue,omitempty"`
MinerAddress
string
`protobuf:"bytes,6,opt,name=minerAddress
,proto3
" json:"minerAddress,omitempty"`
MinerAddress
string
`protobuf:"bytes,6,opt,name=minerAddress" json:"minerAddress,omitempty"`
// return wallet
// return wallet
ReturnAddress
string
`protobuf:"bytes,7,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,7,opt,name=returnAddress" json:"returnAddress,omitempty"`
//miner Price
// miner Price
Price
int64
`protobuf:"varint,9,opt,name=price,proto3" json:"price,omitempty"`
Price
int64
`protobuf:"varint,9,opt,name=price" json:"price,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
Ticket
)
Reset
()
{
*
m
=
Ticket
{}
}
func
(
m
*
Ticket
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
Ticket
)
ProtoMessage
()
{}
func
(
*
Ticket
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
0
}
}
func
(
m
*
Ticket
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_Ticket
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
Ticket
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_Ticket
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
Ticket
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_Ticket
.
Merge
(
m
,
src
)
}
func
(
m
*
Ticket
)
XXX_Size
()
int
{
return
xxx_messageInfo_Ticket
.
Size
(
m
)
}
func
(
m
*
Ticket
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_Ticket
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_Ticket
proto
.
InternalMessageInfo
func
(
m
*
Ticket
)
Reset
()
{
*
m
=
Ticket
{}
}
func
(
m
*
Ticket
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
Ticket
)
ProtoMessage
()
{}
func
(
*
Ticket
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
0
}
}
func
(
m
*
Ticket
)
GetTicketId
()
string
{
func
(
m
*
Ticket
)
GetTicketId
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -142,71 +144,40 @@ type TicketAction struct {
...
@@ -142,71 +144,40 @@ type TicketAction struct {
// *TicketAction_Genesis
// *TicketAction_Genesis
// *TicketAction_Tclose
// *TicketAction_Tclose
// *TicketAction_Miner
// *TicketAction_Miner
Value
isTicketAction_Value
`protobuf_oneof:"value"`
Value
isTicketAction_Value
`protobuf_oneof:"value"`
Ty
int32
`protobuf:"varint,10,opt,name=ty,proto3" json:"ty,omitempty"`
Ty
int32
`protobuf:"varint,10,opt,name=ty" json:"ty,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
TicketAction
)
Reset
()
{
*
m
=
TicketAction
{}
}
func
(
m
*
TicketAction
)
Reset
()
{
*
m
=
TicketAction
{}
}
func
(
m
*
TicketAction
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
m
*
TicketAction
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketAction
)
ProtoMessage
()
{}
func
(
*
TicketAction
)
ProtoMessage
()
{}
func
(
*
TicketAction
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
TicketAction
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
1
}
}
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
1
}
}
func
(
m
*
TicketAction
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketAction
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketAction
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketAction
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketAction
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketAction
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketAction
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketAction
.
Size
(
m
)
}
func
(
m
*
TicketAction
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketAction
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_TicketAction
proto
.
InternalMessageInfo
type
isTicketAction_Value
interface
{
type
isTicketAction_Value
interface
{
isTicketAction_Value
()
isTicketAction_Value
()
}
}
type
TicketAction_Tbind
struct
{
type
TicketAction_Tbind
struct
{
Tbind
*
TicketBind
`protobuf:"bytes,5,opt,name=tbind,
proto3,
oneof"`
Tbind
*
TicketBind
`protobuf:"bytes,5,opt,name=tbind,oneof"`
}
}
type
TicketAction_Topen
struct
{
type
TicketAction_Topen
struct
{
Topen
*
TicketOpen
`protobuf:"bytes,1,opt,name=topen,
proto3,
oneof"`
Topen
*
TicketOpen
`protobuf:"bytes,1,opt,name=topen,oneof"`
}
}
type
TicketAction_Genesis
struct
{
type
TicketAction_Genesis
struct
{
Genesis
*
TicketGenesis
`protobuf:"bytes,2,opt,name=genesis,
proto3,
oneof"`
Genesis
*
TicketGenesis
`protobuf:"bytes,2,opt,name=genesis,oneof"`
}
}
type
TicketAction_Tclose
struct
{
type
TicketAction_Tclose
struct
{
Tclose
*
TicketClose
`protobuf:"bytes,3,opt,name=tclose,
proto3,
oneof"`
Tclose
*
TicketClose
`protobuf:"bytes,3,opt,name=tclose,oneof"`
}
}
type
TicketAction_Miner
struct
{
type
TicketAction_Miner
struct
{
Miner
*
TicketMiner
`protobuf:"bytes,4,opt,name=miner,
proto3,
oneof"`
Miner
*
TicketMiner
`protobuf:"bytes,4,opt,name=miner,oneof"`
}
}
func
(
*
TicketAction_Tbind
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Tbind
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Topen
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Topen
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Genesis
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Genesis
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Tclose
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Tclose
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Miner
)
isTicketAction_Value
()
{}
func
(
*
TicketAction_Miner
)
isTicketAction_Value
()
{}
func
(
m
*
TicketAction
)
GetValue
()
isTicketAction_Value
{
func
(
m
*
TicketAction
)
GetValue
()
isTicketAction_Value
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -358,27 +329,27 @@ func _TicketAction_OneofSizer(msg proto.Message) (n int) {
...
@@ -358,27 +329,27 @@ func _TicketAction_OneofSizer(msg proto.Message) (n int) {
switch
x
:=
m
.
Value
.
(
type
)
{
switch
x
:=
m
.
Value
.
(
type
)
{
case
*
TicketAction_Tbind
:
case
*
TicketAction_Tbind
:
s
:=
proto
.
Size
(
x
.
Tbind
)
s
:=
proto
.
Size
(
x
.
Tbind
)
n
+=
1
// tag and wire
n
+=
proto
.
SizeVarint
(
5
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
n
+=
s
case
*
TicketAction_Topen
:
case
*
TicketAction_Topen
:
s
:=
proto
.
Size
(
x
.
Topen
)
s
:=
proto
.
Size
(
x
.
Topen
)
n
+=
1
// tag and wire
n
+=
proto
.
SizeVarint
(
1
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
n
+=
s
case
*
TicketAction_Genesis
:
case
*
TicketAction_Genesis
:
s
:=
proto
.
Size
(
x
.
Genesis
)
s
:=
proto
.
Size
(
x
.
Genesis
)
n
+=
1
// tag and wire
n
+=
proto
.
SizeVarint
(
2
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
n
+=
s
case
*
TicketAction_Tclose
:
case
*
TicketAction_Tclose
:
s
:=
proto
.
Size
(
x
.
Tclose
)
s
:=
proto
.
Size
(
x
.
Tclose
)
n
+=
1
// tag and wire
n
+=
proto
.
SizeVarint
(
3
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
n
+=
s
case
*
TicketAction_Miner
:
case
*
TicketAction_Miner
:
s
:=
proto
.
Size
(
x
.
Miner
)
s
:=
proto
.
Size
(
x
.
Miner
)
n
+=
1
// tag and wire
n
+=
proto
.
SizeVarint
(
4
<<
3
|
proto
.
WireBytes
)
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
proto
.
SizeVarint
(
uint64
(
s
))
n
+=
s
n
+=
s
case
nil
:
case
nil
:
...
@@ -389,47 +360,22 @@ func _TicketAction_OneofSizer(msg proto.Message) (n int) {
...
@@ -389,47 +360,22 @@ func _TicketAction_OneofSizer(msg proto.Message) (n int) {
}
}
type
TicketMiner
struct
{
type
TicketMiner
struct
{
Bits
uint32
`protobuf:"varint,1,opt,name=bits
,proto3
" json:"bits,omitempty"`
Bits
uint32
`protobuf:"varint,1,opt,name=bits" json:"bits,omitempty"`
Reward
int64
`protobuf:"varint,2,opt,name=reward
,proto3
" json:"reward,omitempty"`
Reward
int64
`protobuf:"varint,2,opt,name=reward" json:"reward,omitempty"`
TicketId
string
`protobuf:"bytes,3,opt,name=ticketId
,proto3
" json:"ticketId,omitempty"`
TicketId
string
`protobuf:"bytes,3,opt,name=ticketId" json:"ticketId,omitempty"`
Modify
[]
byte
`protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
Modify
[]
byte
`protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
//挖到区块时公开
//
挖到区块时公开
PrivHash
[]
byte
`protobuf:"bytes,5,opt,name=privHash,proto3" json:"privHash,omitempty"`
PrivHash
[]
byte
`protobuf:"bytes,5,opt,name=privHash,proto3" json:"privHash,omitempty"`
//VRF公钥
// VRF计算得到的hash
PubKey
[]
byte
`protobuf:"bytes,6,opt,name=pubKey,proto3" json:"pubKey,omitempty"`
VrfHash
[]
byte
`protobuf:"bytes,6,opt,name=vrfHash,proto3" json:"vrfHash,omitempty"`
//VRF计算得到的hash
// VRF计算得到的proof
VrfHash
[]
byte
`protobuf:"bytes,7,opt,name=vrfHash,proto3" json:"vrfHash,omitempty"`
VrfProof
[]
byte
`protobuf:"bytes,7,opt,name=vrfProof,proto3" json:"vrfProof,omitempty"`
//VRF计算得到的proof
VrfProof
[]
byte
`protobuf:"bytes,8,opt,name=vrfProof,proto3" json:"vrfProof,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketMiner
)
Reset
()
{
*
m
=
TicketMiner
{}
}
func
(
m
*
TicketMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketMiner
)
ProtoMessage
()
{}
func
(
*
TicketMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
2
}
}
func
(
m
*
TicketMiner
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketMiner
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketMiner
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketMiner
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketMiner
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketMiner
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketMiner
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketMiner
.
Size
(
m
)
}
func
(
m
*
TicketMiner
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketMiner
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_TicketMiner
proto
.
InternalMessageInfo
func
(
m
*
TicketMiner
)
Reset
()
{
*
m
=
TicketMiner
{}
}
func
(
m
*
TicketMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketMiner
)
ProtoMessage
()
{}
func
(
*
TicketMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
2
}
}
func
(
m
*
TicketMiner
)
GetBits
()
uint32
{
func
(
m
*
TicketMiner
)
GetBits
()
uint32
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -466,13 +412,6 @@ func (m *TicketMiner) GetPrivHash() []byte {
...
@@ -466,13 +412,6 @@ func (m *TicketMiner) GetPrivHash() []byte {
return
nil
return
nil
}
}
func
(
m
*
TicketMiner
)
GetPubKey
()
[]
byte
{
if
m
!=
nil
{
return
m
.
PubKey
}
return
nil
}
func
(
m
*
TicketMiner
)
GetVrfHash
()
[]
byte
{
func
(
m
*
TicketMiner
)
GetVrfHash
()
[]
byte
{
if
m
!=
nil
{
if
m
!=
nil
{
return
m
.
VrfHash
return
m
.
VrfHash
...
@@ -488,39 +427,16 @@ func (m *TicketMiner) GetVrfProof() []byte {
...
@@ -488,39 +427,16 @@ func (m *TicketMiner) GetVrfProof() []byte {
}
}
type
TicketMinerOld
struct
{
type
TicketMinerOld
struct
{
Bits
uint32
`protobuf:"varint,1,opt,name=bits,proto3" json:"bits,omitempty"`
Bits
uint32
`protobuf:"varint,1,opt,name=bits" json:"bits,omitempty"`
Reward
int64
`protobuf:"varint,2,opt,name=reward,proto3" json:"reward,omitempty"`
Reward
int64
`protobuf:"varint,2,opt,name=reward" json:"reward,omitempty"`
TicketId
string
`protobuf:"bytes,3,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
TicketId
string
`protobuf:"bytes,3,opt,name=ticketId" json:"ticketId,omitempty"`
Modify
[]
byte
`protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
Modify
[]
byte
`protobuf:"bytes,4,opt,name=modify,proto3" json:"modify,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketMinerOld
)
Reset
()
{
*
m
=
TicketMinerOld
{}
}
func
(
m
*
TicketMinerOld
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketMinerOld
)
ProtoMessage
()
{}
func
(
*
TicketMinerOld
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
3
}
}
func
(
m
*
TicketMinerOld
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketMinerOld
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketMinerOld
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketMinerOld
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketMinerOld
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketMinerOld
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketMinerOld
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketMinerOld
.
Size
(
m
)
}
func
(
m
*
TicketMinerOld
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketMinerOld
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_TicketMinerOld
proto
.
InternalMessageInfo
func
(
m
*
TicketMinerOld
)
Reset
()
{
*
m
=
TicketMinerOld
{}
}
func
(
m
*
TicketMinerOld
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketMinerOld
)
ProtoMessage
()
{}
func
(
*
TicketMinerOld
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
3
}
}
func
(
m
*
TicketMinerOld
)
GetBits
()
uint32
{
func
(
m
*
TicketMinerOld
)
GetBits
()
uint32
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -551,37 +467,14 @@ func (m *TicketMinerOld) GetModify() []byte {
...
@@ -551,37 +467,14 @@ func (m *TicketMinerOld) GetModify() []byte {
}
}
type
MinerFlag
struct
{
type
MinerFlag
struct
{
Flag
int32
`protobuf:"varint,1,opt,name=flag,proto3" json:"flag,omitempty"`
Flag
int32
`protobuf:"varint,1,opt,name=flag" json:"flag,omitempty"`
Reserve
int64
`protobuf:"varint,2,opt,name=reserve,proto3" json:"reserve,omitempty"`
Reserve
int64
`protobuf:"varint,2,opt,name=reserve" json:"reserve,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
MinerFlag
)
Reset
()
{
*
m
=
MinerFlag
{}
}
func
(
m
*
MinerFlag
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
MinerFlag
)
ProtoMessage
()
{}
func
(
*
MinerFlag
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
4
}
}
}
func
(
m
*
MinerFlag
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
m
*
MinerFlag
)
Reset
()
{
*
m
=
MinerFlag
{}
}
return
xxx_messageInfo_MinerFlag
.
Unmarshal
(
m
,
b
)
func
(
m
*
MinerFlag
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
}
func
(
*
MinerFlag
)
ProtoMessage
()
{}
func
(
m
*
MinerFlag
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
func
(
*
MinerFlag
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
4
}
}
return
xxx_messageInfo_MinerFlag
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
MinerFlag
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_MinerFlag
.
Merge
(
m
,
src
)
}
func
(
m
*
MinerFlag
)
XXX_Size
()
int
{
return
xxx_messageInfo_MinerFlag
.
Size
(
m
)
}
func
(
m
*
MinerFlag
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_MinerFlag
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_MinerFlag
proto
.
InternalMessageInfo
func
(
m
*
MinerFlag
)
GetFlag
()
int32
{
func
(
m
*
MinerFlag
)
GetFlag
()
int32
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -598,37 +491,14 @@ func (m *MinerFlag) GetReserve() int64 {
...
@@ -598,37 +491,14 @@ func (m *MinerFlag) GetReserve() int64 {
}
}
type
TicketBind
struct
{
type
TicketBind
struct
{
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress" json:"minerAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,2,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,2,opt,name=returnAddress" json:"returnAddress,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketBind
)
Reset
()
{
*
m
=
TicketBind
{}
}
func
(
m
*
TicketBind
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketBind
)
ProtoMessage
()
{}
func
(
*
TicketBind
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
5
}
}
func
(
m
*
TicketBind
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketBind
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketBind
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketBind
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketBind
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketBind
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketBind
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketBind
.
Size
(
m
)
}
func
(
m
*
TicketBind
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketBind
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_TicketBind
proto
.
InternalMessageInfo
func
(
m
*
TicketBind
)
Reset
()
{
*
m
=
TicketBind
{}
}
func
(
m
*
TicketBind
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketBind
)
ProtoMessage
()
{}
func
(
*
TicketBind
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
5
}
}
func
(
m
*
TicketBind
)
GetMinerAddress
()
string
{
func
(
m
*
TicketBind
)
GetMinerAddress
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -645,45 +515,22 @@ func (m *TicketBind) GetReturnAddress() string {
...
@@ -645,45 +515,22 @@ func (m *TicketBind) GetReturnAddress() string {
}
}
type
TicketOpen
struct
{
type
TicketOpen
struct
{
//用户挖矿的ticket 地址
// 用户挖矿的ticket 地址
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress" json:"minerAddress,omitempty"`
//购买ticket的数目
// 购买ticket的数目
Count
int32
`protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"`
Count
int32
`protobuf:"varint,2,opt,name=count" json:"count,omitempty"`
//币实际存储的地址
// 币实际存储的地址
ReturnAddress
string
`protobuf:"bytes,3,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,3,opt,name=returnAddress" json:"returnAddress,omitempty"`
//随机种子
// 随机种子
RandSeed
int64
`protobuf:"varint,4,opt,name=randSeed,proto3" json:"randSeed,omitempty"`
RandSeed
int64
`protobuf:"varint,4,opt,name=randSeed" json:"randSeed,omitempty"`
//购买ticket时公开
// 购买ticket时公开
PubHashes
[][]
byte
`protobuf:"bytes,5,rep,name=pubHashes,proto3" json:"pubHashes,omitempty"`
PubHashes
[][]
byte
`protobuf:"bytes,5,rep,name=pubHashes,proto3" json:"pubHashes,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
}
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
func
(
m
*
TicketOpen
)
Reset
()
{
*
m
=
TicketOpen
{}
}
}
func
(
m
*
TicketOpen
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketOpen
)
ProtoMessage
()
{}
func
(
m
*
TicketOpen
)
Reset
()
{
*
m
=
TicketOpen
{}
}
func
(
*
TicketOpen
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
6
}
}
func
(
m
*
TicketOpen
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketOpen
)
ProtoMessage
()
{}
func
(
*
TicketOpen
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
6
}
}
func
(
m
*
TicketOpen
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketOpen
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketOpen
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketOpen
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketOpen
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketOpen
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketOpen
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketOpen
.
Size
(
m
)
}
func
(
m
*
TicketOpen
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketOpen
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_TicketOpen
proto
.
InternalMessageInfo
func
(
m
*
TicketOpen
)
GetMinerAddress
()
string
{
func
(
m
*
TicketOpen
)
GetMinerAddress
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -721,38 +568,15 @@ func (m *TicketOpen) GetPubHashes() [][]byte {
...
@@ -721,38 +568,15 @@ func (m *TicketOpen) GetPubHashes() [][]byte {
}
}
type
TicketGenesis
struct
{
type
TicketGenesis
struct
{
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
MinerAddress
string
`protobuf:"bytes,1,opt,name=minerAddress" json:"minerAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,2,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,2,opt,name=returnAddress" json:"returnAddress,omitempty"`
Count
int32
`protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"`
Count
int32
`protobuf:"varint,3,opt,name=count" json:"count,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketGenesis
)
Reset
()
{
*
m
=
TicketGenesis
{}
}
func
(
m
*
TicketGenesis
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketGenesis
)
ProtoMessage
()
{}
func
(
*
TicketGenesis
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
7
}
}
func
(
m
*
TicketGenesis
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketGenesis
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketGenesis
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketGenesis
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketGenesis
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketGenesis
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketGenesis
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketGenesis
.
Size
(
m
)
}
func
(
m
*
TicketGenesis
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketGenesis
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_TicketGenesis
proto
.
InternalMessageInfo
func
(
m
*
TicketGenesis
)
Reset
()
{
*
m
=
TicketGenesis
{}
}
func
(
m
*
TicketGenesis
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketGenesis
)
ProtoMessage
()
{}
func
(
*
TicketGenesis
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
7
}
}
func
(
m
*
TicketGenesis
)
GetMinerAddress
()
string
{
func
(
m
*
TicketGenesis
)
GetMinerAddress
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -776,37 +600,14 @@ func (m *TicketGenesis) GetCount() int32 {
...
@@ -776,37 +600,14 @@ func (m *TicketGenesis) GetCount() int32 {
}
}
type
TicketClose
struct
{
type
TicketClose
struct
{
TicketId
[]
string
`protobuf:"bytes,1,rep,name=ticketId,proto3" json:"ticketId,omitempty"`
TicketId
[]
string
`protobuf:"bytes,1,rep,name=ticketId" json:"ticketId,omitempty"`
MinerAddress
string
`protobuf:"bytes,2,opt,name=minerAddress,proto3" json:"minerAddress,omitempty"`
MinerAddress
string
`protobuf:"bytes,2,opt,name=minerAddress" json:"minerAddress,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketClose
)
Reset
()
{
*
m
=
TicketClose
{}
}
func
(
m
*
TicketClose
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketClose
)
ProtoMessage
()
{}
func
(
*
TicketClose
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
8
}
}
func
(
m
*
TicketClose
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketClose
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketClose
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketClose
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketClose
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketClose
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketClose
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketClose
.
Size
(
m
)
}
func
(
m
*
TicketClose
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketClose
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_TicketClose
proto
.
InternalMessageInfo
func
(
m
*
TicketClose
)
Reset
()
{
*
m
=
TicketClose
{}
}
func
(
m
*
TicketClose
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketClose
)
ProtoMessage
()
{}
func
(
*
TicketClose
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
8
}
}
func
(
m
*
TicketClose
)
GetTicketId
()
[]
string
{
func
(
m
*
TicketClose
)
GetTicketId
()
[]
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -823,37 +624,14 @@ func (m *TicketClose) GetMinerAddress() string {
...
@@ -823,37 +624,14 @@ func (m *TicketClose) GetMinerAddress() string {
}
}
type
TicketList
struct
{
type
TicketList
struct
{
Addr
string
`protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"`
Addr
string
`protobuf:"bytes,1,opt,name=addr" json:"addr,omitempty"`
Status
int32
`protobuf:"varint,3,opt,name=status,proto3" json:"status,omitempty"`
Status
int32
`protobuf:"varint,3,opt,name=status" json:"status,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
TicketList
)
Reset
()
{
*
m
=
TicketList
{}
}
func
(
m
*
TicketList
)
Reset
()
{
*
m
=
TicketList
{}
}
func
(
m
*
TicketList
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
m
*
TicketList
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketList
)
ProtoMessage
()
{}
func
(
*
TicketList
)
ProtoMessage
()
{}
func
(
*
TicketList
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
TicketList
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
9
}
}
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
9
}
}
func
(
m
*
TicketList
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_TicketList
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
TicketList
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_TicketList
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketList
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketList
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketList
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketList
.
Size
(
m
)
}
func
(
m
*
TicketList
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketList
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_TicketList
proto
.
InternalMessageInfo
func
(
m
*
TicketList
)
GetAddr
()
string
{
func
(
m
*
TicketList
)
GetAddr
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -870,36 +648,13 @@ func (m *TicketList) GetStatus() int32 {
...
@@ -870,36 +648,13 @@ func (m *TicketList) GetStatus() int32 {
}
}
type
TicketInfos
struct
{
type
TicketInfos
struct
{
TicketIds
[]
string
`protobuf:"bytes,1,rep,name=ticketIds,proto3" json:"ticketIds,omitempty"`
TicketIds
[]
string
`protobuf:"bytes,1,rep,name=ticketIds" json:"ticketIds,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
TicketInfos
)
Reset
()
{
*
m
=
TicketInfos
{}
}
func
(
m
*
TicketInfos
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
TicketInfos
)
ProtoMessage
()
{}
func
(
*
TicketInfos
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
10
}
}
}
func
(
m
*
TicketInfos
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
m
*
TicketInfos
)
Reset
()
{
*
m
=
TicketInfos
{}
}
return
xxx_messageInfo_TicketInfos
.
Unmarshal
(
m
,
b
)
func
(
m
*
TicketInfos
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
}
func
(
*
TicketInfos
)
ProtoMessage
()
{}
func
(
m
*
TicketInfos
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
func
(
*
TicketInfos
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
10
}
}
return
xxx_messageInfo_TicketInfos
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
TicketInfos
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_TicketInfos
.
Merge
(
m
,
src
)
}
func
(
m
*
TicketInfos
)
XXX_Size
()
int
{
return
xxx_messageInfo_TicketInfos
.
Size
(
m
)
}
func
(
m
*
TicketInfos
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_TicketInfos
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_TicketInfos
proto
.
InternalMessageInfo
func
(
m
*
TicketInfos
)
GetTicketIds
()
[]
string
{
func
(
m
*
TicketInfos
)
GetTicketIds
()
[]
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -909,36 +664,13 @@ func (m *TicketInfos) GetTicketIds() []string {
...
@@ -909,36 +664,13 @@ func (m *TicketInfos) GetTicketIds() []string {
}
}
type
ReplyTicketList
struct
{
type
ReplyTicketList
struct
{
Tickets
[]
*
Ticket
`protobuf:"bytes,1,rep,name=tickets,proto3" json:"tickets,omitempty"`
Tickets
[]
*
Ticket
`protobuf:"bytes,1,rep,name=tickets" json:"tickets,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
ReplyTicketList
)
Reset
()
{
*
m
=
ReplyTicketList
{}
}
func
(
m
*
ReplyTicketList
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyTicketList
)
ProtoMessage
()
{}
func
(
*
ReplyTicketList
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
11
}
}
func
(
m
*
ReplyTicketList
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReplyTicketList
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
ReplyTicketList
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_ReplyTicketList
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReplyTicketList
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReplyTicketList
.
Merge
(
m
,
src
)
}
func
(
m
*
ReplyTicketList
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReplyTicketList
.
Size
(
m
)
}
func
(
m
*
ReplyTicketList
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReplyTicketList
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_ReplyTicketList
proto
.
InternalMessageInfo
func
(
m
*
ReplyTicketList
)
Reset
()
{
*
m
=
ReplyTicketList
{}
}
func
(
m
*
ReplyTicketList
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyTicketList
)
ProtoMessage
()
{}
func
(
*
ReplyTicketList
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
11
}
}
func
(
m
*
ReplyTicketList
)
GetTickets
()
[]
*
Ticket
{
func
(
m
*
ReplyTicketList
)
GetTickets
()
[]
*
Ticket
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -948,37 +680,14 @@ func (m *ReplyTicketList) GetTickets() []*Ticket {
...
@@ -948,37 +680,14 @@ func (m *ReplyTicketList) GetTickets() []*Ticket {
}
}
type
ReplyWalletTickets
struct
{
type
ReplyWalletTickets
struct
{
Tickets
[]
*
Ticket
`protobuf:"bytes,1,rep,name=tickets,proto3" json:"tickets,omitempty"`
Tickets
[]
*
Ticket
`protobuf:"bytes,1,rep,name=tickets" json:"tickets,omitempty"`
Privkeys
[][]
byte
`protobuf:"bytes,2,rep,name=privkeys,proto3" json:"privkeys,omitempty"`
Privkeys
[][]
byte
`protobuf:"bytes,2,rep,name=privkeys,proto3" json:"privkeys,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
ReplyWalletTickets
)
Reset
()
{
*
m
=
ReplyWalletTickets
{}
}
func
(
m
*
ReplyWalletTickets
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyWalletTickets
)
ProtoMessage
()
{}
func
(
*
ReplyWalletTickets
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
12
}
}
func
(
m
*
ReplyWalletTickets
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReplyWalletTickets
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
ReplyWalletTickets
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_ReplyWalletTickets
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReplyWalletTickets
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReplyWalletTickets
.
Merge
(
m
,
src
)
}
func
(
m
*
ReplyWalletTickets
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReplyWalletTickets
.
Size
(
m
)
}
func
(
m
*
ReplyWalletTickets
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReplyWalletTickets
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_ReplyWalletTickets
proto
.
InternalMessageInfo
func
(
m
*
ReplyWalletTickets
)
Reset
()
{
*
m
=
ReplyWalletTickets
{}
}
func
(
m
*
ReplyWalletTickets
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyWalletTickets
)
ProtoMessage
()
{}
func
(
*
ReplyWalletTickets
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
12
}
}
func
(
m
*
ReplyWalletTickets
)
GetTickets
()
[]
*
Ticket
{
func
(
m
*
ReplyWalletTickets
)
GetTickets
()
[]
*
Ticket
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -995,39 +704,16 @@ func (m *ReplyWalletTickets) GetPrivkeys() [][]byte {
...
@@ -995,39 +704,16 @@ func (m *ReplyWalletTickets) GetPrivkeys() [][]byte {
}
}
type
ReceiptTicket
struct
{
type
ReceiptTicket
struct
{
TicketId
string
`protobuf:"bytes,1,opt,name=ticketId,proto3" json:"ticketId,omitempty"`
TicketId
string
`protobuf:"bytes,1,opt,name=ticketId" json:"ticketId,omitempty"`
Status
int32
`protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"`
Status
int32
`protobuf:"varint,2,opt,name=status" json:"status,omitempty"`
PrevStatus
int32
`protobuf:"varint,3,opt,name=prevStatus,proto3" json:"prevStatus,omitempty"`
PrevStatus
int32
`protobuf:"varint,3,opt,name=prevStatus" json:"prevStatus,omitempty"`
Addr
string
`protobuf:"bytes,4,opt,name=addr,proto3" json:"addr,omitempty"`
Addr
string
`protobuf:"bytes,4,opt,name=addr" json:"addr,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
ReceiptTicket
)
Reset
()
{
*
m
=
ReceiptTicket
{}
}
func
(
m
*
ReceiptTicket
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReceiptTicket
)
ProtoMessage
()
{}
func
(
*
ReceiptTicket
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
13
}
}
func
(
m
*
ReceiptTicket
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReceiptTicket
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
ReceiptTicket
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_ReceiptTicket
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReceiptTicket
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReceiptTicket
.
Merge
(
m
,
src
)
}
func
(
m
*
ReceiptTicket
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReceiptTicket
.
Size
(
m
)
}
func
(
m
*
ReceiptTicket
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReceiptTicket
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_ReceiptTicket
proto
.
InternalMessageInfo
func
(
m
*
ReceiptTicket
)
Reset
()
{
*
m
=
ReceiptTicket
{}
}
func
(
m
*
ReceiptTicket
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReceiptTicket
)
ProtoMessage
()
{}
func
(
*
ReceiptTicket
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
13
}
}
func
(
m
*
ReceiptTicket
)
GetTicketId
()
string
{
func
(
m
*
ReceiptTicket
)
GetTicketId
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -1058,38 +744,15 @@ func (m *ReceiptTicket) GetAddr() string {
...
@@ -1058,38 +744,15 @@ func (m *ReceiptTicket) GetAddr() string {
}
}
type
ReceiptTicketBind
struct
{
type
ReceiptTicketBind
struct
{
OldMinerAddress
string
`protobuf:"bytes,1,opt,name=oldMinerAddress,proto3" json:"oldMinerAddress,omitempty"`
OldMinerAddress
string
`protobuf:"bytes,1,opt,name=oldMinerAddress" json:"oldMinerAddress,omitempty"`
NewMinerAddress
string
`protobuf:"bytes,2,opt,name=newMinerAddress,proto3" json:"newMinerAddress,omitempty"`
NewMinerAddress
string
`protobuf:"bytes,2,opt,name=newMinerAddress" json:"newMinerAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,3,opt,name=returnAddress,proto3" json:"returnAddress,omitempty"`
ReturnAddress
string
`protobuf:"bytes,3,opt,name=returnAddress" json:"returnAddress,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
}
func
(
m
*
ReceiptTicketBind
)
Reset
()
{
*
m
=
ReceiptTicketBind
{}
}
func
(
m
*
ReceiptTicketBind
)
Reset
()
{
*
m
=
ReceiptTicketBind
{}
}
func
(
m
*
ReceiptTicketBind
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
m
*
ReceiptTicketBind
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReceiptTicketBind
)
ProtoMessage
()
{}
func
(
*
ReceiptTicketBind
)
ProtoMessage
()
{}
func
(
*
ReceiptTicketBind
)
Descriptor
()
([]
byte
,
[]
int
)
{
func
(
*
ReceiptTicketBind
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
14
}
}
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
14
}
}
func
(
m
*
ReceiptTicketBind
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReceiptTicketBind
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
ReceiptTicketBind
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_ReceiptTicketBind
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReceiptTicketBind
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReceiptTicketBind
.
Merge
(
m
,
src
)
}
func
(
m
*
ReceiptTicketBind
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReceiptTicketBind
.
Size
(
m
)
}
func
(
m
*
ReceiptTicketBind
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReceiptTicketBind
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_ReceiptTicketBind
proto
.
InternalMessageInfo
func
(
m
*
ReceiptTicketBind
)
GetOldMinerAddress
()
string
{
func
(
m
*
ReceiptTicketBind
)
GetOldMinerAddress
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -1113,39 +776,16 @@ func (m *ReceiptTicketBind) GetReturnAddress() string {
...
@@ -1113,39 +776,16 @@ func (m *ReceiptTicketBind) GetReturnAddress() string {
}
}
type
ReqBindMiner
struct
{
type
ReqBindMiner
struct
{
BindAddr
string
`protobuf:"bytes,1,opt,name=bindAddr,proto3" json:"bindAddr,omitempty"`
BindAddr
string
`protobuf:"bytes,1,opt,name=bindAddr" json:"bindAddr,omitempty"`
OriginAddr
string
`protobuf:"bytes,2,opt,name=originAddr,proto3" json:"originAddr,omitempty"`
OriginAddr
string
`protobuf:"bytes,2,opt,name=originAddr" json:"originAddr,omitempty"`
Amount
int64
`protobuf:"varint,3,opt,name=amount,proto3" json:"amount,omitempty"`
Amount
int64
`protobuf:"varint,3,opt,name=amount" json:"amount,omitempty"`
CheckBalance
bool
`protobuf:"varint,4,opt,name=checkBalance,proto3" json:"checkBalance,omitempty"`
CheckBalance
bool
`protobuf:"varint,4,opt,name=checkBalance" json:"checkBalance,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
ReqBindMiner
)
Reset
()
{
*
m
=
ReqBindMiner
{}
}
func
(
m
*
ReqBindMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReqBindMiner
)
ProtoMessage
()
{}
func
(
*
ReqBindMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
15
}
}
}
func
(
m
*
ReqBindMiner
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
func
(
m
*
ReqBindMiner
)
Reset
()
{
*
m
=
ReqBindMiner
{}
}
return
xxx_messageInfo_ReqBindMiner
.
Unmarshal
(
m
,
b
)
func
(
m
*
ReqBindMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
}
func
(
*
ReqBindMiner
)
ProtoMessage
()
{}
func
(
m
*
ReqBindMiner
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
func
(
*
ReqBindMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
15
}
}
return
xxx_messageInfo_ReqBindMiner
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReqBindMiner
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReqBindMiner
.
Merge
(
m
,
src
)
}
func
(
m
*
ReqBindMiner
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReqBindMiner
.
Size
(
m
)
}
func
(
m
*
ReqBindMiner
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReqBindMiner
.
DiscardUnknown
(
m
)
}
var
xxx_messageInfo_ReqBindMiner
proto
.
InternalMessageInfo
func
(
m
*
ReqBindMiner
)
GetBindAddr
()
string
{
func
(
m
*
ReqBindMiner
)
GetBindAddr
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -1176,36 +816,13 @@ func (m *ReqBindMiner) GetCheckBalance() bool {
...
@@ -1176,36 +816,13 @@ func (m *ReqBindMiner) GetCheckBalance() bool {
}
}
type
ReplyBindMiner
struct
{
type
ReplyBindMiner
struct
{
TxHex
string
`protobuf:"bytes,1,opt,name=txHex,proto3" json:"txHex,omitempty"`
TxHex
string
`protobuf:"bytes,1,opt,name=txHex" json:"txHex,omitempty"`
XXX_NoUnkeyedLiteral
struct
{}
`json:"-"`
XXX_unrecognized
[]
byte
`json:"-"`
XXX_sizecache
int32
`json:"-"`
}
func
(
m
*
ReplyBindMiner
)
Reset
()
{
*
m
=
ReplyBindMiner
{}
}
func
(
m
*
ReplyBindMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyBindMiner
)
ProtoMessage
()
{}
func
(
*
ReplyBindMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor_98a6c21780e82d22
,
[]
int
{
16
}
}
func
(
m
*
ReplyBindMiner
)
XXX_Unmarshal
(
b
[]
byte
)
error
{
return
xxx_messageInfo_ReplyBindMiner
.
Unmarshal
(
m
,
b
)
}
func
(
m
*
ReplyBindMiner
)
XXX_Marshal
(
b
[]
byte
,
deterministic
bool
)
([]
byte
,
error
)
{
return
xxx_messageInfo_ReplyBindMiner
.
Marshal
(
b
,
m
,
deterministic
)
}
func
(
m
*
ReplyBindMiner
)
XXX_Merge
(
src
proto
.
Message
)
{
xxx_messageInfo_ReplyBindMiner
.
Merge
(
m
,
src
)
}
func
(
m
*
ReplyBindMiner
)
XXX_Size
()
int
{
return
xxx_messageInfo_ReplyBindMiner
.
Size
(
m
)
}
func
(
m
*
ReplyBindMiner
)
XXX_DiscardUnknown
()
{
xxx_messageInfo_ReplyBindMiner
.
DiscardUnknown
(
m
)
}
}
var
xxx_messageInfo_ReplyBindMiner
proto
.
InternalMessageInfo
func
(
m
*
ReplyBindMiner
)
Reset
()
{
*
m
=
ReplyBindMiner
{}
}
func
(
m
*
ReplyBindMiner
)
String
()
string
{
return
proto
.
CompactTextString
(
m
)
}
func
(
*
ReplyBindMiner
)
ProtoMessage
()
{}
func
(
*
ReplyBindMiner
)
Descriptor
()
([]
byte
,
[]
int
)
{
return
fileDescriptor0
,
[]
int
{
16
}
}
func
(
m
*
ReplyBindMiner
)
GetTxHex
()
string
{
func
(
m
*
ReplyBindMiner
)
GetTxHex
()
string
{
if
m
!=
nil
{
if
m
!=
nil
{
...
@@ -1234,68 +851,6 @@ func init() {
...
@@ -1234,68 +851,6 @@ func init() {
proto
.
RegisterType
((
*
ReplyBindMiner
)(
nil
),
"types.ReplyBindMiner"
)
proto
.
RegisterType
((
*
ReplyBindMiner
)(
nil
),
"types.ReplyBindMiner"
)
}
}
func
init
()
{
proto
.
RegisterFile
(
"ticket.proto"
,
fileDescriptor_98a6c21780e82d22
)
}
var
fileDescriptor_98a6c21780e82d22
=
[]
byte
{
// 890 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xb4
,
0x56
,
0xcd
,
0x6e
,
0x23
,
0x45
,
0x10
,
0xf6
,
0x78
,
0x32
,
0xb6
,
0x53
,
0x19
,
0x27
,
0x6c
,
0x13
,
0xd0
,
0xc8
,
0x42
,
0x2b
,
0xab
,
0x85
,
0xc0
,
0xfc
,
0x28
,
0x40
,
0x40
,
0x08
,
0xb8
,
0xa0
,
0x24
,
0x12
,
0xeb
,
0x08
,
0xcc
,
0xa2
,
0xce
,
0x6a
,
0x11
,
0xc7
,
0xf1
,
0x4c
,
0xdb
,
0xdb
,
0xca
,
0xb8
,
0x67
,
0xe8
,
0x69
,
0x3b
,
0xeb
,
0x17
,
0x40
,
0xe2
,
0xc0
,
0x9d
,
0x27
,
0xe0
,
0xc6
,
0xf3
,
0xf0
,
0x3a
,
0xa8
,
0x6b
,
0x7a
,
0xfe
,
0xec
,
0x3d
,
0x58
,
0x82
,
0xbd
,
0xf9
,
0xab
,
0xfe
,
0x6a
,
0xaa
,
0xea
,
0xeb
,
0xaa
,
0x6a
,
0x83
,
0xaf
,
0x45
,
0x74
,
0xcf
,
0xf5
,
0x45
,
0xa6
,
0x52
,
0x9d
,
0x12
,
0x4f
,
0x6f
,
0x33
,
0x9e
,
0x8f
,
0xfc
,
0x28
,
0x5d
,
0xad
,
0x52
,
0x59
,
0x18
,
0xe9
,
0x9f
,
0x5d
,
0xe8
,
0x3d
,
0x43
,
0x16
,
0x19
,
0xc1
,
0xa0
,
0xe0
,
0xdf
,
0xc6
,
0x81
,
0x33
,
0x76
,
0x26
,
0xc7
,
0xac
,
0xc2
,
0xe4
,
0x6d
,
0xe8
,
0xe5
,
0x3a
,
0xd4
,
0xeb
,
0x3c
,
0xe8
,
0x8e
,
0x9d
,
0x89
,
0xc7
,
0x2c
,
0x22
,
0xef
,
0xc0
,
0xb1
,
0xc8
,
0x9f
,
0x70
,
0xc9
,
0x73
,
0x91
,
0x07
,
0xee
,
0xd8
,
0x99
,
0x0c
,
0x58
,
0x6d
,
0x20
,
0x8f
,
0x01
,
0x22
,
0xc5
,
0x43
,
0xcd
,
0x9f
,
0x89
,
0x15
,
0x0f
,
0x8e
,
0xc6
,
0xce
,
0xc4
,
0x65
,
0x0d
,
0x8b
,
0xf1
,
0x5e
,
0x09
,
0xc9
,
0x15
,
0x1e
,
0x7b
,
0x78
,
0x5c
,
0x1b
,
0x8c
,
0x37
,
0x82
,
0xe7
,
0x61
,
0xb2
,
0xe6
,
0xc1
,
0xa0
,
0xf0
,
0xae
,
0x2d
,
0x84
,
0x82
,
0x8f
,
0xe8
,
0x2a
,
0x8e
,
0x15
,
0xcf
,
0xf3
,
0xa0
,
0x87
,
0x39
,
0xb7
,
0x6c
,
0xe4
,
0x5d
,
0x18
,
0x2a
,
0xae
,
0xd7
,
0x4a
,
0x96
,
0xa4
,
0x3e
,
0x92
,
0xda
,
0x46
,
0x72
,
0x0e
,
0x5e
,
0xa6
,
0x44
,
0xc4
,
0x83
,
0x63
,
0x0c
,
0x52
,
0x00
,
0xfa
,
0x7b
,
0x17
,
0xfc
,
0x42
,
0x9a
,
0xab
,
0x48
,
0x8b
,
0x54
,
0x92
,
0x0f
,
0xc0
,
0xd3
,
0x73
,
0x21
,
0x63
,
0x4c
,
0xf5
,
0xe4
,
0xf2
,
0xd1
,
0x05
,
0x0a
,
0x7a
,
0x51
,
0x70
,
0xae
,
0x85
,
0x8c
,
0xa7
,
0x1d
,
0x56
,
0x30
,
0x90
,
0x9a
,
0x66
,
0x5c
,
0xa2
,
0x90
,
0xbb
,
0xd4
,
0xa7
,
0x19
,
0x97
,
0x48
,
0x35
,
0x0c
,
0xf2
,
0x29
,
0xf4
,
0x97
,
0x56
,
0xc0
,
0x2e
,
0x92
,
0xcf
,
0x5b
,
0x64
,
0xab
,
0xe5
,
0xb4
,
0xc3
,
0x4a
,
0x1a
,
0xf9
,
0x18
,
0x7a
,
0x3a
,
0x4a
,
0xd2
,
0x9c
,
0xa3
,
0xe2
,
0x27
,
0x97
,
0xa4
,
0xe5
,
0x70
,
0x63
,
0x4e
,
0xa6
,
0x1d
,
0x66
,
0x39
,
0xe4
,
0x43
,
0xf0
,
0x50
,
0x12
,
0xd4
,
0x7f
,
0x97
,
0x3c
,
0x33
,
0x27
,
0x26
,
0x17
,
0xa4
,
0x90
,
0x53
,
0xe8
,
0xea
,
0x6d
,
0x00
,
0x78
,
0xc5
,
0x5d
,
0xbd
,
0xbd
,
0xee
,
0x83
,
0xb7
,
0x31
,
0x5a
,
0xd3
,
0x7f
,
0x1c
,
0x38
,
0x69
,
0x78
,
0x10
,
0x02
,
0x47
,
0x73
,
0xa1
,
0x73
,
0x2c
,
0x6f
,
0xc8
,
0xf0
,
0xb7
,
0xe9
,
0x11
,
0xc5
,
0x1f
,
0x42
,
0x15
,
0x63
,
0x1d
,
0x2e
,
0xb3
,
0xa8
,
0xd5
,
0x57
,
0xee
,
0x7e
,
0x5f
,
0xad
,
0xd2
,
0x58
,
0x2c
,
0xb6
,
0x98
,
0x9d
,
0xcf
,
0x2c
,
0x32
,
0x3e
,
0x99
,
0x12
,
0x9b
,
0x69
,
0x98
,
0xbf
,
0x40
,
0xb5
,
0x7d
,
0x56
,
0x61
,
0xe3
,
0x93
,
0xad
,
0xe7
,
0xdf
,
0xf3
,
0x2d
,
0xde
,
0xb8
,
0xcf
,
0x2c
,
0x22
,
0x01
,
0xf4
,
0x37
,
0x6a
,
0x81
,
0x2e
,
0x7d
,
0x3c
,
0x28
,
0xa1
,
0xf9
,
0xda
,
0x46
,
0x2d
,
0x7e
,
0x52
,
0x69
,
0xba
,
0xc0
,
0x3e
,
0xf2
,
0x59
,
0x85
,
0x69
,
0x06
,
0xa7
,
0x8d
,
0xc2
,
0x9e
,
0x26
,
0xf1
,
0xeb
,
0xae
,
0x8d
,
0x7e
,
0x0d
,
0xc7
,
0x18
,
0xeb
,
0xbb
,
0x24
,
0x5c
,
0x9a
,
0x60
,
0x8b
,
0x24
,
0x5c
,
0x62
,
0x30
,
0x8f
,
0xe1
,
0x6f
,
0x53
,
0x88
,
0xe2
,
0x39
,
0x57
,
0x1b
,
0x6e
,
0xa3
,
0x95
,
0x90
,
0x3e
,
0x07
,
0xa8
,
0xbb
,
0x6d
,
0x6f
,
0x00
,
0x9c
,
0x43
,
0x06
,
0xa0
,
0xfb
,
0x8a
,
0x01
,
0xa0
,
0x7f
,
0x39
,
0xe5
,
0x87
,
0x4d
,
0x6f
,
0x1e
,
0xf4
,
0xe1
,
0x73
,
0xf0
,
0xa2
,
0x74
,
0x2d
,
0xb5
,
0x5d
,
0x08
,
0x05
,
0xd8
,
0x0f
,
0xe7
,
0xbe
,
0x6a
,
0xde
,
0x46
,
0x30
,
0x50
,
0xa1
,
0x8c
,
0xef
,
0x38
,
0x8f
,
0xed
,
0x56
,
0xa8
,
0xb0
,
0xd9
,
0x09
,
0xd9
,
0x7a
,
0x6e
,
0xae
,
0x8d
,
0xe7
,
0x81
,
0x37
,
0x76
,
0x27
,
0x3e
,
0xab
,
0x0d
,
0x34
,
0x85
,
0x61
,
0x6b
,
0x2c
,
0xfe
,
0x3f
,
0x0d
,
0xea
,
0x82
,
0xdc
,
0x46
,
0x41
,
0x74
,
0x56
,
0xf6
,
0x3d
,
0x8e
,
0xd5
,
0xce
,
0x8e
,
0x74
,
0x5b
,
0xf7
,
0xbd
,
0x9b
,
0x4a
,
0x77
,
0x3f
,
0x15
,
0xfa
,
0x55
,
0xa9
,
0xf3
,
0x0f
,
0x22
,
0xd7
,
0xe6
,
0xf2
,
0xc3
,
0x38
,
0x56
,
0x36
,
0x69
,
0xfc
,
0xdd
,
0xd8
,
0xb4
,
0x6e
,
0x73
,
0xd3
,
0xd2
,
0x8f
,
0xca
,
0x44
,
0x6e
,
0xe5
,
0x22
,
0xc5
,
0xc5
,
0x5b
,
0x06
,
0xce
,
0x6d
,
0x26
,
0xb5
,
0x81
,
0x7e
,
0x03
,
0x67
,
0x8c
,
0x67
,
0xc9
,
0xb6
,
0x11
,
0xeb
,
0x7d
,
0xe8
,
0x17
,
0xe7
,
0x05
,
0xfd
,
0xe4
,
0x72
,
0xd8
,
0x5a
,
0x04
,
0xac
,
0x3c
,
0xa5
,
0xbf
,
0x00
,
0x41
,
0xdf
,
0x9f
,
0xc3
,
0x24
,
0xe1
,
0xba
,
0x38
,
0xcd
,
0x0f
,
0x76
,
0x2f
,
0x27
,
0xf7
,
0x9e
,
0x6f
,
0x8d
,
0x02
,
0x6e
,
0x39
,
0xb9
,
0x06
,
0xd3
,
0x07
,
0x18
,
0x32
,
0x1e
,
0x71
,
0x91
,
0xe9
,
0xff
,
0xf0
,
0xe4
,
0x3c
,
0x06
,
0xc8
,
0x14
,
0xdf
,
0xdc
,
0x35
,
0x45
,
0x6a
,
0x58
,
0x2a
,
0x51
,
0x8f
,
0x6a
,
0x51
,
0xe9
,
0x1f
,
0x0e
,
0x3c
,
0x6a
,
0x45
,
0xc6
,
0xf9
,
0x99
,
0xc0
,
0x59
,
0x9a
,
0xc4
,
0xb3
,
0xfd
,
0xf6
,
0xd9
,
0x35
,
0x1b
,
0xa6
,
0xe4
,
0x0f
,
0xb3
,
0xfd
,
0xdb
,
0xdd
,
0x35
,
0x1f
,
0x36
,
0x00
,
0xf4
,
0x37
,
0x07
,
0x7c
,
0xc6
,
0x7f
,
0x35
,
0x59
,
0x14
,
0xfb
,
0x74
,
0x04
,
0x03
,
0xf3
,
0x6e
,
0x5c
,
0xd5
,
0xdd
,
0x50
,
0x61
,
0x53
,
0x70
,
0xaa
,
0xc4
,
0x52
,
0xa0
,
0xb7
,
0x8d
,
0xdb
,
0xb0
,
0x18
,
0xa1
,
0xc2
,
0x55
,
0xd5
,
0xb9
,
0x2e
,
0xb3
,
0xc8
,
0xf4
,
0x63
,
0xf4
,
0x82
,
0x47
,
0xf7
,
0xd7
,
0x61
,
0x12
,
0xca
,
0xa8
,
0x78
,
0x7f
,
0x07
,
0xac
,
0x65
,
0xa3
,
0xef
,
0xc1
,
0x29
,
0x5e
,
0x76
,
0x9d
,
0xc9
,
0x39
,
0x78
,
0xfa
,
0xe5
,
0x94
,
0xbf
,
0xb4
,
0x69
,
0x14
,
0xe0
,
0xf2
,
0x6f
,
0x07
,
0x7a
,
0xc5
,
0xcd
,
0x90
,
0x6f
,
0xe1
,
0xec
,
0x06
,
0x9f
,
0xf0
,
0xda
,
0xe7
,
0x4d
,
0xdb
,
0x0b
,
0xcd
,
0x92
,
0x46
,
0x6f
,
0x55
,
0xc6
,
0xe6
,
0xf7
,
0x69
,
0x87
,
0x7c
,
0x02
,
0xa7
,
0x4f
,
0xca
,
0xc6
,
0xba
,
0xc1
,
0x4c
,
0x87
,
0xb5
,
0xff
,
0x8f
,
0x22
,
0x19
,
0xf9
,
0x16
,
0xde
,
0x4a
,
0xfd
,
0xe5
,
0x17
,
0xb4
,
0x43
,
0x3e
,
0x83
,
0xe1
,
0x1d
,
0xd7
,
0x57
,
0x6b
,
0x9d
,
0xce
,
0x84
,
0x14
,
0x72
,
0x49
,
0xde
,
0xb0
,
0x84
,
0x6a
,
0x8d
,
0x56
,
0x2e
,
0x18
,
0x8c
,
0x76
,
0xe6
,
0x3d
,
0xfc
,
0x77
,
0xf3
,
0xf9
,
0xbf
,
0x01
,
0x00
,
0x00
,
0xff
,
0xff
,
0x2a
,
0xad
,
0x66
,
0x94
,
0x02
,
0x09
,
0x00
,
0x00
,
}
// Reference imports to suppress errors if they are not otherwise used.
// Reference imports to suppress errors if they are not otherwise used.
var
_
context
.
Context
var
_
context
.
Context
var
_
grpc
.
ClientConn
var
_
grpc
.
ClientConn
...
@@ -1304,17 +859,16 @@ var _ grpc.ClientConn
...
@@ -1304,17 +859,16 @@ var _ grpc.ClientConn
// is compatible with the grpc package it is being compiled against.
// is compatible with the grpc package it is being compiled against.
const
_
=
grpc
.
SupportPackageIsVersion4
const
_
=
grpc
.
SupportPackageIsVersion4
// TicketClient is the client API for Ticket service.
// Client API for Ticket service
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type
TicketClient
interface
{
type
TicketClient
interface
{
//创建绑定挖矿
//
创建绑定挖矿
CreateBindMiner
(
ctx
context
.
Context
,
in
*
ReqBindMiner
,
opts
...
grpc
.
CallOption
)
(
*
ReplyBindMiner
,
error
)
CreateBindMiner
(
ctx
context
.
Context
,
in
*
ReqBindMiner
,
opts
...
grpc
.
CallOption
)
(
*
ReplyBindMiner
,
error
)
//查询钱包票数
//
查询钱包票数
GetTicketCount
(
ctx
context
.
Context
,
in
*
types
.
ReqNil
,
opts
...
grpc
.
CallOption
)
(
*
types
.
Int64
,
error
)
GetTicketCount
(
ctx
context
.
Context
,
in
*
types
1
.
ReqNil
,
opts
...
grpc
.
CallOption
)
(
*
types1
.
Int64
,
error
)
// Miner
// Miner
//设置自动挖矿
//
设置自动挖矿
SetAutoMining
(
ctx
context
.
Context
,
in
*
MinerFlag
,
opts
...
grpc
.
CallOption
)
(
*
types
.
Reply
,
error
)
SetAutoMining
(
ctx
context
.
Context
,
in
*
MinerFlag
,
opts
...
grpc
.
CallOption
)
(
*
types
1
.
Reply
,
error
)
}
}
type
ticketClient
struct
{
type
ticketClient
struct
{
...
@@ -1327,40 +881,41 @@ func NewTicketClient(cc *grpc.ClientConn) TicketClient {
...
@@ -1327,40 +881,41 @@ func NewTicketClient(cc *grpc.ClientConn) TicketClient {
func
(
c
*
ticketClient
)
CreateBindMiner
(
ctx
context
.
Context
,
in
*
ReqBindMiner
,
opts
...
grpc
.
CallOption
)
(
*
ReplyBindMiner
,
error
)
{
func
(
c
*
ticketClient
)
CreateBindMiner
(
ctx
context
.
Context
,
in
*
ReqBindMiner
,
opts
...
grpc
.
CallOption
)
(
*
ReplyBindMiner
,
error
)
{
out
:=
new
(
ReplyBindMiner
)
out
:=
new
(
ReplyBindMiner
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/types.ticket/CreateBindMiner"
,
in
,
out
,
opts
...
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.ticket/CreateBindMiner"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
return
out
,
nil
return
out
,
nil
}
}
func
(
c
*
ticketClient
)
GetTicketCount
(
ctx
context
.
Context
,
in
*
types
.
ReqNil
,
opts
...
grpc
.
CallOption
)
(
*
types
.
Int64
,
error
)
{
func
(
c
*
ticketClient
)
GetTicketCount
(
ctx
context
.
Context
,
in
*
types
1
.
ReqNil
,
opts
...
grpc
.
CallOption
)
(
*
types1
.
Int64
,
error
)
{
out
:=
new
(
types
.
Int64
)
out
:=
new
(
types
1
.
Int64
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/types.ticket/GetTicketCount"
,
in
,
out
,
opts
...
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.ticket/GetTicketCount"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
return
out
,
nil
return
out
,
nil
}
}
func
(
c
*
ticketClient
)
SetAutoMining
(
ctx
context
.
Context
,
in
*
MinerFlag
,
opts
...
grpc
.
CallOption
)
(
*
types
.
Reply
,
error
)
{
func
(
c
*
ticketClient
)
SetAutoMining
(
ctx
context
.
Context
,
in
*
MinerFlag
,
opts
...
grpc
.
CallOption
)
(
*
types
1
.
Reply
,
error
)
{
out
:=
new
(
types
.
Reply
)
out
:=
new
(
types
1
.
Reply
)
err
:=
c
.
cc
.
Invoke
(
ctx
,
"/types.ticket/SetAutoMining"
,
in
,
out
,
opts
...
)
err
:=
grpc
.
Invoke
(
ctx
,
"/types.ticket/SetAutoMining"
,
in
,
out
,
c
.
cc
,
opts
...
)
if
err
!=
nil
{
if
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
return
out
,
nil
return
out
,
nil
}
}
// TicketServer is the server API for Ticket service.
// Server API for Ticket service
type
TicketServer
interface
{
type
TicketServer
interface
{
//创建绑定挖矿
//
创建绑定挖矿
CreateBindMiner
(
context
.
Context
,
*
ReqBindMiner
)
(
*
ReplyBindMiner
,
error
)
CreateBindMiner
(
context
.
Context
,
*
ReqBindMiner
)
(
*
ReplyBindMiner
,
error
)
//查询钱包票数
//
查询钱包票数
GetTicketCount
(
context
.
Context
,
*
types
.
ReqNil
)
(
*
types
.
Int64
,
error
)
GetTicketCount
(
context
.
Context
,
*
types
1
.
ReqNil
)
(
*
types1
.
Int64
,
error
)
// Miner
// Miner
//设置自动挖矿
//
设置自动挖矿
SetAutoMining
(
context
.
Context
,
*
MinerFlag
)
(
*
types
.
Reply
,
error
)
SetAutoMining
(
context
.
Context
,
*
MinerFlag
)
(
*
types
1
.
Reply
,
error
)
}
}
func
RegisterTicketServer
(
s
*
grpc
.
Server
,
srv
TicketServer
)
{
func
RegisterTicketServer
(
s
*
grpc
.
Server
,
srv
TicketServer
)
{
...
@@ -1386,7 +941,7 @@ func _Ticket_CreateBindMiner_Handler(srv interface{}, ctx context.Context, dec f
...
@@ -1386,7 +941,7 @@ func _Ticket_CreateBindMiner_Handler(srv interface{}, ctx context.Context, dec f
}
}
func
_Ticket_GetTicketCount_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
func
_Ticket_GetTicketCount_Handler
(
srv
interface
{},
ctx
context
.
Context
,
dec
func
(
interface
{})
error
,
interceptor
grpc
.
UnaryServerInterceptor
)
(
interface
{},
error
)
{
in
:=
new
(
types
.
ReqNil
)
in
:=
new
(
types
1
.
ReqNil
)
if
err
:=
dec
(
in
);
err
!=
nil
{
if
err
:=
dec
(
in
);
err
!=
nil
{
return
nil
,
err
return
nil
,
err
}
}
...
@@ -1398,7 +953,7 @@ func _Ticket_GetTicketCount_Handler(srv interface{}, ctx context.Context, dec fu
...
@@ -1398,7 +953,7 @@ func _Ticket_GetTicketCount_Handler(srv interface{}, ctx context.Context, dec fu
FullMethod
:
"/types.ticket/GetTicketCount"
,
FullMethod
:
"/types.ticket/GetTicketCount"
,
}
}
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
handler
:=
func
(
ctx
context
.
Context
,
req
interface
{})
(
interface
{},
error
)
{
return
srv
.
(
TicketServer
)
.
GetTicketCount
(
ctx
,
req
.
(
*
types
.
ReqNil
))
return
srv
.
(
TicketServer
)
.
GetTicketCount
(
ctx
,
req
.
(
*
types
1
.
ReqNil
))
}
}
return
interceptor
(
ctx
,
in
,
info
,
handler
)
return
interceptor
(
ctx
,
in
,
info
,
handler
)
}
}
...
@@ -1441,3 +996,64 @@ var _Ticket_serviceDesc = grpc.ServiceDesc{
...
@@ -1441,3 +996,64 @@ var _Ticket_serviceDesc = grpc.ServiceDesc{
Streams
:
[]
grpc
.
StreamDesc
{},
Streams
:
[]
grpc
.
StreamDesc
{},
Metadata
:
"ticket.proto"
,
Metadata
:
"ticket.proto"
,
}
}
func
init
()
{
proto
.
RegisterFile
(
"ticket.proto"
,
fileDescriptor0
)
}
var
fileDescriptor0
=
[]
byte
{
// 877 bytes of a gzipped FileDescriptorProto
0x1f
,
0x8b
,
0x08
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x02
,
0xff
,
0xb4
,
0x56
,
0xdd
,
0x6e
,
0xeb
,
0x44
,
0x10
,
0x8e
,
0xed
,
0x3a
,
0x49
,
0xa7
,
0x4e
,
0xcb
,
0x59
,
0x0a
,
0xb2
,
0x22
,
0x74
,
0x14
,
0xad
,
0x10
,
0x84
,
0x1f
,
0x15
,
0x28
,
0x08
,
0x01
,
0x37
,
0xa8
,
0xad
,
0xc4
,
0x49
,
0x25
,
0xc2
,
0x41
,
0xdb
,
0xa3
,
0x83
,
0xb8
,
0x74
,
0xed
,
0x4d
,
0xce
,
0xaa
,
0xce
,
0xda
,
0xac
,
0x37
,
0xe9
,
0xc9
,
0x0b
,
0x20
,
0x71
,
0xc1
,
0x3d
,
0x4f
,
0xc0
,
0x1d
,
0xcf
,
0xc0
,
0xab
,
0xa1
,
0x1d
,
0xaf
,
0xff
,
0x92
,
0x5e
,
0x54
,
0x02
,
0xee
,
0xf2
,
0xcd
,
0x7c
,
0xe3
,
0x99
,
0xf9
,
0x76
,
0x66
,
0x37
,
0x10
,
0x68
,
0x11
,
0xdf
,
0x71
,
0x7d
,
0x96
,
0xab
,
0x4c
,
0x67
,
0xc4
,
0xd7
,
0xdb
,
0x9c
,
0x17
,
0xe3
,
0x20
,
0xce
,
0x56
,
0xab
,
0x4c
,
0x96
,
0x46
,
0xfa
,
0x87
,
0x0b
,
0xfd
,
0x17
,
0xc8
,
0x22
,
0x63
,
0x18
,
0x96
,
0xfc
,
0xeb
,
0x24
,
0x74
,
0x26
,
0xce
,
0xf4
,
0x90
,
0xd5
,
0x98
,
0xbc
,
0x0d
,
0xfd
,
0x42
,
0x47
,
0x7a
,
0x5d
,
0x84
,
0xee
,
0xc4
,
0x99
,
0xfa
,
0xcc
,
0x22
,
0xf2
,
0x0e
,
0x1c
,
0x8a
,
0xe2
,
0x19
,
0x97
,
0xbc
,
0x10
,
0x45
,
0xe8
,
0x4d
,
0x9c
,
0xe9
,
0x90
,
0x35
,
0x06
,
0xf2
,
0x14
,
0x20
,
0x56
,
0x3c
,
0xd2
,
0xfc
,
0x85
,
0x58
,
0xf1
,
0xf0
,
0x60
,
0xe2
,
0x4c
,
0x3d
,
0xd6
,
0xb2
,
0x98
,
0xe8
,
0x95
,
0x90
,
0x5c
,
0xa1
,
0xdb
,
0x47
,
0x77
,
0x63
,
0x30
,
0xd1
,
0x08
,
0x5e
,
0x46
,
0xe9
,
0x9a
,
0x87
,
0xc3
,
0x32
,
0xba
,
0xb1
,
0x10
,
0x0a
,
0x01
,
0xa2
,
0x8b
,
0x24
,
0x51
,
0xbc
,
0x28
,
0xc2
,
0x3e
,
0xd6
,
0xdc
,
0xb1
,
0x91
,
0x77
,
0x61
,
0xa4
,
0xb8
,
0x5e
,
0x2b
,
0x59
,
0x91
,
0x06
,
0x48
,
0xea
,
0x1a
,
0xc9
,
0x29
,
0xf8
,
0xb9
,
0x12
,
0x31
,
0x0f
,
0x0f
,
0x31
,
0x49
,
0x09
,
0xe8
,
0x6f
,
0x2e
,
0x04
,
0xa5
,
0x34
,
0x17
,
0xb1
,
0x16
,
0x99
,
0x24
,
0x1f
,
0x80
,
0xaf
,
0x6f
,
0x85
,
0x4c
,
0xb0
,
0xd4
,
0xa3
,
0xf3
,
0x27
,
0x67
,
0x28
,
0xe8
,
0x59
,
0xc9
,
0xb9
,
0x14
,
0x32
,
0x99
,
0xf5
,
0x58
,
0xc9
,
0x40
,
0x6a
,
0x96
,
0x73
,
0x89
,
0x42
,
0xee
,
0x52
,
0x9f
,
0xe7
,
0x5c
,
0x22
,
0xd5
,
0x30
,
0xc8
,
0xa7
,
0x30
,
0x58
,
0x5a
,
0x01
,
0x5d
,
0x24
,
0x9f
,
0x76
,
0xc8
,
0x56
,
0xcb
,
0x59
,
0x8f
,
0x55
,
0x34
,
0xf2
,
0x31
,
0xf4
,
0x75
,
0x9c
,
0x66
,
0x05
,
0x47
,
0xc5
,
0x8f
,
0xce
,
0x49
,
0x27
,
0xe0
,
0xca
,
0x78
,
0x66
,
0x3d
,
0x66
,
0x39
,
0xe4
,
0x43
,
0xf0
,
0x51
,
0x12
,
0xd4
,
0x7f
,
0x97
,
0x3c
,
0x37
,
0x1e
,
0x53
,
0x0b
,
0x52
,
0xc8
,
0x31
,
0xb8
,
0x7a
,
0x1b
,
0x02
,
0x1e
,
0xb1
,
0xab
,
0xb7
,
0x97
,
0x03
,
0xf0
,
0x37
,
0x46
,
0x6b
,
0xfa
,
0xb7
,
0x03
,
0x47
,
0xad
,
0x08
,
0x42
,
0xe0
,
0xe0
,
0x56
,
0xe8
,
0x02
,
0xdb
,
0x1b
,
0x31
,
0xfc
,
0x6d
,
0x66
,
0x44
,
0xf1
,
0xfb
,
0x48
,
0x25
,
0xd8
,
0x87
,
0xc7
,
0x2c
,
0xea
,
0xcc
,
0x95
,
0xb7
,
0x3f
,
0x57
,
0xab
,
0x2c
,
0x11
,
0x8b
,
0x2d
,
0x56
,
0x17
,
0x30
,
0x8b
,
0x4c
,
0x4c
,
0xae
,
0xc4
,
0x66
,
0x16
,
0x15
,
0xaf
,
0x50
,
0xed
,
0x80
,
0xd5
,
0x98
,
0x84
,
0x30
,
0xd8
,
0xa8
,
0x05
,
0xba
,
0xfa
,
0xe8
,
0xaa
,
0xa0
,
0x89
,
0xda
,
0xa8
,
0xc5
,
0x8f
,
0x2a
,
0xcb
,
0x16
,
0x78
,
0xd0
,
0x01
,
0xab
,
0x31
,
0xcd
,
0xe1
,
0xb8
,
0xd5
,
0xc0
,
0xf3
,
0x34
,
0xf9
,
0xbf
,
0x7b
,
0xa0
,
0x5f
,
0xc3
,
0x21
,
0xe6
,
0xfa
,
0x2e
,
0x8d
,
0x96
,
0x26
,
0xd9
,
0x22
,
0x8d
,
0x96
,
0x98
,
0xcc
,
0x67
,
0xf8
,
0xdb
,
0x34
,
0xa2
,
0x78
,
0xc1
,
0xd5
,
0x86
,
0xdb
,
0x6c
,
0x15
,
0xa4
,
0x2f
,
0x01
,
0x9a
,
0xa9
,
0xda
,
0x1b
,
0x74
,
0xe7
,
0x31
,
0x83
,
0xee
,
0x3e
,
0x30
,
0xe8
,
0xf4
,
0x4f
,
0xa7
,
0xfa
,
0xb0
,
0x99
,
0xc1
,
0x47
,
0x7d
,
0xf8
,
0x14
,
0xfc
,
0x38
,
0x5b
,
0x4b
,
0x6d
,
0x17
,
0xbf
,
0x04
,
0xfb
,
0xe9
,
0xbc
,
0x87
,
0xf6
,
0x6a
,
0x0c
,
0x43
,
0x15
,
0xc9
,
0xe4
,
0x86
,
0xf3
,
0xc4
,
0x6e
,
0x7f
,
0x8d
,
0xcd
,
0xee
,
0xe7
,
0xeb
,
0x5b
,
0x73
,
0x6c
,
0xbc
,
0x08
,
0xfd
,
0x89
,
0x37
,
0x0d
,
0x58
,
0x63
,
0xa0
,
0x19
,
0x8c
,
0x3a
,
0xe3
,
0xff
,
0xdf
,
0x69
,
0xd0
,
0x34
,
0xe4
,
0xb5
,
0x1a
,
0xa2
,
0xf3
,
0x6a
,
0xbe
,
0x71
,
0x7d
,
0x76
,
0xee
,
0x42
,
0xaf
,
0x73
,
0xde
,
0xbb
,
0xa5
,
0xb8
,
0xfb
,
0xa5
,
0xd0
,
0xaf
,
0x2a
,
0x9d
,
0xbf
,
0x17
,
0x85
,
0x36
,
0x87
,
0x1f
,
0x25
,
0x89
,
0xb2
,
0x45
,
0xe3
,
0xef
,
0xd6
,
0x8d
,
0xea
,
0xb5
,
0x6f
,
0x54
,
0xfa
,
0x51
,
0x55
,
0xc8
,
0xb5
,
0x5c
,
0x64
,
0x78
,
0xc1
,
0x56
,
0x89
,
0x0b
,
0x5b
,
0x49
,
0x63
,
0xa0
,
0xdf
,
0xc0
,
0x09
,
0xe3
,
0x79
,
0xba
,
0x6d
,
0xe5
,
0x7a
,
0x1f
,
0x06
,
0xa5
,
0xbf
,
0xa4
,
0x1f
,
0x9d
,
0x8f
,
0x3a
,
0x0b
,
0xcf
,
0x2a
,
0x2f
,
0xfd
,
0x19
,
0x08
,
0xc6
,
0xfe
,
0x14
,
0xa5
,
0x29
,
0xd7
,
0xa5
,
0xb7
,
0x78
,
0x74
,
0x78
,
0xb5
,
0xa1
,
0x77
,
0x7c
,
0x6b
,
0x14
,
0xf0
,
0xaa
,
0x0d
,
0x35
,
0x98
,
0xde
,
0xc3
,
0x88
,
0xf1
,
0x98
,
0x8b
,
0x5c
,
0xff
,
0x8b
,
0xa7
,
0xe5
,
0x29
,
0x40
,
0xae
,
0xf8
,
0xe6
,
0xa6
,
0x2d
,
0x52
,
0xcb
,
0x52
,
0x8b
,
0x7a
,
0xd0
,
0x88
,
0x4a
,
0x7f
,
0x77
,
0xe0
,
0x49
,
0x27
,
0x33
,
0xee
,
0xcf
,
0x14
,
0x4e
,
0xb2
,
0x34
,
0x99
,
0xef
,
0x8f
,
0xcf
,
0xae
,
0xd9
,
0x30
,
0x25
,
0xbf
,
0x9f
,
0xef
,
0x9f
,
0xee
,
0xae
,
0xf9
,
0x71
,
0x0b
,
0x40
,
0x7f
,
0x75
,
0x20
,
0x60
,
0xfc
,
0x17
,
0x53
,
0x45
,
0x79
,
0x6f
,
0x8e
,
0x61
,
0x68
,
0xde
,
0x87
,
0x8b
,
0x66
,
0x1a
,
0x6a
,
0x6c
,
0x1a
,
0xce
,
0x94
,
0x58
,
0x0a
,
0x8c
,
0xb6
,
0x79
,
0x5b
,
0x16
,
0x23
,
0x54
,
0xb4
,
0xaa
,
0x27
,
0xd7
,
0x63
,
0x16
,
0x99
,
0x79
,
0x8c
,
0x5f
,
0xf1
,
0xf8
,
0xee
,
0x32
,
0x4a
,
0x23
,
0x19
,
0x97
,
0xef
,
0xec
,
0x90
,
0x75
,
0x6c
,
0xf4
,
0x3d
,
0x38
,
0xc6
,
0xc3
,
0x6e
,
0x2a
,
0x39
,
0x05
,
0x5f
,
0xbf
,
0x9e
,
0xf1
,
0xd7
,
0xb6
,
0x8c
,
0x12
,
0x9c
,
0xff
,
0xe5
,
0x40
,
0xbf
,
0x3c
,
0x19
,
0xf2
,
0x2d
,
0x9c
,
0x5c
,
0xe1
,
0x53
,
0xdd
,
0xc4
,
0xbc
,
0x69
,
0x67
,
0xa1
,
0xdd
,
0xd2
,
0xf8
,
0xad
,
0xda
,
0xd8
,
0xfe
,
0x3e
,
0xed
,
0x91
,
0x4f
,
0xe0
,
0xf8
,
0x59
,
0x35
,
0x58
,
0x57
,
0x58
,
0xe9
,
0xa8
,
0x89
,
0xff
,
0x41
,
0xa4
,
0xe3
,
0xc0
,
0xc2
,
0x6b
,
0xa9
,
0xbf
,
0xfc
,
0x82
,
0xf6
,
0xc8
,
0x67
,
0x30
,
0xba
,
0xe1
,
0xfa
,
0x62
,
0xad
,
0xb3
,
0xb9
,
0x90
,
0x42
,
0x2e
,
0xc9
,
0x1b
,
0x96
,
0x50
,
0x5f
,
0xa3
,
0x75
,
0x08
,
0x26
,
0xa3
,
0xbd
,
0xdb
,
0x3e
,
0xfe
,
0x8b
,
0xf9
,
0xfc
,
0x9f
,
0x00
,
0x00
,
0x00
,
0xff
,
0xff
,
0xcb
,
0x56
,
0xb4
,
0x54
,
0xea
,
0x08
,
0x00
,
0x00
,
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment