From d4c074676e2609d387d3337f1d570055d3027a66 Mon Sep 17 00:00:00 2001 From: Richard Myers <8568892+remyers@users.noreply.github.com> Date: Wed, 6 Nov 2019 12:43:42 +0100 Subject: [PATCH] fixed argv indexes for parsing commands --- devtools/onion.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/devtools/onion.c b/devtools/onion.c index 33160330f..0f5731bf6 100644 --- a/devtools/onion.c +++ b/devtools/onion.c @@ -37,32 +37,32 @@ static void do_generate(int argc, char **argv, sp = sphinx_path_new_with_key(ctx, assocdata, &session_key); for (int i = 0; i < num_hops; i++) { - size_t klen = strcspn(argv[1 + i], "/"); + size_t klen = strcspn(argv[2 + i], "/"); if (hex_data_size(klen) == PRIVKEY_LEN) { - if (!hex_decode(argv[1 + i], klen, rawprivkey, PRIVKEY_LEN)) + if (!hex_decode(argv[2 + i], klen, rawprivkey, PRIVKEY_LEN)) errx(1, "Invalid private key hex '%s'", - argv[1 + i]); + argv[2 + i]); if (secp256k1_ec_pubkey_create(secp256k1_ctx, &path[i].pubkey, rawprivkey) != 1) errx(1, "Could not decode pubkey"); } else if (hex_data_size(klen) == PUBKEY_CMPR_LEN) { - if (!pubkey_from_hexstr(argv[i + 1], klen, &path[i])) + if (!pubkey_from_hexstr(argv[2 + i], klen, &path[i])) errx(1, "Invalid public key hex '%s'", - argv[1 + i]); + argv[2 + i]); } else { errx(1, "Provided key is neither a pubkey nor a privkey: " "%s\n", - argv[1 + i]); + argv[2 + i]); } memset(&hops_data[i], 0, sizeof(hops_data[i])); - if (argv[1 + i][klen] != '\0') { + if (argv[2 + i][klen] != '\0') { /* FIXME: Generic realm support, not this hack! */ /* FIXME: Multi hop! */ - const char *hopstr = argv[1 + i] + klen + 1; + const char *hopstr = argv[2 + i] + klen + 1; size_t dsize = hex_data_size(strlen(hopstr)); be64 scid, msat; be32 cltv;