本文整理汇总了Golang中github.com/btcsuitereleases/btcd/wire.MsgTx.AddTxIn方法的典型用法代码示例。如果您正苦于以下问题:Golang MsgTx.AddTxIn方法的具体用法?Golang MsgTx.AddTxIn怎么用?Golang MsgTx.AddTxIn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/btcsuitereleases/btcd/wire.MsgTx
的用法示例。
在下文中一共展示了MsgTx.AddTxIn方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: addTxIn
func addTxIn(msgtx *wire.MsgTx, b balance) error {
output := b.unspentResult
anchorLog.Info("unspentResult: %#v\n", output)
prevTxHash, err := wire.NewShaHashFromStr(output.TxID)
if err != nil {
return fmt.Errorf("cannot get sha hash from str: %s", err)
}
outPoint := wire.NewOutPoint(prevTxHash, output.Vout)
msgtx.AddTxIn(wire.NewTxIn(outPoint, nil))
// OnRedeemingTx
err = dclient.NotifySpent([]*wire.OutPoint{outPoint})
if err != nil {
anchorLog.Error("NotifySpent err: ", err.Error())
}
subscript, err := hex.DecodeString(output.ScriptPubKey)
if err != nil {
return fmt.Errorf("cannot decode scriptPubKey: %s", err)
}
sigScript, err := txscript.SignatureScript(msgtx, 0, subscript,
txscript.SigHashAll, b.wif.PrivKey, true) //.ToECDSA(), true)
if err != nil {
return fmt.Errorf("cannot create scriptSig: %s", err)
}
msgtx.TxIn[0].SignatureScript = sigScript
return nil
}