| 548 | } |
| 549 | |
| 550 | void PSBTInput::FillSignatureData(SignatureData& sigdata) const |
| 551 | { |
| 552 | if (!final_script_sig.empty()) { |
| 553 | sigdata.scriptSig = final_script_sig; |
| 554 | sigdata.complete = true; |
| 555 | } |
| 556 | if (!final_script_witness.IsNull()) { |
| 557 | sigdata.scriptWitness = final_script_witness; |
| 558 | sigdata.complete = true; |
| 559 | } |
| 560 | if (sigdata.complete) { |
| 561 | return; |
| 562 | } |
| 563 | |
| 564 | sigdata.signatures.insert(partial_sigs.begin(), partial_sigs.end()); |
| 565 | if (!redeem_script.empty()) { |
| 566 | sigdata.redeem_script = redeem_script; |
| 567 | } |
| 568 | if (!witness_script.empty()) { |
| 569 | sigdata.witness_script = witness_script; |
| 570 | } |
| 571 | for (const auto& key_pair : hd_keypaths) { |
| 572 | sigdata.misc_pubkeys.emplace(key_pair.first.GetID(), key_pair.first); |
| 573 | } |
| 574 | } |
| 575 | |
| 576 | void PSBTInput::FromSignatureData(const SignatureData& sigdata) |
| 577 | { |