Commit 066e63a7 authored by heyubin's avatar heyubin

add by hyb for CheckMultiSignAddress

parent ba152928
...@@ -92,14 +92,14 @@ func (a *action) MultiSigAccCreate(accountCreate *mty.MultiSigAccCreate) (*types ...@@ -92,14 +92,14 @@ func (a *action) MultiSigAccCreate(accountCreate *mty.MultiSigAccCreate) (*types
multiSigAccount.DailyLimits = append(multiSigAccount.DailyLimits, &dailyLimit) multiSigAccount.DailyLimits = append(multiSigAccount.DailyLimits, &dailyLimit)
} }
//通过创建交易的txhash生成一个唯一的多重签名合约 NewAddrFromString //通过创建交易的txhash生成一个唯一的多重签名合约 NewAddrFromString
addr := address.PubKeyToAddress(a.txhash) addr := address.MultiSignAddress(a.txhash)
//账户去重校验 //账户去重校验
multiSig, err := getMultiSigAccount(a.localdb, addr.String()) multiSig, err := getMultiSigAccount(a.localdb, addr)
if err == nil && multiSig != nil { if err == nil && multiSig != nil {
return nil, mty.ErrAccountHasExist return nil, mty.ErrAccountHasExist
} }
multiSigAccount.MultiSigAddr = addr.String() multiSigAccount.MultiSigAddr = addr
receiptLog := &types.ReceiptLog{} receiptLog := &types.ReceiptLog{}
receiptLog.Ty = mty.TyLogMultiSigAccCreate receiptLog.Ty = mty.TyLogMultiSigAccCreate
receiptLog.Log = types.Encode(multiSigAccount) receiptLog.Log = types.Encode(multiSigAccount)
......
...@@ -172,8 +172,8 @@ func testMultiSigAccCreate(t *testing.T, driver drivers.Driver, env execEnv, loc ...@@ -172,8 +172,8 @@ func testMultiSigAccCreate(t *testing.T, driver drivers.Driver, env execEnv, loc
tx, _ := multiSigAccCreate(param) tx, _ := multiSigAccCreate(param)
tx, _ = signTx(tx, PrivKeyA) tx, _ = signTx(tx, PrivKeyA)
addr := address.PubKeyToAddress(tx.Hash()) addr := address.MultiSignAddress(tx.Hash())
localDB.On("Get", calcMultiSigAcc(addr.String())).Return(nil, types.ErrNotFound) localDB.On("Get", calcMultiSigAcc(addr)).Return(nil, types.ErrNotFound)
receipt, err := driver.Exec(tx, env.index) receipt, err := driver.Exec(tx, env.index)
if err != nil { if err != nil {
......
...@@ -98,7 +98,7 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error { ...@@ -98,7 +98,7 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error {
} }
//MultiSigConfirmTx 交易的检测 //MultiSigConfirmTx 交易的检测
if ato, ok := payload.(*mty.MultiSigConfirmTx); ok { if ato, ok := payload.(*mty.MultiSigConfirmTx); ok {
if err := address.CheckAddress(ato.GetMultiSigAccAddr()); err != nil { if err := address.CheckMultiSignAddress(ato.GetMultiSigAccAddr()); err != nil {
return types.ErrInvalidAddress return types.ErrInvalidAddress
} }
return nil return nil
...@@ -106,7 +106,7 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error { ...@@ -106,7 +106,7 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error {
//MultiSigExecTransferTo 交易的检测 //MultiSigExecTransferTo 交易的检测
if ato, ok := payload.(*mty.MultiSigExecTransferTo); ok { if ato, ok := payload.(*mty.MultiSigExecTransferTo); ok {
if err := address.CheckAddress(ato.GetTo()); err != nil { if err := address.CheckMultiSignAddress(ato.GetTo()); err != nil {
return types.ErrInvalidAddress return types.ErrInvalidAddress
} }
//assets check //assets check
...@@ -114,6 +114,11 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error { ...@@ -114,6 +114,11 @@ func (m *MultiSig) CheckTx(tx *types.Transaction, index int) error {
} }
//MultiSigExecTransferFrom 交易的检测 //MultiSigExecTransferFrom 交易的检测
if ato, ok := payload.(*mty.MultiSigExecTransferFrom); ok { if ato, ok := payload.(*mty.MultiSigExecTransferFrom); ok {
//from addr check
if err := address.CheckMultiSignAddress(ato.GetFrom()); err != nil {
return types.ErrInvalidAddress
}
//to addr check
if err := address.CheckAddress(ato.GetTo()); err != nil { if err := address.CheckAddress(ato.GetTo()); err != nil {
return types.ErrInvalidAddress return types.ErrInvalidAddress
} }
...@@ -175,7 +180,7 @@ func checkOwnerOperateTx(ato *mty.MultiSigOwnerOperate) error { ...@@ -175,7 +180,7 @@ func checkOwnerOperateTx(ato *mty.MultiSigOwnerOperate) error {
NewOwner := ato.GetNewOwner() NewOwner := ato.GetNewOwner()
NewWeight := ato.GetNewWeight() NewWeight := ato.GetNewWeight()
MultiSigAccAddr := ato.GetMultiSigAccAddr() MultiSigAccAddr := ato.GetMultiSigAccAddr()
if err := address.CheckAddress(MultiSigAccAddr); err != nil { if err := address.CheckMultiSignAddress(MultiSigAccAddr); err != nil {
return types.ErrInvalidAddress return types.ErrInvalidAddress
} }
...@@ -211,9 +216,9 @@ func checkOwnerOperateTx(ato *mty.MultiSigOwnerOperate) error { ...@@ -211,9 +216,9 @@ func checkOwnerOperateTx(ato *mty.MultiSigOwnerOperate) error {
return nil return nil
} }
func checkAccountOperateTx(ato *mty.MultiSigAccOperate) error { func checkAccountOperateTx(ato *mty.MultiSigAccOperate) error {
//MultiSigAccOperate to 地址检测 //MultiSigAccOperate MultiSigAccAddr 地址检测
MultiSigAccAddr := ato.GetMultiSigAccAddr() MultiSigAccAddr := ato.GetMultiSigAccAddr()
if err := address.CheckAddress(MultiSigAccAddr); err != nil { if err := address.CheckMultiSignAddress(MultiSigAccAddr); err != nil {
return types.ErrInvalidAddress return types.ErrInvalidAddress
} }
......
...@@ -76,7 +76,7 @@ func (m *MultiSig) Query_MultiSigAccountInfo(in *mty.ReqMultiSigAccInfo) (types. ...@@ -76,7 +76,7 @@ func (m *MultiSig) Query_MultiSigAccountInfo(in *mty.ReqMultiSigAccInfo) (types.
db := m.GetLocalDB() db := m.GetLocalDB()
addr := in.MultiSigAccAddr addr := in.MultiSigAccAddr
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
multiSigAcc, err := getMultiSigAccount(db, addr) multiSigAcc, err := getMultiSigAccount(db, addr)
...@@ -102,7 +102,7 @@ func (m *MultiSig) Query_MultiSigAccTxCount(in *mty.ReqMultiSigAccInfo) (types.M ...@@ -102,7 +102,7 @@ func (m *MultiSig) Query_MultiSigAccTxCount(in *mty.ReqMultiSigAccInfo) (types.M
db := m.GetLocalDB() db := m.GetLocalDB()
addr := in.MultiSigAccAddr addr := in.MultiSigAccAddr
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
...@@ -136,7 +136,7 @@ func (m *MultiSig) Query_MultiSigTxids(in *mty.ReqMultiSigTxids) (types.Message, ...@@ -136,7 +136,7 @@ func (m *MultiSig) Query_MultiSigTxids(in *mty.ReqMultiSigTxids) (types.Message,
db := m.GetLocalDB() db := m.GetLocalDB()
addr := in.MultiSigAddr addr := in.MultiSigAddr
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
multiSigAcc, err := getMultiSigAccount(db, addr) multiSigAcc, err := getMultiSigAccount(db, addr)
...@@ -182,7 +182,7 @@ func (m *MultiSig) Query_MultiSigTxInfo(in *mty.ReqMultiSigTxInfo) (types.Messag ...@@ -182,7 +182,7 @@ func (m *MultiSig) Query_MultiSigTxInfo(in *mty.ReqMultiSigTxInfo) (types.Messag
addr := in.MultiSigAddr addr := in.MultiSigAddr
txid := in.TxId txid := in.TxId
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
...@@ -211,7 +211,7 @@ func (m *MultiSig) Query_MultiSigTxConfirmedWeight(in *mty.ReqMultiSigTxInfo) (t ...@@ -211,7 +211,7 @@ func (m *MultiSig) Query_MultiSigTxConfirmedWeight(in *mty.ReqMultiSigTxInfo) (t
addr := in.MultiSigAddr addr := in.MultiSigAddr
txid := in.TxId txid := in.TxId
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
...@@ -247,7 +247,7 @@ func (m *MultiSig) Query_MultiSigAccUnSpentToday(in *mty.ReqAccAssets) (types.Me ...@@ -247,7 +247,7 @@ func (m *MultiSig) Query_MultiSigAccUnSpentToday(in *mty.ReqAccAssets) (types.Me
addr := in.MultiSigAddr addr := in.MultiSigAddr
isAll := in.IsAll isAll := in.IsAll
if err := address.CheckAddress(addr); err != nil { if err := address.CheckMultiSignAddress(addr); err != nil {
return nil, types.ErrInvalidAddress return nil, types.ErrInvalidAddress
} }
multiSigAcc, err := getMultiSigAccount(db, addr) multiSigAcc, err := getMultiSigAccount(db, addr)
...@@ -316,9 +316,11 @@ func (m *MultiSig) Query_MultiSigAccAssets(in *mty.ReqAccAssets) (types.Message, ...@@ -316,9 +316,11 @@ func (m *MultiSig) Query_MultiSigAccAssets(in *mty.ReqAccAssets) (types.Message,
if in == nil { if in == nil {
return nil, types.ErrInvalidParam return nil, types.ErrInvalidParam
} }
//多重签名地址或者普通地址
if err := address.CheckAddress(in.MultiSigAddr); err != nil { if err := address.CheckMultiSignAddress(in.MultiSigAddr); err != nil {
return nil, types.ErrInvalidAddress if err = address.CheckAddress(in.MultiSigAddr); err != nil {
return nil, types.ErrInvalidAddress
}
} }
replyAccAssets := &mty.ReplyAccAssets{} replyAccAssets := &mty.ReplyAccAssets{}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment