devtools: call common_setup in main

Fixes nullability errors detected by UBSan:

wire/fromwire.c:173:46: runtime error: null pointer passed as argument 1, which is declared to never be null
external/libwally-core/src/secp256k1/include/secp256k1.h:432:3: note: nonnull attribute specified here
    #0 0x65214a in fromwire_secp256k1_ecdsa_signature wire/fromwire.c:173:6
    #1 0x659500 in printwire_secp256k1_ecdsa_signature devtools/print_wire.c:331:1
    #2 0x646ba2 in printwire_channel_update wire/peer_printgen.c:1900:7
    #3 0x637182 in printpeer_wire_message wire/peer_printgen.c:128:11
    #4 0x65a097 in main devtools/decodemsg.c:85:10
This commit is contained in:
Matt Morehouse
2023-04-12 15:27:46 -05:00
committed by Christian Decker
parent 3edb092bd8
commit e81bf8b89f
2 changed files with 5 additions and 0 deletions

View File

@@ -2,6 +2,7 @@
#include <ccan/err/err.h> #include <ccan/err/err.h>
#include <ccan/opt/opt.h> #include <ccan/opt/opt.h>
#include <ccan/tal/grab_file/grab_file.h> #include <ccan/tal/grab_file/grab_file.h>
#include <common/setup.h>
#include <unistd.h> #include <unistd.h>
#include <wire/onion_printgen.h> #include <wire/onion_printgen.h>
#include <wire/peer_printgen.h> #include <wire/peer_printgen.h>
@@ -50,6 +51,7 @@ int main(int argc, char *argv[])
bool (*printwire)(const u8 *msg) = printpeer_wire_message; bool (*printwire)(const u8 *msg) = printpeer_wire_message;
bool ok = true; bool ok = true;
common_setup(argv[0]);
setup_locale(); setup_locale();
opt_register_noarg("--onion", opt_set_onionprint, &printwire, opt_register_noarg("--onion", opt_set_onionprint, &printwire,

View File

@@ -5,6 +5,7 @@
#include <common/dijkstra.h> #include <common/dijkstra.h>
#include <common/gossmap.h> #include <common/gossmap.h>
#include <common/route.h> #include <common/route.h>
#include <common/setup.h>
#include <common/type_to_string.h> #include <common/type_to_string.h>
#include <devtools/clean_topo.h> #include <devtools/clean_topo.h>
#include <inttypes.h> #include <inttypes.h>
@@ -70,6 +71,8 @@ int main(int argc, char *argv[])
bool clean_topology = false; bool clean_topology = false;
size_t num_channel_updates_rejected; size_t num_channel_updates_rejected;
common_setup(argv[0]);
opt_register_noarg("--clean-topology", opt_set_bool, &clean_topology, opt_register_noarg("--clean-topology", opt_set_bool, &clean_topology,
"Clean up topology before run"); "Clean up topology before run");
opt_register_noarg("-h|--help", opt_usage_and_exit, opt_register_noarg("-h|--help", opt_usage_and_exit,