| 45 | const TranslateFn G_TRANSLATION_FUN{nullptr}; |
| 46 | |
| 47 | static void SetupBitcoinTxArgs(ArgsManager &argsman) |
| 48 | { |
| 49 | SetupHelpOptions(argsman); |
| 50 | |
| 51 | argsman.AddArg("-version", "Print version and exit", ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS); |
| 52 | argsman.AddArg("-create", "Create new, empty TX.", ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS); |
| 53 | argsman.AddArg("-json", "Select JSON output", ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS); |
| 54 | argsman.AddArg("-txid", "Output only the hex-encoded transaction id of the resultant transaction.", ArgsManager::ALLOW_ANY, OptionsCategory::OPTIONS); |
| 55 | SetupChainParamsBaseOptions(argsman); |
| 56 | |
| 57 | argsman.AddArg("delin=N", "Delete input N from TX", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 58 | argsman.AddArg("delout=N", "Delete output N from TX", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 59 | argsman.AddArg("in=TXID:VOUT(:SEQUENCE_NUMBER)", "Add input to TX", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 60 | argsman.AddArg("locktime=N", "Set TX lock time to N", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 61 | argsman.AddArg("nversion=N", "Set TX version to N", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 62 | argsman.AddArg("outaddr=VALUE:ADDRESS", "Add address-based output to TX", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 63 | argsman.AddArg("outdata=[VALUE:]DATA", "Add data-based output to TX", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 64 | argsman.AddArg("outmultisig=VALUE:REQUIRED:PUBKEYS:PUBKEY1:PUBKEY2:....[:FLAGS]", "Add Pay To n-of-m Multi-sig output to TX. n = REQUIRED, m = PUBKEYS. " |
| 65 | "Optionally add the \"W\" flag to produce a pay-to-witness-script-hash output. " |
| 66 | "Optionally add the \"S\" flag to wrap the output in a pay-to-script-hash.", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 67 | argsman.AddArg("outpubkey=VALUE:PUBKEY[:FLAGS]", "Add pay-to-pubkey output to TX. " |
| 68 | "Optionally add the \"W\" flag to produce a pay-to-witness-pubkey-hash output. " |
| 69 | "Optionally add the \"S\" flag to wrap the output in a pay-to-script-hash.", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 70 | argsman.AddArg("outscript=VALUE:SCRIPT[:FLAGS]", "Add raw script output to TX. " |
| 71 | "Optionally add the \"W\" flag to produce a pay-to-witness-script-hash output. " |
| 72 | "Optionally add the \"S\" flag to wrap the output in a pay-to-script-hash.", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 73 | argsman.AddArg("replaceable(=N)", "Sets Replace-By-Fee (RBF) opt-in sequence number for input N. " |
| 74 | "If N is not provided, the command attempts to opt-in all available inputs for RBF. " |
| 75 | "If the transaction has no inputs, this option is ignored.", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 76 | argsman.AddArg("sign=SIGHASH-FLAGS", "Add zero or more signatures to transaction. " |
| 77 | "This command requires JSON registers:" |
| 78 | "prevtxs=JSON object, " |
| 79 | "privatekeys=JSON object. " |
| 80 | "See signrawtransactionwithkey docs for format of sighash flags, JSON objects.", ArgsManager::ALLOW_ANY, OptionsCategory::COMMANDS); |
| 81 | |
| 82 | argsman.AddArg("load=NAME:FILENAME", "Load JSON file FILENAME into register NAME", ArgsManager::ALLOW_ANY, OptionsCategory::REGISTER_COMMANDS); |
| 83 | argsman.AddArg("set=NAME:JSON-STRING", "Set register NAME to given JSON-STRING", ArgsManager::ALLOW_ANY, OptionsCategory::REGISTER_COMMANDS); |
| 84 | } |
| 85 | |
| 86 | // |
| 87 | // This function returns either one of EXIT_ codes when it's expected to stop the process or |
no test coverage detected