daemon: check protobuf-c version, report failure.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
Rusty Russell 2016-03-15 17:09:42 +10:30
parent 6410b0ac9c
commit 6a062d8527
2 changed files with 7 additions and 2 deletions

View File

@ -184,9 +184,10 @@ static Pkt *decrypt_pkt(struct peer *peer, struct crypto_pkt *cpkt,
prototal.allocator_data = tal(iod, char);
ret = pkt__unpack(&prototal, data_len, cpkt->data);
if (!ret)
if (!ret) {
log_unusual(peer->log, "Packet failed to unpack!");
tal_free(prototal.allocator_data);
else
} else
/* Make sure packet owns contents */
tal_steal(ret, prototal.allocator_data);
return ret;

View File

@ -207,6 +207,10 @@ int main(int argc, char *argv[])
err_set_progname(argv[0]);
opt_set_alloc(opt_allocfn, tal_reallocfn, tal_freefn);
if (!streq(protobuf_c_version(), PROTOBUF_C_VERSION))
errx(1, "Compiled against protobuf %s, but have %s",
PROTOBUF_C_VERSION, protobuf_c_version());
opt_register_noarg("--help|-h", opt_usage_and_exit,
"\n"
"A bitcoin lightning daemon.",