From a9778549f2a9b9a6c410516fae7d89f20ebe3e94 Mon Sep 17 00:00:00 2001 From: Pablo Hinojosa Date: Sun, 11 Mar 2018 03:39:13 +0100 Subject: Warn about invalid network id instead of help --- one.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'one.cpp') diff --git a/one.cpp b/one.cpp index b40e28fc..495c3147 100644 --- a/one.cpp +++ b/one.cpp @@ -443,7 +443,7 @@ static int cli(int argc,char **argv) } } else if (command == "join") { if (arg1.length() != 16) { - cliPrintHelp(argv[0],stderr); + printf("invalid network id" ZT_EOL_S); return 2; } requestHeaders["Content-Type"] = "application/json"; @@ -471,7 +471,7 @@ static int cli(int argc,char **argv) } } else if (command == "leave") { if (arg1.length() != 16) { - cliPrintHelp(argv[0],stderr); + printf("invalid network id" ZT_EOL_S); return 2; } unsigned int scode = Http::DEL( @@ -564,7 +564,7 @@ static int cli(int argc,char **argv) } } else if (command == "set") { if (arg1.length() != 16) { - cliPrintHelp(argv[0],stderr); + printf("invalid network id" ZT_EOL_S); return 2; } std::size_t eqidx = arg2.find('='); -- cgit v1.2.3 From f12c0e79c9c9d0a53a2c4e346a5915e0433099fa Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Mon, 23 Apr 2018 14:11:26 -0700 Subject: GitHub issue #723 --- foo | 1 + one.cpp | 17 ++++++++++++++--- test.public | 1 + test.secret | 1 + 4 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 foo create mode 100644 test.public create mode 100644 test.secret (limited to 'one.cpp') diff --git a/foo b/foo new file mode 100644 index 00000000..0418f5a1 --- /dev/null +++ b/foo @@ -0,0 +1 @@ +4986a00fa841e858b50ae0fa6cd617767801f102e2c7fda7071945790f9b39f53596065ff2f2382cbcdc5c7ddfa4a7603ba1811024c72cbaec88b1bd0b52f60dfe4c204e2186fae52897fea9101e9675f4f6468957b3b650c64d919ba9e70788 \ No newline at end of file diff --git a/one.cpp b/one.cpp index 06944494..9ebc83c1 100644 --- a/one.cpp +++ b/one.cpp @@ -822,7 +822,7 @@ static int idtool(int argc,char **argv) char hexbuf[1024]; printf("%s",Utils::hex(signature.data,ZT_C25519_SIGNATURE_LEN,hexbuf)); } else if (!strcmp(argv[1],"verify")) { - if (argc < 4) { + if (argc < 5) { idtoolPrintHelp(stdout,argv[0]); return 1; } @@ -844,8 +844,19 @@ static int idtool(int argc,char **argv) if ((signature.length() > ZT_ADDRESS_LENGTH)&&(id.verify(inf.data(),(unsigned int)inf.length(),signature.data(),(unsigned int)signature.length()))) { printf("%s signature valid" ZT_EOL_S,argv[3]); } else { - fprintf(stderr,"%s signature check FAILED" ZT_EOL_S,argv[3]); - return 1; + signature.clear(); + if (OSUtils::readFile(argv[4],signature)) { + signature.assign(buf,Utils::unhex(signature.c_str(),buf,(unsigned int)sizeof(buf))); + if ((signature.length() > ZT_ADDRESS_LENGTH)&&(id.verify(inf.data(),(unsigned int)inf.length(),signature.data(),(unsigned int)signature.length()))) { + printf("%s signature valid" ZT_EOL_S,argv[3]); + } else { + fprintf(stderr,"%s signature check FAILED" ZT_EOL_S,argv[3]); + return 1; + } + } else { + fprintf(stderr,"%s signature check FAILED" ZT_EOL_S,argv[3]); + return 1; + } } } else if (!strcmp(argv[1],"initmoon")) { if (argc < 3) { diff --git a/test.public b/test.public new file mode 100644 index 00000000..f051ab7a --- /dev/null +++ b/test.public @@ -0,0 +1 @@ +8309ba5aec:0:71f0813d24f343bfcee98a1274fde797f52a05614942f24b4bbab71af4b09148a83d7f7a20f36bb4021595f368de5fe9ee0dcd81bfed44ce56991d0fb1c20a02 \ No newline at end of file diff --git a/test.secret b/test.secret new file mode 100644 index 00000000..1a54b21f --- /dev/null +++ b/test.secret @@ -0,0 +1 @@ +8309ba5aec:0:71f0813d24f343bfcee98a1274fde797f52a05614942f24b4bbab71af4b09148a83d7f7a20f36bb4021595f368de5fe9ee0dcd81bfed44ce56991d0fb1c20a02:9b109956944f90f7302c2846395eaf09118d9c9cc0dfd5896157e351c52405abee77884e33b9fe7ee5423ec265005535a920bc10c4003779df340a2949ad8ac4 \ No newline at end of file -- cgit v1.2.3