Browse Source
This requires a tweak to generate-wire.py too, since it always called the top-level routine 'print_message'. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>ppa-0.6.1
Rusty Russell
7 years ago
committed by
Christian Decker
3 changed files with 28 additions and 13 deletions
@ -1,28 +1,36 @@ |
|||
#include <ccan/err/err.h> |
|||
#include <ccan/opt/opt.h> |
|||
#include <common/decode_short_channel_ids.h> |
|||
#include <common/utils.h> |
|||
#include <devtools/gen_print_onion_wire.h> |
|||
#include <devtools/gen_print_wire.h> |
|||
#include <stdio.h> |
|||
|
|||
static void usage(void) |
|||
{ |
|||
fprintf(stderr, "Usage: decodemsg <msg-in-hex>\n"); |
|||
exit(1); |
|||
} |
|||
|
|||
int main(int argc, char *argv[]) |
|||
{ |
|||
const u8 *m; |
|||
bool onion = false; |
|||
setup_locale(); |
|||
|
|||
opt_register_noarg("--onion", opt_set_bool, &onion, |
|||
"Decode an error message instead of a peer message"); |
|||
opt_register_noarg("--help|-h", opt_usage_and_exit, |
|||
"<hexmsg>" |
|||
"Decode a lightning spec wire message from hex.", |
|||
"Print this message."); |
|||
|
|||
opt_parse(&argc, argv, opt_log_stderr_exit); |
|||
if (argc != 2) |
|||
usage(); |
|||
errx(1, "Need a hex message"); |
|||
|
|||
/* Last arg is hex string */ |
|||
/* Arg is hex string */ |
|||
m = tal_hexdata(NULL, argv[1], strlen(argv[1])); |
|||
if (!m) |
|||
errx(1, "'%s' is not valid hex", argv[1]); |
|||
|
|||
print_message(m); |
|||
if (onion) |
|||
printonion_type_message(m); |
|||
else |
|||
printwire_type_message(m); |
|||
return 0; |
|||
} |
|||
|
Loading…
Reference in new issue